更新页面
This commit is contained in:
55
src/components/MyComponents/PackageSelect/index.vue
Normal file
55
src/components/MyComponents/PackageSelect/index.vue
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
<template>
|
||||||
|
<div class="form-item-box zj-packageSelect-wrap" :style="{ width: width }">
|
||||||
|
<el-select v-bind="$attrs" :model-value="modelValue" @change="hanlderSelect"
|
||||||
|
:popper-class="selectOption.length > 20 ? 'nation-select' : ''" :placeholder="placeholder">
|
||||||
|
<el-option v-for="item in selectOption" :key="item.dm" :label="item.zdmc" :value="item.dm">
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script setup>
|
||||||
|
import { COMPONENT_WIDTH } from '@/constant';
|
||||||
|
import { nextTick, onBeforeMount, ref } from "vue";
|
||||||
|
import { getDictInfoByDictEnum } from "@/api/sysDict";
|
||||||
|
const emits = defineEmits(["handleChange"]); //子组件向父组件事件传递
|
||||||
|
const props = defineProps({
|
||||||
|
//获取组件传值
|
||||||
|
placeholder: {
|
||||||
|
default: "请选择",
|
||||||
|
type: String
|
||||||
|
},
|
||||||
|
modelValue: {
|
||||||
|
default: "",
|
||||||
|
type: String
|
||||||
|
},
|
||||||
|
dictEnum: {
|
||||||
|
default: "",
|
||||||
|
type: String
|
||||||
|
},
|
||||||
|
width: {
|
||||||
|
default: COMPONENT_WIDTH,
|
||||||
|
type: String
|
||||||
|
}
|
||||||
|
});
|
||||||
|
const selectOption = ref([]);
|
||||||
|
onBeforeMount(async () => {
|
||||||
|
const res = await getDictInfoByDictEnum({ dictElementEnum: props.dictEnum });
|
||||||
|
//正常下拉结构
|
||||||
|
if (res.zdlx === 1) {
|
||||||
|
selectOption.value = [...res.itemList];
|
||||||
|
} else {
|
||||||
|
//树形结构数据
|
||||||
|
}
|
||||||
|
});
|
||||||
|
const hanlderSelect = (data) => {
|
||||||
|
emits("handleChange", data);
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.zj-packageSelect-wrap {
|
||||||
|
::v-deep .el-select {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -18,6 +18,7 @@ import MarkdownEdit from "./MarkdownEdit/index.vue";
|
|||||||
import FileUpload from "./FileUpload/index.vue";
|
import FileUpload from "./FileUpload/index.vue";
|
||||||
import Date from "./Date/index.vue";
|
import Date from "./Date/index.vue";
|
||||||
import Empty from "./Empty/index.vue";
|
import Empty from "./Empty/index.vue";
|
||||||
|
import PackageSelect from "./PackageSelect/index.vue";
|
||||||
export {
|
export {
|
||||||
AddressSelect,
|
AddressSelect,
|
||||||
FrameWork,
|
FrameWork,
|
||||||
@ -38,5 +39,6 @@ export {
|
|||||||
MarkdownEdit,
|
MarkdownEdit,
|
||||||
FileUpload,
|
FileUpload,
|
||||||
Date,
|
Date,
|
||||||
Empty
|
Empty,
|
||||||
|
PackageSelect
|
||||||
};
|
};
|
||||||
|
|||||||
@ -26,14 +26,14 @@
|
|||||||
<!-- </div> -->
|
<!-- </div> -->
|
||||||
</div>
|
</div>
|
||||||
<div class="container-box" v-else>
|
<div class="container-box" v-else>
|
||||||
<div v-for="(item, index) in userList" :key="item.id">
|
<div v-for="item in userList" :key="item.id">
|
||||||
<div v-if="checkList.includes(item.nodeId)">
|
<div v-if="checkList.includes(item.nodeId)">
|
||||||
<el-divider content-position="left">{{ item.nodeName }}</el-divider>
|
<el-divider content-position="left">{{ item.nodeName }}</el-divider>
|
||||||
<template v-if="Array.isArray(item.userList)">
|
<template v-if="Array.isArray(item.userList)">
|
||||||
<div class="reloBox" v-for="items in item.userList">
|
<div class="reloBox" v-for="(items,idx) in item.userList" :key="idx">
|
||||||
<div class="orgName">{{ items.name }}</div>
|
<div class="orgName">{{ items.name }}</div>
|
||||||
<el-checkbox-group v-model="items.checkList">
|
<el-checkbox-group v-model="items.checkList">
|
||||||
<el-checkbox :label="it.userid" v-for="(it, index) in items.users" :key="it.id">{{
|
<el-checkbox :label="it.userid" v-for="it in items.users" :key="it.id">{{
|
||||||
it.username }}</el-checkbox>
|
it.username }}</el-checkbox>
|
||||||
</el-checkbox-group>
|
</el-checkbox-group>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -21,8 +21,13 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
<SelectingPeople v-model="showDialog" :createProcess="createProcess" @close="close" :radioData="radioData"
|
<SelectingPeople
|
||||||
:path="path" @getList="emit('getList')" :userData="userData" />
|
v-model="showDialog"
|
||||||
|
:createProcess="createProcess"
|
||||||
|
@close="close" :radioData="radioData"
|
||||||
|
:path="path"
|
||||||
|
@getList="emit('getList')"
|
||||||
|
:userData="userData" />
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
|
|||||||
@ -329,6 +329,7 @@ export const publicRoutes = [
|
|||||||
icon: "article-create"
|
icon: "article-create"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
path: "/marksControl",
|
path: "/marksControl",
|
||||||
name: "marksControl",
|
name: "marksControl",
|
||||||
@ -338,6 +339,18 @@ export const publicRoutes = [
|
|||||||
icon: "article-create"
|
icon: "article-create"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
path: "/ReviewListControl",
|
||||||
|
name: "ReviewListControl",
|
||||||
|
component: () => import("@/views/backOfficeSystem/IntelligentControl/ReviewListControl/index"),
|
||||||
|
meta: {
|
||||||
|
title: "审核列表",
|
||||||
|
icon: "article-create"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
// {
|
// {
|
||||||
// path: "/DeploymentAudit",
|
// path: "/DeploymentAudit",
|
||||||
// name: "DeploymentAudit",
|
// name: "DeploymentAudit",
|
||||||
|
|||||||
@ -92,6 +92,7 @@ export default {
|
|||||||
this.commit("user/setUserName", data.userName);
|
this.commit("user/setUserName", data.userName);
|
||||||
setItem('isOatuh', 0)
|
setItem('isOatuh', 0)
|
||||||
setItem('fzUserId', data.fzUserId)
|
setItem('fzUserId', data.fzUserId)
|
||||||
|
setItem('inDustRialId', data.inDustRialId)
|
||||||
setItem("USERNAME", data.userName);
|
setItem("USERNAME", data.userName);
|
||||||
setItem("roleList", data.sysRole ? data.sysRole : []);
|
setItem("roleList", data.sysRole ? data.sysRole : []);
|
||||||
setItem("SFRH", data.sfrh);
|
setItem("SFRH", data.sfrh);
|
||||||
@ -132,6 +133,7 @@ export default {
|
|||||||
this.commit("user/setUserName", data.userName);
|
this.commit("user/setUserName", data.userName);
|
||||||
setItem("USERNAME", data.userName);
|
setItem("USERNAME", data.userName);
|
||||||
setItem('fzUserId', data.fzUserId)
|
setItem('fzUserId', data.fzUserId)
|
||||||
|
setItem('inDustRialId', data.inDustRialId)
|
||||||
setItem("SFRH", data.sfrh);
|
setItem("SFRH", data.sfrh);
|
||||||
setItem("USERID", data.userId);
|
setItem("USERID", data.userId);
|
||||||
setItem("PermissionsInfo", data.permissionsInfo);
|
setItem("PermissionsInfo", data.permissionsInfo);
|
||||||
|
|||||||
@ -0,0 +1,115 @@
|
|||||||
|
<template>
|
||||||
|
<el-dialog
|
||||||
|
v-model="visible"
|
||||||
|
title="审核"
|
||||||
|
width="500px"
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
destroy-on-close
|
||||||
|
>
|
||||||
|
<el-form
|
||||||
|
ref="formRef"
|
||||||
|
:model="formData"
|
||||||
|
:rules="formRules"
|
||||||
|
label-width="140px"
|
||||||
|
>
|
||||||
|
<el-form-item label="是否通过" prop="sftg">
|
||||||
|
<el-radio-group v-model="formData.sftg">
|
||||||
|
<el-radio
|
||||||
|
v-for="item in D_BZ_SF"
|
||||||
|
:key="item.value"
|
||||||
|
:label="item.value"
|
||||||
|
>
|
||||||
|
{{ item.label }}
|
||||||
|
</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item
|
||||||
|
v-if="formData.sftg === '0'"
|
||||||
|
label="不通过原因"
|
||||||
|
prop="bkspBtgyy"
|
||||||
|
>
|
||||||
|
<el-input
|
||||||
|
v-model="formData.bkspBtgyy"
|
||||||
|
type="textarea"
|
||||||
|
:rows="3"
|
||||||
|
placeholder="请输入布控审批不通过原因"
|
||||||
|
maxlength="200"
|
||||||
|
show-word-limit
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<template #footer>
|
||||||
|
<div style="text-align: center;">
|
||||||
|
<el-button @click="handleCancel">取消</el-button>
|
||||||
|
<el-button type="primary" @click="handleSubmit" :loading="loading">
|
||||||
|
提交
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</el-dialog>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { ref, reactive, getCurrentInstance } from "vue";
|
||||||
|
import { qcckPost } from "@/api/qcckApi.js";
|
||||||
|
|
||||||
|
const { proxy } = getCurrentInstance();
|
||||||
|
|
||||||
|
const { D_BZ_SF } = proxy.$dict("D_BZ_SF");
|
||||||
|
|
||||||
|
const visible = ref(false);
|
||||||
|
const loading = ref(false);
|
||||||
|
const formRef = ref();
|
||||||
|
const currentRow = ref(null);
|
||||||
|
|
||||||
|
const formData = reactive({
|
||||||
|
sftg: "",
|
||||||
|
bkspBtgyy: ""
|
||||||
|
});
|
||||||
|
|
||||||
|
const formRules = {
|
||||||
|
sftg: [{ required: true, message: "请选择是否通过", trigger: "change" }],
|
||||||
|
bkspBtgyy: [
|
||||||
|
{ required: true, message: "请输入布控审批不通过原因", trigger: "blur" }
|
||||||
|
]
|
||||||
|
};
|
||||||
|
|
||||||
|
const emit = defineEmits(["success"]);
|
||||||
|
|
||||||
|
const open = (row) => {
|
||||||
|
currentRow.value = row;
|
||||||
|
formData.sftg = "";
|
||||||
|
formData.bkspBtgyy = "";
|
||||||
|
visible.value = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
const handleCancel = () => {
|
||||||
|
visible.value = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
const handleSubmit = () => {
|
||||||
|
formRef.value.validate((valid)=>{
|
||||||
|
if(!valid) return;
|
||||||
|
loading.value = true;
|
||||||
|
const params = {
|
||||||
|
id: currentRow.value.id,
|
||||||
|
sftg: formData.sftg,
|
||||||
|
bkspBtgyy: formData.sftg === "0" ? formData.bkspBtgyy : ""
|
||||||
|
};
|
||||||
|
qcckPost(params, "/mosty-gsxt/tbGsxtBk/audits").then(() => {
|
||||||
|
loading.value = false;
|
||||||
|
proxy.$message({ type: "success", message: "审核成功" });
|
||||||
|
visible.value = false;
|
||||||
|
emit("success");
|
||||||
|
}).catch(()=>{
|
||||||
|
loading.value = false;
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
defineExpose({ open });
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
</style>
|
||||||
@ -0,0 +1,78 @@
|
|||||||
|
<template>
|
||||||
|
<el-dialog
|
||||||
|
v-model="visible"
|
||||||
|
title="布控详情"
|
||||||
|
width="800px"
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
destroy-on-close
|
||||||
|
>
|
||||||
|
<el-descriptions :column="2" border v-if="detailData">
|
||||||
|
<el-descriptions-item label="布控对象" :span="2">
|
||||||
|
<span v-if="detailData.bkdxList && detailData.bkdxList.length">
|
||||||
|
<span v-for="(it, idx) in detailData.bkdxList" :key="idx">
|
||||||
|
{{ it.ryXm || it.imei || it.imsi || '-' }}
|
||||||
|
<span v-if="idx < detailData.bkdxList.length - 1">、</span>
|
||||||
|
</span>
|
||||||
|
</span>
|
||||||
|
<span v-else>暂无</span>
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="布控类型">
|
||||||
|
<DictTag :value="detailData.bkDx" :tag="false" :options="D_GS_BK_NEWDX" />
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="布控等级">
|
||||||
|
<DictTag :value="detailData.bkDj" :tag="false" :options="D_GS_SSYJ" />
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="开始时间">
|
||||||
|
{{ detailData.bkSjKs || '-' }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="结束时间">
|
||||||
|
{{ detailData.bkSjJs || '-' }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="申请人">
|
||||||
|
{{ detailData.bkfqrXm || '-' }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="布控状态">
|
||||||
|
<DictTag :value="detailData.bkZt" :tag="false" :options="D_GS_BK_ZT" />
|
||||||
|
</el-descriptions-item>
|
||||||
|
<!-- <el-descriptions-item label="不通过原因">
|
||||||
|
{{ detailData.bkspBtgyy || '-' }}
|
||||||
|
</el-descriptions-item> -->
|
||||||
|
</el-descriptions>
|
||||||
|
<template #footer>
|
||||||
|
<el-button @click="visible = false">关闭</el-button>
|
||||||
|
</template>
|
||||||
|
</el-dialog>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { ref, getCurrentInstance } from "vue";
|
||||||
|
|
||||||
|
const { proxy } = getCurrentInstance();
|
||||||
|
|
||||||
|
const {
|
||||||
|
D_GS_BK_ZT,
|
||||||
|
D_GS_SSYJ,
|
||||||
|
D_GS_BK_NEWDX
|
||||||
|
} = proxy.$dict(
|
||||||
|
"D_GS_BK_ZT",
|
||||||
|
"D_GS_SSYJ",
|
||||||
|
"D_GS_BK_NEWDX"
|
||||||
|
);
|
||||||
|
|
||||||
|
const visible = ref(false);
|
||||||
|
const detailData = ref(null);
|
||||||
|
|
||||||
|
const open = (row) => {
|
||||||
|
detailData.value = row;
|
||||||
|
visible.value = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
defineExpose({ open });
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
:deep(.el-descriptions__label) {
|
||||||
|
width: 120px;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -0,0 +1,116 @@
|
|||||||
|
<template>
|
||||||
|
<el-dialog
|
||||||
|
v-model="visible"
|
||||||
|
title="审核"
|
||||||
|
width="500px"
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
destroy-on-close
|
||||||
|
>
|
||||||
|
<el-form
|
||||||
|
ref="formRef"
|
||||||
|
:model="formData"
|
||||||
|
:rules="formRules"
|
||||||
|
label-width="140px"
|
||||||
|
>
|
||||||
|
<el-form-item label="是否通过" prop="sftg">
|
||||||
|
<el-radio-group v-model="formData.sftg">
|
||||||
|
<el-radio
|
||||||
|
v-for="item in D_BZ_SF"
|
||||||
|
:key="item.value"
|
||||||
|
:label="item.value"
|
||||||
|
>
|
||||||
|
{{ item.label }}
|
||||||
|
</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item
|
||||||
|
v-if="formData.sftg === '0'"
|
||||||
|
label="不通过原因"
|
||||||
|
prop="bkspBtgyy"
|
||||||
|
>
|
||||||
|
<el-input
|
||||||
|
v-model="formData.bkspBtgyy"
|
||||||
|
type="textarea"
|
||||||
|
:rows="3"
|
||||||
|
placeholder="请输入审核不通过原因"
|
||||||
|
maxlength="200"
|
||||||
|
show-word-limit
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<template #footer>
|
||||||
|
<div style="text-align: center;">
|
||||||
|
<el-button @click="handleCancel">取消</el-button>
|
||||||
|
<el-button type="primary" @click="handleSubmit" :loading="loading">
|
||||||
|
提交
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</el-dialog>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { ref, reactive, getCurrentInstance } from "vue";
|
||||||
|
import { qcckPost } from "@/api/qcckApi.js";
|
||||||
|
|
||||||
|
const { proxy } = getCurrentInstance();
|
||||||
|
|
||||||
|
const { D_BZ_SF } = proxy.$dict("D_BZ_SF");
|
||||||
|
|
||||||
|
const visible = ref(false);
|
||||||
|
const loading = ref(false);
|
||||||
|
const formRef = ref();
|
||||||
|
const currentRow = ref(null);
|
||||||
|
|
||||||
|
const formData = reactive({
|
||||||
|
sftg: "",
|
||||||
|
bkspBtgyy: ""
|
||||||
|
});
|
||||||
|
|
||||||
|
const formRules = {
|
||||||
|
sftg: [{ required: true, message: "请选择是否通过", trigger: "change" }],
|
||||||
|
bkspBtgyy: [
|
||||||
|
{ required: true, message: "请输入审核不通过原因", trigger: "blur" }
|
||||||
|
]
|
||||||
|
};
|
||||||
|
|
||||||
|
const emit = defineEmits(["success"]);
|
||||||
|
|
||||||
|
const open = (row) => {
|
||||||
|
currentRow.value = row;
|
||||||
|
formData.sftg = "";
|
||||||
|
formData.bkspBtgyy = "";
|
||||||
|
visible.value = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
const handleCancel = () => {
|
||||||
|
visible.value = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
const handleSubmit = () => {
|
||||||
|
formRef.value.validate((valid) => {
|
||||||
|
if (!valid) return;
|
||||||
|
loading.value = true;
|
||||||
|
const params = {
|
||||||
|
id: currentRow.value.id,
|
||||||
|
sftg: formData.sftg,
|
||||||
|
bkspBtgyy: formData.sftg === "0" ? formData.bkspBtgyy : ""
|
||||||
|
};
|
||||||
|
qcckPost(params, "/mosty-gsxt/gsxt/bqbk/audits")
|
||||||
|
.then(() => {
|
||||||
|
loading.value = false;
|
||||||
|
proxy.$message({ type: "success", message: "审核成功" });
|
||||||
|
visible.value = false;
|
||||||
|
emit("success");
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
loading.value = false;
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
defineExpose({ open });
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
</style>
|
||||||
@ -0,0 +1,55 @@
|
|||||||
|
<template>
|
||||||
|
<el-dialog
|
||||||
|
v-model="visible"
|
||||||
|
title="标签详情"
|
||||||
|
width="600px"
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
destroy-on-close
|
||||||
|
>
|
||||||
|
<el-descriptions :column="1" border v-if="detailData">
|
||||||
|
<el-descriptions-item label="布控标签">
|
||||||
|
{{ detailData.bqmc || '-' }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="标签代码">
|
||||||
|
{{ detailData.bqdm || '-' }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="标签颜色">
|
||||||
|
<DictTag :tag="false" :value="detailData.bqys" :options="D_GS_SSYJ" />
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="标签描述">
|
||||||
|
{{ detailData.bqsm || '-' }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="审核状态">
|
||||||
|
<DictTag :value="detailData.shzt" :tag="false" :options="D_GS_BK_ZT" />
|
||||||
|
</el-descriptions-item>
|
||||||
|
</el-descriptions>
|
||||||
|
<template #footer>
|
||||||
|
<div class="tc">
|
||||||
|
<el-button @click="visible = false">关闭</el-button>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</el-dialog>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { ref, getCurrentInstance } from "vue";
|
||||||
|
const { proxy } = getCurrentInstance();
|
||||||
|
const { D_GS_SSYJ,D_GS_BK_ZT } = proxy.$dict("D_GS_SSYJ","D_GS_BK_ZT"); //获取字典数据
|
||||||
|
|
||||||
|
const visible = ref(false);
|
||||||
|
const detailData = ref(null);
|
||||||
|
|
||||||
|
const open = (row) => {
|
||||||
|
detailData.value = row;
|
||||||
|
visible.value = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
defineExpose({ open });
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
:deep(.el-descriptions__label) {
|
||||||
|
width: 120px;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -0,0 +1,204 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<!-- 搜索 -->
|
||||||
|
<div ref="searchBox" class="mt10 mb10">
|
||||||
|
<QueryFormPanel
|
||||||
|
v-model="queryFrom"
|
||||||
|
:fields="searchConfiger"
|
||||||
|
ref="searchDom"
|
||||||
|
@search="onSearch"
|
||||||
|
>
|
||||||
|
<!-- <template #but>
|
||||||
|
<el-button type="primary" size="small" @click="exportExl"
|
||||||
|
>批量导出</el-button
|
||||||
|
>
|
||||||
|
</template> -->
|
||||||
|
</QueryFormPanel>
|
||||||
|
</div>
|
||||||
|
<!-- 表格 -->
|
||||||
|
<div style="background-color: #fff">
|
||||||
|
<MyTable
|
||||||
|
:tableConfiger="pageData.tableConfiger"
|
||||||
|
:tableHeight="pageData.tableHeight"
|
||||||
|
:tableData="pageData.tableData"
|
||||||
|
:tableColumn="pageData.tableColumn"
|
||||||
|
:controlsWidth="pageData.controlsWidth"
|
||||||
|
@chooseData="handleChooseData"
|
||||||
|
>
|
||||||
|
<template #bqys="{ row }">
|
||||||
|
<DictTag :tag="false" :value="row.bqys" :options="D_GS_SSYJ" />
|
||||||
|
</template>
|
||||||
|
<template #shzt="{ row }">
|
||||||
|
<DictTag :value="row.shzt" :tag="false" :options="D_GS_BK_ZT" />
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template #controls="{ row }">
|
||||||
|
<el-link type="primary" @click="handleDetail(row)">详情</el-link>
|
||||||
|
<el-link type="success" @click="handleApprove(row)" v-if="row.shzt === '02'">审核</el-link>
|
||||||
|
</template>
|
||||||
|
</MyTable>
|
||||||
|
<Pages
|
||||||
|
@changeNo="changeNo"
|
||||||
|
@changeSize="changeSize"
|
||||||
|
:tableHeight="pageData.tableHeight"
|
||||||
|
:pageConfiger="{
|
||||||
|
...pageData.pageConfiger,
|
||||||
|
total: pageData.total
|
||||||
|
}"
|
||||||
|
></Pages>
|
||||||
|
</div>
|
||||||
|
<!-- 详情弹窗 -->
|
||||||
|
<LabelDetailDialog ref="detailDialogRef" />
|
||||||
|
<!-- 审核弹窗 -->
|
||||||
|
<LabelApproveDialog ref="approveDialogRef" @success="getList" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { getMultiDictVal } from "@/utils/dict.js";
|
||||||
|
import { exportExlByObj } from "@/utils/exportExcel.js";
|
||||||
|
import MyTable from "@/components/aboutTable/MyTable.vue";
|
||||||
|
import QueryFormPanel from "@/views/backOfficeSystem/ces/components/QueryFormPanel.vue";
|
||||||
|
import Pages from "@/components/aboutTable/Pages.vue";
|
||||||
|
import LabelDetailDialog from "./LabelDetailDialog.vue";
|
||||||
|
import LabelApproveDialog from "./LabelApproveDialog.vue";
|
||||||
|
import { qcckGet } from "@/api/qcckApi.js";
|
||||||
|
import { reactive, ref, onMounted, getCurrentInstance } from "vue";
|
||||||
|
|
||||||
|
const { proxy } = getCurrentInstance();
|
||||||
|
|
||||||
|
const { D_GS_SSYJ,D_GS_BK_ZT } = proxy.$dict("D_GS_SSYJ","D_GS_BK_ZT");
|
||||||
|
|
||||||
|
const searchBox = ref();
|
||||||
|
const searchConfiger = ref([
|
||||||
|
{
|
||||||
|
key: "bqmc",
|
||||||
|
label: "标签名称",
|
||||||
|
type: "input",
|
||||||
|
placeholder: "请输入标签名称"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
key: "bqys",
|
||||||
|
label: "标签颜色",
|
||||||
|
type: "select",
|
||||||
|
options: D_GS_SSYJ,
|
||||||
|
placeholder: "请选择标签颜色"
|
||||||
|
}
|
||||||
|
]);
|
||||||
|
|
||||||
|
const queryFrom = ref({});
|
||||||
|
const detailDialogRef = ref();
|
||||||
|
const approveDialogRef = ref();
|
||||||
|
const pageData = reactive({
|
||||||
|
tableData: [],
|
||||||
|
keyCount: 0,
|
||||||
|
tableConfiger: {
|
||||||
|
rowHeight: 61,
|
||||||
|
showSelectType: "checkBox",
|
||||||
|
loading: false,
|
||||||
|
haveControls: true,
|
||||||
|
showIndex: true
|
||||||
|
},
|
||||||
|
total: 0,
|
||||||
|
pageConfiger: {
|
||||||
|
pageSize: 10,
|
||||||
|
pageCurrent: 1
|
||||||
|
},
|
||||||
|
controlsWidth: 150,
|
||||||
|
tableColumn: [
|
||||||
|
{ prop: "bqmc", label: "布控标签"},
|
||||||
|
{ prop: "bqdm", label: "标签代码" },
|
||||||
|
{ prop: "bqys", label: "标签颜色", align: "center", showSolt: true },
|
||||||
|
{ prop: "bqsm", label: "标签描述", align: "center" },
|
||||||
|
{ prop: "shzt", label: "审核状态", align: "center",showSolt: true }
|
||||||
|
]
|
||||||
|
});
|
||||||
|
|
||||||
|
onMounted(() => {
|
||||||
|
tabHeightFn();
|
||||||
|
getList();
|
||||||
|
});
|
||||||
|
|
||||||
|
// 搜索
|
||||||
|
const onSearch = (val) => {
|
||||||
|
queryFrom.value = { ...val };
|
||||||
|
pageData.pageConfiger.pageCurrent = 1;
|
||||||
|
getList();
|
||||||
|
};
|
||||||
|
|
||||||
|
const changeNo = (val) => {
|
||||||
|
pageData.pageConfiger.pageCurrent = val;
|
||||||
|
getList();
|
||||||
|
};
|
||||||
|
|
||||||
|
const changeSize = (val) => {
|
||||||
|
pageData.pageConfiger.pageSize = val;
|
||||||
|
getList();
|
||||||
|
};
|
||||||
|
|
||||||
|
const getList = () => {
|
||||||
|
pageData.tableConfiger.loading = true;
|
||||||
|
const params = {
|
||||||
|
...queryFrom.value,
|
||||||
|
pageCurrent: pageData.pageConfiger.pageCurrent,
|
||||||
|
pageSize: pageData.pageConfiger.pageSize
|
||||||
|
};
|
||||||
|
qcckGet(params, "/mosty-gsxt/gsxt/bqbk/getPageWaitList")
|
||||||
|
.then((res) => {
|
||||||
|
pageData.total = res?.total || 0;
|
||||||
|
pageData.tableConfiger.loading = false;
|
||||||
|
pageData.tableData = res?.records || [];
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
pageData.tableConfiger.loading = false;
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
// 选中项
|
||||||
|
const selectRows = ref([]);
|
||||||
|
const handleChooseData = (val) => {
|
||||||
|
selectRows.value = val;
|
||||||
|
};
|
||||||
|
|
||||||
|
// 导出
|
||||||
|
const exportExl = () => {
|
||||||
|
const titleObj = {
|
||||||
|
index: "序号",
|
||||||
|
bqmc: "布控标签",
|
||||||
|
bqdm: "标签代码",
|
||||||
|
bqys_name: "标签颜色",
|
||||||
|
bqsm: "标签描述",
|
||||||
|
};
|
||||||
|
const needArr = selectRows.value?.length > 0 ? selectRows.value : pageData.tableData;
|
||||||
|
const data = needArr.map((item, index) => {
|
||||||
|
return {
|
||||||
|
index: index + 1,
|
||||||
|
bqys_name: getMultiDictVal(item.bqys, D_GS_SSYJ),
|
||||||
|
...item
|
||||||
|
};
|
||||||
|
});
|
||||||
|
exportExlByObj(titleObj, data, "标签待审核列表");
|
||||||
|
};
|
||||||
|
|
||||||
|
// 详情
|
||||||
|
const handleDetail = (row) => {
|
||||||
|
detailDialogRef.value.open(row);
|
||||||
|
};
|
||||||
|
|
||||||
|
// 审核
|
||||||
|
const handleApprove = (row) => {
|
||||||
|
approveDialogRef.value.open(row);
|
||||||
|
};
|
||||||
|
|
||||||
|
// 表格高度计算
|
||||||
|
const tabHeightFn = () => {
|
||||||
|
const searchHeight = searchBox.value?.offsetHeight || 60;
|
||||||
|
pageData.tableHeight = window.innerHeight - searchHeight - 230;
|
||||||
|
window.onresize = function () {
|
||||||
|
tabHeightFn();
|
||||||
|
};
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
</style>
|
||||||
@ -0,0 +1,249 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<!-- 搜索 -->
|
||||||
|
<div ref="searchBox" class="mt10 mb10">
|
||||||
|
<QueryFormPanel
|
||||||
|
v-model="queryFrom"
|
||||||
|
:searchArr="searchConfiger"
|
||||||
|
ref="searchDom"
|
||||||
|
@search="onSearch"
|
||||||
|
>
|
||||||
|
<!-- <template #but>
|
||||||
|
<el-button type="primary" size="small" @click="exportExl"
|
||||||
|
>批量导出</el-button
|
||||||
|
>
|
||||||
|
</template> -->
|
||||||
|
</QueryFormPanel>
|
||||||
|
</div>
|
||||||
|
<!-- 表格 -->
|
||||||
|
<div style="background-color: #fff">
|
||||||
|
<MyTable
|
||||||
|
:tableConfiger="pageData.tableConfiger"
|
||||||
|
:tableHeight="pageData.tableHeight"
|
||||||
|
:tableData="pageData.tableData"
|
||||||
|
:tableColumn="pageData.tableColumn"
|
||||||
|
:controlsWidth="pageData.controlsWidth"
|
||||||
|
@chooseData="handleChooseData"
|
||||||
|
:key="pageData.keyCount"
|
||||||
|
>
|
||||||
|
|
||||||
|
<template #bkZt="{ row }">
|
||||||
|
<DictTag :tag="false" :value="row.bkZt" :options="D_GS_BK_ZT" />
|
||||||
|
</template>
|
||||||
|
<template #bkDj="{ row }">
|
||||||
|
<DictTag :tag="false" :value="row.bkDj" :options="D_GS_SSYJ"/>
|
||||||
|
</template>
|
||||||
|
<template #bkDx="{ row }">
|
||||||
|
<DictTag :tag="false" :value="row.bkDx" :options="D_GS_BK_NEWDX" />
|
||||||
|
</template>
|
||||||
|
<template #bkdxList="{ row }">
|
||||||
|
<span v-if="row.bkdxList"><span class="nowrap" v-for="(it, idx) in row.bkdxList" :key="idx">
|
||||||
|
{{ it.ryXm ? it.ryXm : it.imei ? it.imei : it.imsi ? it.imsi : '' }}
|
||||||
|
<span v-if="idx < row.bkdxList.length - 1">、</span></span></span>
|
||||||
|
<span v-else>暂无</span>
|
||||||
|
</template>
|
||||||
|
<template #controls="{ row }">
|
||||||
|
<el-link type="primary" @click="handleDetail(row)">详情</el-link>
|
||||||
|
<el-link type="success" @click="handleApprove(row)" v-if="row.bkZt == '02'">审核</el-link>
|
||||||
|
</template>
|
||||||
|
</MyTable>
|
||||||
|
<Pages
|
||||||
|
@changeNo="changeNo"
|
||||||
|
@changeSize="changeSize"
|
||||||
|
:tableHeight="pageData.tableHeight"
|
||||||
|
:pageConfiger="{
|
||||||
|
...pageData.pageConfiger,
|
||||||
|
total: pageData.total
|
||||||
|
}"
|
||||||
|
></Pages>
|
||||||
|
</div>
|
||||||
|
<!-- 详情弹窗 -->
|
||||||
|
<DetailDialog ref="detailDialogRef" />
|
||||||
|
<!-- 审核弹窗 -->
|
||||||
|
<ApproveDialog ref="approveDialogRef" @success="getList" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { getMultiDictVal } from "@/utils/dict.js";
|
||||||
|
import { exportExlByObj } from "@/utils/exportExcel.js";
|
||||||
|
import MyTable from "@/components/aboutTable/MyTable.vue";
|
||||||
|
import QueryFormPanel from "@/views/backOfficeSystem/ces/components/QueryFormPanel.vue";
|
||||||
|
import Pages from "@/components/aboutTable/Pages.vue";
|
||||||
|
import DetailDialog from "./DetailDialog.vue";
|
||||||
|
import ApproveDialog from "./ApproveDialog.vue";
|
||||||
|
import { qcckGet, qcckPost } from "@/api/qcckApi.js";
|
||||||
|
import { reactive, ref, onMounted, getCurrentInstance } from "vue";
|
||||||
|
|
||||||
|
const { proxy } = getCurrentInstance();
|
||||||
|
|
||||||
|
const { D_GS_BK_DJ, D_GS_BK_YZ, D_GS_BK_ZT, D_GS_SSYJ, D_GS_BK_NEWDX } = proxy.$dict( "D_GS_BK_DJ", "D_GS_BK_YZ", "D_GS_BK_ZT", "D_GS_SSYJ", "D_GS_BK_NEWDX" );
|
||||||
|
|
||||||
|
const searchBox = ref();
|
||||||
|
const searchConfiger = ref([
|
||||||
|
{
|
||||||
|
key: "bkDj",
|
||||||
|
label: "布控等级",
|
||||||
|
type: "select",
|
||||||
|
options: D_GS_SSYJ,
|
||||||
|
placeholder: "请选择布控等级"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "布控类型",
|
||||||
|
prop: "bkDx",
|
||||||
|
placeholder: "请选择布控类型",
|
||||||
|
showType: "select",
|
||||||
|
options: D_GS_BK_NEWDX
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "布控状态",
|
||||||
|
prop: "bkZt",
|
||||||
|
placeholder: "请选择布控状态",
|
||||||
|
showType: "select",
|
||||||
|
options: D_GS_BK_ZT
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "布控时间",
|
||||||
|
prop: "startTime",
|
||||||
|
placeholder: "请选择布控时间",
|
||||||
|
showType: "datetimerange",
|
||||||
|
}, {
|
||||||
|
label: "布控部门",
|
||||||
|
prop: "bkfqrSsbmdm",
|
||||||
|
placeholder: "请选择布控部门",
|
||||||
|
showType: "department",
|
||||||
|
},
|
||||||
|
]);
|
||||||
|
|
||||||
|
const queryFrom = ref({});
|
||||||
|
const detailDialogRef = ref();
|
||||||
|
const approveDialogRef = ref();
|
||||||
|
const pageData = reactive({
|
||||||
|
tableData: [],
|
||||||
|
keyCount: 0,
|
||||||
|
tableConfiger: {
|
||||||
|
rowHeight: 61,
|
||||||
|
showSelectType: "checkBox",
|
||||||
|
loading: false,
|
||||||
|
haveControls: true,
|
||||||
|
showIndex: true
|
||||||
|
},
|
||||||
|
total: 0,
|
||||||
|
pageConfiger: {
|
||||||
|
pageSize: 10,
|
||||||
|
pageCurrent: 1
|
||||||
|
},
|
||||||
|
controlsWidth: 200,
|
||||||
|
tableColumn: [
|
||||||
|
{ label: "布控对象", prop: "bkdxList", showSolt: true, showOverflowTooltip: true },
|
||||||
|
{ label: "布控类型", prop: "bkDx", showSolt: true, showOverflowTooltip: true },
|
||||||
|
{ label: "布控等级", prop: "bkDj", showSolt: true },
|
||||||
|
{ label: "开始时间", prop: "bkSjKs", showOverflowTooltip: true },
|
||||||
|
{ label: "结束时间", prop: "bkSjJs", showOverflowTooltip: true },
|
||||||
|
{ label: "申请人", prop: "bkfqrXm" },
|
||||||
|
{ label: "布控状态", prop: "bkZt", showSolt: true },
|
||||||
|
]
|
||||||
|
});
|
||||||
|
|
||||||
|
onMounted(() => {
|
||||||
|
tabHeightFn();
|
||||||
|
getList();
|
||||||
|
});
|
||||||
|
|
||||||
|
// 搜索
|
||||||
|
const onSearch = (val) => {
|
||||||
|
queryFrom.value = { ...val };
|
||||||
|
pageData.pageConfiger.pageCurrent = 1;
|
||||||
|
getList();
|
||||||
|
};
|
||||||
|
|
||||||
|
const changeNo = (val) => {
|
||||||
|
pageData.pageConfiger.pageCurrent = val;
|
||||||
|
getList();
|
||||||
|
};
|
||||||
|
|
||||||
|
const changeSize = (val) => {
|
||||||
|
pageData.pageConfiger.pageSize = val;
|
||||||
|
getList();
|
||||||
|
};
|
||||||
|
|
||||||
|
const getList = () => {
|
||||||
|
pageData.tableConfiger.loading = true;
|
||||||
|
const params = {
|
||||||
|
...queryFrom.value,
|
||||||
|
pageCurrent: pageData.pageConfiger.pageCurrent,
|
||||||
|
pageSize: pageData.pageConfiger.pageSize,
|
||||||
|
bklx: "01" // 常态布控
|
||||||
|
};
|
||||||
|
qcckGet(params, "/mosty-gsxt/tbGsxtBk/selectWaitPage")
|
||||||
|
.then((res) => {
|
||||||
|
pageData.total = res?.total || 0;
|
||||||
|
pageData.tableConfiger.loading = false;
|
||||||
|
pageData.tableData = res?.records || [];
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
pageData.tableConfiger.loading = false;
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
// 选中项
|
||||||
|
const selectRows = ref([]);
|
||||||
|
const handleChooseData = (val) => {
|
||||||
|
selectRows.value = val;
|
||||||
|
};
|
||||||
|
|
||||||
|
// 导出
|
||||||
|
const exportExl = () => {
|
||||||
|
const titleObj = {
|
||||||
|
index: "序号",
|
||||||
|
bkbt: "布控标题",
|
||||||
|
bkdj_name: "布控等级",
|
||||||
|
byz_name: "布控要旨",
|
||||||
|
qyzt_name: "布控状态"
|
||||||
|
};
|
||||||
|
const needArr = selectRows.value?.length > 0 ? selectRows.value : pageData.tableData;
|
||||||
|
const data = needArr.map((item, index) => {
|
||||||
|
return {
|
||||||
|
index: index + 1,
|
||||||
|
bkdj_name: getMultiDictVal(item.bkdj, D_GS_BK_DJ),
|
||||||
|
byz_name: getMultiDictVal(item.byz, D_GS_BK_YZ),
|
||||||
|
qyzt_name: getMultiDictVal(item.qyzt, D_GS_BK_ZT),
|
||||||
|
...item
|
||||||
|
};
|
||||||
|
});
|
||||||
|
exportExlByObj(titleObj, data, "常态审核列表");
|
||||||
|
};
|
||||||
|
|
||||||
|
// 详情
|
||||||
|
const handleDetail = (row) => {
|
||||||
|
detailDialogRef.value.open(row);
|
||||||
|
};
|
||||||
|
|
||||||
|
// 送审
|
||||||
|
const handleSubmit = (row) => {
|
||||||
|
proxy.$confirm("是否确定送审该布控?", "送审确认", { type: "warning" })
|
||||||
|
.then(() => {
|
||||||
|
qcckPost({}, `/mosty-gsxt/tbGsxtBk/subExamine/${row.id}`)
|
||||||
|
.then(() => {
|
||||||
|
proxy.$message({ type: "success", message: "送审成功" });
|
||||||
|
getList();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
// 审核
|
||||||
|
const handleApprove = (row) => {
|
||||||
|
approveDialogRef.value.open(row);
|
||||||
|
};
|
||||||
|
|
||||||
|
// 表格高度计算
|
||||||
|
const tabHeightFn = () => {
|
||||||
|
pageData.tableHeight = window.innerHeight - searchBox.value.offsetHeight - 220;
|
||||||
|
window.onresize = function () {
|
||||||
|
tabHeightFn();
|
||||||
|
};
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
</style>
|
||||||
@ -0,0 +1,238 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<!-- 搜索 -->
|
||||||
|
<div ref="searchBox" class="mt10 mb10">
|
||||||
|
<QueryFormPanel
|
||||||
|
v-model="queryFrom"
|
||||||
|
:fields="searchConfiger"
|
||||||
|
ref="searchDom"
|
||||||
|
@search="onSearch"
|
||||||
|
>
|
||||||
|
<!-- <template #but>
|
||||||
|
<el-button type="primary" size="small" @click="exportExl"
|
||||||
|
>批量导出</el-button
|
||||||
|
>
|
||||||
|
</template> -->
|
||||||
|
</QueryFormPanel>
|
||||||
|
</div>
|
||||||
|
<!-- 表格 -->
|
||||||
|
<div style="background-color: #fff">
|
||||||
|
<MyTable
|
||||||
|
:tableConfiger="pageData.tableConfiger"
|
||||||
|
:tableHeight="pageData.tableHeight"
|
||||||
|
:tableData="pageData.tableData"
|
||||||
|
:tableColumn="pageData.tableColumn"
|
||||||
|
:controlsWidth="pageData.controlsWidth"
|
||||||
|
@chooseData="handleChooseData"
|
||||||
|
>
|
||||||
|
<template #bkdj="{ row }">
|
||||||
|
<DictTag :value="row.bkdj" :tag="false" :options="D_GS_BK_DJ" />
|
||||||
|
</template>
|
||||||
|
<template #byz="{ row }">
|
||||||
|
<DictTag :value="row.byz" :tag="false" :options="D_GS_BK_YZ" />
|
||||||
|
</template>
|
||||||
|
<template #qyzt="{ row }">
|
||||||
|
<DictTag :value="row.qyzt" :tag="false" :options="D_GS_BK_ZT" />
|
||||||
|
</template>
|
||||||
|
<template #controls="{ row }">
|
||||||
|
<el-link type="primary" @click="handleDetail(row)">详情</el-link>
|
||||||
|
<el-link type="success" @click="handleApprove(row)" v-if="row.bkZt == '02'">审核</el-link>
|
||||||
|
</template>
|
||||||
|
</MyTable>
|
||||||
|
<Pages
|
||||||
|
@changeNo="changeNo"
|
||||||
|
@changeSize="changeSize"
|
||||||
|
:tableHeight="pageData.tableHeight"
|
||||||
|
:pageConfiger="{
|
||||||
|
...pageData.pageConfiger,
|
||||||
|
total: pageData.total
|
||||||
|
}"
|
||||||
|
></Pages>
|
||||||
|
</div>
|
||||||
|
<!-- 详情弹窗 -->
|
||||||
|
<DetailDialog ref="detailDialogRef" />
|
||||||
|
<!-- 审核弹窗 -->
|
||||||
|
<ApproveDialog ref="approveDialogRef" @success="getList" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { getMultiDictVal } from "@/utils/dict.js";
|
||||||
|
import { exportExlByObj } from "@/utils/exportExcel.js";
|
||||||
|
import MyTable from "@/components/aboutTable/MyTable.vue";
|
||||||
|
import QueryFormPanel from "@/views/backOfficeSystem/ces/components/QueryFormPanel.vue";
|
||||||
|
import Pages from "@/components/aboutTable/Pages.vue";
|
||||||
|
import DetailDialog from "./DetailDialog.vue";
|
||||||
|
import ApproveDialog from "./ApproveDialog.vue";
|
||||||
|
import { qcckGet, qcckPost } from "@/api/qcckApi.js";
|
||||||
|
import { reactive, ref, onMounted, getCurrentInstance } from "vue";
|
||||||
|
|
||||||
|
const { proxy } = getCurrentInstance();
|
||||||
|
|
||||||
|
const {
|
||||||
|
D_GS_BK_DJ,
|
||||||
|
D_GS_BK_YZ,
|
||||||
|
D_GS_BK_ZT,
|
||||||
|
D_BZ_JQDJ
|
||||||
|
} = proxy.$dict(
|
||||||
|
"D_GS_BK_DJ",
|
||||||
|
"D_GS_BK_YZ",
|
||||||
|
"D_GS_BK_ZT",
|
||||||
|
'D_BZ_JQDJ'
|
||||||
|
);
|
||||||
|
|
||||||
|
const searchBox = ref();
|
||||||
|
const searchConfiger = ref([
|
||||||
|
{
|
||||||
|
key: "bkDj",
|
||||||
|
label: "布控等级",
|
||||||
|
type: "select",
|
||||||
|
options: D_BZ_JQDJ,
|
||||||
|
placeholder: "请选择布控等级"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "布控类型",
|
||||||
|
prop: "bkDx",
|
||||||
|
placeholder: "请选择布控类型",
|
||||||
|
showType: "select",
|
||||||
|
options: D_GS_BK_NEWDX
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "布控状态",
|
||||||
|
prop: "bkZt",
|
||||||
|
placeholder: "请选择布控状态",
|
||||||
|
showType: "select",
|
||||||
|
options: D_GS_BK_ZT
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "布控时间",
|
||||||
|
prop: "startTime",
|
||||||
|
placeholder: "请选择布控时间",
|
||||||
|
showType: "datetimerange",
|
||||||
|
}, {
|
||||||
|
label: "布控部门",
|
||||||
|
prop: "bkfqrSsbmdm",
|
||||||
|
placeholder: "请选择布控部门",
|
||||||
|
showType: "department",
|
||||||
|
},
|
||||||
|
]);
|
||||||
|
|
||||||
|
const queryFrom = ref({});
|
||||||
|
const detailDialogRef = ref();
|
||||||
|
const approveDialogRef = ref();
|
||||||
|
const pageData = reactive({
|
||||||
|
tableData: [],
|
||||||
|
keyCount: 0,
|
||||||
|
tableConfiger: {
|
||||||
|
rowHeight: 61,
|
||||||
|
showSelectType: "checkBox",
|
||||||
|
loading: false,
|
||||||
|
haveControls: true,
|
||||||
|
showIndex: true
|
||||||
|
},
|
||||||
|
total: 0,
|
||||||
|
pageConfiger: {
|
||||||
|
pageSize: 10,
|
||||||
|
pageCurrent: 1
|
||||||
|
},
|
||||||
|
controlsWidth: 200,
|
||||||
|
tableColumn: [
|
||||||
|
{ prop: "bkbt", label: "布控标题" },
|
||||||
|
{ prop: "bkdj", label: "布控等级", align: "center", showSolt: true },
|
||||||
|
{ prop: "byz", label: "布控要旨", align: "center", showSolt: true },
|
||||||
|
{ prop: "qyzt", label: "布控状态", align: "center", showSolt: true }
|
||||||
|
]
|
||||||
|
});
|
||||||
|
|
||||||
|
onMounted(() => {
|
||||||
|
tabHeightFn();
|
||||||
|
getList();
|
||||||
|
});
|
||||||
|
|
||||||
|
// 搜索
|
||||||
|
const onSearch = (val) => {
|
||||||
|
queryFrom.value = { ...val };
|
||||||
|
pageData.pageConfiger.pageCurrent = 1;
|
||||||
|
getList();
|
||||||
|
};
|
||||||
|
|
||||||
|
const changeNo = (val) => {
|
||||||
|
pageData.pageConfiger.pageCurrent = val;
|
||||||
|
getList();
|
||||||
|
};
|
||||||
|
|
||||||
|
const changeSize = (val) => {
|
||||||
|
pageData.pageConfiger.pageSize = val;
|
||||||
|
getList();
|
||||||
|
};
|
||||||
|
|
||||||
|
const getList = () => {
|
||||||
|
pageData.tableConfiger.loading = true;
|
||||||
|
const params = {
|
||||||
|
...queryFrom.value,
|
||||||
|
pageCurrent: pageData.pageConfiger.pageCurrent,
|
||||||
|
pageSize: pageData.pageConfiger.pageSize,
|
||||||
|
bklx: "02" // 临时布控
|
||||||
|
};
|
||||||
|
qcckGet(params, "/mosty-gsxt/tbGsxtBk/selectWaitPage")
|
||||||
|
.then((res) => {
|
||||||
|
pageData.total = res?.total || 0;
|
||||||
|
pageData.tableConfiger.loading = false;
|
||||||
|
pageData.tableData = res?.records || [];
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
pageData.tableConfiger.loading = false;
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
// 选中项
|
||||||
|
const selectRows = ref([]);
|
||||||
|
const handleChooseData = (val) => {
|
||||||
|
selectRows.value = val;
|
||||||
|
};
|
||||||
|
|
||||||
|
// 导出
|
||||||
|
const exportExl = () => {
|
||||||
|
const titleObj = {
|
||||||
|
index: "序号",
|
||||||
|
bkbt: "布控标题",
|
||||||
|
bkdj_name: "布控等级",
|
||||||
|
byz_name: "布控要旨",
|
||||||
|
qyzt_name: "布控状态"
|
||||||
|
};
|
||||||
|
const needArr = selectRows.value?.length > 0 ? selectRows.value : pageData.tableData;
|
||||||
|
const data = needArr.map((item, index) => {
|
||||||
|
return {
|
||||||
|
index: index + 1,
|
||||||
|
bkdj_name: getMultiDictVal(item.bkdj, D_GS_BK_DJ),
|
||||||
|
byz_name: getMultiDictVal(item.byz, D_GS_BK_YZ),
|
||||||
|
qyzt_name: getMultiDictVal(item.qyzt, D_GS_BK_ZT),
|
||||||
|
...item
|
||||||
|
};
|
||||||
|
});
|
||||||
|
exportExlByObj(titleObj, data, "临时审核列表");
|
||||||
|
};
|
||||||
|
|
||||||
|
// 详情
|
||||||
|
const handleDetail = (row) => {
|
||||||
|
detailDialogRef.value.open(row);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// 审核
|
||||||
|
const handleApprove = (row) => {
|
||||||
|
approveDialogRef.value.open(row);
|
||||||
|
};
|
||||||
|
|
||||||
|
// 表格高度计算
|
||||||
|
const tabHeightFn = () => {
|
||||||
|
const searchHeight = searchBox.value?.offsetHeight || 60;
|
||||||
|
pageData.tableHeight = window.innerHeight - searchHeight - 230;
|
||||||
|
window.onresize = function () {
|
||||||
|
tabHeightFn();
|
||||||
|
};
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
</style>
|
||||||
@ -0,0 +1,37 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<PageTitle
|
||||||
|
:malginLeft="10"
|
||||||
|
:height="35"
|
||||||
|
backgroundColor="#ffff"
|
||||||
|
:marginBottom="5"
|
||||||
|
:marginTop="5"
|
||||||
|
>
|
||||||
|
<template #left>
|
||||||
|
<template v-for="(item, index) in butList" :key="index">
|
||||||
|
<el-button
|
||||||
|
:type="qh == item ? 'primary' : 'default'"
|
||||||
|
@click="qh = item"
|
||||||
|
size="small"
|
||||||
|
>{{ item }}</el-button
|
||||||
|
>
|
||||||
|
</template>
|
||||||
|
</template>
|
||||||
|
</PageTitle>
|
||||||
|
<NormalReview v-if="qh == '常态审核'" />
|
||||||
|
<TempReview v-if="qh == '临时审核'" />
|
||||||
|
<LabelReview v-if="qh == '标签审核'" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script setup>
|
||||||
|
import PageTitle from "@/components/aboutTable/PageTitle.vue";
|
||||||
|
import NormalReview from "./components/NormalReview.vue";
|
||||||
|
import TempReview from "./components/TempReview.vue";
|
||||||
|
import LabelReview from "./components/LabelReview.vue";
|
||||||
|
import { ref, onMounted } from "vue";
|
||||||
|
|
||||||
|
const butList = ref(["常态审核", "临时审核", "标签审核"]);
|
||||||
|
const qh = ref("常态审核");
|
||||||
|
|
||||||
|
onMounted(() => {});
|
||||||
|
</script>
|
||||||
@ -24,9 +24,13 @@
|
|||||||
<template #bqys="{ row }">
|
<template #bqys="{ row }">
|
||||||
<DictTag :tag="false" :value="row.bqys" :options="D_GS_SSYJ" />
|
<DictTag :tag="false" :value="row.bqys" :options="D_GS_SSYJ" />
|
||||||
</template>
|
</template>
|
||||||
|
<template #shzt="{ row }">
|
||||||
|
<DictTag :value="row.shzt" :tag="false" :options="D_GS_BK_ZT" />
|
||||||
|
</template>
|
||||||
<!-- 操作 -->
|
<!-- 操作 -->
|
||||||
<template #controls="{ row }">
|
<template #controls="{ row }">
|
||||||
<el-link type="primary" size="small" @click="createProcess(row)" v-if="row.shzt!= '03'">发起审批</el-link>
|
<!-- <el-link type="primary" size="small" @click="createProcess(row)" v-if="row.shzt!= '03'">发起审批</el-link> -->
|
||||||
|
<el-link type="primary" size="small" @click="handleSS(row)" v-if="['01', '03', '06'].includes(row.shzt)">送审</el-link>
|
||||||
<el-link type="danger" size="small" @click="handleItem('deleite',row)" v-if="row.shzt == '03'">撤控</el-link>
|
<el-link type="danger" size="small" @click="handleItem('deleite',row)" v-if="row.shzt == '03'">撤控</el-link>
|
||||||
</template>
|
</template>
|
||||||
</MyTable>
|
</MyTable>
|
||||||
@ -56,7 +60,7 @@ import SubmissionProcess from '@/components/flowPath/submissionProcess.vue'
|
|||||||
import { qcckGet, qcckPost } from "@/api/qcckApi.js";
|
import { qcckGet, qcckPost } from "@/api/qcckApi.js";
|
||||||
import { reactive, ref, onMounted, getCurrentInstance } from "vue";
|
import { reactive, ref, onMounted, getCurrentInstance } from "vue";
|
||||||
const { proxy } = getCurrentInstance();
|
const { proxy } = getCurrentInstance();
|
||||||
const {D_GS_SSYJ} = proxy.$dict("D_GS_SSYJ"); //获取字典数据
|
const {D_GS_SSYJ,D_GS_BK_ZT} = proxy.$dict("D_GS_SSYJ","D_GS_BK_ZT"); //获取字典数据
|
||||||
const searchBox = ref();
|
const searchBox = ref();
|
||||||
const addForm = ref()
|
const addForm = ref()
|
||||||
const searchConfiger = ref([
|
const searchConfiger = ref([
|
||||||
@ -94,6 +98,7 @@ const pageData = reactive({
|
|||||||
{ label: "标签代码", prop: "bqdm" },
|
{ label: "标签代码", prop: "bqdm" },
|
||||||
{ label: "标签颜色", prop: "bqys", showSolt: true },
|
{ label: "标签颜色", prop: "bqys", showSolt: true },
|
||||||
{ label: "标签描述", prop: "bqsm" },
|
{ label: "标签描述", prop: "bqsm" },
|
||||||
|
{ label: "审核状态", prop: "shzt", showSolt: true }
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
@ -170,6 +175,25 @@ const createProcess = (row) => {
|
|||||||
showSp.value = true;
|
showSp.value = true;
|
||||||
rowData.value = row
|
rowData.value = row
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function handleSS (row) {
|
||||||
|
proxy.$confirm('确认送审吗?', '提示', {
|
||||||
|
confirmButtonText: '确定',
|
||||||
|
cancelButtonText: '取消',
|
||||||
|
type: 'warning'
|
||||||
|
}).then(() => {
|
||||||
|
qcckGet({}, "/mosty-gsxt/gsxt/bqbk/submitApproval/"+row.id).then((res) => {
|
||||||
|
proxy.$message({
|
||||||
|
message: '送审成功',
|
||||||
|
type: 'success'
|
||||||
|
});
|
||||||
|
getList();
|
||||||
|
|
||||||
|
}).catch(() => {
|
||||||
|
pageData.tableConfiger.loading = false;
|
||||||
|
});
|
||||||
|
})
|
||||||
|
}
|
||||||
// 表格高度计算
|
// 表格高度计算
|
||||||
const tabHeightFn = () => {
|
const tabHeightFn = () => {
|
||||||
pageData.tableHeight = window.innerHeight - searchBox.value.offsetHeight - 220;
|
pageData.tableHeight = window.innerHeight - searchBox.value.offsetHeight - 220;
|
||||||
|
|||||||
@ -10,8 +10,13 @@
|
|||||||
<!-- 按钮组 -->
|
<!-- 按钮组 -->
|
||||||
<!-- 表格 -->
|
<!-- 表格 -->
|
||||||
<div class="margTop">
|
<div class="margTop">
|
||||||
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
|
<MyTable
|
||||||
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth">
|
:tableData="pageData.tableData"
|
||||||
|
:tableColumn="pageData.tableColumn"
|
||||||
|
:tableHeight="pageData.tableHeight"
|
||||||
|
:key="pageData.keyCount"
|
||||||
|
:tableConfiger="pageData.tableConfiger"
|
||||||
|
:controlsWidth="pageData.controlsWidth">
|
||||||
|
|
||||||
<template #bkZt="{ row }">
|
<template #bkZt="{ row }">
|
||||||
<DictTag :tag="false" :value="row.bkZt" :options="D_GS_BK_ZT" />
|
<DictTag :tag="false" :value="row.bkZt" :options="D_GS_BK_ZT" />
|
||||||
@ -28,7 +33,6 @@
|
|||||||
{{ it.ryXm ? it.ryXm : it.imei ? it.imei : it.imsi ? it.imsi : '' }}
|
{{ it.ryXm ? it.ryXm : it.imei ? it.imei : it.imsi ? it.imsi : '' }}
|
||||||
<!-- :it.ryXm?it.mac:it.imsi?it.imsi:'xxxx' -->
|
<!-- :it.ryXm?it.mac:it.imsi?it.imsi:'xxxx' -->
|
||||||
<span v-if="idx < row.bkdxList.length - 1">、</span></span></span>
|
<span v-if="idx < row.bkdxList.length - 1">、</span></span></span>
|
||||||
|
|
||||||
<span v-else>暂无</span>
|
<span v-else>暂无</span>
|
||||||
</template>
|
</template>
|
||||||
<!-- <template #sjrs="{ row }">
|
<!-- <template #sjrs="{ row }">
|
||||||
@ -44,9 +48,15 @@
|
|||||||
<!-- 操作 -->
|
<!-- 操作 -->
|
||||||
<template #controls="{ row }">
|
<template #controls="{ row }">
|
||||||
<template v-if="!row.gzlid">
|
<template v-if="!row.gzlid">
|
||||||
<el-link type="primary" v-if="['01', '03', '06'].includes(row.bkZt)" size="small"
|
<!-- 工作流的送审 -->
|
||||||
@click="createProcess(row)">送审</el-link>
|
<!-- <el-link type="primary" v-if="['01', '03', '06'].includes(row.bkZt)" size="small"
|
||||||
<el-link type="primary" size="small" @click="tbGsxtBkQuashList(row)" v-else>撤控</el-link>
|
@click="createProcess(row)">送审</el-link> -->
|
||||||
|
|
||||||
|
<!-- 不走工作流的送审 -->
|
||||||
|
<el-link type="primary" size="small" v-if="['01', '03', '06'].includes(row.bkZt)" @click="hadleSendSH(row)">送审</el-link>
|
||||||
|
|
||||||
|
<el-link type="primary" size="small" @click="tbGsxtBkQuashList(row)" v-if="!!!(['01', '03', '06'].includes(row.bkZt))">撤控</el-link>
|
||||||
|
|
||||||
<el-link type="primary" v-if="['01', '03', '06'].includes(row.bkZt)" size="small"
|
<el-link type="primary" v-if="['01', '03', '06'].includes(row.bkZt)" size="small"
|
||||||
@click="handleAdd('edit', row)">编辑</el-link>
|
@click="handleAdd('edit', row)">编辑</el-link>
|
||||||
|
|
||||||
@ -71,9 +81,20 @@
|
|||||||
}" />
|
}" />
|
||||||
<!-- 预警弹窗 -->
|
<!-- 预警弹窗 -->
|
||||||
<YjDialog ref="warningkdxForm"></YjDialog>
|
<YjDialog ref="warningkdxForm"></YjDialog>
|
||||||
<SubmissionProcess v-model="showSp" :data="rowData" :userData="{ ajmc: '布控审批', flowType: 'BKSP', modelName: '布控' }"
|
|
||||||
:path="fixedValue" @getList="getList" />
|
<SubmissionProcess
|
||||||
<Hzd v-model="hzdVisible" :dataList="dataList" :dict="{D_GS_BK_NEWDX,D_BZ_BKLYS,D_GS_SSYJ,D_BZ_JQDJ,D_GZL_SHZT,D_GS_BK_CZYQ}" :name="route.name" />
|
v-model="showSp"
|
||||||
|
:data="rowData"
|
||||||
|
:userData="{ ajmc: '布控审批', flowType: 'BKSP', modelName: '布控' }"
|
||||||
|
:path="fixedValue"
|
||||||
|
@getList="getList"
|
||||||
|
/>
|
||||||
|
<Hzd
|
||||||
|
v-model="hzdVisible"
|
||||||
|
:dataList="dataList"
|
||||||
|
:dict="{D_GS_BK_NEWDX,D_BZ_BKLYS,D_GS_SSYJ,D_BZ_JQDJ,D_GZL_SHZT,D_GS_BK_CZYQ}"
|
||||||
|
:name="route.name"
|
||||||
|
/>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
@ -88,15 +109,14 @@ import { tbGsxtBkQuash } from '@/api/zdr.js'
|
|||||||
import { useRouter, useRoute } from 'vue-router'
|
import { useRouter, useRoute } from 'vue-router'
|
||||||
import { reactive, ref, onMounted, getCurrentInstance } from "vue";
|
import { reactive, ref, onMounted, getCurrentInstance } from "vue";
|
||||||
import Hzd from "./components/dolog/hzd.vue";
|
import Hzd from "./components/dolog/hzd.vue";
|
||||||
import { rotate } from "ol/transform";
|
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
const { proxy } = getCurrentInstance();
|
const { proxy } = getCurrentInstance();
|
||||||
const { D_GS_BK_BKYS, D_BZ_XB, D_GS_BK_SJLX, D_GS_SSYJ, BD_BK_CLYJBQ, D_GS_ZDR_YJDJ,
|
const { D_GS_BK_BKYS, D_BZ_XB, D_GS_BK_SJLX, D_GS_SSYJ, BD_BK_CLYJBQ, D_GS_ZDR_YJDJ,
|
||||||
D_GS_BK_NEWDX, D_GS_BK_ZT, D_GS_BK_CZYQ, D_GS_BK_CZJSDWLX, D_GS_BK_TJFS, D_BZ_BKLYS,D_GZL_SHZT,
|
D_GS_BK_NEWDX, D_GS_BK_ZT, D_GS_BK_CZYQ, D_GS_BK_CZJSDWLX, D_GS_BK_TJFS, D_BZ_BKLYS,D_GZL_SHZT,
|
||||||
D_BZ_JQDJ } = proxy.$dict("D_GS_ZDR_YJDJ", "D_GS_BK_BKYS", "D_BZ_XB", "D_GS_BK_SJLX",
|
D_BZ_JQDJ, D_BZ_SF } = proxy.$dict("D_GS_ZDR_YJDJ", "D_GS_BK_BKYS", "D_BZ_XB", "D_GS_BK_SJLX",
|
||||||
"D_GS_SSYJ", "D_GS_BK_NEWDX", "D_GS_BK_ZT", "D_GS_BK_CZYQ", "D_GS_BK_CZJSDWLX", "D_GS_BK_TJFS",'D_GZL_SHZT',
|
"D_GS_SSYJ", "D_GS_BK_NEWDX", "D_GS_BK_ZT", "D_GS_BK_CZYQ", "D_GS_BK_CZJSDWLX", "D_GS_BK_TJFS",'D_GZL_SHZT',
|
||||||
'BD_BK_CLYJBQ', 'D_BZ_JQDJ', "D_BZ_BKLYS"); //获取字典数据
|
'BD_BK_CLYJBQ', 'D_BZ_JQDJ', "D_BZ_BKLYS", "D_BZ_SF"); //获取字典数据
|
||||||
const addBkdxForm = ref(null); //布控对象组件
|
const addBkdxForm = ref(null); //布控对象组件
|
||||||
const warningkdxForm = ref(); //布控对象组件
|
const warningkdxForm = ref(); //布控对象组件
|
||||||
const searchBox = ref(); //搜索框
|
const searchBox = ref(); //搜索框
|
||||||
@ -201,18 +221,11 @@ const changeSize = (val) => {
|
|||||||
// 获取列表
|
// 获取列表
|
||||||
const getList = () => {
|
const getList = () => {
|
||||||
pageData.tableConfiger.loading = true;
|
pageData.tableConfiger.loading = true;
|
||||||
let bklx = ''
|
|
||||||
|
|
||||||
if (route.name == 'myControl') {
|
|
||||||
bklx = '01'
|
|
||||||
} else {
|
|
||||||
bklx = '02'
|
|
||||||
}
|
|
||||||
let data = {
|
let data = {
|
||||||
...pageData.pageConfiger,
|
...pageData.pageConfiger,
|
||||||
...queryFrom.value,
|
...queryFrom.value,
|
||||||
bkcxlx: '01',
|
bkcxlx: '01',
|
||||||
bklx: bklx
|
bklx: route.name == 'myControl' ? '01' : '02'
|
||||||
};
|
};
|
||||||
qcckGet(data, "/mosty-gsxt/tbGsxtBk/selectPage").then((res) => {
|
qcckGet(data, "/mosty-gsxt/tbGsxtBk/selectPage").then((res) => {
|
||||||
pageData.tableData = res.records || [];
|
pageData.tableData = res.records || [];
|
||||||
@ -223,6 +236,44 @@ const getList = () => {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
function hadleSendSH (row) {
|
||||||
|
proxy.$confirm("确定要送审吗?", "提示", { type: "warning" }).then(() => {
|
||||||
|
qcckGet({}, '/mosty-gsxt/tbGsxtBk/subExamine/'+row.id).then(res => {
|
||||||
|
proxy.$message({ type: "success", message: "送审成功" });
|
||||||
|
getList();
|
||||||
|
}).catch(() => {
|
||||||
|
proxy.$message({ type: "error", message: "送审失败" });
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
const shForm = ref({
|
||||||
|
id: '',
|
||||||
|
sftg: '',
|
||||||
|
bkshBtgyy: ''
|
||||||
|
})
|
||||||
|
const shFormRef = ref(null)
|
||||||
|
const shFormRules = {
|
||||||
|
sftg: [{ required: true, message: '请选择是否通过', trigger: 'change' }],
|
||||||
|
bkshBtgyy: [{ required: true, message: '请输入布控审核不通过原因', trigger: 'blur' }]
|
||||||
|
}
|
||||||
|
|
||||||
|
// 提交送审
|
||||||
|
const submitSh = () => {
|
||||||
|
try {
|
||||||
|
shFormRef.value.validate(valida=>{
|
||||||
|
if(!valida) return;
|
||||||
|
const params = {...shForm.value }
|
||||||
|
|
||||||
|
})
|
||||||
|
} catch (err) {
|
||||||
|
if (err !== false) {
|
||||||
|
proxy.$message({ type: "error", message: err.message || '送审失败' });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const handleAdd = (type, row) => {
|
const handleAdd = (type, row) => {
|
||||||
addBkdxForm.value.init(type, row);
|
addBkdxForm.value.init(type, row);
|
||||||
};
|
};
|
||||||
|
|||||||
@ -73,6 +73,8 @@
|
|||||||
<!-- 详情 -->
|
<!-- 详情 -->
|
||||||
<DetailForm ref="detailDiloag" @updateDate="getList" />
|
<DetailForm ref="detailDiloag" @updateDate="getList" />
|
||||||
<RoomDetail />
|
<RoomDetail />
|
||||||
|
|
||||||
|
|
||||||
<ConferenceRoom v-model="conferenceRoomVisible" titleValue="会议详情" />
|
<ConferenceRoom v-model="conferenceRoomVisible" titleValue="会议详情" />
|
||||||
|
|
||||||
<!-- 音视频会议窗口 -->
|
<!-- 音视频会议窗口 -->
|
||||||
|
|||||||
@ -101,91 +101,73 @@
|
|||||||
<el-button size="small" @click="closeDialog">关闭</el-button>
|
<el-button size="small" @click="closeDialog">关闭</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-form class="mosty-from-wrap" ref="elform" :model="dialogForm" :inline="true" label-position="top"
|
<el-form class="mosty-from-wrap" ref="elform" :model="dialogForm" :inline="true" label-position="top" :rules="rules">
|
||||||
:rules="rules">
|
|
||||||
<el-form-item label="部门:" prop="ssbmdm">
|
<el-form-item label="部门:" prop="ssbmdm">
|
||||||
<MOSTY.Department :placeholder="dialogForm.ssbm" width="280px" clearable filterable
|
<MOSTY.Department :placeholder="dialogForm.ssbm" clearable filterable
|
||||||
v-model="dialogForm.ssbmdm" />
|
v-model="dialogForm.ssbmdm" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="用户昵称:" prop="userName">
|
<el-form-item label="用户昵称:" prop="userName">
|
||||||
<MOSTY.Other width="280px" placeholder="请输入用户昵称" clearable v-model="dialogForm.userName" />
|
<MOSTY.Other placeholder="请输入用户昵称" clearable v-model="dialogForm.userName" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="登录账号:" prop="loginName">
|
<el-form-item label="登录账号:" prop="loginName">
|
||||||
<MOSTY.Other width="280px" placeholder="请输入登录账号" clearable v-model="dialogForm.loginName" />
|
<MOSTY.Other placeholder="请输入登录账号" clearable v-model="dialogForm.loginName" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="密码:" v-if="!isEdit" prop="password">
|
<el-form-item label="密码:" v-if="!isEdit" prop="password">
|
||||||
<MOSTY.Other width="280px" placeholder="请输入密码" show-password v-model="dialogForm.password" />
|
<MOSTY.Other placeholder="请输入密码" show-password v-model="dialogForm.password" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="身份证号" prop="idEntityCard">
|
<el-form-item label="身份证号" prop="idEntityCard">
|
||||||
<MOSTY.IdentityCard width="280px" v-model="dialogForm.idEntityCard" @change="fn" clearable>
|
<MOSTY.IdentityCard v-model="dialogForm.idEntityCard" @change="fn" clearable>
|
||||||
</MOSTY.IdentityCard>
|
</MOSTY.IdentityCard>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="警号" prop="inDustRialId">
|
<el-form-item label="警号" prop="inDustRialId">
|
||||||
<MOSTY.Other width="280px" placeholder="请输入警号" v-model="dialogForm.inDustRialId" />
|
<MOSTY.Other placeholder="请输入警号" v-model="dialogForm.inDustRialId" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="岗位选择">
|
<el-form-item label="岗位选择">
|
||||||
<MOSTY.StationSelect width="300px" clearable filterable v-model="dialogForm.positionId" />
|
<MOSTY.StationSelect clearable filterable v-model="dialogForm.positionId" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="用户类型:" prop="userType">
|
<el-form-item label="用户类型:" prop="userType" style="width: 240px;">
|
||||||
<el-select style="width: 100%" v-model="dialogForm.userType" placeholder="请选择用户类型">
|
<MOSTY.Select :dictEnum="D_BZ_YHLX" v-model="dialogForm.userType" clearable/>
|
||||||
<el-option v-for="dict in D_BZ_YHLX" :label="dict.label" :value="dict.value" :key="dict.value" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="虚拟用户:" prop="isVirtualUser">
|
<el-form-item label="虚拟用户:" prop="isVirtualUser" style="width: 240px;">
|
||||||
<el-select style="width: 100%" v-model="dialogForm.isVirtualUser" placeholder="请选择">
|
<MOSTY.Select :dictEnum="D_BZ_XNYH" v-model="dialogForm.isVirtualUser" clearable/>
|
||||||
<el-option v-for="dict in D_BZ_XNYH" :label="dict.label" :value="dict.value" :key="dict.value" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="电话号码:" prop="telePhone">
|
<el-form-item label="电话号码:" prop="telePhone">
|
||||||
<MOSTY.Phone width="280px" v-model="dialogForm.telePhone" maxlength="11" clearable></MOSTY.Phone>
|
<MOSTY.Phone v-model="dialogForm.telePhone" maxlength="11" clearable></MOSTY.Phone>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="移动电话:" prop="mobile">
|
<el-form-item label="移动电话:" prop="mobile">
|
||||||
<MOSTY.Phone width="280px" v-model="dialogForm.mobile" maxlength="11" clearable></MOSTY.Phone>
|
<MOSTY.Phone v-model="dialogForm.mobile" maxlength="11" clearable></MOSTY.Phone>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="民族:" prop="nation">
|
<el-form-item label="民族:" prop="nation">
|
||||||
<MOSTY.PackageSelect width="280px" v-model="dialogForm.nation" dictEnum="NATION" clearable filterable />
|
<MOSTY.PackageSelect v-model="dialogForm.nation" dictEnum="NATION" clearable filterable />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="性别:" prop="sex">
|
<el-form-item label="性别:" prop="sex" style="width: 240px;">
|
||||||
<el-select style="width: 100%" v-model="dialogForm.sex" placeholder="请选择性别">
|
<MOSTY.Select :dictEnum="D_BZ_XB" v-model="dialogForm.sex" clearable/>
|
||||||
<el-option v-for="(item, index) in D_BZ_XB" :key="index" :label="item.label"
|
|
||||||
:value="item.value"></el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="文化程度:" prop="whcd">
|
<el-form-item label="文化程度:" prop="whcd">
|
||||||
<MOSTY.PackageSelect dictEnum="EDUCATION" width="280px" v-model="dialogForm.whcd" clearable filterable />
|
<MOSTY.PackageSelect dictEnum="EDUCATION" v-model="dialogForm.whcd" clearable filterable />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="E-mail" prop="email">
|
<el-form-item label="E-mail" prop="email">
|
||||||
<MOSTY.Email v-model="dialogForm.email" width="280px" clearable></MOSTY.Email>
|
<MOSTY.Email v-model="dialogForm.email" clearable></MOSTY.Email>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="出生日期" prop="birthday">
|
<el-form-item label="出生日期" prop="birthday" style="width: 240px;">
|
||||||
<el-date-picker style="width: 100%" v-model="dialogForm.birthday" type="date" placeholder="出生日期"
|
<MOSTY.Date type="date" format="YYYY/MM/DD" value-format="YYYY-MM-DD" v-model="dialogForm.birthday" clearable placeholder="请选择出生日期" />
|
||||||
format="YYYY/MM/DD" value-format="YYYY-MM-DD" />
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="所属模块:" prop="politic">
|
<el-form-item label="所属模块:" prop="politic" style="width: 240px;">
|
||||||
<el-select style="width: 100%" v-model="dialogForm.politic" placeholder="请选择">
|
<MOSTY.Select :dictEnum="D_BZ_ZZMM" v-model="dialogForm.politic" clearable/>
|
||||||
<el-option v-for="dict in D_BZ_ZZMM" :label="dict.label" :value="dict.value" :key="dict.value" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="婚姻状况:" prop="marital">
|
<el-form-item label="婚姻状况:" prop="marital" style="width: 240px;">
|
||||||
<el-select style="width: 100%" v-model="dialogForm.marital" placeholder="请选择婚姻状况">
|
<MOSTY.Select :dictEnum="D_BZ_HYZK" v-model="dialogForm.marital" clearable/>
|
||||||
<el-option v-for="dict in D_BZ_HYZK" :label="dict.label" :value="dict.value" :key="dict.value" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="人员类别:" prop="type">
|
<el-form-item label="人员类别:" prop="type" style="width: 240px;">
|
||||||
<el-select style="width: 100%" v-model="dialogForm.type" placeholder="请选择人员类别">
|
<MOSTY.Select :dictEnum="D_BZ_RYLB" v-model="dialogForm.type" clearable/>
|
||||||
<el-option v-for="dict in D_BZ_RYLB" :label="dict.label" :value="dict.value" :key="dict.value" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="有效期:" prop="endTime">
|
<el-form-item label="有效期:" prop="endTime">
|
||||||
<el-date-picker style="width: 100%" v-model="dialogForm.endTime" type="datetime" placeholder="请选择有效期"
|
<MOSTY.Date type="datetime" format="YYYY/MM/DD hh:mm:ss" v-model="dialogForm.endTime" clearable placeholder="请选择有效期" />
|
||||||
format="YYYY/MM/DD hh:mm:ss" value-format="x" />
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="是否融合">
|
<el-form-item label="是否融合" style="width: 240px;">
|
||||||
<el-select style="width: 100%" v-model="dialogForm.sfrh" placeholder="请选择">
|
<MOSTY.Select :dictEnum="D_BZ_SF" v-model="dialogForm.sfrh" clearable/>
|
||||||
<el-option v-for="dict in D_BZ_SF" :label="dict.label" :value="dict.value" :key="dict.value" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item style="width: 100%" label="备注">
|
<el-form-item style="width: 100%" label="备注">
|
||||||
|
|||||||
@ -70,8 +70,14 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<Release v-model="showModel" :ItemData="ItemData" @SaveReport="SaveReport" title="帖子发布" :showCancel="false"
|
<Release
|
||||||
:heightNumber="436"></Release>
|
v-model="showModel"
|
||||||
|
:ItemData="ItemData"
|
||||||
|
@SaveReport="SaveReport"
|
||||||
|
title="帖子发布"
|
||||||
|
:showCancel="false"
|
||||||
|
:heightNumber="436">
|
||||||
|
</Release>
|
||||||
<Particulars ref="particulars" />
|
<Particulars ref="particulars" />
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@ -21,12 +21,12 @@ import TheRight from "./components/theRight.vue";
|
|||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
|
|
||||||
.bilateral{
|
.bilateral{
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
height: calc(100vh - 190px);
|
height: calc(100vh - 190px);
|
||||||
display: flex;
|
display: flex;
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
color: #000;
|
color: #000;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
.the-left{
|
.the-left{
|
||||||
width: 210px;
|
width: 210px;
|
||||||
margin-right: 15px;
|
margin-right: 15px;
|
||||||
|
|||||||
Reference in New Issue
Block a user