|
@@ -4,7 +4,7 @@
|
|
|
<div class="page-container">
|
|
<div class="page-container">
|
|
|
<!-- 基本信息 -->
|
|
<!-- 基本信息 -->
|
|
|
<div class="card" v-if="taskInfo">
|
|
<div class="card" v-if="taskInfo">
|
|
|
- <van-panel :title="taskInfo.title" :status="getDicts(taskInfo.status,'resumption_status')">
|
|
|
|
|
|
|
+ <van-panel :title="taskInfo.title" :status="getDicts(taskInfo.status)">
|
|
|
<van-cell title="日期时间" :value="rangDate(taskInfo.planstarttime,taskInfo.planendtime)" />
|
|
<van-cell title="日期时间" :value="rangDate(taskInfo.planstarttime,taskInfo.planendtime)" />
|
|
|
<van-collapse :border="false" v-model="activeNames">
|
|
<van-collapse :border="false" v-model="activeNames">
|
|
|
<van-collapse-item title="履职内容" :name="1">
|
|
<van-collapse-item title="履职内容" :name="1">
|
|
@@ -54,7 +54,7 @@
|
|
|
|
|
|
|
|
</van-cell>
|
|
</van-cell>
|
|
|
<van-cell v-show="nfcImage.length > 0" :border="false" >
|
|
<van-cell v-show="nfcImage.length > 0" :border="false" >
|
|
|
- <div v-if="v.img" class="nfc-img" v-for="v in nfcImage" :key="v.img">
|
|
|
|
|
|
|
+ <div v-if="v.img" class="nfc-img" v-for="(v,i) in nfcImage" :key="v.img" @click="preViewNFC(i)">
|
|
|
<img :src="imgUrl(v.img)" alt="" >
|
|
<img :src="imgUrl(v.img)" alt="" >
|
|
|
<span>{{v.checkName}}</span>
|
|
<span>{{v.checkName}}</span>
|
|
|
</div>
|
|
</div>
|
|
@@ -125,7 +125,7 @@
|
|
|
</template>
|
|
</template>
|
|
|
</van-cell>
|
|
</van-cell>
|
|
|
<van-cell-group v-show="item.resvalue">
|
|
<van-cell-group v-show="item.resvalue">
|
|
|
- <select-cell required :disabled="!enable" title="整改期限" v-model="item.rectificationDeadline" :dict="'rectification_deadline'" />
|
|
|
|
|
|
|
+ <select-cell required :disabled="!enable" title="整改期限" v-model="item.rectificationDeadline" :data-list="dayList" />
|
|
|
<van-field
|
|
<van-field
|
|
|
required
|
|
required
|
|
|
v-model="item.resremark"
|
|
v-model="item.resremark"
|
|
@@ -137,7 +137,7 @@
|
|
|
<div class="upload-box" >
|
|
<div class="upload-box" >
|
|
|
<uploader :maxCount="5" v-if="enable" v-model="item.imgData"/>
|
|
<uploader :maxCount="5" v-if="enable" v-model="item.imgData"/>
|
|
|
<van-cell v-else>
|
|
<van-cell v-else>
|
|
|
- <div class="nfc-img van-hairline--surround" v-for="v in item.imgData" :key="v.id">
|
|
|
|
|
|
|
+ <div class="nfc-img van-hairline--surround" v-for="(v,i) in item.imgData" :key="v.imgPath" @click="clickWarnImage(item.imgData,i)">
|
|
|
<img :src="imgUrl(v.imgPath)" alt="" >
|
|
<img :src="imgUrl(v.imgPath)" alt="" >
|
|
|
<span>{{v.checkName}}</span>
|
|
<span>{{v.checkName}}</span>
|
|
|
</div>
|
|
</div>
|
|
@@ -166,6 +166,10 @@
|
|
|
</fieldset>
|
|
</fieldset>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
+<!-- <van-image-preview v-model="showPreView" :images="preViewImages.images" :startPosition="preViewImages.startPosition">-->
|
|
|
|
|
+<!-- <template v-slot:index>第{{ index }}页</template>-->
|
|
|
|
|
+<!-- </van-image-preview>-->
|
|
|
|
|
+
|
|
|
<!-- nfc弹窗 -->
|
|
<!-- nfc弹窗 -->
|
|
|
<nfc-popup v-if="enable" ref="NfcPopup" @change="changeNfcImg"></nfc-popup>
|
|
<nfc-popup v-if="enable" ref="NfcPopup" @change="changeNfcImg"></nfc-popup>
|
|
|
</div>
|
|
</div>
|
|
@@ -179,6 +183,9 @@ import Uploader from '@/components/upload/uploader';
|
|
|
import NfcPopup from '@/components/nfcPopup/more';
|
|
import NfcPopup from '@/components/nfcPopup/more';
|
|
|
import {taskDetails,saveTaskData} from "@/views/menu/LZRegister/api";
|
|
import {taskDetails,saveTaskData} from "@/views/menu/LZRegister/api";
|
|
|
import {formatDate} from "@/filters/filter";
|
|
import {formatDate} from "@/filters/filter";
|
|
|
|
|
+import {getDict} from "@/api/toConsult";
|
|
|
|
|
+import {imgUrl} from "@/utils";
|
|
|
|
|
+import { ImagePreview } from 'vant';
|
|
|
export default {
|
|
export default {
|
|
|
components:{NavBar,SelectCell,DateCell,Uploader,NfcPopup},
|
|
components:{NavBar,SelectCell,DateCell,Uploader,NfcPopup},
|
|
|
data(){
|
|
data(){
|
|
@@ -207,23 +214,42 @@ export default {
|
|
|
//nfc图片
|
|
//nfc图片
|
|
|
nfcImage:[],
|
|
nfcImage:[],
|
|
|
enable:false,
|
|
enable:false,
|
|
|
|
|
+ stateList:[],
|
|
|
|
|
+ dayList:[],
|
|
|
|
|
+ preViewImages:{
|
|
|
|
|
+ images:[],
|
|
|
|
|
+ startPosition:0
|
|
|
|
|
+ },
|
|
|
|
|
+ showPreView:false,
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
|
|
+ created() {
|
|
|
|
|
+ getDict( 'resumption_status' ).then(res => {
|
|
|
|
|
+ let { data } = res
|
|
|
|
|
+ this.stateList = data;
|
|
|
|
|
+ })
|
|
|
|
|
+ getDict( 'rectification_deadline' ).then(res => {
|
|
|
|
|
+ let { data } = res
|
|
|
|
|
+ this.dayList = data;
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
mounted() {
|
|
mounted() {
|
|
|
this.getData();
|
|
this.getData();
|
|
|
},
|
|
},
|
|
|
- computed:{
|
|
|
|
|
- },
|
|
|
|
|
- // watch:{
|
|
|
|
|
- // NFCList(){
|
|
|
|
|
- // if(!this.NFCList) return;
|
|
|
|
|
- // let arr = this.NFCList.filter(item=>{
|
|
|
|
|
- // return item.status == 0;
|
|
|
|
|
- // })
|
|
|
|
|
- // this.NFCNum = arr.length;
|
|
|
|
|
- // },
|
|
|
|
|
- // },
|
|
|
|
|
methods:{
|
|
methods:{
|
|
|
|
|
+ clickWarnImage(arr,i){
|
|
|
|
|
+ this.preViewImages.images = arr.map(v=>imgUrl(v.imgPath));
|
|
|
|
|
+ this.preViewImages.startPosition = i;
|
|
|
|
|
+ ImagePreview(this.preViewImages)
|
|
|
|
|
+ },
|
|
|
|
|
+ preViewNFC(i){
|
|
|
|
|
+ this.preViewImages.images = this.nfcImage.map(v=>imgUrl(v.img));
|
|
|
|
|
+ this.preViewImages.startPosition = i;
|
|
|
|
|
+ ImagePreview(this.preViewImages)
|
|
|
|
|
+ },
|
|
|
|
|
+ getDicts(s){
|
|
|
|
|
+ return this.stateList.find(v=> s == v.dictValue)?.dictLabel;
|
|
|
|
|
+ },
|
|
|
//初始化数据
|
|
//初始化数据
|
|
|
getData() {
|
|
getData() {
|
|
|
let data = {
|
|
let data = {
|
|
@@ -246,7 +272,6 @@ export default {
|
|
|
this.areaList = res.data.taskarealist;
|
|
this.areaList = res.data.taskarealist;
|
|
|
this.activeArea(this.areaList[0],0);
|
|
this.activeArea(this.areaList[0],0);
|
|
|
this.getAllCheckItemNum();
|
|
this.getAllCheckItemNum();
|
|
|
- console.log(res)
|
|
|
|
|
})
|
|
})
|
|
|
},
|
|
},
|
|
|
//保存数据
|
|
//保存数据
|
|
@@ -276,13 +301,10 @@ export default {
|
|
|
//验证必填项
|
|
//验证必填项
|
|
|
let arr = pointdata.filter(v=>{
|
|
let arr = pointdata.filter(v=>{
|
|
|
if(v.resvalue === 1 ){
|
|
if(v.resvalue === 1 ){
|
|
|
- console.log(v,'验证')
|
|
|
|
|
return !v.resremark || !v.rectificationDeadline
|
|
return !v.resremark || !v.rectificationDeadline
|
|
|
}
|
|
}
|
|
|
})
|
|
})
|
|
|
if(arr.length) return this.$toast(`${arr[0].areaname}-${arr[0].itemname}:信息不完整请填写`);
|
|
if(arr.length) return this.$toast(`${arr[0].areaname}-${arr[0].itemname}:信息不完整请填写`);
|
|
|
-
|
|
|
|
|
- console.log(this.nfcImage,'this.nfcImage')
|
|
|
|
|
let data = {
|
|
let data = {
|
|
|
dateTime:new Date(),
|
|
dateTime:new Date(),
|
|
|
isSubmit:0,
|
|
isSubmit:0,
|
|
@@ -306,7 +328,6 @@ export default {
|
|
|
})
|
|
})
|
|
|
});
|
|
});
|
|
|
this.allCheckNum = num;
|
|
this.allCheckNum = num;
|
|
|
- console.log(num,'num1111')
|
|
|
|
|
},
|
|
},
|
|
|
//点击区域
|
|
//点击区域
|
|
|
clickArea(area,index){
|
|
clickArea(area,index){
|
|
@@ -317,7 +338,6 @@ export default {
|
|
|
//设置选中样式
|
|
//设置选中样式
|
|
|
this.$nextTick(()=>{
|
|
this.$nextTick(()=>{
|
|
|
let doms = document.getElementsByClassName('check-area');
|
|
let doms = document.getElementsByClassName('check-area');
|
|
|
- console.log(doms,'doms')
|
|
|
|
|
Array.prototype.forEach.call(doms,item=>{
|
|
Array.prototype.forEach.call(doms,item=>{
|
|
|
item.classList.remove('active');
|
|
item.classList.remove('active');
|
|
|
})
|
|
})
|
|
@@ -338,7 +358,6 @@ export default {
|
|
|
this.nfcImage.push(v)
|
|
this.nfcImage.push(v)
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
- console.log(this.nfcImage,'nfcImage')
|
|
|
|
|
//获取当前区域检查项数量
|
|
//获取当前区域检查项数量
|
|
|
this.getCheckItemNum();
|
|
this.getCheckItemNum();
|
|
|
//获取当前区域nfc数量
|
|
//获取当前区域nfc数量
|
|
@@ -531,8 +550,8 @@ export default {
|
|
|
left: 0;
|
|
left: 0;
|
|
|
display: block;
|
|
display: block;
|
|
|
width: 100%;
|
|
width: 100%;
|
|
|
- background-color: rgba(0,0,0,.1 );
|
|
|
|
|
- color: #aaa;
|
|
|
|
|
|
|
+ background-color: rgba(0,0,0,.2 );
|
|
|
|
|
+ color: #eaeaea;
|
|
|
font-size: 20px;
|
|
font-size: 20px;
|
|
|
overflow: hidden;
|
|
overflow: hidden;
|
|
|
text-overflow: ellipsis;
|
|
text-overflow: ellipsis;
|