Commit 664bbcdc15c0fb8e043d151d07c85236d9683b7e

Authored by 273548560@qq.com
1 parent 20033b3e

修复bug

trash-ui/src/api/caseOfflineInfo.js
... ... @@ -3,13 +3,14 @@ import {getArea,} from "@/api/dict";
3 3  
4 4  
5 5 import {getToken} from "@/utils/auth";
  6 +import {listReplyApprovalProcess} from "@/api/casefile/replyApprovalProcess";
6 7  
7 8 export default {
8 9 name: "CaseOffline",
9 10 props: {
10 11 businessKey: {
11 12 type: String
12   - }
  13 + },
13 14 },
14 15 data() {
15 16 return {
... ... @@ -80,13 +81,28 @@ export default {
80 81 showPic: false,
81 82 picImage: null,
82 83 slides: [],
  84 + img: [],
  85 + slide1: [],
  86 + videoSrc: [],
  87 + openImg: false,
  88 + replyApprovalProcessList:[],
83 89 };
84 90 },
85 91 created() {
  92 + let id = this.businessKey.split(":");
  93 +
  94 + if (id.length == 2) {
  95 + this.businessKey = id[1];
  96 + } else {
  97 + this.businessKey = id;
  98 + }
86 99 getArea().then(res => {
87 100 this.areas = res.result;
88 101 this.handleUpdate();
89 102 });
  103 + listReplyApprovalProcess({tableName: "workflow_caseoffline:"+this.businessKey}).then(response => {
  104 + this.replyApprovalProcessList = response.rows;
  105 + });
90 106 },
91 107 methods: {
92 108 getSite(item) {
... ... @@ -118,16 +134,17 @@ export default {
118 134 showVideo(path) {
119 135 return process.env.VUE_APP_BASE_API + path;
120 136 },
  137 + openImage(path) {
  138 + this.img = [];
  139 + this.openImg = true;
  140 + let files = path.split(",");
  141 + for(let i=0;i<files.length;i++){
  142 + this.img.push(files[i]);
  143 + }
  144 + },
121 145 /** 修改按钮操作 */
122 146 handleUpdate() {
123   - let id;
124   - if (this.businessKey.split(":").length == 2) {
125   - id = this.businessKey.split(":")[1];
126   - } else {
127   - id = this.businessKey;
128   - }
129   -
130   - getCaseOffline(id).then(response => {
  147 + getCaseOffline(this.businessKey).then(response => {
131 148 this.form = response.data;
132 149 if (this.form.attach && this.form.attach != "")
133 150 this.form.attach = this.form.attach.split(",");
... ... @@ -136,7 +153,7 @@ export default {
136 153 this.form.type = this.getCaseType(this.form.type);
137 154 this.form.place = this.getAreaName(this.form.place);
138 155  
139   - getAdviceList(this.workflow + ":" + id).then(res => {
  156 + getAdviceList(this.workflow + ":" + this.businessKey).then(res => {
140 157 if (res.data) {
141 158 if (res.data.advice1) {
142 159 this.adviceList.push({
... ...
trash-ui/src/api/caseoffline.js
... ... @@ -97,7 +97,8 @@ export default {
97 97 data:{},
98 98 objId:null,
99 99 slides:[],
100   - videoSrc:[]
  100 + videoSrc:[],
  101 + businessKey:null,
101 102 };
102 103 },
103 104 created() {
... ...
trash-ui/src/views/activiti/task/index.vue
1 1 <template>
2 2 <div class="app-container">
3   - <el-select v-model="queryParams.dept" filterable reserve-keyword @change="getList">
4   - <el-option v-for="item in depts" :label="item.name"
5   - :value="item.code" :key="item.code">
6   - </el-option>
7   - </el-select>
8   - <el-select v-model="queryParams.role" filterable reserve-keyword @change="getList">
9   - <el-option v-for="item in roles" :label="item.name"
10   - :value="item.code" :key="item.code">
11   - </el-option>
12   - </el-select>
13   -
14   - <el-select v-model="queryParams.name" filterable reserve-keyword @change="getList" placeholder="名称">
15   - <el-option label="全部" value="" />
16   - <el-option v-for="item in names" :label="item" :value="item" >
17   - </el-option>
18   - </el-select>
19   -
20   - <el-select v-model="queryParams.prev" filterable reserve-keyword @change="getList" placeholder="上一节点">
21   - <el-option label="全部" value="" />
22   - <el-option v-for="item in depts" :label="item.name" :value="item.name" >
23   - </el-option>
24   - </el-select>
25   - <el-select v-model="queryParams.type" filterable reserve-keyword @change="getList">
26   - <el-option label="全部" value="" />
27   - <el-option label="建筑垃圾许可证审批" value="workflow_constructsite" />
28   - <el-option label="消纳合同申报备案" value="workflow_conract" />
29   - <el-option label="处理场所备案" value="workflow_earthsites" />
30   - <el-option label="运输企业准入流程" value="workflow_company" />
31   - <el-option label="运输车辆准入流程" value="workflow_vehicle" />
32   - <el-option label="驾驶员信息审批" value="workflow_driver" />
33   - <el-option label="交办案卷" value="workflow_caseoffline" />
34   - <el-option label="违规案卷处置流程" value="workflow_casefile" />
35   - <el-option label="平台预警信息" value="violation_warning" />
36   - <el-option label="办文办事" value="handleAffairs" />
37   - <el-option label="后勤管理" value="logistics" />
38   - <el-option label="会议事务" value="conference" />
39   - <el-option label="假勤管理" value="workflow_leave" />
40   - <el-option label="纪检督察" value="supervision-gongdi,supervision_anjuan,supervision_company,supervision_xnc" />
  3 + <el-select v-model="queryParams.dept" filterable reserve-keyword @change="getList">
  4 + <el-option v-for="item in depts" :label="item.name"
  5 + :value="item.code" :key="item.code">
  6 + </el-option>
  7 + </el-select>
  8 + <el-select v-model="queryParams.role" filterable reserve-keyword @change="getList">
  9 + <el-option v-for="item in roles" :label="item.name"
  10 + :value="item.code" :key="item.code">
  11 + </el-option>
  12 + </el-select>
  13 +
  14 + <el-select v-model="queryParams.name" filterable reserve-keyword @change="getList" placeholder="名称">
  15 + <el-option label="全部" value=""/>
  16 + <el-option v-for="item in names" :label="item" :value="item">
  17 + </el-option>
  18 + </el-select>
  19 +
  20 + <el-select v-model="queryParams.prev" filterable reserve-keyword @change="getList" placeholder="上一节点">
  21 + <el-option label="全部" value=""/>
  22 + <el-option v-for="item in depts" :label="item.name" :value="item.name">
  23 + </el-option>
  24 + </el-select>
  25 + <el-select v-model="queryParams.type" filterable reserve-keyword @change="getList">
  26 + <el-option label="全部" value=""/>
  27 + <el-option label="建筑垃圾许可证审批" value="workflow_constructsite"/>
  28 + <el-option label="消纳合同申报备案" value="workflow_conract"/>
  29 + <el-option label="处理场所备案" value="workflow_earthsites"/>
  30 + <el-option label="运输企业准入流程" value="workflow_company"/>
  31 + <el-option label="运输车辆准入流程" value="workflow_vehicle"/>
  32 + <el-option label="驾驶员信息审批" value="workflow_driver"/>
  33 + <el-option label="交办案卷" value="workflow_caseoffline"/>
  34 + <el-option label="违规案卷处置流程" value="workflow_casefile"/>
  35 + <el-option label="平台预警信息" value="violation_warning"/>
  36 + <el-option label="办文办事" value="handleAffairs"/>
  37 + <el-option label="后勤管理" value="logistics"/>
  38 + <el-option label="会议事务" value="conference"/>
  39 + <el-option label="假勤管理" value="workflow_leave"/>
  40 + <el-option label="纪检督察" value="supervision-gongdi,supervision_anjuan,supervision_company,supervision_xnc"/>
41 41 </el-select>
42 42  
43 43  
... ... @@ -156,7 +156,8 @@
156 156 </p>
157 157 </el-col>
158 158 <el-col :span="6">
159   - <a style="color:blue;font-size: 12px;" @click="showFileUpload(5)">{{form.type==0?"摄像头视频截图1":"洗车设施照片"}}</a>
  159 + <a style="color:blue;font-size: 12px;"
  160 + @click="showFileUpload(5)">{{ form.type == 0 ? "摄像头视频截图1" : "洗车设施照片" }}</a>
160 161 <br/>
161 162 <el-image v-for="item in slides[5]"
162 163 style="width: 100px; height: 100px; margin: 5px;"
... ... @@ -170,7 +171,8 @@
170 171 </p>
171 172 </el-col>
172 173 <el-col :span="6">
173   - <a style="color:blue;font-size: 12px;" @click="showFileUpload(6)">{{form.type==0?"摄像头视频截图2":"雾炮机"}}</a>
  174 + <a style="color:blue;font-size: 12px;"
  175 + @click="showFileUpload(6)">{{ form.type == 0 ? "摄像头视频截图2" : "雾炮机" }}</a>
174 176 <br/>
175 177 <el-image v-for="item in slides[6]"
176 178 style="width: 100px; height: 100px; margin: 5px;"
... ... @@ -184,7 +186,8 @@
184 186 </p>
185 187 </el-col>
186 188 <el-col :span="6">
187   - <a style="color:blue;font-size: 12px;" @click="showFileUpload(7)">{{form.type==0?"摄像头视频截图3":"裸露黄土覆盖照片"}}</a>
  189 + <a style="color:blue;font-size: 12px;"
  190 + @click="showFileUpload(7)">{{ form.type == 0 ? "摄像头视频截图3" : "裸露黄土覆盖照片" }}</a>
188 191 <br/>
189 192 <el-image v-for="item in slides[7]"
190 193 style="width: 100px; height: 100px; margin: 5px;"
... ... @@ -318,7 +321,7 @@
318 321 <el-dialog :title="title" :visible.sync="construct" width="800px" append-to-body>
319 322 <constructsiteInfo :businessKey="businessKey" :signData="signData" v-if="construct"/>
320 323 <el-row>
321   - <el-input v-model="signDataInfo" type="textarea" :rows="4" style="margin-top: 10px;" ></el-input>
  324 + <el-input v-model="signDataInfo" type="textarea" :rows="4" style="margin-top: 10px;"></el-input>
322 325 </el-row>
323 326 <div slot="footer" class="dialog-footer">
324 327 <el-button type="danger" @click="submitForm(form.formData[0].controlId ,1)">驳回</el-button>
... ... @@ -329,14 +332,15 @@
329 332 <el-dialog :title="title" :visible.sync="earthsites" width="800px" append-to-body>
330 333 <earthsitesInfo :businessKey="businessKey" v-if="earthsites"/>
331 334 <div v-for="item in this.form.formData">
332   - <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/>
  335 + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue"
  336 + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/>
333 337 </div>
334 338  
335 339 <el-table :data="hisfromData" v-if="hisfromData != null">
336 340 <el-table-column label="类型" width="55" align="center" prop="controlName"/>
337   - <el-table-column label="审批内容" align="center" prop="controlValue" />
338   - <el-table-column label="审批人" align="center" prop="createName" />
339   - <el-table-column label="审批时间" align="center" prop="createTime" />
  341 + <el-table-column label="审批内容" align="center" prop="controlValue"/>
  342 + <el-table-column label="审批人" align="center" prop="createName"/>
  343 + <el-table-column label="审批时间" align="center" prop="createTime"/>
340 344 </el-table>
341 345  
342 346 <div slot="footer" class="dialog-footer">
... ... @@ -349,14 +353,15 @@
349 353 <contractInfo :businessKey="businessKey" v-if="contract"/>
350 354  
351 355 <div v-for="item in this.form.formData">
352   - <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/>
  356 + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue"
  357 + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/>
353 358 </div>
354 359  
355 360 <el-table :data="hisfromData" v-if="hisfromData != null">
356 361 <el-table-column label="类型" width="55" align="center" prop="controlName"/>
357   - <el-table-column label="审批内容" align="center" prop="controlValue" />
358   - <el-table-column label="审批人" align="center" prop="createName" />
359   - <el-table-column label="审批时间" align="center" prop="createTime" />
  362 + <el-table-column label="审批内容" align="center" prop="controlValue"/>
  363 + <el-table-column label="审批人" align="center" prop="createName"/>
  364 + <el-table-column label="审批时间" align="center" prop="createTime"/>
360 365 </el-table>
361 366  
362 367 <div slot="footer" class="dialog-footer">
... ... @@ -395,7 +400,8 @@
395 400 <div slot="footer" class="dialog-footer">
396 401 <div slot="footer" class="dialog-footer">
397 402 <el-button type="danger" @click="handleAffairsSubmitForm(1)"
398   - v-if="controlId!='FormProperty_11p96vq' && controlId!='FormProperty_0d6ngk1' && definitionKey!='yuelanxuexi' && definitionKey!='yuelan'">驳回
  403 + v-if="controlId!='FormProperty_11p96vq' && controlId!='FormProperty_0d6ngk1' && definitionKey!='yuelanxuexi' && definitionKey!='yuelan'">
  404 + 驳回
399 405 </el-button>
400 406 <el-button type="primary" @click="handleAffairsSubmitForm(0)">通过</el-button>
401 407 </div>
... ... @@ -405,85 +411,127 @@
405 411 <!-- 线下案卷交办 -->
406 412 <el-dialog :title="title" :visible.sync="caseOffline" width="600px" append-to-body :close-on-click-modal="false">
407 413 <caseOfflineInfo :businessKey="businessKey" v-if="caseOffline"/>
408   - <el-input v-model="form.advice" placeholder="请填写审批意见" type="textarea" :rows="3"/>
  414 + <el-form v-if="caseOffline" label-width="120px">
  415 + <el-input v-model="form.reply" type="textarea" :rows="3" placeholder="回复意见">
  416 + </el-input>
  417 + <el-upload multiple :headers="upload.headers" :action="upload.url"
  418 + accept=".docx,.doc,.pdf,.png,.jpeg,.png,.jpg,.mp4,.avi"
  419 + :show-file-list="false"
  420 + :on-success="uploadSuccess1" :before-upload="beforeUpload">
  421 + <el-button size="small" type="primary">选择附件</el-button>
  422 + <div slot="tip" class="el-upload__tip">只能上传不超过 100MB 的jpg、png、pdf、word、avi、mp4文件</div>
  423 + </el-upload>
  424 + <el-image v-for="item in slides1"
  425 + style="width: 150px; height: 100px; margin: 5px;"
  426 + :src="item.url"
  427 + :preview-src-list="[item.url]"
  428 + :z-index="2000">
  429 + </el-image>
  430 + <div style="display: inline-block;margin: 5px;position: relative; width: 150px;height: 100px;overflow:hidden;"
  431 + v-for="item in videoSrc1">
  432 + <video width="100%" controls="controls" height="100%" :src="item.url"></video>
  433 + </div>
  434 + <div style="color: blue;" v-for="(img,index) in form.replyImg">{{ img.split("/")[img.split("/").length - 1] }}<a
  435 + @click="removeAttchItem(index,img)" style="color:red;"> X</a></div>
  436 +
  437 + </el-form>
409 438 <div slot="footer" class="dialog-footer">
410   - <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)" v-if="this.taskName != '车辆所属企业' && this.taskName != '渣土办科员'">驳回</el-button>
  439 + <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)"
  440 + v-if="this.taskName != '车辆所属企业' && this.taskName != '渣土办科员'">驳回
  441 + </el-button>
411 442 <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button>
412 443 </div>
413 444 </el-dialog>
414 445  
415 446 <!-- 平台违规信息 -->
416   - <el-dialog :title="title" :visible.sync="violationCaseFile" width="850px" append-to-body :close-on-click-modal="false">
  447 + <el-dialog :title="title" :visible.sync="violationCaseFile" width="850px" append-to-body
  448 + :close-on-click-modal="false">
417 449 <violationCaseFileInfo :idInfo="businessKey" v-if="violationCaseFile" :entryType="0"/>
418   - <el-form v-if="this.taskName != '车辆所属企业' && this.taskName != '渣土办科员' && violationCaseFile" :rules="rules" label-width="120px" >
  450 + <el-form v-if="violationCaseFile" label-width="120px">
419 451 <el-input v-model="form.reply" type="textarea" :rows="3" placeholder="回复意见">
420 452 </el-input>
421   - <el-upload
422   - list-type="picture"
423   - action=''
424   - accept=".jpg, .png , .bmp"
425   - :limit="1"
426   - :auto-upload="false"
427   - :file-list="form.replyImg"
428   - :on-change="getFile"
429   - :on-preview="handlePictureCardPreview"
430   - :on-remove="handleUploadRemove"
431   - >
432   - <el-button size="small" type="primary" @click="uploadimg" v-if="form.replyImg == null">选择图片上传</el-button>
433   - <div slot="tip" class="el-upload__tip" v-if="form.replyImg== null">只能上传一张图片文件</div>
  453 + <el-upload multiple :headers="upload.headers" :action="upload.url"
  454 + accept=".docx,.doc,.pdf,.png,.jpeg,.png,.jpg,.mp4,.avi"
  455 + :show-file-list="false"
  456 + :on-success="uploadSuccess1" :before-upload="beforeUpload">
  457 + <el-button size="small" type="primary">选择附件</el-button>
  458 + <div slot="tip" class="el-upload__tip">只能上传不超过 100MB 的jpg、png、pdf、word、avi、mp4文件</div>
434 459 </el-upload>
  460 + <el-image v-for="item in slides1"
  461 + style="width: 150px; height: 100px; margin: 5px;"
  462 + :src="item.url"
  463 + :preview-src-list="[item.url]"
  464 + :z-index="2000">
  465 + </el-image>
  466 + <div style="display: inline-block;margin: 5px;position: relative; width: 150px;height: 100px;overflow:hidden;"
  467 + v-for="item in videoSrc1">
  468 + <video width="100%" controls="controls" height="100%" :src="item.url"></video>
  469 + </div>
  470 + <div style="color: blue;" v-for="(img,index) in form.replyImg">{{ img.split("/")[img.split("/").length - 1] }}<a
  471 + @click="removeAttchItem(index,img)" style="color:red;"> X</a></div>
435 472  
436 473 </el-form>
437 474  
438 475  
439 476 <div slot="footer" class="dialog-footer">
440   - <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)" v-if="this.taskName != '车辆所属企业' && this.taskName != '渣土办科员'">驳回</el-button>
  477 + <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)"
  478 + v-if="this.taskName != '车辆所属企业' && this.taskName != '渣土办科员'">驳回
  479 + </el-button>
441 480 <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button>
442 481 </div>
443 482 </el-dialog>
444 483  
445 484 <!-- 违规预警信息 -->
446   - <el-dialog :title="title" :visible.sync="violationCaseFile1" width="850px" append-to-body :close-on-click-modal="false">
  485 + <el-dialog :title="title" :visible.sync="violationCaseFile1" width="850px" append-to-body
  486 + :close-on-click-modal="false">
447 487 <violationWarningInformationInfo :idInfo="businessKey" v-if="violationCaseFile1" :entryType="0"/>
448   - <el-form v-if="this.taskName != '车辆所属企业' && this.taskName != '渣土办科员' && violationCaseFile1" :rules="rules" label-width="120px" >
  488 + <el-form v-if="violationCaseFile1" label-width="120px">
449 489 <el-input v-model="form.reply" type="textarea" :rows="3" placeholder="回复意见">
450 490 </el-input>
451   - <el-upload
452   - list-type="picture"
453   - action=''
454   - accept=".jpg, .png , .bmp"
455   - :limit="1"
456   - :auto-upload="false"
457   - :file-list="form.replyImg"
458   - :on-change="getFile"
459   - :on-preview="handlePictureCardPreview"
460   - :on-remove="handleUploadRemove"
461   - >
462   - <el-button size="small" type="primary" @click="uploadimg" v-if="form.replyImg == null">选择图片上传</el-button>
463   - <div slot="tip" class="el-upload__tip" v-if="form.replyImg== null">只能上传一张图片文件</div>
  491 + <el-upload multiple :headers="upload.headers" :action="upload.url"
  492 + accept=".docx,.doc,.pdf,.png,.jpeg,.png,.jpg,.mp4,.avi"
  493 + :show-file-list="false"
  494 + :on-success="uploadSuccess1" :before-upload="beforeUpload">
  495 + <el-button size="small" type="primary">选择附件</el-button>
  496 + <div slot="tip" class="el-upload__tip">只能上传不超过 100MB 的jpg、png、pdf、word、avi、mp4文件</div>
464 497 </el-upload>
465   -
  498 + <el-image v-for="item in slides1"
  499 + style="width: 150px; height: 100px; margin: 5px;"
  500 + :src="item.url"
  501 + :preview-src-list="[item.url]"
  502 + :z-index="2000">
  503 + </el-image>
  504 + <div style="display: inline-block;margin: 5px;position: relative; width: 150px;height: 100px;overflow:hidden;"
  505 + v-for="item in videoSrc1">
  506 + <video width="100%" controls="controls" height="100%" :src="item.url"></video>
  507 + </div>
  508 + <div style="color: blue;" v-for="(img,index) in form.replyImg">{{ img.split("/")[img.split("/").length - 1] }}<a
  509 + @click="removeAttchItem(index,img)" style="color:red;"> X</a></div>
466 510 </el-form>
467 511  
468 512  
469 513 <div slot="footer" class="dialog-footer">
470   - <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)" v-if="this.taskName != '车辆所属企业' && this.taskName != '渣土办科员'">驳回</el-button>
  514 + <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)"
  515 + v-if="this.taskName != '车辆所属企业' && this.taskName != '渣土办科员'">驳回
  516 + </el-button>
471 517 <el-button type="primary" @click="submitForm(form.formData[0].controlId,0)">通过</el-button>
472 518 </div>
473 519 </el-dialog>
474 520  
475   - <el-dialog :title="title" :visible.sync="supervisionOpen" width="700px" append-to-body :close-on-click-modal="false">
  521 + <el-dialog :title="title" :visible.sync="supervisionOpen" width="700px" append-to-body
  522 + :close-on-click-modal="false">
476 523 <supervisionInfo :infoData="supervisionData" v-if="supervisionOpen"/>
477 524  
478 525 <div v-for="item in this.form.formData">
479   - <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/>
  526 + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue"
  527 + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/>
480 528 </div>
481 529  
482 530 <el-table :data="hisfromData" v-if="hisfromData != null">
483 531 <el-table-column label="类型" width="55" align="center" prop="controlName"/>
484   - <el-table-column label="审批内容" align="center" prop="controlValue" />
485   - <el-table-column label="审批人" align="center" prop="createName" />
486   - <el-table-column label="审批时间" align="center" prop="createTime" />
  532 + <el-table-column label="审批内容" align="center" prop="controlValue"/>
  533 + <el-table-column label="审批人" align="center" prop="createName"/>
  534 + <el-table-column label="审批时间" align="center" prop="createTime"/>
487 535 </el-table>
488 536  
489 537 <div slot="footer" class="dialog-footer">
... ... @@ -495,14 +543,15 @@
495 543 <el-dialog :title="title" :visible.sync="company" width="700px" append-to-body :close-on-click-modal="false">
496 544 <companyInfo :businessKey="businessKey" v-if="company"/>
497 545 <div v-for="item in this.form.formData">
498   - <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/>
  546 + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue"
  547 + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/>
499 548 </div>
500 549  
501 550 <el-table :data="hisfromData" v-if="hisfromData != null">
502 551 <el-table-column label="类型" width="55" align="center" prop="controlName"/>
503   - <el-table-column label="审批内容" align="center" prop="controlValue" />
504   - <el-table-column label="审批人" align="center" prop="createName" />
505   - <el-table-column label="审批时间" align="center" prop="createTime" />
  552 + <el-table-column label="审批内容" align="center" prop="controlValue"/>
  553 + <el-table-column label="审批人" align="center" prop="createName"/>
  554 + <el-table-column label="审批时间" align="center" prop="createTime"/>
506 555 </el-table>
507 556 <div slot="footer" class="dialog-footer">
508 557 <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)">驳回</el-button>
... ... @@ -513,14 +562,15 @@
513 562 <el-dialog :title="title" :visible.sync="vehicle" width="700px" append-to-body :close-on-click-modal="false">
514 563 <vehicleInfo :businessKey="businessKey" v-if="vehicle"/>
515 564 <div v-for="item in this.form.formData">
516   - <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/>
  565 + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue"
  566 + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/>
517 567 </div>
518 568  
519 569 <el-table :data="hisfromData" v-if="hisfromData != null">
520 570 <el-table-column label="类型" width="55" align="center" prop="controlName"/>
521   - <el-table-column label="审批内容" align="center" prop="controlValue" />
522   - <el-table-column label="审批人" align="center" prop="createName" />
523   - <el-table-column label="审批时间" align="center" prop="createTime" />
  571 + <el-table-column label="审批内容" align="center" prop="controlValue"/>
  572 + <el-table-column label="审批人" align="center" prop="createName"/>
  573 + <el-table-column label="审批时间" align="center" prop="createTime"/>
524 574 </el-table>
525 575 <div slot="footer" class="dialog-footer">
526 576 <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)">驳回</el-button>
... ... @@ -531,14 +581,15 @@
531 581 <el-dialog :title="title" :visible.sync="driver" width="700px" append-to-body :close-on-click-modal="false">
532 582 <driverInfo :businessKey="businessKey" v-if="driver"/>
533 583 <div v-for="item in this.form.formData">
534   - <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue" placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/>
  584 + <el-input v-if="item.controlType=='textarea'" :label="item.controlLable" v-model="item.controlValue"
  585 + placeholder="批注" type="textarea" :rows="3" style="margin-top:20px;"/>
535 586 </div>
536 587  
537 588 <el-table :data="hisfromData" v-if="hisfromData != null">
538 589 <el-table-column label="类型" width="55" align="center" prop="controlName"/>
539   - <el-table-column label="审批内容" align="center" prop="controlValue" />
540   - <el-table-column label="审批人" align="center" prop="createName" />
541   - <el-table-column label="审批时间" align="center" prop="createTime" />
  590 + <el-table-column label="审批内容" align="center" prop="controlValue"/>
  591 + <el-table-column label="审批人" align="center" prop="createName"/>
  592 + <el-table-column label="审批时间" align="center" prop="createTime"/>
542 593 </el-table>
543 594 <div slot="footer" class="dialog-footer">
544 595 <el-button type="danger" @click="submitForm(form.formData[0].controlId,1)">驳回</el-button>
... ... @@ -554,36 +605,22 @@
554 605 </style>
555 606  
556 607 <script>
557   -import {
558   - listTask,
559   - formDataShow,
560   - formDataSave
561   -} from "@/api/activiti/task";
  608 +import {formDataSave, formDataShow, listTask} from "@/api/activiti/task";
562 609  
563   -import { historyFromData } from '@/api/activiti/historyFormdata'
  610 +import {historyFromData} from '@/api/activiti/historyFormdata'
564 611  
565 612  
566   -import {getSignByObjId, addSign, updateSign} from "@/api/sign/sign";
  613 +import {addSign, getSignByObjId} from "@/api/sign/sign";
567 614  
568 615 import {updateCaseOffline} from "@/api/caseOffline/caseOffline";
569 616  
570 617 import {updateViolationCaseFileReader} from "@/api/casefile/violationCaseFile";
571 618 import {updateViolationCaseFileReader1} from "@/api/casefile/violationWarningInformation";
572 619  
573   -import {
574   - getArea,
575   - getDict,
576   - getUsers,
577   - getSupervision
578   -} from "@/api/dict";
579   -
580   -import {
581   - updateThreestep,
582   - activeThreestep
583   -} from "@/api/business/threestep";
584   -import {
585   - getToken
586   -} from "@/utils/auth";
  620 +import {getDict, getSupervision, getUsers} from "@/api/dict";
  621 +
  622 +import {activeThreestep} from "@/api/business/threestep";
  623 +import {getToken} from "@/utils/auth";
587 624 import {addReplyApprovalProcess} from "@/api/casefile/replyApprovalProcess";
588 625 import {updateHandleAffairs} from "@/api/office/handle";
589 626 import Treeselect from "@riophae/vue-treeselect";
... ... @@ -600,7 +637,8 @@ import logisticsInfo from &quot;@/views/office/logistics/logisticsInfo&quot;;
600 637 import handleInfo from "@/views/office/handle/handleInfo";
601 638 import caseOfflineInfo from "@/views/caseOffline/caseOffline/caseOfflineInfo";
602 639 import violationCaseFileInfo from "@/views/casefile/violationCaseFile/violationCaseFileInfo";
603   -import violationWarningInformationInfo from "@/views/casefile/violationWarningInformation/violationWarningInformationInfo";
  640 +import violationWarningInformationInfo
  641 + from "@/views/casefile/violationWarningInformation/violationWarningInformationInfo";
604 642 import supervisionInfo from "./SupervisionInfo";
605 643  
606 644 import companyInfo from "@/views/activiti/task/companyInfo";
... ... @@ -694,7 +732,7 @@ export default {
694 732 users: [],
695 733 options: [],
696 734 usersName: [],
697   - deptName:null,
  735 + deptName: null,
698 736 supervisionData: null,
699 737 uploadImageDialog: false,
700 738 idInfo: null,
... ... @@ -710,20 +748,22 @@ export default {
710 748 caseOffline: false,
711 749 violationCaseFile: false,
712 750 violationCaseFile1: false,
713   - supervisionOpen:false,
  751 + supervisionOpen: false,
714 752 open: false,
715 753 open2: false,
716 754 conferenceOpen: false,
717 755 construct: false,
718 756 leaveApplicationOpen: false,
719   - userNodes:[],
720   - company:false,
721   - driver:false,
722   - vehicle:false,
723   - names:null,
724   - hisfromData:[],
725   - slides:[],
726   - slidesArys:[]
  757 + userNodes: [],
  758 + company: false,
  759 + driver: false,
  760 + vehicle: false,
  761 + names: null,
  762 + hisfromData: [],
  763 + slides: [],
  764 + slidesArys: [],
  765 + slides1: [],
  766 + videoSrc1: [],
727 767 };
728 768 },
729 769 created() {
... ... @@ -741,57 +781,100 @@ export default {
741 781 this.getList();
742 782 },
743 783 methods: {
  784 + removeAttchItem(index, img) {
  785 + this.form.replyImg.splice(this.form.replyImg.indexOf(img), 1);
  786 + for (let i = 0; i < this.slides1.length; i++) {
  787 + if (this.slides1[i].alt == img) {
  788 + this.slides1.splice(i, 1);
  789 + }
  790 + }
  791 + for (let i = 0; i < this.videoSrc1.length; i++) {
  792 + if (this.videoSrc1[i].alt == img) {
  793 + this.videoSrc1.splice(i, 1);
  794 + }
  795 + }
744 796  
  797 + this.$forceUpdate();
  798 + },
745 799 handleClose() {
746 800 this.uploadImageDialog = false;
747 801 this.fileList = [];
748 802 this.slidesArys = [];
  803 + this.slides1 = [];
  804 + this.videoSrc1 = [];
749 805 },
750 806 removeImage(index, img) {
751 807 let target = "sub_img" + this.picIndex;
752   - for(let i=0;i<this.slides[index].length;i++){
753   - if(this.slides[index][i].alt == img){
754   - this.slides[index].splice(i,1);
  808 + for (let i = 0; i < this.slides[index].length; i++) {
  809 + if (this.slides[index][i].alt == img) {
  810 + this.slides[index].splice(i, 1);
755 811 }
756 812 }
757 813 this.form[target].splice(this.form[target].indexOf(img), 1);
758 814 },
759 815 uploadSuccess(res, file, fileList) {
760   - if(res.code){
761   - this.$message(res.message);
762   - return;
763   - }
  816 + if (res.code) {
  817 + this.$message(res.message);
  818 + return;
  819 + }
764 820 let target = "sub_img" + this.picIndex;
765 821 if (!this.form[target]) {
766 822 this.form[target] = [];
767 823 }
768 824 this.form[target].push(file.name + ':' + res);
769   - if(file.name.indexOf('.jpg') > -1 ||file.name.indexOf('.png') > -1){
  825 + if (file.name.indexOf('.jpg') > -1 || file.name.indexOf('.png') > -1) {
770 826 let url = URL.createObjectURL(file.raw)
771 827 this.slidesArys.push({
772   - url:url,
773   - alt:res
  828 + url: url,
  829 + alt: res
774 830 })
775 831 this.slides[this.picIndex] = this.slidesArys;
776 832 }
  833 + this.$forceUpdate();
  834 + },
  835 + uploadSuccess1(res, file, fileList) {
  836 + if (res.code) {
  837 + this.$message(res.message);
  838 + return;
  839 + }
  840 + if (!this.form.replyImg) {
  841 + this.form.replyImg = [];
  842 + }
  843 + this.form.replyImg.push(res);
  844 + if (file.name.indexOf('.jpg') > -1 || file.name.indexOf('.png') > -1 || file.name.indexOf('.gif') > -1 || file.name.indexOf('.jpeg') > -1) {
  845 + let url = URL.createObjectURL(file.raw)
  846 + this.slides1.push({
  847 + url: url,
  848 + alt: res
  849 + })
  850 + }
  851 + if (file.name.indexOf('.avi') > -1 || file.name.indexOf('.mp4') > -1) {
  852 + let url = URL.createObjectURL(file.raw)
  853 + this.videoSrc1.push({
  854 + url: url,
  855 + alt: res
  856 + });
  857 + }
  858 + this.$forceUpdate();
777 859 },
778 860 showFileUpload(i) {
779 861 this.uploadImageDialog = true;
780 862 this.picIndex = i;
781 863 },
782 864 beforeUpload(file) {
783   - let isRightSize = file.size / 1024 / 1024 < 20
  865 + let isRightSize = file.size / 1024 / 1024 < 100
784 866 if (!isRightSize) {
785   - this.$message.error('文件大小超过 20MB')
  867 + this.$message.error('文件大小超过 100MB')
786 868 return isRightSize;
787 869 }
788 870 let isAccept = false;
789 871 if (file.name.indexOf('.png') > -1 || file.name.indexOf('.docx') > -1 || file.name.indexOf(".jpg") > -1 || file.name.indexOf('.doc') > -1 || file
790   - .name.indexOf('.pdf') > -1 || file.name.indexOf('.png') > -1) {
  872 + .name.indexOf('.pdf') > -1 || file.name.indexOf('.png') > -1 || file.name.indexOf('.jpeg') > -1 || file.name.indexOf('.gif') > -1
  873 + || file.name.indexOf('.avi') > -1 || file.name.indexOf('.mp4') > -1) {
791 874 isAccept = true;
792 875 }
793 876 if (!isAccept) {
794   - this.$message.error('应该选择PDF、JPG、PNG、WORD类型的文件')
  877 + this.$message.error('应该选择PDF、AVI、MP4、WORD、图片类型的文件')
795 878 return isAccept;
796 879 }
797 880 },
... ... @@ -808,23 +891,25 @@ export default {
808 891  
809 892 // 取消按钮
810 893 cancel() {
811   - this.earthsites=false;
812   - this.contract=false;
813   - this.logisticsInfoOpen=false;
814   - this.handleAffairsInfoOpen=false;
815   - this.caseOffline=false;
816   - this.violationCaseFile=false;
817   - this.violationCaseFile1=false;
818   - this.supervisionOpen=false;
819   - this.open=false;
820   - this.open2=false;
821   - this.conferenceOpen=false;
822   - this.construct=false;
823   - this.leaveApplicationOpen=false;
824   -
825   - this.company=false;
826   - this.driver=false;
827   - this.vehicle=false;
  894 + this.earthsites = false;
  895 + this.contract = false;
  896 + this.logisticsInfoOpen = false;
  897 + this.handleAffairsInfoOpen = false;
  898 + this.caseOffline = false;
  899 + this.violationCaseFile = false;
  900 + this.violationCaseFile1 = false;
  901 + this.supervisionOpen = false;
  902 + this.open = false;
  903 + this.open2 = false;
  904 + this.conferenceOpen = false;
  905 + this.construct = false;
  906 + this.leaveApplicationOpen = false;
  907 +
  908 + this.company = false;
  909 + this.driver = false;
  910 + this.vehicle = false;
  911 + this.videoSrc1 = [];
  912 + this.slides1 = [];
828 913 this.reset();
829 914 },
830 915 // 表单重置
... ... @@ -843,7 +928,7 @@ export default {
843 928 this.id = row.id;
844 929 this.taskName = row.name;
845 930 historyFromData(this.businessKey).then(response => {
846   - this.hisfromData = response.data
  931 + this.hisfromData = response.data
847 932 })
848 933  
849 934 formDataShow(row.id).then(response => {
... ... @@ -912,33 +997,37 @@ export default {
912 997 this.logisticsInfoOpen = true;
913 998 return;
914 999 }
915   - if (this.definitionKey == "handleAffairs" || this.definitionKey == "gongwenchuli" || this.definitionKey == "yuelan" || this.definitionKey=="yuelanxuexi") {
  1000 + if (this.definitionKey == "handleAffairs" || this.definitionKey == "gongwenchuli" || this.definitionKey == "yuelan" || this.definitionKey == "yuelanxuexi") {
916 1001 this.controlId = this.form.formData[0].controlId;
917 1002 this.idInfo = row.businessKey.split(":")[1];
918 1003 this.handleAffairsInfoOpen = true;
919 1004 return;
920 1005 }
921   - if(this.definitionKey == "workflow_caseoffline"){
  1006 + if (this.definitionKey == "workflow_caseoffline") {
922 1007 this.caseOffline = true;
923 1008 return;
924 1009 }
925 1010  
926   - if(this.definitionKey == "workflow_casefile"){
  1011 + if (this.definitionKey == "workflow_casefile") {
927 1012 this.violationCaseFile = true;
  1013 + this.videoSrc1 = [];
  1014 + this.slides1 = [];
928 1015 return;
929 1016 }
930 1017  
931   - if(this.definitionKey == "violation_warning"){
  1018 + if (this.definitionKey == "violation_warning") {
932 1019 this.violationCaseFile1 = true;
  1020 + this.videoSrc1 = [];
  1021 + this.slides1 = [];
933 1022 return;
934 1023 }
935   - if(this.definitionKey.indexOf("supervision")>-1){
  1024 + if (this.definitionKey.indexOf("supervision") > -1) {
936 1025 console.log(row)
937 1026 const params = {
938 1027 id: row.businessKey.split(":")[1],
939 1028 }
940   - getSupervision(params).then(res=>{
941   - if(res.result==null){
  1029 + getSupervision(params).then(res => {
  1030 + if (res.result == null) {
942 1031 this.$message.error("获取纪检督察详情失败!请重试")
943 1032 return;
944 1033 }
... ... @@ -947,15 +1036,15 @@ export default {
947 1036 })
948 1037 return;
949 1038 }
950   - if(this.definitionKey == "workflow_company"){
  1039 + if (this.definitionKey == "workflow_company") {
951 1040 this.company = true;
952 1041 return;
953 1042 }
954   - if(this.definitionKey == "workflow_vehicle"){
  1043 + if (this.definitionKey == "workflow_vehicle") {
955 1044 this.vehicle = true;
956 1045 return;
957 1046 }
958   - if(this.definitionKey == "workflow_driver"){
  1047 + if (this.definitionKey == "workflow_driver") {
959 1048 this.driver = true;
960 1049 return;
961 1050 }
... ... @@ -999,12 +1088,12 @@ export default {
999 1088 });
1000 1089 });
1001 1090 } else {
1002   - formDataSave(this.id, this.form.formData).then(response => {
1003   - this.msgSuccess("审批成功");
1004   - this.open2 = false;
1005   - this.taskList = [];
1006   - this.getList();
1007   - });
  1091 + formDataSave(this.id, this.form.formData).then(response => {
  1092 + this.msgSuccess("审批成功");
  1093 + this.open2 = false;
  1094 + this.taskList = [];
  1095 + this.getList();
  1096 + });
1008 1097 }
1009 1098 return;
1010 1099 }
... ... @@ -1064,6 +1153,24 @@ export default {
1064 1153 });
1065 1154 }
1066 1155 if (this.definitionKey == "workflow_caseoffline") {
  1156 +
  1157 + let postData = {};
  1158 +
  1159 + postData.tableName = this.businessKey;
  1160 + postData.replyImg = this.form.replyImg + "";
  1161 + postData.reply = this.form.reply;
  1162 + if(postData.reply==null || postData.reply==""){
  1163 + if(value==0){
  1164 + postData.reply = "通过";
  1165 + }else{
  1166 + postData.reply = "驳回";
  1167 + }
  1168 + }
  1169 +
  1170 + addReplyApprovalProcess(postData).then(res => {
  1171 + this.videoSrc1 = [];
  1172 + this.slides1 = [];
  1173 + });
1067 1174 let id = this.businessKey.split(":")[1];
1068 1175 let query = {
1069 1176 id: id,
... ... @@ -1096,112 +1203,78 @@ export default {
1096 1203 this.getList();
1097 1204 });
1098 1205 })
1099   -
1100   -
1101 1206 return;
1102 1207 }
1103 1208  
1104   -
1105   - if (this.definitionKey == "workflow_caseoffline") {
1106   - let id = this.businessKey.split(":")[1];
1107   - let query = {
1108   - id: id,
1109   - };
1110   - let adv = this.form.advice;
1111   - if (!adv) {
1112   - if (value == 0) {
1113   - adv = "审批通过";
1114   - } else {
1115   - adv = "审批驳回";
  1209 + if (this.definitionKey == "workflow_casefile") {
  1210 + let postData = {};
  1211 +
  1212 + postData.tableName = this.businessKey;
  1213 + postData.replyImg = this.form.replyImg + "";
  1214 + postData.reply = this.form.reply;
  1215 + if(postData.reply==null || postData.reply==""){
  1216 + if(value==0){
  1217 + postData.reply = "通过";
  1218 + }else{
  1219 + postData.reply = "驳回";
1116 1220 }
1117 1221 }
1118   - if (this.taskName == "渣土办科员") {
1119   - query.advice1 = adv;
1120   - } else if (this.taskName == "渣土办分管领导") {
1121   - query.advice2 = adv;
1122   - } else if (this.taskName == "治理部部长") {
1123   - query.advice3 = adv;
1124   - } else if (this.taskName == "治理部分管领导") {
1125   - query.advice4 = adv;
1126   - }
1127   - updateCaseOffline(query).then(res => {
1128   - formDataSave(this.id, this.form.formData).then(response => {
1129   - this.msgSuccess("审批成功");
1130   - this.caseOffline = false;
1131   - this.getList();
1132   - });
1133   - })
1134   - return;
1135   - }
1136   - if (this.definitionKey == "workflow_casefile") {
1137   -
1138 1222 if (this.taskName == "车辆所属企业" || this.taskName == "渣土办科员") {
1139 1223 console.log(this.businessKey);
1140 1224 let objId = this.businessKey.split(":")[1];
1141 1225 updateViolationCaseFileReader({id: objId}).then(res => {
1142   - formDataSave(this.id, this.form.formData).then(response => {
1143   - this.msgSuccess("审批成功");
1144   - this.violationCaseFile = false;
1145   - this.getList();
1146   - });
1147 1226 })
1148   - return;
1149   - } else {
1150   - let postData = {};
1151   -
1152   - postData.tableName = this.businessKey;
1153   - postData.replyImg = this.form.replyImg;
1154   - postData.reply = this.form.reply;
1155   - addReplyApprovalProcess(postData).then(res => {
1156   - formDataSave(this.id, this.form.formData).then(response => {
1157   - this.msgSuccess("审批成功");
1158   - this.violationCaseFile = false;
1159   - this.getList();
1160   - });
1161   - });
1162   -
1163   -
1164 1227 }
  1228 + addReplyApprovalProcess(postData).then(res => {
  1229 + this.videoSrc1 = [];
  1230 + this.slides1 = [];
  1231 + formDataSave(this.id, this.form.formData).then(response => {
  1232 + this.msgSuccess("审批成功");
  1233 + this.violationCaseFile = false;
  1234 + this.getList();
  1235 + });
  1236 + });
1165 1237 }
1166 1238 if (this.definitionKey == "violation_warning") {
  1239 + let postData = {};
  1240 + postData.tableName = this.businessKey;
  1241 + postData.replyImg = this.form.replyImg + "";
  1242 + postData.reply = this.form.reply;
  1243 + if(postData.reply==null || postData.reply==""){
  1244 + if(value==0){
  1245 + postData.reply = "通过";
  1246 + }else{
  1247 + postData.reply = "驳回";
  1248 + }
  1249 + }
  1250 +
  1251 +
1167 1252 if (this.taskName == "车辆所属企业" || this.taskName == "渣土办科员") {
1168   - console.log(this.businessKey);
1169 1253 let objId = this.businessKey.split(":")[1];
1170 1254 updateViolationCaseFileReader1({id: objId}).then(res => {
1171   - formDataSave(this.id, this.form.formData).then(response => {
1172   - this.msgSuccess("审批成功");
1173   - this.violationCaseFile1 = false;
1174   - this.getList();
1175   - });
1176 1255 })
1177   - return;
1178   - } else {
1179   - let postData = {};
1180   - postData.tableName = this.businessKey;
1181   - postData.replyImg = this.form.replyImg;
1182   - postData.reply = this.form.reply;
1183   - addReplyApprovalProcess(postData).then(res => {
1184   - formDataSave(this.id, this.form.formData).then(response => {
1185   - this.msgSuccess("审批成功");
1186   - this.violationCaseFile1 = false;
1187   - this.getList();
1188   - });
1189   - });
1190   -
1191   -
1192 1256 }
  1257 + addReplyApprovalProcess(postData).then(res => {
  1258 + this.videoSrc1 = [];
  1259 + this.slides1 = [];
  1260 + formDataSave(this.id, this.form.formData).then(response => {
  1261 + this.msgSuccess("审批成功");
  1262 + this.violationCaseFile1 = false;
  1263 + this.getList();
  1264 + });
  1265 + });
1193 1266 }
1194 1267  
1195   - if(this.definitionKey.indexOf("supervision")>-1){
  1268 + if (this.definitionKey.indexOf("supervision") > -1) {
1196 1269 formDataSave(this.id, this.form.formData).then(response => {
1197 1270 this.msgSuccess("审批成功");
1198 1271 this.supervisionOpen = false;
1199 1272 this.getList();
1200 1273 });
1201 1274 }
1202   - if(this.definitionKey == "workflow_company" ||
1203   - this.definitionKey == "workflow_driver" ||
1204   - this.definitionKey == "workflow_vehicle" ){
  1275 + if (this.definitionKey == "workflow_company" ||
  1276 + this.definitionKey == "workflow_driver" ||
  1277 + this.definitionKey == "workflow_vehicle") {
1205 1278 formDataSave(this.id, this.form.formData).then(response => {
1206 1279 this.msgSuccess("审批成功");
1207 1280 this.cancel();
... ... @@ -1264,19 +1337,19 @@ export default {
1264 1337 }
1265 1338 this.form.formData[0].controlValue = value;
1266 1339 if (this.definitionKey == "yuelan") {
1267   - if(this.deptName==null){
  1340 + if (this.deptName == null) {
1268 1341 this.$message.error("请选择阅览部门!");
1269 1342 return;
1270 1343 }
1271   - if(this.users.length==0){
  1344 + if (this.users.length == 0) {
1272 1345 this.$message.error("请选择阅览人!");
1273 1346 return;
1274 1347 }
1275 1348 const userNames = [];
1276   - const newArr = this.ArrSet(this.userNodes,"id");
  1349 + const newArr = this.ArrSet(this.userNodes, "id");
1277 1350 for (let i = 0; i < newArr.length; i++) {
1278 1351 for (let j = 0; j < this.users.length; j++) {
1279   - if(newArr[i].id==this.users[j]){
  1352 + if (newArr[i].id == this.users[j]) {
1280 1353 userNames.push(newArr[i].label);
1281 1354 }
1282 1355 }
... ... @@ -1398,7 +1471,7 @@ export default {
1398 1471 });
1399 1472 });
1400 1473 },
1401   - handleSelect(node){
  1474 + handleSelect(node) {
1402 1475 this.userNodes.push(node);
1403 1476 },
1404 1477 ArrSet(Arr, id) {
... ...
trash-ui/src/views/business/supervisionSpecial/index.vue
... ... @@ -130,7 +130,7 @@
130 130 accept=".docx,.doc,.pdf,.png,.jpeg,.png,.jpg,.mp4,.avi"
131 131 :on-success="uploadSuccess" :before-upload="beforeUpload">
132 132 <el-button size="small" type="primary">选择附件</el-button>
133   - <div slot="tip" class="el-upload__tip">只能上传不超过 20MB 的jpg、png、pdf、word、avi、mp4文件</div>
  133 + <div slot="tip" class="el-upload__tip">只能上传不超过 100MB 的jpg、png、pdf、word、avi、mp4文件</div>
134 134 </el-upload>
135 135 <div style="height: 40px;width:100%;">
136 136 <el-button type="primary" style="margin-top: 20px;float:right;" @click="handleClose">关闭</el-button>
... ... @@ -393,7 +393,6 @@ export default {
393 393 url:url,
394 394 alt:res
395 395 })
396   -
397 396 }
398 397 if(file.name.indexOf('.avi') > -1 ||file.name.indexOf('.mp4') > -1){
399 398 let url = URL.createObjectURL(file.raw)
... ...
trash-ui/src/views/caseOffline/caseOffline/caseOfflineInfo.vue
... ... @@ -51,11 +51,24 @@
51 51 <a @click="downloadFile(img);" style="color: blue;" v-for="(img,index) in form.attach"> {{ img.split("/")[img.split("/").length - 1] }} </a>
52 52 </el-form-item>
53 53  
54   -
55   - <el-table :data="adviceList" v-if="adviceList != null">
56   - <el-table-column label="用户" width="55" align="center" prop="name"/>
57   - <el-table-column label="审批内容" align="center" prop="text"/>
58   - <el-table-column label="时间" align="center" prop="time"/>
  54 + <el-table :data="replyApprovalProcessList">
  55 + <el-table-column property="replyPeople" label="操作人" header-align="center" align="center"></el-table-column>
  56 + <el-table-column property="reply" label="意见" header-align="center" align="center"></el-table-column>
  57 + <el-table-column property="replyTime" label="操作时间" header-align="center" align="center"></el-table-column>
  58 + <el-table-column property="replyImg" label="预览" header-align="center" align="center">
  59 + <template slot-scope="scope">
  60 + <el-button
  61 + size="mini"
  62 + type="text"
  63 + icon="el-icon-view"
  64 + @click="openImage(scope.row.replyImg)"
  65 + v-if="scope.row.replyImg!=null && scope.row.replyImg!='undefined'"
  66 + v-hasPermi="['casefile:violationWarningInformation:edit']"
  67 + >查看
  68 + </el-button>
  69 + <span v-if="scope.row.replyImg==null || scope.row.replyImg=='undefined'">暂无</span>
  70 + </template>
  71 + </el-table-column>
59 72 </el-table>
60 73  
61 74  
... ... @@ -63,6 +76,22 @@
63 76 <el-dialog title="" :visible.sync="showPic" append-to-body width="400px">
64 77 <img :src="picImage" width="100%" height="400px"/>
65 78 </el-dialog>
  79 + <el-dialog title="预览" :visible.sync="openImg" append-to-body width="300px">
  80 + <div v-for="item in img" style="border: 1px black solid;text-align: center;">
  81 +
  82 + <el-image style="width: 250px; height: 250px; margin: 5px;"
  83 + v-if="item.indexOf('.jpg')>-1||item.indexOf('.png')>-1||item.indexOf('.jpeg')>-1||item.indexOf('.gif')>-1"
  84 + :src="showSlides(item)"
  85 + :preview-src-list="[showSlides(item)]"
  86 + :z-index="2000">
  87 + </el-image>
  88 + <div style="display: inline-block;margin: 5px;position: relative; width: 250px;height: 250px;overflow:hidden;" v-if="item.indexOf('.mp4')>-1||item.indexOf('.avi')>-1">
  89 + <video width="100%" controls="controls" height="100%" :src="showSlides(item)"></video>
  90 + </div>
  91 + <a @click="downloadFile(item);" style="color: blue;"> 下载: {{ item.split("/")[item.split("/").length - 1] }} </a>
  92 + </div>
  93 +
  94 + </el-dialog>
66 95 </div>
67 96 </template>
68 97  
... ...
trash-ui/src/views/caseOffline/caseOffline/index.vue
... ... @@ -158,4 +158,4 @@
158 158 </div>
159 159 </template>
160 160  
161   -<script src="../../../api/caseoffline.js"/>
  161 +<script src="@/api/caseoffline.js"/>
... ...
trash-ui/src/views/casefile/violationCaseFile/violationCaseFileInfo.vue
... ... @@ -151,11 +151,19 @@
151 151 </div>
152 152 </el-dialog>
153 153 <el-dialog title="预览" :visible.sync="openImg" append-to-body v-if="entryType==0" width="300px">
154   - <el-image style="width: 250px; height: 250px; margin: 5px;"
155   - :src="img[0]"
156   - :preview-src-list="img"
157   - :z-index="2000">
158   - </el-image>
  154 + <div v-for="item in img" style="border: 1px black solid;text-align: center;">
  155 +
  156 + <el-image style="width: 250px; height: 250px; margin: 5px;"
  157 + v-if="item.indexOf('.jpg')>-1||item.indexOf('.png')>-1||item.indexOf('.jpeg')>-1||item.indexOf('.gif')>-1"
  158 + :src="showFile(item)"
  159 + :preview-src-list="[showFile(item)]"
  160 + :z-index="2000">
  161 + </el-image>
  162 + <div style="display: inline-block;margin: 5px;position: relative; width: 250px;height: 250px;overflow:hidden;" v-if="item.indexOf('.mp4')>-1||item.indexOf('.avi')>-1">
  163 + <video width="100%" controls="controls" height="100%" :src="showFile(item)"></video>
  164 + </div>
  165 + <a @click="downloadFile(item);" style="color: blue;"> 下载: {{ item.split("/")[item.split("/").length - 1] }} </a>
  166 + </div>
159 167 </el-dialog>
160 168 </el-form>
161 169 </template>
... ... @@ -234,10 +242,19 @@ export default {
234 242 a.setAttribute('href', process.env.VUE_APP_BASE_API + url);
235 243 a.click()
236 244 },
237   - openImage(img) {
  245 + openImage(path) {
238 246 this.img = [];
239 247 this.openImg = true;
240   - this.img.push(img);
  248 + let files = path.split(",");
  249 + for(let i=0;i<files.length;i++){
  250 + this.img.push(files[i]);
  251 + }
  252 + },
  253 + downloadFile(path) {
  254 + window.location.href = process.env.VUE_APP_BASE_API + "/business/threestep/download?path=" + encodeURI(path);
  255 + },
  256 + showFile(path) {
  257 + return process.env.VUE_APP_BASE_API + path;
241 258 },
242 259 }
243 260 }
... ...
trash-ui/src/views/casefile/violationWarningInformation/violationWarningInformationInfo.vue
... ... @@ -149,11 +149,20 @@
149 149 </div>
150 150 </el-dialog>
151 151 <el-dialog title="预览" :visible.sync="openImg" append-to-body v-if="entryType==0" width="300px">
152   - <el-image style="width: 250px; height: 250px; margin: 5px;"
153   - :src="img[0]"
154   - :preview-src-list="img"
155   - :z-index="2000">
156   - </el-image>
  152 + <div v-for="item in img" style="border: 1px black solid;text-align: center;">
  153 +
  154 + <el-image style="width: 250px; height: 250px; margin: 5px;"
  155 + v-if="item.indexOf('.jpg')>-1||item.indexOf('.png')>-1||item.indexOf('.jpeg')>-1||item.indexOf('.gif')>-1"
  156 + :src="showFile(item)"
  157 + :preview-src-list="[showFile(item)]"
  158 + :z-index="2000">
  159 + </el-image>
  160 + <div style="display: inline-block;margin: 5px;position: relative; width: 250px;height: 250px;overflow:hidden;" v-if="item.indexOf('.mp4')>-1||item.indexOf('.avi')>-1">
  161 + <video width="100%" controls="controls" height="100%" :src="showFile(item)"></video>
  162 + </div>
  163 + <a @click="downloadFile(item);" style="color: blue;"> 下载: {{ item.split("/")[item.split("/").length - 1] }} </a>
  164 + </div>
  165 +
157 166 </el-dialog>
158 167 </el-form>
159 168 </template>
... ... @@ -228,11 +237,20 @@ export default {
228 237 a.setAttribute('href', process.env.VUE_APP_BASE_API + url);
229 238 a.click()
230 239 },
231   - openImage(img) {
  240 + openImage(path) {
232 241 this.img = [];
233 242 this.openImg = true;
234   - this.img.push(img);
235   - }
  243 + let files = path.split(",");
  244 + for(let i=0;i<files.length;i++){
  245 + this.img.push(files[i]);
  246 + }
  247 + },
  248 + downloadFile(path) {
  249 + window.location.href = process.env.VUE_APP_BASE_API + "/business/threestep/download?path=" + encodeURI(path);
  250 + },
  251 + showFile(path) {
  252 + return process.env.VUE_APP_BASE_API + path;
  253 + },
236 254 }
237 255 }
238 256 </script>
... ...
trash-workFlow/src/main/java/com/trash/casefile/service/impl/ViolationCaseFileServiceImpl.java
... ... @@ -120,9 +120,7 @@ public class ViolationCaseFileServiceImpl implements IViolationCaseFileService
120 120  
121 121 int i = 0;
122 122 //根据发送对象判断流程
123   - if(violationCaseFile.getSendObject().equals("区管理部门(消)")){
124   - i = 3;
125   - }else if(violationCaseFile.getSendObject().equals("区管理部门(治)")){
  123 + if(violationCaseFile.getSendObject().equals("区管理部门")){
126 124  
127 125 if(violationCaseFile.getViolationGrade().equals("一般类")){
128 126 i = 1;
... ... @@ -130,7 +128,9 @@ public class ViolationCaseFileServiceImpl implements IViolationCaseFileService
130 128 i = 2;
131 129 }
132 130 }
133   -
  131 + if(violationCaseFile.getViolationType().equals("三无车辆进入工地")||violationCaseFile.getViolationType().equals("三无车辆进入消纳场")){
  132 + i = 2;
  133 + }
134 134  
135 135 WorkflowService.createCaseFile(violationCaseFile,i);
136 136  
... ...
trash-workFlow/src/main/java/com/trash/casefile/service/impl/ViolationWarningInformationServiceImpl.java
... ... @@ -123,9 +123,7 @@ public class ViolationWarningInformationServiceImpl implements IViolationWarning
123 123 }
124 124 int i = 0;
125 125 //根据发送对象判断流程
126   - if(violationWarningInformation.getSendObject().equals("区管理部门(消)")){
127   - i = 3;
128   - }else if(violationWarningInformation.getSendObject().equals("区管理部门(治)")){
  126 + if(violationWarningInformation.getSendObject().equals("区管理部门")){
129 127  
130 128 if(violationWarningInformation.getViolationGrade().equals("一般类")){
131 129 i = 1;
... ...