293 lines
8.1 KiB
Vue
293 lines
8.1 KiB
Vue
<template>
|
|
<view>
|
|
<view class="searcher">
|
|
<view>
|
|
<u-search
|
|
v-model="searchForm.keyword"
|
|
placeholder="请输入关键字"
|
|
shape="round"
|
|
bg-color="#f7f7f8"
|
|
action-text="搜索"
|
|
@search="fnResetPaging"
|
|
@custom="fnResetPaging"
|
|
/>
|
|
</view>
|
|
<view class="mt-10">
|
|
<u-radio-group
|
|
v-model="searchForm.state"
|
|
style="width: 100%; display: flex; justify-content: space-between"
|
|
@change="fnResetPaging"
|
|
>
|
|
<u-radio
|
|
v-for="(item, index) in stateList"
|
|
:key="index"
|
|
:name="item.ID"
|
|
:label="item.NAME"
|
|
/>
|
|
</u-radio-group>
|
|
</view>
|
|
<view class="mt-10">
|
|
<u-checkbox-group
|
|
v-model="searchForm.isMine"
|
|
placement="column"
|
|
@change="checkMine"
|
|
>
|
|
<u-checkbox
|
|
v-for="(item, index) in isMineList"
|
|
:key="index"
|
|
:custom-style="{ marginBottom: '8px' }"
|
|
:name="item.ID"
|
|
:label="item.NAME"
|
|
>
|
|
</u-checkbox>
|
|
</u-checkbox-group>
|
|
</view>
|
|
</view>
|
|
|
|
<view class="info_mainer">
|
|
<view v-if="list.length > 0">
|
|
<u-list @scrolltolower="scrolltolower">
|
|
<u-list-item
|
|
v-for="item in list"
|
|
:key="item.SPECIAL_RECTIFICATION_INSPECT_HIDDEN_ID"
|
|
class="wrap"
|
|
>
|
|
<view class="tit">
|
|
<view class="u-line-2">{{ item.CORP_NAME }}</view>
|
|
</view>
|
|
<view class="text">
|
|
<text>专项行动:</text>
|
|
{{ item.ACTIVITY_TASK_NAME }}
|
|
</view>
|
|
<view class="text">
|
|
<text>隐患编码:</text>
|
|
{{ item.CODE }}
|
|
</view>
|
|
<view class="text">
|
|
<view style="display: flex">
|
|
<text>检查人:</text>
|
|
<view style="width: 70%; display: flex; flex-direction: column">
|
|
<view
|
|
v-for="(val, index) in item.inspectUserList"
|
|
:key="index"
|
|
>
|
|
{{ val }}
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="text">
|
|
<text>发现时间:</text>
|
|
{{ item.DISCOVER_TIME }}
|
|
</view>
|
|
<view class="text">
|
|
<text>整改截止时间:</text>
|
|
{{ item.RECTIFY_DEADLINE }}
|
|
</view>
|
|
<view class="text">
|
|
<text>整改意见:</text>
|
|
{{ item.DISPOSE }}
|
|
</view>
|
|
<view class="text">
|
|
<text>隐患状态:</text>
|
|
<template v-if="item.STATE === '1'"
|
|
>{{ item.QUALIFIED === "0" ? "打回" : "" }}待整改</template
|
|
>
|
|
<template v-if="item.STATE === '2'">待复查</template>
|
|
<template v-if="item.STATE === '3'">已复查</template>
|
|
</view>
|
|
<view class="bottem">
|
|
<u-button
|
|
v-if="item.ISREVIEW && item.STATE === '2'"
|
|
text="复查"
|
|
color="linear-gradient(to right, #27a0ff, #2a56f7)"
|
|
custom-style="width:150upx; height:60upx; margin-left: 20upx;margin-right: 0;"
|
|
@click="
|
|
$u.route({
|
|
url: '/pages/special_rectification/hidden_review',
|
|
params: {
|
|
SPECIAL_RECTIFICATION_INSPECT_HIDDEN_ID:
|
|
item.SPECIAL_RECTIFICATION_INSPECT_HIDDEN_ID,
|
|
},
|
|
})
|
|
"
|
|
/>
|
|
<u-button
|
|
text="查看"
|
|
color="linear-gradient(to right, #27a0ff, #2a56f7)"
|
|
custom-style="width:150upx; height:60upx; margin-left: 20upx;margin-right: 0;"
|
|
@click="
|
|
$u.route({
|
|
url: '/pages/special_rectification/hidden_view',
|
|
params: {
|
|
SPECIAL_RECTIFICATION_INSPECT_HIDDEN_ID:
|
|
item.SPECIAL_RECTIFICATION_INSPECT_HIDDEN_ID,
|
|
},
|
|
})
|
|
"
|
|
/>
|
|
<u-button
|
|
v-if="item.ISREVIEW"
|
|
text="删除"
|
|
type="error"
|
|
custom-style="width:150upx; height:60upx; margin-left: 20upx;margin-right: 0;"
|
|
@click="fnDelete(item.SPECIAL_RECTIFICATION_INSPECT_HIDDEN_ID)"
|
|
/>
|
|
</view>
|
|
</u-list-item>
|
|
</u-list>
|
|
</view>
|
|
<empty v-else />
|
|
</view>
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
import {
|
|
getSpecialRectificationInspectionEnterpriseHiddenList,
|
|
setSpecialRectificationInspectionEnterpriseHiddenDelete,
|
|
} from "@/api";
|
|
|
|
export default {
|
|
data() {
|
|
return {
|
|
USER_ID: this.$store.getters.getUserInfo.USER_ID || "",
|
|
list: [],
|
|
pageSize: 10,
|
|
currentPage: 1,
|
|
totalPage: 0,
|
|
searchForm: {
|
|
keyword: "",
|
|
state: "",
|
|
isMine: [],
|
|
},
|
|
stateList: [
|
|
{ ID: "", NAME: "全部" },
|
|
{ ID: "1", NAME: "待整改" },
|
|
{ ID: "2", NAME: "待复查" },
|
|
{ ID: "3", NAME: "已复查" },
|
|
],
|
|
isMineList: [{ ID: "1", NAME: "只看自己" }],
|
|
};
|
|
},
|
|
created() {
|
|
this.searchForm.isMine.push("1");
|
|
this.fnGetData();
|
|
},
|
|
methods: {
|
|
async fnGetData() {
|
|
const resData =
|
|
await getSpecialRectificationInspectionEnterpriseHiddenList({
|
|
showCount: this.pageSize,
|
|
currentPage: this.currentPage,
|
|
KEYWORDS: this.searchForm.keyword,
|
|
STATE: this.searchForm.state,
|
|
ISMINE:
|
|
this.searchForm.isMine.length > 0 ? this.searchForm.isMine[0] : "",
|
|
});
|
|
resData.varList.forEach((item) => {
|
|
const inspectUserList = [];
|
|
item.INSPECT_USER_NAME.split("_").forEach((user) => {
|
|
inspectUserList.push(user ? user.replace(/,/g, "/") : "");
|
|
});
|
|
item.inspectUserList = inspectUserList;
|
|
if (item.INSPECT_USER_ID.includes(this.USER_ID)) {
|
|
item.ISREVIEW = true;
|
|
} else {
|
|
item.ISREVIEW = false;
|
|
}
|
|
});
|
|
this.list = [...this.list, ...resData.varList];
|
|
this.totalPage = resData.page.totalPage;
|
|
},
|
|
scrolltolower() {
|
|
this.currentPage++;
|
|
if (this.totalPage >= this.currentPage) this.fnGetData();
|
|
},
|
|
checkMine(n) {
|
|
this.searchForm.isMine = n;
|
|
this.list = [];
|
|
this.currentPage = 1;
|
|
this.fnGetData();
|
|
},
|
|
fnResetPaging() {
|
|
this.list = [];
|
|
this.currentPage = 1;
|
|
this.fnGetData();
|
|
},
|
|
fnDelete(SPECIAL_RECTIFICATION_INSPECT_HIDDEN_ID) {
|
|
uni.showModal({
|
|
title: "提示",
|
|
content: "确认要删除吗?",
|
|
success: async (res) => {
|
|
if (res.confirm) {
|
|
await setSpecialRectificationInspectionEnterpriseHiddenDelete({
|
|
SPECIAL_RECTIFICATION_INSPECT_HIDDEN_ID,
|
|
});
|
|
setTimeout(() => {
|
|
uni.$u.toast("删除成功");
|
|
});
|
|
this.fnResetPaging();
|
|
}
|
|
},
|
|
});
|
|
},
|
|
},
|
|
};
|
|
</script>
|
|
|
|
<style scoped lang="scss">
|
|
.searcher {
|
|
width: 100%;
|
|
background: #ffffff;
|
|
padding: 20upx;
|
|
box-sizing: border-box;
|
|
margin-top: 20upx;
|
|
border-bottom: 1px solid #eeeeee;
|
|
|
|
.mainer {
|
|
width: 100%;
|
|
display: flex;
|
|
justify-content: space-between;
|
|
margin-top: 20upx;
|
|
align-items: center;
|
|
font-size: 28upx;
|
|
}
|
|
}
|
|
|
|
.info_mainer {
|
|
width: 100%;
|
|
margin-top: 20upx;
|
|
|
|
.wrap {
|
|
width: 100%;
|
|
background: #ffffff;
|
|
margin-bottom: 20upx;
|
|
padding: 20upx;
|
|
line-height: 2;
|
|
box-sizing: border-box;
|
|
|
|
.tit {
|
|
font-weight: bold;
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
}
|
|
|
|
.text text {
|
|
color: #999999;
|
|
margin-right: 10upx;
|
|
}
|
|
|
|
.bottem {
|
|
width: 100%;
|
|
border-top: 1px solid #eeeeee;
|
|
margin-top: 20upx;
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
padding: 20upx 0 0;
|
|
}
|
|
}
|
|
}
|
|
</style>
|