Browse Source

fix:1、警员检索优化;2、禁闭检索优化;3、信访上传;4、信访大屏优化

main
pengwei 6 months ago
parent
commit
1e72bd3bfd
  1. 2
      src/api/work/confinement.ts
  2. 4
      src/components/data/gab-import.vue
  3. 17
      src/components/negative/dialog.vue
  4. 23
      src/components/negative/verify-description.vue
  5. 58
      src/components/negative/verify.vue
  6. 26
      src/views/datav/MailVisits.vue
  7. 11
      src/views/work/Confinement.vue

2
src/api/work/confinement.ts

@ -10,7 +10,7 @@ export const getConfinementList = (query)=>{
//无权限判断的分页查询
export const getConfinementListAll =(query)=>{
return request.get({
url:'/confinement/listALl',
url:'/confinement/listAll',
query
})
}

4
src/components/data/gab-import.vue

@ -87,7 +87,7 @@
/>
<el-table-column
label="信访形式"
prop="channelForFilingComplaints"
prop="petitionType"
width="86"
align="center"
/>
@ -281,4 +281,4 @@ watch(
);
</script>
<style lang="scss" scoped>
</style>
</style>

17
src/components/negative/dialog.vue

@ -179,7 +179,7 @@
"
>
<!-- 核查办理查看-->
<negative-verify-description :ConfinementData="ConfinementDataList" />
<negative-verify-description />
</template>
<template v-if="approves.length">
<!-- 审批意见-->
@ -473,7 +473,6 @@ watch(
() => props.id,
() => {
getDetails();
getConfinementData()
verifyEditFlag.value = false;
formData.value = {};
}
@ -568,7 +567,6 @@ async function handleExecute(action, data) {
emit("close");
return;
}
getConfinementData();
getDetails();
}
@ -587,22 +585,11 @@ function handleFav() {
}
const spotCheckEditFlag = ref(false);
let confinementQuery = ref({
current: 1,
size: 10000,
departBranch: false
})
/**
* 获取禁闭信息
* */
async function getConfinementData(){
const res = await getConfinementListAll(confinementQuery.value);
ConfinementDataList.value= res.records;
}
function spotCheck() {
spotCheckEditFlag.value = true;
}

23
src/components/negative/verify-description.vue

@ -333,25 +333,38 @@ const activeNames = ref([
const negative = inject("negative");
console.log(negative)
let props = defineProps(['ConfinementData'])
let ConfinementDataList= ref([])
/**
* 禁闭信息入参
* */
let confinementQuery = ref({
current: 1,
size: 100,
departBranch: false
})
/**
* 警员禁闭处罚
* */
function rtuenConfinementData(val){
return props.ConfinementData?.find(s=>s.id === val.confinementId);
const data = getConfinementData(val)
return data?.find(s=>s.id === val.confinementId);
}
/**
* 领导禁闭处罚
* */
function rtuenLeadConfinementData(val){
return props.ConfinementData?.find(s=>s.id === val.leadConfinementId);
const data = getConfinementData(val)
return data?.find(s=>s.id === val.leadConfinementId);
}
/**
* 获取禁闭信息
* */
async function getConfinementData(val){
confinementQuery.value.id = val
const res = await getConfinementListAll(confinementQuery.value);
return res.records;
}
for (
let i = 0;

58
src/components/negative/verify.vue

@ -701,7 +701,12 @@
<el-row>
<el-col>
<el-form-item label="禁闭关联">
<el-select v-model="item.confinementId" filterable popper-class="widthClass" :filter-method="fileConfinement">
<el-select v-model="item.confinementId"
filterable
remote
:remote-method="fileConfinement"
popper-class="widthClass"
>
<template #header>
<el-row>
<el-col :span="2">姓名</el-col>
@ -949,8 +954,9 @@
<el-form-item label="禁闭关联">
<el-select
filterable
:filter-method="fileConfinement"
v-model="item.leadConfinementId"
remote
:remote-method="fileConfinement"
v-model="item.leadConfinementId"
popper-class="widthClass" >
<template #header>
<el-row>
@ -1633,7 +1639,7 @@ const form = ref({
handlePolices: [{}],
});
//
let confinementList = ref([])
let confinementOpens = ref([])
/**
* 禁闭信息入参
@ -1643,43 +1649,45 @@ let confinementQuery = ref({
size: 10000,
departBranch: false
})
/**
* 获取禁闭信息
* */
const getConfinementData = async () => {
const res = await getConfinementListAll(confinementQuery.value);
confinementList.value = res.records
confinementOpens.value=res.records
}
/**
* 下拉搜索过滤数据(姓名警号)
* @param query 输入参数
*
* */
const fileConfinement = (query)=>{
const fileConfinement = async (query)=>{
confinementQuery.value={
current: 1,
size: 10000,
departBranch: false
}
if(query){
confinementOpens.value = confinementList.value.filter(s => s.name.includes(query) || s.empNo.includes(query))
}else{
confinementOpens.value=confinementList.value
confinementQuery.value.id = query
confinementQuery.value.name = query
confinementQuery.value.empNo = query
}
const data =await getConfinementListAll(confinementQuery.value);
confinementOpens.value = [...new Set(confinementOpens.value.concat(data.records))];
}
const problemIsTrue = computed(() => {
return form.value.checkStatus !== InspectCase.FALSE;
});
getConfinementData();
getFormData();
watch(negative, () => {
getFormData();
});
function getFormData() {
async function getFormData() {
form.value = {
involveDepartId: negative.value.involveDepartId,
caseNumber: negative.value.caseNumber,
@ -1706,6 +1714,16 @@ function getFormData() {
visitingLeaderName: negative.value.visitingLeaderName,
visitingLeaderEmpNo: negative.value.visitingLeaderEmpNo
};
if(negative.value.blames){
negative.value.blames.forEach((item)=>{
fileConfinement(item.confinementId)
})
}
if(negative.value.blameLeaders){
negative.value.blameLeaders.forEach((item)=>{
fileConfinement(item.leadConfinementId)
})
}
if (negative.value.accountabilityTarget != undefined) {
form.value.accountabilityTarget = negative.value.accountabilityTarget;
return;
@ -1714,6 +1732,7 @@ function getFormData() {
form.value.accountabilityTarget = AccountabilityTarget.PERSONAL;
}
console.log(form.value);
}
function handleAddBlame(type) {
@ -1907,7 +1926,6 @@ function validateHandlePolices(rule, value, cb) {
const formRef = ref(null);
async function validate() {
debugger;
//
if (form.value.accountabilityTarget === AccountabilityTarget.PERSONAL) {
form.value.blames = form.value.blames.filter(

26
src/views/datav/MailVisits.vue

@ -231,23 +231,24 @@
type="bottom-button"
v-model="fxsjEntanglementTab"
>
<datav-tab-item label="领导接访" name="1">
<datav-tab-item label="群体集访" name="1">
<el-scrollbar height="300px">
<datav-chart-bar
:data="fxsjLeaderViewMailList"
:data="fxsjMassMailList"
:max="11"
size="large"
:color="leaderViewColors"
:color="colors"
/>
</el-scrollbar>
</datav-tab-item>
<datav-tab-item label="群体集访" name="2">
<datav-tab-item label="领导接访" name="2">
<el-scrollbar height="300px">
<datav-chart-bar
:data="fxsjMassMailList"
:data="fxsjLeaderViewMailList"
:max="11"
size="large"
:color="colors"
:color="leaderViewColors"
/>
</el-scrollbar>
</datav-tab-item>
@ -258,26 +259,27 @@
type="bottom-button"
>
<datav-tab-item label="领导接访" name="1">
<datav-tab-item label="群体集访" name="1">
<el-scrollbar height="300px">
<datav-chart-bar
:data="bwzdLeaderViewMailList"
:data="bwzdMassMailList"
:max="11"
size="large"
:color="leaderViewColors"
:color="colors"
/>
</el-scrollbar>
</datav-tab-item>
<datav-tab-item label="群体集访" name="2">
<datav-tab-item label="领导接访" name="2">
<el-scrollbar height="300px">
<datav-chart-bar
:data="bwzdMassMailList"
:data="bwzdLeaderViewMailList"
:max="11"
size="large"
:color="colors"
:color="leaderViewColors"
/>
</el-scrollbar>
</datav-tab-item>
</datav-tabs>
</datav-tab-item>
</datav-tabs>

11
src/views/work/Confinement.vue

@ -23,7 +23,7 @@ let query = ref({
//
let PoliceQuery = ref({
current: 1,
size: 10000
size: 30
})
//(true,false)
let isEdit = ref(false)
@ -244,7 +244,11 @@ const handleSumbit = async () => {
getList()
}
//
const getPoliceListFun = async () => {
const getPoliceListFun = async (query) => {
if (query){
PoliceQuery.value.name = query;
}
const res = await getPoliceList(PoliceQuery.value)
users.value = res.records;
}
@ -302,7 +306,6 @@ function getDaysBetweenDates(date1, date2) {
onMounted(() => {
getList();
getPoliceListFun();
getNursingOrgList();
})
</script>
@ -482,8 +485,10 @@ onMounted(() => {
<el-select
v-model="formData.policeId"
filterable
remote
default-first-option
@change="CopyUserDetail"
:remote-method="getPoliceListFun"
>
<el-option v-for="(item,key) in users" :key="key"
:label="item.name"

Loading…
Cancel
Save