2024-02-03 09:32:20 +08:00
|
|
|
<template><!-- 源自pages/application/hidden-trouble-investigation/hidden-trouble-app/check-items-custom-list.vue -->
|
|
|
|
<view>
|
|
|
|
<cu-custom bgColor="bg-gradual-blueness" :isBack="true">
|
|
|
|
<block slot="backText">返回</block>
|
|
|
|
<block slot="content">隐患排查项</block>
|
|
|
|
</cu-custom>
|
|
|
|
<scroll-view scroll-y>
|
|
|
|
<view class="check-items" v-for="(item,index) in list" :key="item.CUSTOM_ITEM_ID">
|
|
|
|
<view class="title">检查内容:{{item.CHECK_CONTENT}}</view>
|
|
|
|
<view class="title">检查标准:{{item.CHECK_STANDARD}}</view>
|
|
|
|
<view v-if="item.REFERENCE_BASIS" class="title">参考依据:{{item.REFERENCE_BASIS}}</view>
|
|
|
|
<view class="check-items-select">
|
|
|
|
<radio-group class="block">
|
|
|
|
<view class="flex justify-between padding-sm">
|
|
|
|
<view class="select">
|
|
|
|
<view @click="checkTrue({index:index},item.HASHIDDEN,0)" class="flex align-center">
|
|
|
|
<radio class='mr10' :class="item.ISNORMAL==0?'checked':''" :checked="item.ISNORMAL==0" disabled></radio>
|
2024-02-20 00:42:47 +08:00
|
|
|
<text>合格</text>
|
2024-02-03 09:32:20 +08:00
|
|
|
</view>
|
|
|
|
<view v-if="item.ISNORMAL==0" @click="$noMultipleClicks(gotoAddImg,item.RECORDITEM_ID)" class="cuIcon-infofill text-blue unqualified"></view>
|
|
|
|
</view>
|
|
|
|
<view class="select">
|
|
|
|
<view class="flex align-center" @click="$noMultipleClicks(goToAdd,
|
|
|
|
{
|
2024-03-22 15:09:31 +08:00
|
|
|
CHECK_CONTENT:item.CHECK_CONTENT,
|
|
|
|
CUSTOM_ITEM_ID:item.CUSTOM_ITEM_ID,
|
|
|
|
RECORDITEM_ID:item.RECORDITEM_ID,
|
|
|
|
index:index,
|
|
|
|
CUSTOM_ID:item.CUSTOM_ID,
|
|
|
|
HASHIDDEN:item.HASHIDDEN,
|
|
|
|
CHECK_CATEGORY:item.CHECK_CATEGORY,
|
|
|
|
CHECK_CATEGORY_NAME:item.CHECK_CATEGORY_NAME,
|
|
|
|
CHECK_ITEM:item.CHECK_ITEM,
|
|
|
|
CHECK_ITEM_NAME:item.CHECK_ITEM_NAME,
|
|
|
|
CHECK_STANDARD: item.CHECK_STANDARD,
|
|
|
|
REFERENCE_BASIS: item.REFERENCE_BASIS,
|
|
|
|
CHECK_RESULT: item.CHECK_UNQUALIFIED
|
|
|
|
})">
|
2024-02-03 09:32:20 +08:00
|
|
|
<radio class='red mr10' :class="item.ISNORMAL==1?'checked':''" :checked="item.ISNORMAL==1" disabled ></radio>
|
2024-02-20 00:42:47 +08:00
|
|
|
<text>不合格</text>
|
2024-02-03 09:32:20 +08:00
|
|
|
</view>
|
|
|
|
<view v-if="item.ISNORMAL==1" @click="$noMultipleClicks(goToEdit,item.HIDDEN_ID)" class="cuIcon-infofill text-blue unqualified"></view>
|
|
|
|
</view>
|
|
|
|
<view class="select">
|
|
|
|
<view @click="checkTrue({index:index},item.HASHIDDEN,2)" class="flex align-center">
|
|
|
|
<radio class='mr10' :class="item.ISNORMAL==2?'checked':''" :checked="item.ISNORMAL==2" disabled></radio>
|
|
|
|
<text>不涉及</text>
|
|
|
|
</view>
|
|
|
|
</view>
|
|
|
|
</view>
|
2024-02-20 00:42:47 +08:00
|
|
|
<view v-if="item.ISNORMAL==0 || item.ISNORMAL==1" class="input" >
|
|
|
|
<textarea :disabled="item.OPERATION_TYPE === 1 ? true : false" maxlength="-1" v-model="item.CHECK_RESULT" placeholder="检查详细描述(必填项)" :class="item.OPERATION_TYPE === 1 ? 'bgh' : ''" style="border: 1px solid #eeeeee; z-index: 999; height: 50px; padding: 10px;font-size: 12px; width: 100%"></textarea>
|
|
|
|
</view>
|
2024-02-03 09:32:20 +08:00
|
|
|
</radio-group>
|
|
|
|
</view>
|
|
|
|
</view>
|
|
|
|
<view class="cu-tabbar-height"></view>
|
|
|
|
</scroll-view>
|
|
|
|
<view class="bottom-fixed" @tap.stop="openAuth('ACCESS_FINE_LOCATION')">
|
|
|
|
<button :loading="buttonloading" class="cu-btn bg-green" >提交</button>
|
|
|
|
</view>
|
|
|
|
|
|
|
|
<yk-authpup ref="authpup" type="top" @changeAuth="$noMultipleClicks(save)" :permissionID="permissionID"></yk-authpup>
|
|
|
|
</view>
|
|
|
|
|
|
|
|
</template>
|
|
|
|
<script>
|
|
|
|
import {
|
|
|
|
basePath,corpinfoId,loginUser,loginSession
|
|
|
|
} from '@/common/tool.js';
|
|
|
|
import gcoord from '@/common/gcoord.js'
|
|
|
|
import ykAuthpup from "@/components/yk-authpup/yk-authpup"
|
|
|
|
export default {
|
|
|
|
data() {
|
|
|
|
return {
|
|
|
|
permissionID:'',
|
|
|
|
noClick:true,
|
|
|
|
buttonloading: false,
|
2024-02-20 15:42:54 +08:00
|
|
|
listId: '',
|
|
|
|
CHECK_ITEM: '',
|
2024-02-03 09:32:20 +08:00
|
|
|
listName:'',
|
|
|
|
baoBaoType:'',
|
|
|
|
list: [],
|
|
|
|
pd:[],
|
|
|
|
CHECKRECORD_ID:'',
|
|
|
|
}
|
|
|
|
},
|
|
|
|
onLoad(e){
|
2024-02-20 15:42:54 +08:00
|
|
|
this.CHECK_ITEM = e.CHECK_ITEM
|
2024-02-03 09:32:20 +08:00
|
|
|
this.listId=e.listId;
|
|
|
|
this.listName=e.listName;
|
|
|
|
this.baoBaoType=e.baoBaoType
|
|
|
|
this.CHECKRECORD_ID=e.CHECKRECORD_ID;
|
|
|
|
this.getData();
|
|
|
|
loginSession();
|
|
|
|
},
|
|
|
|
onShow() {
|
|
|
|
var _this = this;
|
|
|
|
if(_this.initflag){
|
|
|
|
_this.initflag = false;
|
|
|
|
_this.$forceUpdate();//强制刷新
|
|
|
|
}
|
|
|
|
},
|
|
|
|
methods: {
|
|
|
|
getData() {
|
|
|
|
var _this = this;
|
|
|
|
uni.showLoading({
|
|
|
|
title: '请稍候'
|
|
|
|
})
|
|
|
|
uni.request({
|
2024-02-20 00:42:47 +08:00
|
|
|
url: basePath + '/app/hiddenDangerCheckStandardCustom/goCheck', // /app/listmanager/goCheck
|
2024-02-03 09:32:20 +08:00
|
|
|
method: 'POST',
|
|
|
|
dataType: 'json',
|
|
|
|
header: {
|
|
|
|
'Content-type':'application/x-www-form-urlencoded'
|
|
|
|
},
|
|
|
|
data: {
|
|
|
|
CUSTOM_ID: _this.listId,
|
2024-02-20 15:42:54 +08:00
|
|
|
CHECK_ITEM: _this.CHECK_ITEM,
|
2024-02-03 09:32:20 +08:00
|
|
|
USER_NAME : loginUser.NAME,
|
|
|
|
CORPINFO_ID:loginUser.CORPINFO_ID,
|
|
|
|
USER_ID:loginUser.USER_ID,
|
|
|
|
},
|
|
|
|
success: (res) => {
|
|
|
|
if("success" == res.data.result){
|
|
|
|
uni.hideLoading();
|
|
|
|
_this.pd=res.data.pd;
|
|
|
|
_this.list = res.data.varList;
|
|
|
|
if(res.data.records){
|
|
|
|
for (var i = 0; i <_this.list.length ; i++) {
|
|
|
|
for (var j = 0; j <res.data.records.length ; j++) {
|
|
|
|
if(_this.list[i].CUSTOM_ITEM_ID==res.data.records[j].CUSTOM_ITEM_ID){
|
|
|
|
_this.list[i].ISNORMAL = res.data.records[j].ISNORMAL;
|
|
|
|
_this.list[i].HIDDEN_ID = res.data.records[j].HIDDEN_ID;
|
|
|
|
_this.list[i].CHECKRECORD_ID = res.data.records[j].CHECKRECORD_ID;
|
|
|
|
_this.list[i].RECORDITEM_ID = res.data.records[j].RECORDITEM_ID;
|
2024-02-20 00:42:47 +08:00
|
|
|
if (res.data.records[j].ISNORMAL === 0) {
|
|
|
|
_this.list[i].CHECK_QUALIFIED = res.data.records[j].CHECK_RESULT;
|
|
|
|
} else if (res.data.records[j].ISNORMAL === 1) {
|
|
|
|
_this.list[i].CHECK_UNQUALIFIED = res.data.records[j].CHECK_RESULT;
|
|
|
|
}
|
2024-02-03 09:32:20 +08:00
|
|
|
// _this.list[i].is_checked = 1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
uni.showToast({
|
|
|
|
title: res.data.message,
|
|
|
|
duration: 2000
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
},
|
|
|
|
|
|
|
|
openAuth(permissionID){
|
|
|
|
this.permissionID = permissionID;
|
|
|
|
setTimeout(()=>{
|
|
|
|
this.$refs['authpup'].open();
|
|
|
|
},200)
|
|
|
|
},
|
|
|
|
|
|
|
|
//去保存
|
|
|
|
save: function (){
|
2024-02-20 00:42:47 +08:00
|
|
|
var _this = this;
|
2024-02-03 09:32:20 +08:00
|
|
|
for(var i=0;i<_this.list.length;i++){
|
|
|
|
if(this.list[i].ISNORMAL && this.list[i].OPERATION_TYPE === 2) {
|
|
|
|
var CHECK_RESULT = ''
|
2024-02-20 00:42:47 +08:00
|
|
|
if (this.list[i].ISNORMAL === 0 || this.list[i].ISNORMAL === 1) {
|
|
|
|
CHECK_RESULT = _this.list[i].CHECK_RESULT
|
2024-02-03 09:32:20 +08:00
|
|
|
} else if (this.list[i].ISNORMAL === 2) {
|
|
|
|
CHECK_RESULT = "不涉及"
|
|
|
|
}
|
|
|
|
if (!CHECK_RESULT) {
|
|
|
|
uni.showToast({
|
|
|
|
icon: 'none',
|
|
|
|
title: '第'+(i+1)+'项检查为填写检查,检查结果不能为空',
|
|
|
|
duration: 1500
|
|
|
|
});
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
uni.showLoading({
|
|
|
|
title: '请稍候'
|
|
|
|
})
|
|
|
|
var items=[];
|
|
|
|
var ids=[];
|
|
|
|
for(var i=0;i<_this.list.length;i++){
|
|
|
|
var item = {};
|
|
|
|
if(_this.list[i].ISNORMAL>-1 || _this.list[i].HASHIDDEN > 0) {
|
|
|
|
item.CUSTOM_ITEM_ID = _this.list[i].CUSTOM_ITEM_ID
|
|
|
|
|
|
|
|
item.ISNORMAL = _this.list[i].ISNORMAL
|
2024-02-20 00:42:47 +08:00
|
|
|
if (_this.list[i].ISNORMAL === 0 || _this.list[i].ISNORMAL === 1) {
|
|
|
|
item.CHECK_RESULT = _this.list[i].CHECK_RESULT
|
2024-02-03 09:32:20 +08:00
|
|
|
} else {
|
|
|
|
item.CHECK_RESULT = ''
|
|
|
|
}
|
|
|
|
item.RECORDITEM_ID = _this.list[i].RECORDITEM_ID
|
|
|
|
items.push(item)
|
|
|
|
if (_this.list[i].HIDDEN_ID) {
|
|
|
|
ids.push(_this.list[i].HIDDEN_ID)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
let longitude;
|
|
|
|
let latitude;
|
|
|
|
|
|
|
|
uni.getLocation({
|
|
|
|
type: 'GCJ02',
|
|
|
|
success: function (res1) {
|
|
|
|
longitude = res1.longitude;
|
|
|
|
latitude = res1.latitude;
|
|
|
|
var result = gcoord.transform(
|
|
|
|
[longitude, latitude], // 经纬度坐标
|
|
|
|
gcoord.GCJ02, // 当前坐标系
|
|
|
|
gcoord.BD09 // 目标坐标系
|
|
|
|
);
|
|
|
|
longitude = result[0];
|
|
|
|
latitude = result[1];
|
|
|
|
//发送 post 请求提交保存
|
|
|
|
this.buttonloading = true
|
|
|
|
uni.request({
|
|
|
|
url: basePath+'/app/customCheckRecord/add', // /app/checkrecord/add'
|
|
|
|
xhrFields: {
|
|
|
|
withCredentials: true
|
|
|
|
},
|
|
|
|
method: 'POST',
|
|
|
|
dataType: 'json',
|
|
|
|
header: {
|
|
|
|
'Content-type':'application/x-www-form-urlencoded'
|
|
|
|
},
|
|
|
|
data: {
|
|
|
|
CUSTOM_ID:_this.listId,
|
|
|
|
LIST_NAME:_this.listName,
|
|
|
|
CREATOR:loginUser.NAME,
|
|
|
|
LATITUDE:latitude,
|
|
|
|
LONGITUDE:longitude,
|
|
|
|
ITEMS:JSON.stringify(items),
|
|
|
|
IDS:ids.join(","),
|
|
|
|
CHECKRECORD_ID:_this.CHECKRECORD_ID,
|
|
|
|
tm:new Date().getTime(),
|
|
|
|
CORPINFO_ID:loginUser.CORPINFO_ID,
|
|
|
|
USER_ID:loginUser.USER_ID,
|
|
|
|
},
|
|
|
|
success: function(res){
|
|
|
|
this.buttonloading = false
|
|
|
|
if("success" == res.data.result){
|
|
|
|
uni.showToast({
|
|
|
|
icon: 'none',
|
|
|
|
title: '提交成功',
|
|
|
|
duration: 1500
|
|
|
|
});
|
|
|
|
setTimeout(function(){
|
|
|
|
var pages = getCurrentPages(); // 获取当前页面栈
|
|
|
|
var prePage = pages[pages.length - 2]; // 上一个页面
|
|
|
|
prePage.$vm.initflag = true; // A 页面 init方法 为true
|
|
|
|
uni.navigateBack({});
|
|
|
|
uni.hideLoading();
|
|
|
|
},1500);
|
|
|
|
}else {
|
|
|
|
uni.showToast({
|
|
|
|
title: "系统错误",
|
|
|
|
duration: 2000
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
})
|
|
|
|
},
|
|
|
|
fail: function(res){
|
|
|
|
uni.hideLoading();
|
|
|
|
uni.showToast({
|
|
|
|
title: "获取位置失败",
|
|
|
|
duration: 2000
|
|
|
|
});
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
},
|
|
|
|
//点击合格
|
|
|
|
checkTrue(e,HASHIDDEN,STATUS) {
|
|
|
|
if(HASHIDDEN > 0){
|
|
|
|
uni.showToast({
|
|
|
|
icon:'none',
|
|
|
|
title: "此检查内容存在未处理隐患,无法检查",
|
|
|
|
duration: 1000
|
|
|
|
});
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
// if(this.list[e.index].ISNORMAL==1){
|
|
|
|
// return;
|
|
|
|
// }
|
|
|
|
let _this=this;
|
|
|
|
if(_this.list[e.index].HIDDEN_ID){
|
|
|
|
//不合格改为合格时 删除旧隐患
|
|
|
|
uni.request({
|
|
|
|
url: basePath+'/app/customHidden/delete', // /app/hidden/delete
|
|
|
|
xhrFields: {
|
|
|
|
withCredentials: true
|
|
|
|
},
|
|
|
|
method: 'POST',
|
|
|
|
dataType: 'json',
|
|
|
|
header: {
|
|
|
|
'Content-type':'application/x-www-form-urlencoded'
|
|
|
|
},
|
|
|
|
data: {
|
|
|
|
HIDDEN_ID:_this.list[e.index].HIDDEN_ID,
|
|
|
|
CORPINFO_ID:loginUser.CORPINFO_ID,
|
|
|
|
USER_ID:loginUser.USER_ID,
|
|
|
|
loginUserName:loginUser.USER_NAME
|
|
|
|
},
|
|
|
|
success: function(res){
|
|
|
|
if("success" == res.data.result){
|
|
|
|
_this.list[e.index].ISNORMAL=STATUS;
|
|
|
|
_this.list[e.index].HIDDEN_ID='';
|
|
|
|
_this.$forceUpdate();//强制刷新
|
|
|
|
}else {
|
|
|
|
uni.showToast({
|
|
|
|
title: "系统错误",
|
|
|
|
duration: 2000
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}else{
|
|
|
|
_this.list[e.index].ISNORMAL=STATUS;
|
|
|
|
_this.list[e.index].HIDDEN_ID='';
|
|
|
|
_this.$forceUpdate();//强制刷新
|
|
|
|
}
|
2024-02-20 00:42:47 +08:00
|
|
|
if (STATUS === 0) {
|
|
|
|
_this.$set(_this.list[e.index], 'CHECK_RESULT', _this.list[e.index].CHECK_QUALIFIED)
|
|
|
|
} else if (STATUS === 1) {
|
|
|
|
_this.$set(_this.list[e.index], 'CHECK_RESULT', _this.list[e.index].CHECK_UNQUALIFIED)
|
|
|
|
} else {
|
|
|
|
_this.$set(_this.list[e.index], 'CHECK_RESULT', '不涉及')
|
|
|
|
}
|
2024-02-03 09:32:20 +08:00
|
|
|
},
|
|
|
|
//跳转事件
|
|
|
|
goToAdd(e) {
|
|
|
|
if (e.HASHIDDEN > 0) {
|
|
|
|
uni.showToast({
|
|
|
|
icon: 'none',
|
|
|
|
title: "此检查内容存在未处理隐患,无法检查",
|
|
|
|
duration: 1000
|
|
|
|
});
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
if (this.list[e.index].ISNORMAL == 1) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
uni.navigateTo({
|
|
|
|
url: '/pages/application/hidden-danger-check-standard/custom/list-item-check-hidden-form?'
|
|
|
|
+'CHECK_CONTENT='+encodeURIComponent(JSON.stringify(e.CHECK_CONTENT.replace('%','%25')))
|
|
|
|
+'&CUSTOM_ITEM_ID='+ encodeURIComponent(JSON.stringify(e.CUSTOM_ITEM_ID))
|
|
|
|
+'&CHECKRECORD_ID='+ encodeURIComponent(JSON.stringify(e.CHECKRECORD_ID))
|
|
|
|
+'&RECORDITEM_ID='+ encodeURIComponent(JSON.stringify(e.RECORDITEM_ID))
|
|
|
|
+'&CUSTOM_ID='+ encodeURIComponent(JSON.stringify(e.CUSTOM_ID))
|
|
|
|
+'&CHECK_CATEGORY='+ encodeURIComponent(JSON.stringify(e.CHECK_CATEGORY))
|
|
|
|
+'&CHECK_CATEGORY_NAME='+ encodeURIComponent(JSON.stringify(e.CHECK_CATEGORY_NAME))
|
|
|
|
+'&CHECK_ITEM='+ encodeURIComponent(JSON.stringify(e.CHECK_ITEM))
|
|
|
|
+'&CHECK_ITEM_NAME='+ encodeURIComponent(JSON.stringify(e.CHECK_ITEM_NAME))
|
|
|
|
+'&CHECK_STANDARD='+ encodeURIComponent(JSON.stringify(e.CHECK_STANDARD))
|
|
|
|
+'&REFERENCE_BASIS='+ encodeURIComponent(JSON.stringify(e.REFERENCE_BASIS))
|
2024-02-20 00:42:47 +08:00
|
|
|
+'&CHECK_RESULT='+ encodeURIComponent(JSON.stringify(e.CHECK_RESULT))
|
2024-02-03 09:32:20 +08:00
|
|
|
+'&index='+e.index
|
|
|
|
+'&baoBaoType='+this.baoBaoType
|
|
|
|
});
|
|
|
|
},
|
|
|
|
//跳转事件
|
|
|
|
goToEdit(e) {
|
|
|
|
uni.navigateTo({
|
|
|
|
url: '/pages/application/hidden-danger-check-standard/custom/list-item-check-hidden-form?HIDDEN_ID='+e
|
|
|
|
});
|
|
|
|
},
|
|
|
|
//添加合格照片
|
|
|
|
gotoAddImg(e) {
|
|
|
|
uni.navigateTo({
|
|
|
|
url: '/pages/application/hidden-danger-check-standard/custom/list-item-check-imgs?RECORDITEM_ID='+e
|
|
|
|
});
|
|
|
|
},
|
|
|
|
}
|
|
|
|
}
|
|
|
|
</script>
|
|
|
|
|
|
|
|
<style>
|
|
|
|
.select radio {
|
|
|
|
transform: scale(0.9);
|
|
|
|
}
|
|
|
|
|
2024-02-20 00:42:47 +08:00
|
|
|
.bgh{
|
|
|
|
background: #f8f6f6;
|
|
|
|
color: #d9d7d7;
|
|
|
|
}
|
|
|
|
|
2024-02-03 09:32:20 +08:00
|
|
|
</style>
|