qa-prevention-xgf-app/safetyEnvirSubPackages/pages/initiate/list.vue

253 lines
6.1 KiB
Vue
Raw Normal View History

<template>
<view>
<!-- 吸顶搜索框 start -->
<key-word-search-input
:inputSearchValue="searchForm.HIDDENDESCR"
@search="resetList"
is-has-filter
@showPicker="showPicker"
/>
<!-- 吸顶搜索框 end -->
<!-- 筛选器 start -->
<u-picker
:show="show"
:columns="columns"
keyName="name"
@cancel="show = false"
@confirm="confirmPicker"
/>
<!-- 筛选器 end -->
<!-- 列表渲染 start -->
<list :list="list" @scrollToLower="scrollToLower">
<template #default="{ item }">
<view class="flex-between main-title">
<text>被检查单位{{ item.INSPECTED_CORPINFO_ID_NAME }}</text>
</view>
<view class="flex-between mt-10 subtitle">
<text>检查发起人{{ item.INSPECTION_ORIGINATOR_NAME }}</text>
<text>检查类型{{ item.INSPECTION_TYPE_NAME }}</text>
</view>
<view class="flex-between mt-10 subtitle">
<text
>检查时间 {{ item.INSPECTION_TIME_START }}
{{ item.INSPECTION_TIME_END }} </text
>
</view>
<view class="flex-between mt-10 subtitle">
<text>
状态
<template v-if="item.INSPECTION_STATUS == '0'"
>待检查人核实</template
>
<template v-else-if="item.INSPECTION_STATUS == '1'"
>检查人核实中</template
>
<template v-else-if="item.INSPECTION_STATUS == '2'"
>待被检查人确认</template
>
<template v-else-if="item.INSPECTION_STATUS == '3'"
>待指派</template
>
<template v-else-if="item.INSPECTION_STATUS == '4'"
>指派中</template
>
<template v-else-if="item.INSPECTION_STATUS == '5'"
>指派完成</template
>
<template v-else-if="item.INSPECTION_STATUS == '6'"
>检查待验收</template
>
<template v-else-if="item.INSPECTION_STATUS == '7'"
>检查已验收</template
>
<template v-else-if="item.INSPECTION_STATUS == '8'"
>已归档</template
>
<template v-else-if="item.INSPECTION_STATUS == '-1'"
>检查人核实打回</template
>
<template v-else-if="item.INSPECTION_STATUS == '-2'"
>被检查人申辩</template
>
</text>
</view>
<view class="flex-end">
<view>
<u-button
type="primary"
text="查看"
size="mini"
shape="circle"
@click="fnNavigatorDetail(item.INSPECTION_ID, 'view')"
/>
</view>
<view class="ml-10">
<u-button
type="primary"
text="流程图"
size="mini"
shape="circle"
@click="showFlowChart(item.INSPECTION_ID)"
/>
</view>
<view class="ml-10" v-if="item.INSPECTION_STATUS === '-1'">
<u-button
type="primary"
text="编辑"
size="mini"
shape="circle"
@click="fnNavigatorDetail(item.INSPECTION_ID, 'edit')"
/>
</view>
<view class="ml-10" v-if="item.INSPECTION_STATUS === '-2'">
<u-button
type="primary"
text="申辩处理"
size="mini"
shape="circle"
@click="fnNavigatorPlead(item.INSPECTION_ID)"
/>
</view>
</view>
</template>
</list>
<!-- 列表渲染 end -->
</view>
</template>
<script>
import { getSafetyenvironmentalList } from "../../api";
import keyWordSearchInput from "@/components/keyWordSearchInput/index.vue";
import List from "@/components/list/list.vue";
import { initiateList } from "../../../Mock/safetyEnvirData";
export default {
components: { keyWordSearchInput, List },
data() {
return {
show: false,
columns: [
[
{ id: "", name: "请选择" },
{ id: "0", name: "待检查人核实" },
{ id: "1", name: "检查人核实中" },
{ id: "2", name: "待被检查人确认" },
{ id: "3", name: "已归档" },
{ id: "4", name: "指派中" },
{ id: "5", name: "指派完成" },
{ id: "6", name: "待验收" },
{ id: "7", name: "已验收" },
{ id: "-1", name: "检查人核实打回" },
{ id: "-2", name: "被检查人申辩" },
],
],
searchForm: {
HIDDENDESCR: "",
},
INSPECTION_STATUS: "",
pageSize: 10,
currentPage: 1,
totalPage: 0,
list: [],
};
},
onNavigationBarButtonTap(e) {
if (e.index === 0) {
this.fnNavigatorDetail("", "add");
}
},
computed: {
userInfo() {
return this.$store.getters.getUserInfo;
},
},
onShow() {
this.resetList();
},
methods: {
async getData() {
uni.showLoading({
title: "加载中",
});
// TODO: 目前因后端资源接口未完成,故注释接口数据接入逻辑
// let resData = await getSafetyenvironmentalList({
// loginUserId: this.userInfo.USER_ID,
// supDeparIds: this.userInfo.supDeparIds,
// roleLevel: this.userInfo.roleLevel,
// KEYWORDS: this.keyword,
// INSPECTION_STATUS: this.INSPECTION_STATUS,
// showCount: this.pageSize,
// currentPage: this.currentPage,
// });
// this.list = [...this.list, ...resData.varList];
// this.totalPage = resData.page.totalPage;
// 虚拟 mock 数据渲染
setTimeout(() => {
this.list = initiateList;
this.totalPage = initiateList.length;
uni.hideLoading();
}, 400);
},
resetList() {
this.pageSize = 10;
this.currentPage = 1;
this.list = [];
this.getData();
},
showPicker() {
this.show = true;
},
confirmPicker(e) {
this.INSPECTION_STATUS = e.value[0].id;
this.show = false;
this.resetList();
},
fnNavigatorDetail(INSPECTION_ID, type) {
uni.$u.route({
url: "/safetyEnvirSubPackages/pages/initiate/detail",
params: {
INSPECTION_ID,
type,
},
});
},
/**
* 申辩处理按钮事件
*/
fnNavigatorPlead(INSPECTION_ID) {
uni.$u.route({
url: "/safetyEnvirSubPackages/pages/initiate/plead",
params: {
INSPECTION_ID,
},
});
},
/**
* 滚动加载数据
*/
scrollToLower() {
this.currentPage++;
if (this.totalPage >= this.currentPage) this.getData();
},
/**
* 查看流程图
*/
showFlowChart(id) {
uni.navigateTo({
url: "/safetyEnvirSubPackages/pages/initiate/steps?ID=" + id,
});
},
},
};
</script>
<style scoped lang="scss">
.self-time {
font-size: 14px;
}
</style>