Browse Source

Merge branch 'dev' into jw_feature_dev

V1.0
张若晨 2 years ago
parent
commit
ad8a979f93
  1. 2
      src/router/index.js
  2. 37
      src/views/components/resiForm.vue
  3. 34
      src/views/dataBoard/renfang/index.vue
  4. 13
      src/views/modules/base/community/communityForm.vue
  5. 16
      src/views/modules/base/resi.vue
  6. 1
      src/views/modules/base/virtualResi.vue
  7. 2
      src/views/modules/communityParty/partyOrg/update.vue
  8. 3
      src/views/modules/communityParty/regionalParty/unitsForm.vue
  9. 263
      src/views/modules/portrayal/jumin/cpts/rightTop.vue
  10. 28
      src/views/modules/portrayal/loudong/cpts/buildingTable.vue
  11. 28
      src/views/modules/portrayal/loudong/cpts/house.vue
  12. 28
      src/views/modules/portrayal/loudong/cpts/unit.vue
  13. 2
      src/views/modules/satisfaction/communitySelfInsp/index.vue
  14. 9
      src/views/modules/satisfaction/satisfactionProvince/formList.vue
  15. 2
      src/views/modules/shequzhili/event/cpts/event-info.vue
  16. 4
      src/views/modules/shequzhili/event/eventList.vue
  17. 302
      src/views/modules/shequzhili/eventOld/cpts/add.vue
  18. 2
      src/views/modules/shequzhili/eventOld/cpts/event-detail.vue
  19. 128
      src/views/modules/shequzhili/eventOld/cpts/event-info.vue
  20. 161
      src/views/modules/shequzhili/eventOld/cpts/process-form-designate.vue
  21. 39
      src/views/modules/shequzhili/eventOld/cpts/process-form-replay-end.vue
  22. 229
      src/views/modules/shequzhili/eventOld/cpts/process-form.vue
  23. 8
      src/views/modules/shequzhili/eventOld/eventList.vue

2
src/router/index.js

@ -539,7 +539,7 @@ export const dataBoardRoutes = {
component: () => import("@/views/dataBoard/satisfactionEval/index"), component: () => import("@/views/dataBoard/satisfactionEval/index"),
name: "dataBoard-satisfactionEval-index", name: "dataBoard-satisfactionEval-index",
meta: { meta: {
title: "满意度评价", title: "群众满意度",
isTab: false, isTab: false,
}, },
}, },

37
src/views/components/resiForm.vue

@ -436,7 +436,7 @@ export default {
this.handleNextOrgTreeClick(node, resolve) this.handleNextOrgTreeClick(node, resolve)
}, },
checkStrictly: true, checkStrictly: true,
multiple: false multiple: false,
}, },
activeName: 'groupeduInfoDto', activeName: 'groupeduInfoDto',
validateFlag: null, validateFlag: null,
@ -552,8 +552,9 @@ export default {
{ label: '残疾', value: '0', formName: "disabilityFlag" }, { label: '残疾', value: '0', formName: "disabilityFlag" },
{ label: '大病', value: '0', formName: "seriousIllnessFlag" }, { label: '大病', value: '0', formName: "seriousIllnessFlag" },
{ label: '慢病', value: '0', formName: "chronicDiseaseFlag" }, { label: '慢病', value: '0', formName: "chronicDiseaseFlag" },
{ label: '公益岗人员', value: '0', formName: "publicWelfareFlag" } { label: '公益岗人员', value: '0', formName: "publicWelfareFlag" },
{ label: '楼长', value: '0', formName: "buildingChiefFlag" },
{ label: '单元长', value: '0', formName: "unitChiefFlag" }
] ]
} }
], ],
@ -1398,6 +1399,8 @@ export default {
disabilityFlag: '0',// disabilityFlag: '0',//
seriousIllnessFlag: '0', // seriousIllnessFlag: '0', //
chronicDiseaseFlag: '0', // chronicDiseaseFlag: '0', //
buildingChiefFlag: '0', //
unitChiefFlag: '0', //
eduInfoDto: { // eduInfoDto: { //
cultureLevel: '', cultureLevel: '',
@ -1718,25 +1721,22 @@ export default {
}) })
}, },
async handleNextOrgTreeClick (node,resolve) { async handleNextOrgTreeClick (node,resolve) {
console.log(node,resolve);
await this.getTreeChildenList(node,resolve) await this.getTreeChildenList(node,resolve)
}, },
async getTreeChildenList (node, resolve) { async getTreeChildenList (node, resolve) {
if (node.data.partyOrgLevel === 7) { if (node.data.partyOrgLevel === 7 ) {
resolve([]); // resolve(null);
return; return;
} }
const url = "/actual/base/party/org/listNextLevelPartyOrgTreeNodesByPid" const url = "/actual/base/party/org/listNextLevelPartyOrgTreeNodesByPid"
console.log('级联', node.value)
let params = { let params = {
partyOrgPid: node.data.id partyOrgPid: node.data.id
} }
const { data, code, msg } = await requestGet(url, params) const { data, code, msg } = await requestGet(url, params)
if (code === 0) { if (code === 0) {
data.forEach(item => { data.forEach(item => {
if (item.partyOrgLevel === 7) { item.children = null;
item.children = null; // item.children = []; item.leaf = item.partyOrgLevel === 7 || item.childrenQty === 0
}
}); });
resolve(data) resolve(data)
} else { } else {
@ -2312,7 +2312,8 @@ export default {
this.form.floatingFlag = data.categoryInfo.floatingFlag.toString() this.form.floatingFlag = data.categoryInfo.floatingFlag.toString()
this.form.liveAloneFlag = data.categoryInfo.liveAloneFlag.toString() this.form.liveAloneFlag = data.categoryInfo.liveAloneFlag.toString()
this.form.publicWelfareFlag = data.categoryInfo.publicWelfareFlag.toString() this.form.publicWelfareFlag = data.categoryInfo.publicWelfareFlag.toString()
this.form.publicWelfareFlag = data.categoryInfo.publicWelfareFlag.toString() this.form.buildingChiefFlag = data.categoryInfo.buildingChiefFlag.toString()
this.form.unitChiefFlag = data.categoryInfo.unitChiefFlag.toString()
if (this.form.partyFlag == '1') this.tabsList.push({ label: '党员', id: '0', groupId: 'parymemberInfoDto' }) if (this.form.partyFlag == '1') this.tabsList.push({ label: '党员', id: '0', groupId: 'parymemberInfoDto' })
if (this.form.ensureHouseFlag == '1') this.tabsList.push({ label: '保障房信息', id: '1', groupId: 'ensureHouseDto' }) if (this.form.ensureHouseFlag == '1') this.tabsList.push({ label: '保障房信息', id: '1', groupId: 'ensureHouseDto' })
@ -2331,7 +2332,7 @@ export default {
villageId, birthday, gender, idType, idNum, localResidenceFlag, mobile, name, nation, nationality, remark, villageId, birthday, gender, idType, idNum, localResidenceFlag, mobile, name, nation, nationality, remark,
partyFlag, subsistenceAllowanceFlag, ensureHouseFlag, unemployedFlag, fertileWomanFlag, veteranFlag, unitedFrontFlag, partyFlag, subsistenceAllowanceFlag, ensureHouseFlag, unemployedFlag, fertileWomanFlag, veteranFlag, unitedFrontFlag,
petitionOfficerFlag, volunteerFlag, oldPeopleFlag, emptyNesterFlag, specialSupportFlag, disabledFlag, petitionOfficerFlag, volunteerFlag, oldPeopleFlag, emptyNesterFlag, specialSupportFlag, disabledFlag,
dementedFlag, disabilityFlag, seriousIllnessFlag, chronicDiseaseFlag, specialCrowdFlag, tenantFlag, floatingFlag, liveAloneFlag, publicWelfareFlag } = this.form dementedFlag, disabilityFlag, seriousIllnessFlag, chronicDiseaseFlag, specialCrowdFlag, tenantFlag, floatingFlag, liveAloneFlag, publicWelfareFlag,buildingChiefFlag, unitChiefFlag} = this.form
this.newForm = { this.newForm = {
categoryId, categoryId,
resiId, resiId,
@ -2375,7 +2376,8 @@ export default {
floatingFlag, floatingFlag,
liveAloneFlag, liveAloneFlag,
publicWelfareFlag, publicWelfareFlag,
buildingChiefFlag,
unitChiefFlag,
} }
}, },
// //
@ -2863,7 +2865,9 @@ export default {
this.newForm.disabilityFlag = this.form.disabilityFlag, this.newForm.disabilityFlag = this.form.disabilityFlag,
this.newForm.seriousIllnessFlag = this.form.seriousIllnessFlag, this.newForm.seriousIllnessFlag = this.form.seriousIllnessFlag,
this.newForm.chronicDiseaseFlag = this.form.chronicDiseaseFlag, this.newForm.chronicDiseaseFlag = this.form.chronicDiseaseFlag,
this.newForm.publicWelfareFlag = this.form.publicWelfareFlag this.newForm.publicWelfareFlag = this.form.publicWelfareFlag,
this.newForm.buildingChiefFlag = this.form.buildingChiefFlag,
this.newForm.unitChiefFlag = this.form.unitChiefFlag
if (this.newForm.eduInfoDto) { if (this.newForm.eduInfoDto) {
this.newForm.eduInfoDto = this.form.eduInfoDto this.newForm.eduInfoDto = this.form.eduInfoDto
@ -2936,7 +2940,7 @@ export default {
this.newForm.specialSupportDto = this.form.specialSupportDto this.newForm.specialSupportDto = this.form.specialSupportDto
} }
} },
} }
} }
</script> </script>
@ -2979,4 +2983,7 @@ export default {
.item-agency { .item-agency {
width: 400px; width: 400px;
} }
::v-deep .no-expand>:nth-child(1) .cell .el-table__expand-icon{
display: none;
}
</style> </style>

34
src/views/dataBoard/renfang/index.vue

@ -722,31 +722,25 @@ export default {
// //
async getResiCategoryData() { async getResiCategoryData() {
const url = "resident_class_statics"; const url = "/actual/base/resiCategory/categoryCountList";
let params = {
const { data, code, msg } = await requestPostBi( // id: this.orgData.id,
url, // level: "agency",
{ };
queryParam: { const { data, code, msg } = await requestGet(url, params);
org_id: this.orgId,
},
},
{
// mockId: 60031937,
}
);
if (code === 0) { if (code === 0) {
this.resiCategoryData = data.map((item) => { if (data) {
this.resiCategoryData = data.categoryList.map((item) => {
return { return {
code: item.label_id, code: item.categoryName,
name: item.label, name: resiCategoryMap[item.categoryName] || "",
count: item.count, count: item.categoryCount,
ratio: item.ratio, ratio: ((100 * item.categoryCount) / data.resiCount).toFixed(0),
growth: item.growth, growth: 0,
growthAbs: Math.abs(item.growth), growthAbs: Math.abs(item.growth),
}; };
}); });
}
} else { } else {
this.$message.error(msg); this.$message.error(msg);
} }

13
src/views/modules/base/community/communityForm.vue

@ -168,7 +168,9 @@ export default {
// label: 'agencyName', // label: 'agencyName',
// value: 'agencyId', // value: 'agencyId',
lazy: true, lazy: true,
lazyLoad: this.lazyLoadAgency lazyLoad:(node, resolve) => {
this.lazyLoadAgency(node, resolve)
},
}, },
userAgencyId: '', userAgencyId: '',
} }
@ -182,10 +184,8 @@ export default {
}, },
methods: { methods: {
lazyLoadAgency(node, resolve) { async lazyLoadAgency(node, resolve) {
setTimeout(() => { await this.getAgency(node, resolve)
this.getAgency(node, resolve)
}, 200)
}, },
async getAgency(node, resolve) { async getAgency(node, resolve) {
const url = "/gov/org/agency/dynamicOrgTreeWithDepth" const url = "/gov/org/agency/dynamicOrgTreeWithDepth"
@ -206,8 +206,9 @@ export default {
label: item.name, label: item.name,
level: item.agencyLevel, level: item.agencyLevel,
orgType: item.orgType, orgType: item.orgType,
leaf: node.level >= 4 // 5 leaf: item.orgType == 'grid' // 5
})) }))
console.log(nodes);
resolve(nodes) resolve(nodes)
} else { } else {
this.$message.error(msg) this.$message.error(msg)

16
src/views/modules/base/resi.vue

@ -210,6 +210,16 @@
? "志愿者 " ? "志愿者 "
: "" : ""
}} }}
{{
scope.row.categoryInfo.buildingChiefFlag == 1
? "楼长 "
: ""
}}
{{
scope.row.categoryInfo.unitChiefFlag == 1
? "单元长 "
: ""
}}
</div> </div>
</template> </template>
</div> </div>
@ -975,6 +985,11 @@ export default {
_baseForm.disabledFlag = parseInt(_baseForm.disabledFlag); // _baseForm.disabledFlag = parseInt(_baseForm.disabledFlag); //
_baseForm.dementedFlag = parseInt(_baseForm.dementedFlag); // _baseForm.dementedFlag = parseInt(_baseForm.dementedFlag); //
_baseForm.disabilityFlag = parseInt(_baseForm.disabilityFlag); // _baseForm.disabilityFlag = parseInt(_baseForm.disabilityFlag); //
_baseForm.buildingChiefFlag = parseInt(_baseForm.buildingChiefFlag); //
_baseForm.unitChiefFlag = parseInt(_baseForm.unitChiefFlag); //
_baseForm.seriousIllnessFlag = parseInt( _baseForm.seriousIllnessFlag = parseInt(
_baseForm.seriousIllnessFlag _baseForm.seriousIllnessFlag
); // ); //
@ -1092,7 +1107,6 @@ export default {
}, },
async getTableData(obj) { async getTableData(obj) {
console.log(this.currentPage);
let params = { let params = {
pageNo: this.currentPage, pageNo: this.currentPage,
pageSize: this.pageSize, pageSize: this.pageSize,

1
src/views/modules/base/virtualResi.vue

@ -1083,7 +1083,6 @@ export default {
}, },
async getTableData(obj) { async getTableData(obj) {
console.log(this.currentPage);
let params = { let params = {
pageNo: this.currentPage, pageNo: this.currentPage,
pageSize: this.pageSize, pageSize: this.pageSize,

2
src/views/modules/communityParty/partyOrg/update.vue

@ -168,12 +168,14 @@ export default {
this.dataForm.principalId = partyOrgInfo.principalId; this.dataForm.principalId = partyOrgInfo.principalId;
console.log(this.principals) console.log(this.principals)
console.log(this.dataForm.principalId ) console.log(this.dataForm.principalId )
this.$nextTick(()=>{
if (!map) { if (!map) {
this.initMap(this.dataForm.latitude, this.dataForm.longitude); this.initMap(this.dataForm.latitude, this.dataForm.longitude);
} else { } else {
map.setCenter(this.dataForm.latitude, this.dataForm.longitude); map.setCenter(this.dataForm.latitude, this.dataForm.longitude);
map.setMarker(this.dataForm.latitude, this.dataForm.longitude); map.setMarker(this.dataForm.latitude, this.dataForm.longitude);
} }
})
}, },
// //

3
src/views/modules/communityParty/regionalParty/unitsForm.vue

@ -480,6 +480,9 @@ export default {
longitude: [ longitude: [
{ required: true, message: "坐标不能为空", trigger: "blur" }, { required: true, message: "坐标不能为空", trigger: "blur" },
], ],
serviceMatterList:[
{ required: true, message: "服务事项不能为空", trigger: "blur" },
]
}; };
}, },
}, },

263
src/views/modules/portrayal/jumin/cpts/rightTop.vue

@ -1,88 +1,126 @@
<template> <template>
<div class=''> <div class="">
<el-tabs v-model="topTabs" @tab-click="tabClick"> <el-tabs v-model="topTabs" @tab-click="tabClick">
<el-tab-pane :label="complainLabel" name="12345"> <el-tab-pane :label="complainLabel" name="12345">
<complain :tableData="complainList" :key="resiId[0]" /> <complain :tableData="complainList" :key="resiId[0]" />
<el-row type="flex"> <el-row type="flex">
<el-col :span="12" align="left"> <el-col :span="12" align="left">
<div style="margin-top: 25px;">{{ complainTotal }}</div> <div style="margin-top: 25px">{{ complainTotal }}</div>
</el-col> </el-col>
<el-col :span="12" align="right"> <el-col :span="12" align="right">
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" <el-pagination
:current-page.sync="pageNo" :page-size="pageSize" layout="prev, pager, next, jumper" @size-change="handleSizeChange"
:total="complainTotal"> @current-change="handleCurrentChange"
</el-pagination></el-col> :current-page.sync="pageNo"
:page-size="pageSize"
layout="prev, pager, next, jumper"
:total="complainTotal"
>
</el-pagination
></el-col>
</el-row> </el-row>
</el-tab-pane> </el-tab-pane>
<el-tab-pane :label="shengLabel" name="sheng"> <el-tab-pane :label="shengLabel" name="sheng">
<sheng :tableData="shengList" :key="resiId[0]" /> <sheng :tableData="shengList" :key="resiId[0]" />
<el-row type="flex"> <el-row type="flex">
<el-col :span="12" align="left"> <el-col :span="12" align="left">
<div style="margin-top: 25px;">{{ shengTotal }}</div> <div style="margin-top: 25px">{{ shengTotal }}</div>
</el-col> </el-col>
<el-col :span="12" align="right"> <el-col :span="12" align="right">
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" <el-pagination
:current-page.sync="pageNo" :page-size="pageSize" layout="prev, pager, next, jumper" @size-change="handleSizeChange"
:total="shengTotal"> @current-change="handleCurrentChange"
</el-pagination></el-col> :current-page.sync="pageNo"
:page-size="pageSize"
layout="prev, pager, next,jumper"
:total="shengTotal"
>
</el-pagination
></el-col>
</el-row> </el-row>
</el-tab-pane> </el-tab-pane>
<el-tab-pane :label="shequLabel" name="shequ"> <el-tab-pane :label="shequLabel" name="shequ">
<shequ :tableData="shequList" :key="resiId[0]" /> <shequ :tableData="shequList" :key="resiId[0]" />
<el-row type="flex"> <el-row type="flex">
<el-col :span="12" align="left"> <el-col :span="12" align="left">
<div style="margin-top: 25px;">{{ shequTotal }}</div> <div style="margin-top: 25px">{{ shequTotal }}</div>
</el-col> </el-col>
<el-col :span="12" align="right"> <el-col :span="12" align="right">
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" <el-pagination
:current-page.sync="pageNo" :page-size="pageSize" layout="prev, pager, next, jumper" @size-change="handleSizeChange"
:total="shequTotal"> @current-change="handleCurrentChange"
</el-pagination></el-col> :current-page.sync="pageNo"
:page-size="pageSize"
layout="prev, pager, next, jumper"
:total="shequTotal"
>
</el-pagination
></el-col>
</el-row> </el-row>
</el-tab-pane> </el-tab-pane>
<el-tab-pane :label="shijianLabel" name="shijian"> <el-tab-pane :label="shijianLabel" name="shijian">
<shijian :tableData="shijianList" :key="resiId[0]" /> <shijian :tableData="shijianList" :key="resiId[0]" />
<el-row type="flex"> <el-row type="flex">
<el-col :span="12" align="left"> <el-col :span="12" align="left">
<div style="margin-top: 25px;">{{ shijianTotal }}</div> <div style="margin-top: 25px">{{ shijianTotal }}</div>
</el-col> </el-col>
<el-col :span="12" align="right"> <el-col :span="12" align="right">
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" <el-pagination
:current-page.sync="pageNo" :page-size="pageSize" layout="prev, pager, next, jumper" @size-change="handleSizeChange"
:total="shijianTotal"> @current-change="handleCurrentChange"
</el-pagination></el-col> :current-page.sync="pageNo"
:page-size="pageSize"
layout="prev, pager, next, jumper"
:total="shijianTotal"
>
</el-pagination
></el-col>
</el-row> </el-row>
</el-tab-pane> </el-tab-pane>
<el-tab-pane :label="xuqiuLabel" name="xuqiu"> <el-tab-pane :label="xuqiuLabel" name="xuqiu">
<xuqiu :tableData="xuqiuList" :key="resiId[0]" /> <xuqiu :tableData="xuqiuList" :key="resiId[0]" />
<el-row type="flex"> <el-row type="flex">
<el-col :span="12" align="left"> <el-col :span="12" align="left">
<div style="margin-top: 25px;">{{ xuqiuTotal }}</div> <div style="margin-top: 25px">{{ xuqiuTotal }}</div>
</el-col> </el-col>
<el-col :span="12" align="right"> <el-col :span="12" align="right">
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" <el-pagination
:current-page.sync="pageNo" :page-size="pageSize" layout="prev, pager, next, jumper" @size-change="handleSizeChange"
:total="xuqiuTotal"> @current-change="handleCurrentChange"
</el-pagination></el-col> :current-page.sync="pageNo"
:page-size="pageSize"
layout="prev, pager, next, jumper"
:total="xuqiuTotal"
>
</el-pagination
></el-col>
</el-row> </el-row>
</el-tab-pane> </el-tab-pane>
<el-tab-pane :label="fuwuLabel" name="fuwu"> <el-tab-pane :label="fuwuLabel" name="fuwu">
<div style="display: flex; flex-direction: column; height: 100%;"> <div style="display: flex; flex-direction: column; height: 100%">
<fuwu :tableData="fuwuList" :key="resiId[0]" style="flex: 1; overflow: auto;" /> <fuwu
:tableData="fuwuList"
:key="resiId[0]"
style="flex: 1; overflow: auto"
/>
<el-row type="flex"> <el-row type="flex">
<el-col :span="12" align="left"> <el-col :span="12" align="left">
<div style="margin-top: 25px;">{{ fuwuTotal }}</div> <div style="margin-top: 25px">{{ fuwuTotal }}</div>
</el-col> </el-col>
<el-col :span="12" align="right"> <el-col :span="12" align="right">
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" <el-pagination
:current-page.sync="pageNo" :page-size="pageSize" layout="prev, pager, next, jumper" @size-change="handleSizeChange"
:total="fuwuTotal"> @current-change="handleCurrentChange"
:current-page.sync="pageNo"
:page-size="pageSize"
layout="prev, pager, next, jumper"
:total="fuwuTotal"
>
</el-pagination> </el-pagination>
</el-col> </el-col>
</el-row> </el-row>
</div> </div>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
</div> </div>
</template> </template>
@ -98,90 +136,83 @@ export default {
// //
data() { data() {
return { return {
topTabs: '12345', topTabs: "12345",
complainTotal: 0, complainTotal: 0,
complainList: [], complainList: [],
complainLabel: '', complainLabel: "",
shengLabel: '', shengLabel: "",
shengList: [], shengList: [],
shengTotal: 0, shengTotal: 0,
shequLabel: '', shequLabel: "",
shequList: [], shequList: [],
shequTotal: 0, shequTotal: 0,
shijianLabel: '', shijianLabel: "",
shijianList: [], shijianList: [],
shijianTotal: 0, shijianTotal: 0,
xuqiuLabel: '', xuqiuLabel: "",
xuqiuList: [], xuqiuList: [],
xuqiuTotal: 0, xuqiuTotal: 0,
fuwuLabel: '', fuwuLabel: "",
fuwuList: [], fuwuList: [],
fuwuTotal: 0, fuwuTotal: 0,
pageNo: 1, pageNo: 1,
pageSize: 20 pageSize: 20,
}; };
}, },
// //
created() { created() {
if (this.type == '0') { if (this.type == "0") {
this.resiId = [this.userInfo.resiId] this.resiId = [this.userInfo.resiId];
} else if (this.type == '1') { } else if (this.type == "1") {
this.resiId = this.familyResiList this.resiId = this.familyResiList;
} }
}, },
async mounted() { async mounted() {
await this.getComplainList() await this.getComplainList();
await this.getShengList() await this.getShengList();
await this.getShequList() await this.getShequList();
await this.getshijianList() await this.getshijianList();
await this.getxuqiuList() await this.getxuqiuList();
await this.getfuwuList() await this.getfuwuList();
}, },
props: { props: {
userInfo: { userInfo: {
type: Object, type: Object,
default: () => { } default: () => {},
}, },
familyResiList: { familyResiList: {
type: Array, type: Array,
default: () => [] default: () => [],
}, },
type: { type: {
type: String, type: String,
default: '0' default: "0",
} },
}, },
// //
methods: { methods: {
tabClick(index) { tabClick(index) {},
handleSizeChange() {},
}, handleCurrentChange() {},
handleSizeChange() {
},
handleCurrentChange() {
},
getComplainList() { getComplainList() {
if (this.resiId.length == 0) { if (this.resiId.length == 0) {
this.complainList = [] this.complainList = [];
this.complainLabel = `12345投诉(0)` this.complainLabel = `12345投诉(0)`;
return return;
} }
let parm = { let parm = {
residList: this.resiId, residList: this.resiId,
pageNo: this.pageNo, pageNo: this.pageNo,
pageSize: this.pageSize, pageSize: this.pageSize,
eventType: "3", eventType: "3",
};
}
const statusArr = { const statusArr = {
processing: "处理中", processing: "处理中",
closed_case: "已办结", closed_case: "已办结",
@ -189,7 +220,9 @@ export default {
const marktypes = ["普通事件", "难点读点", "矛盾纠纷", "自身问题"]; const marktypes = ["普通事件", "难点读点", "矛盾纠纷", "自身问题"];
// //
this.$http.post("/actual/base/peopleRoomOverview/eventPageList", parm).then(({ data: res }) => { this.$http
.post("/actual/base/peopleRoomOverview/eventPageList", parm)
.then(({ data: res }) => {
this.complainList = res.data.list.map((item) => { this.complainList = res.data.list.map((item) => {
return { return {
...item, ...item,
@ -199,45 +232,55 @@ export default {
}); });
this.complainTotal = res.data.total; this.complainTotal = res.data.total;
this.complainLabel = `12345投诉(${this.complainTotal}` this.complainLabel = `12345投诉(${this.complainTotal}`;
}); });
}, },
getShengList() { getShengList() {
if (this.resiId.length == 0) { if (this.resiId.length == 0) {
this.shengList = [] this.shengList = [];
this.shengLabel = `省满意度调查(0)` this.shengLabel = `省满意度调查(0)`;
return return;
} }
let parm = { let parm = {
residList: this.resiId, residList: this.resiId,
pageNo: this.pageNo, pageNo: this.pageNo,
pageSize: this.pageSize pageSize: this.pageSize,
} };
// //
this.$http.post("/actual/base/peopleRoomOverview/provincialSatisfactionPageList", parm).then(({ data: res }) => { this.$http
.post(
"/actual/base/peopleRoomOverview/provincialSatisfactionPageList",
parm
)
.then(({ data: res }) => {
this.shengList = res.data; this.shengList = res.data;
this.shengTotal = res.data.length; this.shengTotal = res.data.length;
this.shengLabel = `省满意度调查(${this.shengTotal}` this.shengLabel = `省满意度调查(${this.shengTotal}`;
}); });
}, },
getShequList() { getShequList() {
if (this.resiId.length == 0) { if (this.resiId.length == 0) {
this.shequList = [] this.shequList = [];
this.shequLabel = `社区满意度自查(0)` this.shequLabel = `社区满意度自查(0)`;
return return;
} }
let parm = { let parm = {
residList: this.resiId, residList: this.resiId,
pageNo: this.pageNo, pageNo: this.pageNo,
pageSize: this.pageSize pageSize: this.pageSize,
} };
const completeFlags = { const completeFlags = {
"-2": "未知", "-2": "未知",
"-1": "不接受回访", "-1": "不接受回访",
0: "接受回访/待回访", 0: "接受回访/待回访",
1: "已回访", 1: "已回访",
}; };
this.$http.post("/actual/base/peopleRoomOverview/communitySatisfactionPageList", parm).then(({ data: res }) => { this.$http
.post(
"/actual/base/peopleRoomOverview/communitySatisfactionPageList",
parm
)
.then(({ data: res }) => {
this.shequList = res.data.map((item) => { this.shequList = res.data.map((item) => {
return { return {
...item, ...item,
@ -245,26 +288,28 @@ export default {
}; };
}); });
this.shequTotal = this.shequList.length; this.shequTotal = this.shequList.length;
this.shequLabel = `社区满意度自查(${this.shequTotal}` this.shequLabel = `社区满意度自查(${this.shequTotal}`;
}); });
}, },
getshijianList() { getshijianList() {
if (this.resiId.length == 0) { if (this.resiId.length == 0) {
this.shijianList = [] this.shijianList = [];
this.shijianLabel = `上报事件(0)` this.shijianLabel = `上报事件(0)`;
return return;
} }
let parm = { let parm = {
residList: this.resiId, residList: this.resiId,
pageNo: this.pageNo, pageNo: this.pageNo,
pageSize: this.pageSize pageSize: this.pageSize,
} };
const statusArr = { const statusArr = {
processing: "处理中", processing: "处理中",
closed_case: "已办结", closed_case: "已办结",
}; };
const marktypes = ["普通事件", "难点读点", "矛盾纠纷", "自身问题"]; const marktypes = ["普通事件", "难点读点", "矛盾纠纷", "自身问题"];
this.$http.post("/actual/base/peopleRoomOverview/eventPageList", parm).then(({ data: res }) => { this.$http
.post("/actual/base/peopleRoomOverview/eventPageList", parm)
.then(({ data: res }) => {
this.shijianList = res.data.list.map((item) => { this.shijianList = res.data.list.map((item) => {
return { return {
...item, ...item,
@ -273,50 +318,54 @@ export default {
}; };
}); });
this.shijianTotal = this.shijianList.length; this.shijianTotal = this.shijianList.length;
this.shijianLabel = `上报事件(${this.shijianTotal}` this.shijianLabel = `上报事件(${this.shijianTotal}`;
}); });
}, },
getxuqiuList() { getxuqiuList() {
if (this.resiId.length == 0) { if (this.resiId.length == 0) {
this.xuqiuList = [] this.xuqiuList = [];
this.xuqiuLabel = `居民需求(0)` this.xuqiuLabel = `居民需求(0)`;
return return;
} }
let parm = { let parm = {
residList: this.resiId, residList: this.resiId,
pageNo: this.pageNo, pageNo: this.pageNo,
pageSize: this.pageSize pageSize: this.pageSize,
} };
// //
this.$http.post("/actual/base/peopleRoomOverview/demandOfResidentsPageList", parm).then(({ data: res }) => { this.$http
.post("/actual/base/peopleRoomOverview/demandOfResidentsPageList", parm)
.then(({ data: res }) => {
this.xuqiuList = res.data.map((item) => { this.xuqiuList = res.data.map((item) => {
return { return {
...item, ...item,
}; };
}); });
this.xuqiuTotal = this.xuqiuList.length; this.xuqiuTotal = this.xuqiuList.length;
this.xuqiuLabel = `居民需求(${this.xuqiuTotal}` this.xuqiuLabel = `居民需求(${this.xuqiuTotal}`;
}); });
}, },
getfuwuList() { getfuwuList() {
if (this.resiId.length == 0) { if (this.resiId.length == 0) {
this.fuwuList = [] this.fuwuList = [];
this.fuwuLabel = `社区服务(0)` this.fuwuLabel = `社区服务(0)`;
return return;
} }
let parm = { let parm = {
residList: this.resiId, residList: this.resiId,
pageNo: this.pageNo, pageNo: this.pageNo,
pageSize: this.pageSize pageSize: this.pageSize,
} };
this.$http.post("/actual/base/peopleRoomOverview/communityServicePageList", parm).then(({ data: res }) => { this.$http
.post("/actual/base/peopleRoomOverview/communityServicePageList", parm)
.then(({ data: res }) => {
this.fuwuList = res.data.map((item) => { this.fuwuList = res.data.map((item) => {
return { return {
...item, ...item,
}; };
}); });
this.fuwuTotal = this.fuwuList.length; this.fuwuTotal = this.fuwuList.length;
this.fuwuLabel = `社区服务(${this.fuwuTotal}` this.fuwuLabel = `社区服务(${this.fuwuTotal}`;
}); });
}, },
}, },
@ -326,7 +375,7 @@ export default {
computed: {}, computed: {},
// //
watch: {}, watch: {},
} };
</script> </script>
<style lang="less" scoped></style> <style lang="less" scoped></style>

28
src/views/modules/portrayal/loudong/cpts/buildingTable.vue

@ -1,28 +0,0 @@
<template>
<div class=''>
</div>
</template>
<script>
export default {
//
data() {
return {};
},
//
created() { },
//
methods: {},
//
components: {},
//
computed: {},
//
watch: {},
}
</script>
<style lang="scss" scoped>
</style>

28
src/views/modules/portrayal/loudong/cpts/house.vue

@ -1,28 +0,0 @@
<template>
<div class=''>
</div>
</template>
<script>
export default {
//
data() {
return {};
},
//
created() { },
//
methods: {},
//
components: {},
//
computed: {},
//
watch: {},
}
</script>
<style lang="scss" scoped>
</style>

28
src/views/modules/portrayal/loudong/cpts/unit.vue

@ -1,28 +0,0 @@
<template>
<div class=''>
</div>
</template>
<script>
export default {
//
data() {
return {};
},
//
created() { },
//
methods: {},
//
components: {},
//
computed: {},
//
watch: {},
}
</script>
<style lang="scss" scoped>
</style>

2
src/views/modules/satisfaction/communitySelfInsp/index.vue

@ -344,7 +344,7 @@ export default {
this.option.series[2].data.push(item.badQty) this.option.series[2].data.push(item.badQty)
this.option.xAxis.data.push(item.satisfactionCategoryName) this.option.xAxis.data.push(item.satisfactionCategoryName)
this.satisfactionCategory.push(item.satisfactionCategory) this.satisfactionCategory.push(item.satisfactionCategory)
this.score.push({ score: item.score, satisfactionCategoryName: item.satisfactionCategoryName, imgUrl: require(`../../../../assets/img/satisfaction/${item.satisfactionCategory}.png`) }); this.score.push({ score: item.score, satisfactionCategoryName: item.satisfactionCategoryName, imgUrl: require(`@/assets/img/satisfaction/${item.satisfactionCategory}.png`) });
} }
}); });
this.myChart.setOption(this.option); this.myChart.setOption(this.option);

9
src/views/modules/satisfaction/satisfactionProvince/formList.vue

@ -96,11 +96,9 @@ export default {
// //
created() { }, created() { },
async mounted() { async mounted() {
if (this.satisfactionCategoryStr) { this.formData.scopeId = this.formObj.scopeId
this.formData.scopeId = this.satisfactionCategoryStr
this.formData.periodStart = this.formObj.periodStart this.formData.periodStart = this.formObj.periodStart
this.formData.orgCategoryCode = this.formObj.orgCategoryCode this.formData.orgCategoryCode = this.formObj.orgCategoryCode
}
await this.loadAgency(); await this.loadAgency();
await this.getDicts() await this.getDicts()
await this.getTableData() await this.getTableData()
@ -215,10 +213,7 @@ export default {
// //
computed: {}, computed: {},
props: { props: {
satisfactionCategoryStr: {
type: String,
default: ''
},
formObj: { formObj: {
type: Object, type: Object,
default: () => {} default: () => {}

2
src/views/modules/shequzhili/event/cpts/event-info.vue

@ -388,7 +388,7 @@ export default {
this.eventInfoData.categoryList.push(this.replayInfo.categoryId); this.eventInfoData.categoryList.push(this.replayInfo.categoryId);
} }
} else if (this.formData.operationType === '5') { } else if (this.formData.operationType === '5') {
this.replayInfo = this.$refs.ref_process_form_designate.replayInfo; this.replayInfo = this.$refs.ref_processinfo_add.replayInfo;
// //
this.eventInfoData.content = this.replayInfo.content; this.eventInfoData.content = this.replayInfo.content;
this.eventInfoData.status = this.replayInfo.status; this.eventInfoData.status = this.replayInfo.status;

4
src/views/modules/shequzhili/event/eventList.vue

@ -309,10 +309,6 @@ export default {
{ {
value: "3", value: "3",
label: "12345", label: "12345",
},
{
value: "5",
label: "北尚诉办",
} }
], ],

302
src/views/modules/shequzhili/eventOld/cpts/add.vue

@ -103,71 +103,36 @@
</el-form> </el-form>
</div> </div>
<div class="g-right"> <div class="g-right">
<el-form ref="ref_form2" <el-form ref="ref_form2" :inline="true" :model="formData" :rules="dataRule" class="form">
:inline="true" <el-form-item label="图片" label-width="150px" style="display: block">
:model="formData" <el-upload :headers="$getElUploadHeaders()" :class="['avatar-uploader', { hide: hideUploadBtn }]"
:rules="dataRule" ref="uploadPic" :action="uploadUlr" :disabled="uploadStatus" list-type="picture-card"
class="form"> :on-exceed="exceedPic" :on-remove="removePic" :file-list="replayImgList"
<el-form-item label="图片" :on-change="handleEditChange" :on-success="handleSuccess" :before-upload="handleBefore"
label-width="150px"
style="display: block">
<el-upload :headers="$getElUploadHeaders()"
:class="['avatar-uploader', { hide: hideUploadBtn }]"
ref="uploadPic"
:action="uploadUlr"
:disabled="uploadStatus"
list-type="picture-card"
:on-exceed="exceedPic"
:on-remove="removePic"
:file-list="replayImgList"
:on-change="handleEditChange"
:on-success="handleSuccess"
:before-upload="handleBefore"
:limit="3"> :limit="3">
<span class="font-14" >选择图片</span> <span class="font-14">选择图片</span>
<div slot="tip" <div slot="tip" class="upload_tip">
class="upload_tip">
最多上传3张图片图片支持jpgjpegbmpgit或png格式 最多上传3张图片图片支持jpgjpegbmpgit或png格式
</div> </div>
</el-upload> </el-upload>
</el-form-item> </el-form-item>
<el-form-item label="地图位置" <el-form-item label="地图位置" prop="longitude" label-width="150px" style="display: block">
prop="longitude"
label-width="150px"
style="display: block">
<div style="width: 500px"> <div style="width: 500px">
<el-form-item prop="location" style="display: block"> <el-form-item prop="location" style="display: block">
<el-select <el-select v-model="formData.location" filterable remote :reserve-keyword="true"
v-model="formData.location" placeholder="请输入关键词" :remote-method="remoteMethod" :loading="loading"
filterable @keyup.enter.native="remoteMethod(formData.location)">
remote <el-option v-for="(item, index) in searchOptions" @click.native="handleClickKey(index)"
:reserve-keyword="true" :key="item.value" :label="item.label" :value="item.value"></el-option>
placeholder="请输入关键词"
:remote-method="remoteMethod"
:loading="loading"
@keyup.enter.native="remoteMethod(formData.location)"
>
<el-option
v-for="(item, index) in searchOptions"
@click.native="handleClickKey(index)"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<div id="app_event" <div id="app_event" class="div_map"></div>
class="div_map"></div>
</div> </div>
</el-form-item> </el-form-item>
<el-form-item label="详细地址" <el-form-item label="详细地址" prop="address" label-width="150px" style="display: block">
prop="address" <el-input class="cell-width-1" v-model="formData.address">
label-width="150px"
style="display: block">
<el-input class="cell-width-1"
v-model="formData.address">
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -175,80 +140,53 @@
</div> </div>
<!-- 新增弹出框 --> <!-- 新增弹出框 -->
<el-dialog :visible.sync="personTableShow" <!-- <el-dialog :visible.sync="personTableShow" :close-on-click-modal="false" :close-on-press-escape="false"
:close-on-click-modal="false" :destroy-on-close="true" title="选择居民" width="550px" top="5vh" class="dialog-h" @closed="diaClose">
:close-on-press-escape="false"
:destroy-on-close="true"
title="选择居民"
width="550px"
top="5vh"
class="dialog-h"
@closed="diaClose">
<div style="padding: 10px 30px"> <div style="padding: 10px 30px">
<el-form :inline="false" <el-form :inline="false" ref="ref_formSearch" :label-width="'90px'">
ref="ref_formSearch" <el-form-item label="所属网格" label-width="150px">
:label-width="'90px'"> <el-select class="cell-width-1" v-model.trim="selGridId" placeholder="请选择" clearable>
<el-form-item label="所属网格" <el-option v-for="item in gridList" @click.native="handleChangeGrid" :key="`abc-${value}`"
label-width="150px"> :label="item.label" :value="item.value">
<el-select class="cell-width-1"
v-model.trim="selGridId"
placeholder="请选择"
clearable>
<el-option v-for="item in gridList"
@click.native="handleChangeGrid"
:key=`abc-${value}`
:label="item.label"
:value="item.value">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="居民" <el-form-item label="居民" label-width="150px" prop="selPersonIndex">
label-width="150px" <el-select v-model="selPersonIndex" class="cell-width-1" filterable placeholder="请选择" clearable>
prop="selPersonIndex"> <el-option v-for="(item, index) in demandUserList" :key="item.demandUserId" :label="item.label"
<el-select v-model="selPersonIndex"
class="cell-width-1"
filterable
placeholder="请选择"
clearable>
<el-option v-for="(item, index) in demandUserList"
:key="item.demandUserId"
:label="item.label"
:value="index"> :value="index">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div class="div-btn"> <div class="div-btn">
<el-button style="margin-left: 20px" <el-button style="margin-left: 20px" type="primary" size="small"
type="primary"
size="small"
@click="handleComfirmSelPerson">确定</el-button> @click="handleComfirmSelPerson">确定</el-button>
</div> </div>
</div> </div>
</el-dialog> </el-dialog> -->
</div> </div>
</template> </template>
<script> <script>
import { Loading } from "element-ui"; // Loading import { Loading } from "element-ui"; // Loading
import { requestPost } from "@/js/dai/request"; import { requestPost } from "@/js/dai/request";
import formVltHelper from "dai-js/tools/formVltHelper"; import formVltHelper from "dai-js/tools/formVltHelper";
import daiMap from "@/utils/dai-map"; import daiMap from "@/utils/dai-map";
import { isCard } from "@/utils/validate"; import { isCard } from "@/utils/validate";
let loading; // let loading; //
var map; var map;
var search; var search;
var markers; var markers;
var infoWindowList; var infoWindowList;
var geocoder; // var geocoder; //
function iniFmData () { function iniFmData() {
return { return {
gridId: "", // gridId: "", //
reportUserId: "", // ID reportUserId: "", // ID
name: "", // name: "cc", //
mobile: "", // mobile: "17637255555", //
idCard: "", // idCard: "", //
sourceType: "", // sourceType: "", //
happenTime: "", // happenTime: "", //
@ -258,24 +196,22 @@
address: "", // address: "", //
latitude: "", // latitude: "", //
longitude: "", // longitude: "", //
// operationType: '',// // operationType: '0',//
// content: '',// // content: '',//
// status: '',// processingclosed_case // status: '',// processingclosed_case
}; };
} }
export default { export default {
data () { data() {
return { return {
formType: "add", // addeditdetail formType: "add", // addeditdetail
searchOptions: [], searchOptions: [],
searchValue: '', searchValue: '',
resultList: [], resultList: [],
loading: false, loading: false,
btnDisable: false, btnDisable: false,
gridList: [], //list-- gridList: [], //list--
qudaoArray: [ qudaoArray: [
{ {
value: "1", value: "1",
@ -309,7 +245,7 @@
replayImgList: [], replayImgList: [],
okflag: false, okflag: false,
uploadStatus:false, uploadStatus: false,
formDataSearch: { formDataSearch: {
gridId: "", gridId: "",
@ -326,18 +262,7 @@
}, },
components: {}, components: {},
computed: { computed: {
dataRule () { dataRule() {
let checkIdCard = (rule, value, callback) => {
if (value === "") {
callback(new Error("请输入证件号"));
} else {
if (!isCard(value)) {
callback(new Error("证件号格式不正确"));
}
callback();
}
};
return { return {
gridId: [ gridId: [
{ required: true, message: "所属网格不能为空", trigger: "blur" }, { required: true, message: "所属网格不能为空", trigger: "blur" },
@ -385,29 +310,23 @@
}, },
}, },
async mounted () { async mounted() {
const { user } = this.$store.state; const { user } = this.$store.state;
this.agencyId = user.agencyId; this.agencyId = user.agencyId;
let { latitude, longitude } = this.$store.state.user; let { latitude, longitude } = this.$store.state.user;
if (!latitude || latitude == "" || latitude == "0") { if (!latitude || latitude == "" || latitude == "0") {
latitude = 39.9088810666821; latitude = 39.9088810666821;
longitude = 116.39743841556731; longitude = 116.39743841556731;
} }
this.formData.latitude = latitude; this.formData.latitude = latitude;
this.formData.longitude = longitude; this.formData.longitude = longitude;
this.initMap(this.formData.latitude, this.formData.longitude); this.initMap(this.formData.latitude, this.formData.longitude);
this.loadGrid(); this.loadGrid();
this.getCategoryList(); this.getCategoryList();
}, },
methods: { methods: {
async handleShowPersonList () { async handleShowPersonList() {
if (this.formData.gridId) { if (this.formData.gridId) {
await this.handleChangeGrid(); await this.handleChangeGrid();
this.personTableShow = true; this.personTableShow = true;
@ -415,10 +334,10 @@
this.$message.info("请先选择网格"); this.$message.info("请先选择网格");
} }
}, },
diaClose () { diaClose() {
this.personTableShow = false; this.personTableShow = false;
}, },
handleComfirmSelPerson () { handleComfirmSelPerson() {
if (this.selPersonIndex === 0 || this.selPersonIndex) { if (this.selPersonIndex === 0 || this.selPersonIndex) {
let selPerson = this.demandUserList[this.selPersonIndex]; let selPerson = this.demandUserList[this.selPersonIndex];
this.formData.name = selPerson.demandUserName; this.formData.name = selPerson.demandUserName;
@ -432,7 +351,7 @@
} }
}, },
async handleChangeGrid () { async handleChangeGrid() {
const url = "/epmetuser/icresiuser/demandusers"; const url = "/epmetuser/icresiuser/demandusers";
// const url = "http://yapi.elinkservice.cn/mock/245/epmetuser/epidemicPrevention/page" // const url = "http://yapi.elinkservice.cn/mock/245/epmetuser/epidemicPrevention/page"
let params = { let params = {
@ -451,37 +370,30 @@
this.tableLoading = false; this.tableLoading = false;
}, },
async loadGrid () { async loadGrid() {
const url = "/gov/org/customergrid/gridoption"; const url = "/gov/org/customergrid/gridoption";
let params = { let params = {
agencyId: this.agencyId, agencyId: this.agencyId,
purpose: "addorupdate", purpose: "query",
}; };
const { data, code, msg } = await requestPost(url, params); const { data, code, msg } = await requestPost(url, params);
if (code === 0) { if (code === 0) {
this.gridList = data; this.gridList = data;
} else { } else {
this.$message.error(msg); this.$message.error(msg);
} }
}, },
async getCategoryList () { async getCategoryList() {
const url = "/governance/issueprojectcategorydict/list"; const url = "/governance/icEvent/getCategoryTree";
let params = {}; let params = {};
const { data, code, msg } = await requestPost(url, params); const { data, code, msg } = await requestPost(url, params);
if (code === 0) { if (code === 0) {
let treeDataNew = this.filterTree(data); let treeDataNew = this.deepTree(data, "children");
// this.categrayList = data // this.categrayList = data
// //
++this.iscascaderShow; ++this.iscascaderShow;
this.casOptions = []; this.casOptions = [];
this.selCategoryArray = []; this.selCategoryArray = [];
this.casOptions = treeDataNew; this.casOptions = treeDataNew;
} else { } else {
this.$message.error(msg); this.$message.error(msg);
@ -489,26 +401,27 @@
}, },
// //
filterTree (arr) { deepTree(arr, children) {
let childs = arr; if (Array.isArray(arr) && arr.length > 0) {
for (let i = childs.length; i--; i > 0) { return arr.map((item) => {
if (childs[i].subCategory) { return {
if (childs[i].subCategory.length) { ...item,
this.filterTree(childs[i].subCategory); [children]:
} else { (item[children] &&
delete childs[i].subCategory; item[children].length > 0 &&
} this.deepTree(item[children], children)) ||
} null,
};
});
} }
return arr;
}, },
handleChangeAgency (value) { handleChangeAgency(value) {
// this.agencyName = this.$refs["myCascader"].getCheckedNodes()[0].label // this.agencyName = this.$refs["myCascader"].getCheckedNodes()[0].label
// this.orgId = this.selCategoryArray.length > 0 ? this.selCategoryArray[this.selCategoryArray.length - 1] : '' // this.orgId = this.selCategoryArray.length > 0 ? this.selCategoryArray[this.selCategoryArray.length - 1] : ''
}, },
async getEventInfo () { async getEventInfo() {
this.okflag = false; this.okflag = false;
this.$refs["ref_form1"].validate((valid, messageObj) => { this.$refs["ref_form1"].validate((valid, messageObj) => {
if (!valid) { if (!valid) {
@ -546,7 +459,7 @@
}); });
}, },
removePic (file, fileList) { removePic(file, fileList) {
this.formData.imageList.splice( this.formData.imageList.splice(
this.formData.imageList.findIndex((item) => item === file.url), this.formData.imageList.findIndex((item) => item === file.url),
1 1
@ -558,28 +471,28 @@
this.hideUploadBtn = fileList.length >= 3; this.hideUploadBtn = fileList.length >= 3;
}, },
// 3 // 3
handleEditChange (file, fileList) { handleEditChange(file, fileList) {
this.hideUploadBtn = fileList.length >= 3; this.hideUploadBtn = fileList.length >= 3;
}, },
exceedPic () { exceedPic() {
this.$message.warning("最多上传3张预览图片"); this.$message.warning("最多上传3张预览图片");
}, },
handleBefore(file){ handleBefore(file) {
if(this.uploadStatus){ if (this.uploadStatus) {
return false return false
} }
this.uploadStatus = true this.uploadStatus = true
return true return true
}, },
handleSuccess (response, file, fileList) { handleSuccess(response, file, fileList) {
this.uploadStatus = false this.uploadStatus = false
this.replayImgList.push(file); this.replayImgList.push(file);
this.formData.imageList.push(response.data.url); this.formData.imageList.push(response.data.url);
}, },
// init // init
initMap (latitude, longitude) { initMap(latitude, longitude) {
this.$nextTick(()=>{ this.$nextTick(() => {
map = new daiMap( map = new daiMap(
document.getElementById("app_event"), document.getElementById("app_event"),
{ latitude, longitude }, { latitude, longitude },
@ -602,13 +515,13 @@
}, },
async handleMoveCenter () { async handleMoveCenter() {
// //
const { lat, lng } = map.getCenter(); const { lat, lng } = map.getCenter();
this.formData.latitude = lat; this.formData.latitude = lat;
this.formData.longitude = lng; this.formData.longitude = lng;
map.setMarker(lat, lng); map.setMarker(lat, lng);
this.$EventBus.$emit('map',{lat,lng}) this.$EventBus.$emit('map', { lat, lng })
let { msg, data } = await map.getAddress(lat, lng); let { msg, data } = await map.getAddress(lat, lng);
if (msg == "success") { if (msg == "success") {
this.formData.address = data.address this.formData.address = data.address
@ -618,7 +531,7 @@
} }
}, },
async remoteMethod (query) { async remoteMethod(query) {
if (query !== '') { if (query !== '') {
this.loading = true; this.loading = true;
const { msg, data } = await map.searchNearby(query); const { msg, data } = await map.searchNearby(query);
@ -644,7 +557,7 @@
} }
}, },
handleClickKey (index) { handleClickKey(index) {
let selPosition = this.resultList[index] let selPosition = this.resultList[index]
let lonlat = selPosition.lonlat.split(" ") let lonlat = selPosition.lonlat.split(" ")
map.setCenter(lonlat[1], lonlat[0]); map.setCenter(lonlat[1], lonlat[0]);
@ -654,7 +567,7 @@
this.formData.address = selPosition.address + selPosition.name this.formData.address = selPosition.address + selPosition.name
}, },
resetData () { resetData() {
this.formData = iniFmData(); this.formData = iniFmData();
this.replayImgList = []; this.replayImgList = [];
this.searchValue = '' this.searchValue = ''
@ -662,7 +575,7 @@
this.resultList = [] this.resultList = []
}, },
// //
startLoading () { startLoading() {
loading = Loading.service({ loading = Loading.service({
lock: true, // lock: true, //
text: "正在加载……", // text: "正在加载……", //
@ -670,36 +583,35 @@
}); });
}, },
// //
endLoading () { endLoading() {
// clearTimeout(timer); // clearTimeout(timer);
if (loading) { if (loading) {
loading.close(); loading.close();
} }
}, },
}, },
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@import "@/assets/scss/modules/shequzhili/event-info.scss"; @import "@/assets/scss/modules/shequzhili/event-info.scss";
.item_width_4 { .item_width_4 {
width: 350px; width: 350px;
} }
.div_map { .div_map {
margin-top: 10px; margin-top: 10px;
} }
</style> </style>
<style lang="scss" scoped> <style lang="scss" scoped>
.el-dialog__body { .el-dialog__body {
padding: 0 10px 20px !important; padding: 0 10px 20px !important;
} }
.hide { .hide {
.el-upload--picture-card { .el-upload--picture-card {
display: none !important; display: none !important;
} }
} }
</style> </style>

2
src/views/modules/shequzhili/eventOld/cpts/event-detail.vue

@ -446,7 +446,7 @@ export default {
satisfyLevel = "perfect"; satisfyLevel = "perfect";
} }
} }
const url = "/governance/icEvent/comment"; const url = "/governance/icEventOld/comment";
let params = { let params = {
icEventId: this.eventId, icEventId: this.eventId,

128
src/views/modules/shequzhili/eventOld/cpts/event-info.vue

@ -2,7 +2,15 @@
<div class=""> <div class="">
<div v-if="pageTypeCopy == 'add'"> <div v-if="pageTypeCopy == 'add'">
<el-card> <el-card>
<h3 class="h3-title"><img src="../../../../../assets/images/index/title-icon-zntb.png" width="30px" height="30px" alt=""> 新增事件</h3> <h3 class="h3-title">
<img
src="../../../../../assets/images/index/title-icon-zntb.png"
width="30px"
height="30px"
alt=""
/>
新增事件
</h3>
<event-add <event-add
ref="ref_add" ref="ref_add"
@changeName="changeName" @changeName="changeName"
@ -14,7 +22,15 @@
<div class="process-form"> <div class="process-form">
<el-card> <el-card>
<h3 class="h3-title"><img src="../../../../../assets/images/index/title-icon-chuli.png" width="30px" height="30px" alt=""> 处理</h3> <h3 class="h3-title">
<img
src="../../../../../assets/images/index/title-icon-chuli.png"
width="30px"
height="30px"
alt=""
/>
处理
</h3>
<process-form <process-form
ref="ref_processinfo_add" ref="ref_processinfo_add"
:demandUserId="demandUserId" :demandUserId="demandUserId"
@ -53,7 +69,15 @@
查看详情</el-button 查看详情</el-button
> >
</div> </div>
<div :class="['g-total', { 'g-left': projectProcess.length > 0,'g-left-top40':pageType =='info' }]"> <div
:class="[
'g-total',
{
'g-left': projectProcess.length > 0,
'g-left-top40': pageType == 'info',
},
]"
>
<event-detail <event-detail
ref="ref_detail" ref="ref_detail"
:type="pageType" :type="pageType"
@ -77,7 +101,13 @@
{ 'process-title-vis': source === 'visiual' }, { 'process-title-vis': source === 'visiual' },
]" ]"
> >
<img src="../../../../../assets/images/index/title-icon-chuli.png" width="30px" height="30px" alt=""> 处理 <img
src="../../../../../assets/images/index/title-icon-chuli.png"
width="30px"
height="30px"
alt=""
/>
处理
</div> </div>
<process-form <process-form
ref="ref_processinfo_dispose" ref="ref_processinfo_dispose"
@ -100,7 +130,10 @@
</div> </div>
</div> </div>
<div v-if="projectProcess.length > 0" :class="['g-right',pageType == 'info'?'g-right-top40':'']"> <div
v-if="projectProcess.length > 0"
:class="['g-right', pageType == 'info' ? 'g-right-top40' : '']"
>
<el-card <el-card
:class="{ 'box-card': source === 'visiual' }" :class="{ 'box-card': source === 'visiual' }"
style="min-height: calc(88vh - 50px); overflow: auto" style="min-height: calc(88vh - 50px); overflow: auto"
@ -414,7 +447,7 @@ export default {
// //
async getProjectProcess() { async getProjectProcess() {
const url = "/governance/icEvent/process"; const url = "/governance/icEventOld/process";
// const url = "http://yapi.elinkservice.cn/mock/245/gov/project/icEvent/process"; // const url = "http://yapi.elinkservice.cn/mock/245/gov/project/icEvent/process";
const { data, code, msg } = await requestPost(url, { const { data, code, msg } = await requestPost(url, {
@ -463,68 +496,46 @@ export default {
} else { } else {
return false; return false;
} }
console.log("eventInfo", this.eventInfoData); console.log("eventInfo", this.eventInfoData);
this.$refs.ref_processinfo_add.getProcessInfo(); this.$refs.ref_processinfo_add.getProcessInfo();
// if (this.$refs.ref_processinfo_add.okflag) { // if (this.$refs.ref_processinfo_add.okflag) {
// this.formData.operationType =
// this.$refs.ref_processinfo_add.operationType;
// this.eventInfoData.operationType =
// this.$refs.ref_processinfo_add.operationType;
this.$refs.ref_processinfo_add.getProcessInfo();
this.formData.operationType = this.formData.operationType =
this.$refs.ref_processinfo_add.operationType; this.$refs.ref_processinfo_add.operationType;
this.eventInfoData.operationType = this.eventInfoData.operationType =
this.$refs.ref_processinfo_add.operationType; this.$refs.ref_processinfo_add.operationType;
if (
if (this.formData.operationType === "0") { this.formData.operationType === "0" ||
this.project = {}; this.formData.operationType === "2" ||
this.demand = {}; this.formData.operationType === "6"
) {
this.replayInfo = this.$refs.ref_processinfo_add.replayInfo; this.replayInfo = this.$refs.ref_processinfo_add.replayInfo;
console.log("replayInfo", this.replayInfo);
// //
this.eventInfoData.content = this.replayInfo.content; this.eventInfoData.content = this.replayInfo.content;
this.eventInfoData.status = this.replayInfo.status; this.eventInfoData.status = this.replayInfo.status;
this.eventInfoData.timeLimit = this.replayInfo.timeLimit;
if (this.replayInfo.categoryId) { if (this.replayInfo.categoryId) {
this.eventInfoData.categoryList = []; this.eventInfoData.categoryList = [];
this.eventInfoData.categoryList.push(this.replayInfo.categoryId); this.eventInfoData.categoryList.push(this.replayInfo.categoryId);
} }
} else if (this.formData.operationType === "1") { } else if (this.formData.operationType === "5") {
this.replayInfo = {}; this.replayInfo = this.$refs.ref_processinfo_add.replayInfo;
this.demand = {}; //
this.project = this.$refs.ref_processinfo_add.project; this.eventInfoData.content = this.replayInfo.content;
// this.eventInfoData.status = this.replayInfo.status;
this.project.gridId = this.eventInfoData.gridId; this.eventInfoData.timeLimit = this.replayInfo.timeLimit;
if (this.replayInfo.categoryId) {
if (this.project.categoryList && this.project.categoryList.length > 0) {
this.eventInfoData.categoryList = []; this.eventInfoData.categoryList = [];
this.eventInfoData.categoryList.push(this.project.categoryList[0].id); this.eventInfoData.categoryList.push(this.replayInfo.categoryId);
} }
} else if (this.formData.operationType === "4") {
console.log("projectInfo", this.project);
} else if (this.formData.operationType === "2") {
this.replayInfo = {};
this.project = {};
this.demand = this.$refs.ref_processinfo_add.demand;
this.demand.gridId = this.eventInfoData.gridId;
//
// this.eventInfoData.categoryList = []
// this.eventInfoData.categoryList.push(this.demand.categoryId)
console.log("demond", this.demand);
} else if (this.formData.operationType === "3") {
this.project = {};
this.demand = {};
this.replayInfo = {}; this.replayInfo = {};
this.issueInfo = this.$refs.ref_processinfo_add.issueInfo;
if (
this.issueInfo.categoryList &&
this.issueInfo.categoryList.length > 0
) {
this.eventInfoData.categoryList = [];
this.eventInfoData.categoryList.push(
this.issueInfo.categoryList[0].id
);
}
console.log("issueInfo", this.issueInfo);
} }
// } // }
@ -542,14 +553,15 @@ export default {
}, },
async submit() { async submit() {
// (this.formData.operationType == 2 && this.demand.demandUserName) ||(this.formData.operationType == 3 && this.issueInfo.issueTitle) || (this.formData.operationType == 1 && this.project.categoryList) ||(this.formData.operationType == 0 && this.eventInfoData.content) ||
if ( if (
(this.formData.operationType == 3 && this.issueInfo.issueTitle) || this.formData.operationType == "4" ||
(this.formData.operationType == 2 && this.demand.demandUserName) || this.formData.operationType == "5" ||
(this.formData.operationType == 1 && this.project.categoryList) || this.formData.operationType == "6" ||
(this.formData.operationType == 0 && this.eventInfoData.content) || this.formData.operationType == "0" ||
this.formData.operationType == 4 this.formData.operationType == "2"
) { ) {
const url = "/governance/icEvent/add"; const url = "/governance/icEventOld/add";
const { formData } = this; const { formData } = this;
const { data, code, msg } = await requestPost(url, { const { data, code, msg } = await requestPost(url, {
...formData, ...formData,
@ -582,7 +594,7 @@ export default {
this.replayInfo.icEventId = this.eventId; this.replayInfo.icEventId = this.eventId;
console.log("replayInfo", this.replayInfo); console.log("replayInfo", this.replayInfo);
// //
let url = "/governance/icEvent/reply"; let url = "/governance/icEventOld/reply";
await this.submitDispose(url, this.replayInfo); await this.submitDispose(url, this.replayInfo);
} else if (this.formData.operationType === "1") { } else if (this.formData.operationType === "1") {
this.replayInfo = {}; this.replayInfo = {};
@ -591,7 +603,7 @@ export default {
// //
this.project.icEventId = this.eventId; this.project.icEventId = this.eventId;
console.log("projectInfo", this.project); console.log("projectInfo", this.project);
let url = "/governance/icEvent/icEventToProject"; let url = "/governance/icEventOld/icEventToProject";
await this.submitDispose(url, this.project); await this.submitDispose(url, this.project);
} else if (this.formData.operationType === "2") { } else if (this.formData.operationType === "2") {
this.replayInfo = {}; this.replayInfo = {};
@ -600,7 +612,7 @@ export default {
// //
this.demand.icEventId = this.eventId; this.demand.icEventId = this.eventId;
console.log("demond", this.demand); console.log("demond", this.demand);
let url = "/governance/icEvent/icEventToDemand"; let url = "/governance/icEventOld/icEventToDemand";
await this.submitDispose(url, this.demand); await this.submitDispose(url, this.demand);
} else if (this.formData.operationType === "3") { } else if (this.formData.operationType === "3") {
this.replayInfo = {}; this.replayInfo = {};
@ -610,7 +622,7 @@ export default {
// //
console.log("issueInfo", this.issueInfo); console.log("issueInfo", this.issueInfo);
let url = "/governance/icEvent/icEventToIssue"; let url = "/governance/icEventOld/icEventToIssue";
await this.submitDispose(url, this.issueInfo); await this.submitDispose(url, this.issueInfo);
} else { } else {
this.$message.info("请选择一种处理方式"); this.$message.info("请选择一种处理方式");

161
src/views/modules/shequzhili/eventOld/cpts/process-form-designate.vue

@ -13,7 +13,7 @@
prop="categoryList"> prop="categoryList">
<div :class="{ 'visiual-form': source === 'visiual' }"> <div :class="{ 'visiual-form': source === 'visiual' }">
<el-cascader class="cell-width-2" ref="myCascader" v-model="selCategoryArray" :key="iscascaderShow" <el-cascader class="cell-width-2" ref="myCascader" v-model="selCategoryArray" :key="iscascaderShow"
:options="casOptions" :props="optionProps" :show-all-levels="false" :options="casOptions" :props="optionProps" :show-all-levels="false" clearable
@change="handleChangeCate"></el-cascader> @change="handleChangeCate"></el-cascader>
</div> </div>
</el-form-item> </el-form-item>
@ -28,6 +28,15 @@
placeholder="请输入转办意见,不超过500字" v-model="formData.content"></el-input> placeholder="请输入转办意见,不超过500字" v-model="formData.content"></el-input>
</div> </div>
</el-form-item> </el-form-item>
<el-form-item style="display: block" label="附件" label-width="150px" prop="attach">
<el-upload :headers="$getElUploadHeaders()" class="upload-demo" :action="uploadUlr"
accept=".doc,.pdf,.xls,.docx,.xlsx,.jpg,.png,.jpeg,.bmp,.mp4,.wma,.m4a,.mp3"
:on-success="handleFileSuccess" :on-remove="handleFileRemove" :on-preview="handleFileDownload"
:limit="3" :before-upload="beforeUpload" :file-list="fileList">
<el-button size="small" :disabled="fileList.length === 3" type="primary">点击上传</el-button>
<div slot="tip" class="el-upload__tip">支持图片wordpdf</div>
</el-upload>
</el-form-item>
<el-form-item label="办结时限" prop="timeLimit" label-width="150px" :class="{ 'form-item': source === 'visiual' }" <el-form-item label="办结时限" prop="timeLimit" label-width="150px" :class="{ 'form-item': source === 'visiual' }"
style="display: block"> style="display: block">
<div :class="{ 'visiual-form': source === 'visiual' }"> <div :class="{ 'visiual-form': source === 'visiual' }">
@ -55,7 +64,8 @@ export default {
categoryId: "",// categoryId: "",//
deptId: "", // deptId: "", //
deptName: "", deptName: "",
categoryList: [] categoryList: [],
files: [] //
}, },
orgOptions: [], orgOptions: [],
orgOptionProps: { orgOptionProps: {
@ -71,12 +81,15 @@ export default {
eventDetailCopy: {}, eventDetailCopy: {},
selCategoryArray: [], selCategoryArray: [],
casOptions: [], casOptions: [],
fileList: [],
uploadUlr: window.SITE_CONFIG["apiURL"] + "/oss/file/uploadvariedfile",
iscascaderShow: 0, iscascaderShow: 0,
optionProps: { optionProps: {
multiple: false, multiple: false,
value: "id", value: "id",
label: "name", label: "categoryName",
children: "subCategory", children: "children",
checkStrictly: true
}, },
dataRule: { dataRule: {
content: [ content: [
@ -90,10 +103,13 @@ export default {
], ],
timeLimit: [ timeLimit: [
{ required: true, message: "办结时限不能为空", trigger: "blur" }, { required: true, message: "办结时限不能为空", trigger: "blur" },
],
categoryList: [
{ required: true, message: '事件分类不能为空', trigger: 'blur' },
] ]
}, },
selCateObj:{ selCateObj: {
id:"" id: ""
}, },
}; };
}, },
@ -126,12 +142,11 @@ export default {
this.getCategoryList(); this.getCategoryList();
if (this.eventId) { if (this.eventId) {
this.eventDetailCopy = JSON.parse(JSON.stringify(this.eventDetailData)); this.eventDetailCopy = JSON.parse(JSON.stringify(this.eventDetailData));
console.log(this.eventDetailCopy);
// eventDetailCopy // eventDetailCopy
if (this.eventDetailCopy.parentCategoryId && this.eventDetailCopy.categoryId) { if (this.eventDetailCopy.parentCategoryId && this.eventDetailCopy.categoryId) {
this.selCateObj.id = this.eventDetailCopy.categoryId this.selCategoryArray = this.eventDetailCopy.parentCategoryId.split(",");
this.formData.categoryId = this.eventDetailCopy.categoryId this.selCategoryArray.push(this.eventDetailCopy.categoryId);
this.selCategoryArray.push(this.eventDetailCopy.parentCategoryId, this.eventDetailCopy.categoryId) this.handleChangeCate(this.selCategoryArray)
} }
} }
}, },
@ -152,18 +167,40 @@ export default {
} }
}, },
async getCategoryList() { async getCategoryList() {
const url = "/governance/issueprojectcategorydict/list"; const url = '/governance/icEvent/getCategoryTree';
let params = {}; let params = {};
const { data, code, msg } = await requestPost(url, params); const { data, code, msg } = await requestPost(url, params);
if (code === 0) { if (code === 0) {
let treeDataNew = this.filterTree(data); let treeDataNew = this.deepTree(data, "children");
//
++this.iscascaderShow; ++this.iscascaderShow;
this.casOptions = []; this.casOptions = [];
this.casOptions = treeDataNew; this.casOptions = treeDataNew;
} else { } else {
this.$message.error(msg); this.$message.error(msg);
} }
if (this.eventDetailCopy.parentCategoryId) {
const pids = this.eventDetailCopy.parentCategoryId.split(',');
pids.push(this.eventDetailCopy.categoryId);
let nodes = this.casOptions;
for (let i = 0; i < pids.length; i++) {
nodes = this.buildNode(nodes, pids[i])
}
if (nodes) {
this.formData.categoryList.push(nodes)
this.selCateObj = nodes
}
}
},
buildNode(nodes, treeId) {
for (let i = 0; i < nodes.length; i++) {
if (nodes[i].id === treeId) {
if (nodes[i].children) {
return nodes[i].children
} else {
return nodes[i]
}
}
}
}, },
handleChangeAgency(val) { handleChangeAgency(val) {
let obj = this.$refs["agencyIdArray"].getCheckedNodes()[0].data let obj = this.$refs["agencyIdArray"].getCheckedNodes()[0].data
@ -171,7 +208,6 @@ export default {
this.formData.orgType = obj.level === 'grid' ? 'grid' : 'agency' this.formData.orgType = obj.level === 'grid' ? 'grid' : 'agency'
this.formData.deptId = obj.agencyId this.formData.deptId = obj.agencyId
this.formData.deptName = obj.agencyName this.formData.deptName = obj.agencyName
} else { } else {
this.form.orgType = '' this.form.orgType = ''
this.form.orgId = '' this.form.orgId = ''
@ -180,25 +216,26 @@ export default {
handleChangeCate() { handleChangeCate() {
if (this.selCateObj = this.$refs["myCascader"].getCheckedNodes()[0]) { if (this.selCateObj = this.$refs["myCascader"].getCheckedNodes()[0]) {
this.selCateObj = this.$refs["myCascader"].getCheckedNodes()[0].data this.selCateObj = this.$refs["myCascader"].getCheckedNodes()[0].data
this.formData.categoryList = this.selCateObj
this.formData.categoryId = this.selCateObj.id this.formData.categoryId = this.selCateObj.id
console.log(this.formData.categoryId,'this.formData.categoryId');
} else { } else {
this.selCateObj = {} this.selCateObj = {}
} }
}, },
// //
filterTree(arr) { deepTree(arr, children) {
let childs = arr; if (Array.isArray(arr) && arr.length > 0) {
for (let i = childs.length; i--; i > 0) { return arr.map((item) => {
if (childs[i].subCategory) { return {
if (childs[i].subCategory.length) { ...item,
this.filterTree(childs[i].subCategory); [children]:
} else { (item[children] &&
delete childs[i].subCategory; item[children].length > 0 &&
} this.deepTree(item[children], children)) ||
} null,
};
});
} }
return arr;
}, },
async getReplayInfo() { async getReplayInfo() {
this.okflag = false; this.okflag = false;
@ -206,11 +243,13 @@ export default {
if (!valid) { if (!valid) {
app.util.validateRule(messageObj); app.util.validateRule(messageObj);
} else { } else {
console.log(this.selCateObj);
if (!this.selCateObj || !this.selCateObj.id) { if (!this.selCateObj || !this.selCateObj.id) {
this.$message.error("请选择事件分类"); this.$message.error("请选择事件分类");
return false; return false;
} }
if (this.fileList) {
this.formData.files = this.fileList
}
this.formData.status = "processing"; this.formData.status = "processing";
this.formData.categoryId = this.selCateObj.id; this.formData.categoryId = this.selCateObj.id;
this.formData.categoryList = []; this.formData.categoryList = [];
@ -222,6 +261,74 @@ export default {
resetData() { resetData() {
this.agencyIdArray = [] this.agencyIdArray = []
}, },
beforeUpload(file) {
const array = file.name.split(".");
const extension = array[array.length - 1];
const formatarray = [
"jpg",
"png",
"jpeg",
"bmp",
"mp4",
"wma",
"m4a",
"mp3",
"doc",
"docx",
"xls",
"xlsx",
"pdf",
];
if (formatarray.indexOf(extension) === -1) {
this.$message.error("只支持图片、word、pdf");
return false;
}
},
handleFileRemove(file) {
if (file && file.status === "success") {
this.fileList.splice(
this.fileList.findIndex((item) => item.uid === file.uid),
1
);
}
},
handleFileSuccess(res, file) {
if (res.code === 0 && res.msg === "success") {
const array = file.name.split(".");
const fileType = array[array.length - 1];
const picArray = ["jpg", "png", "jpeg", "bmp"];
const videoarray = ["mp4", "wma", "m4a"];
const docArray = ["doc", "docx", "xls", "xlsx", "pdf"];
const mp3Array = ["mp3"];
if (picArray.indexOf(fileType) > -1) {
file.attachmentFormat = "image";
} else if (videoarray.indexOf(fileType) > -1) {
file.attachmentFormat = "video";
} else if (docArray.indexOf(fileType) > -1) {
file.attachmentFormat = "doc";
} else if (mp3Array.indexOf(fileType) > -1) {
file.attachmentFormat = "voice";
}
file.url = res.data.url;
file.type = fileType;
file.attachmentName = file.name;
file.attachmentType = file.type;
file.attachmentUrl = file.url;
this.fileList.push(file);
} else this.$message.error(res.msg);
},
//
handleFileDownload(file) {
var a = document.createElement("a");
var event = new MouseEvent("click");
a.download = file.name;
a.href = file.url;
a.dispatchEvent(event);
},
// //
startLoading() { startLoading() {
loading = Loading.service({ loading = Loading.service({

39
src/views/modules/shequzhili/eventOld/cpts/process-form-replay-end.vue

@ -1,8 +1,8 @@
<!-- <!--
* @Author: yanLu xgktv007@163.com * @Author: yanLu xgktv007@163.com
* @Date: 2023-09-05 10:21:34 * @Date: 2023-09-05 10:21:34
* @LastEditors: yanLu xgktv007@163.com * @LastEditors: mk 2403457699@qq.com
* @LastEditTime: 2023-09-05 10:21:34 * @LastEditTime: 2023-11-02 18:42:22
* @Description: 事件回复 * @Description: 事件回复
* *
* *
@ -14,7 +14,7 @@
prop="categoryList"> prop="categoryList">
<div :class="{ 'visiual-form': source === 'visiual' }"> <div :class="{ 'visiual-form': source === 'visiual' }">
<el-cascader class="cell-width-2" ref="myCascader" v-model="selCategoryArray" :key="iscascaderShow" <el-cascader class="cell-width-2" ref="myCascader" v-model="selCategoryArray" :key="iscascaderShow"
:options="casOptions" :props="optionProps" :show-all-levels="false" :options="casOptions" :props="optionProps" :show-all-levels="false" clearable
@change="handleChangeCate"></el-cascader> @change="handleChangeCate"></el-cascader>
</div> </div>
</el-form-item> </el-form-item>
@ -67,13 +67,14 @@ export default {
value: "id", value: "id",
label: "categoryName", label: "categoryName",
children: "children", children: "children",
checkStrictly: true
}, },
dataRule: { dataRule: {
content: [ content: [
{ required: true, message: '回复内容不能为空', trigger: 'blur' }, { required: true, message: '回复内容不能为空', trigger: 'blur' },
], ],
categoryList: [ categoryList: [
// { required: true, message: '', trigger: 'blur' }, { required: true, message: '事件分类不能为空', trigger: 'blur' },
] ]
} }
}; };
@ -107,8 +108,9 @@ export default {
this.eventDetailCopy = JSON.parse(JSON.stringify(this.eventDetailData)); this.eventDetailCopy = JSON.parse(JSON.stringify(this.eventDetailData));
// eventDetailCopy // eventDetailCopy
if (this.eventDetailCopy.parentCategoryId && this.eventDetailCopy.categoryId) { if (this.eventDetailCopy.parentCategoryId && this.eventDetailCopy.categoryId) {
this.formData.categoryId = this.eventDetailCopy.categoryId this.selCategoryArray = this.eventDetailCopy.parentCategoryId.split(",");
this.selCategoryArray.push(this.eventDetailCopy.parentCategoryId, this.eventDetailCopy.categoryId) this.selCategoryArray.push(this.eventDetailCopy.categoryId);
this.handleChangeCate(this.selCategoryArray)
} }
} }
}, },
@ -127,10 +129,33 @@ export default {
} else { } else {
this.$message.error(msg); this.$message.error(msg);
} }
if (this.eventDetailCopy.parentCategoryId) {
const pids = this.eventDetailCopy.parentCategoryId.split(',');
pids.push(this.eventDetailCopy.categoryId);
let nodes = this.casOptions;
for (let i = 0; i < pids.length; i++) {
nodes = this.buildNode(nodes, pids[i])
}
if (nodes) {
this.formData.categoryList.push(nodes)
}
}
},
buildNode(nodes, treeId) {
for (let i = 0; i < nodes.length; i++) {
if (nodes[i].id === treeId) {
if (nodes[i].children) {
return nodes[i].children
} else {
return nodes[i]
}
}
}
}, },
handleChangeCate() { handleChangeCate() {
if (this.selCateObj = this.$refs['myCascader'].getCheckedNodes()[0]) { if (this.selCateObj = this.$refs['myCascader'].getCheckedNodes()[0]) {
this.selCateObj = this.$refs['myCascader'].getCheckedNodes()[0].data this.selCateObj = this.$refs['myCascader'].getCheckedNodes()[0].data
this.formData.categoryList = this.selCateObj
} else { } else {
this.selCateObj = {} this.selCateObj = {}
} }
@ -165,7 +190,7 @@ export default {
if (!this.formData.categoryId) { if (!this.formData.categoryId) {
this.formData.categoryId = this.selCateObj.id; this.formData.categoryId = this.selCateObj.id;
} }
if(this.fileList){ if (this.fileList) {
this.formData.files = this.fileList this.formData.files = this.fileList
} }
this.formData.categoryList = []; this.formData.categoryList = [];

229
src/views/modules/shequzhili/eventOld/cpts/process-form.vue

@ -1,67 +1,81 @@
<template> <template>
<div class=""> <div class="">
<div> <div>
<el-form ref="ref_form1" :inline="false" :rules="dataRule" class="form">
<el-form ref="ref_form1" <el-form-item
:inline="false" label="处理方式"
:rules="dataRule"
class="form">
<el-form-item label="处理方式"
label-width="150px" label-width="150px"
:class="{'form-item':source==='visiual'}" :class="{ 'form-item': source === 'visiual' }"
prop="operationType"> prop="operationType"
<el-radio-group :class="{'form-item':source==='visiual'}" >
<el-radio-group
:class="{ 'form-item': source === 'visiual' }"
v-model="operationType" v-model="operationType"
@change="handleChangeOperationType"> @change="handleChangeOperationType"
<el-radio v-if="!eventId" >
label="4">暂不处理</el-radio> <el-radio v-if="!eventId" label="4">暂不处理</el-radio>
<el-radio label="0">回复</el-radio> <el-radio label="0">回复</el-radio>
<el-radio label="1">立项</el-radio> <el-radio label="5">指派</el-radio>
<el-radio label="6">完成并回复</el-radio>
<!-- <el-radio label="1">立项</el-radio> -->
<el-radio label="2">转服务</el-radio> <el-radio label="2">转服务</el-radio>
<el-radio label="3">转议题</el-radio> <!-- <el-radio label="3">转议题</el-radio> -->
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div v-if="operationType==='0'"> <div v-if="operationType === '0'">
<process-form-replay ref="ref_process_form_replay" <process-form-replay
ref="ref_process_form_replay"
:source="source" :source="source"
:eventDetailData="eventDetailData" :eventDetailData="eventDetailData"
:eventId="eventId"></process-form-replay> :eventId="eventId"
></process-form-replay>
</div> </div>
<div v-if="operationType === '5'">
<div v-if="operationType==='1'"> <process-form-designate
ref="ref_process_form_designate"
:source="source"
:eventDetailData="eventDetailData"
:eventId="eventId"
></process-form-designate>
</div>
<div v-if="operationType === '6'">
<process-form-replay-end
ref="ref_process_form_replay_end"
:source="source"
:eventDetailData="eventDetailData"
:eventId="eventId"
></process-form-replay-end>
</div>
<!-- <div v-if="operationType==='1'">
<process-form-project ref="ref_process_form_project" <process-form-project ref="ref_process_form_project"
:source="source" :source="source"
:eventDetailData="eventDetailData" :eventDetailData="eventDetailData"
:gridId="gridId" :gridId="gridId"
:eventId="eventId"></process-form-project> :eventId="eventId"></process-form-project>
</div> </div> -->
<div v-if="operationType==='2'"> <div v-if="operationType === '2'">
<process-form-demand ref="ref_process_form_demond" <process-form-demand
ref="ref_process_form_demond"
:source="source" :source="source"
:eventId="eventId" :eventId="eventId"
:transferObj="transferObj" :transferObj="transferObj"
:demandUserId="demandUserId" :demandUserId="demandUserId"
:demandUserName="demandUserName" :demandUserName="demandUserName"
:demandUserMobile="demandUserMobile" :demandUserMobile="demandUserMobile"
:eventDetailData="eventDetailData"></process-form-demand> :eventDetailData="eventDetailData"
></process-form-demand>
</div> </div>
<div v-if="operationType==='3'"> <!-- <div v-if="operationType==='3'">
<process-form-issue ref="ref_process_form_issue" <process-form-issue ref="ref_process_form_issue"
:source="source" :source="source"
:eventDetailData="eventDetailData" :eventDetailData="eventDetailData"
:eventId="eventId"></process-form-issue> :eventId="eventId"></process-form-issue>
</div> -->
</div> </div>
</div>
</div> </div>
</template> </template>
@ -72,27 +86,26 @@ import processFormReplay from "./process-form-replay";
import processFormProject from "./process-form-project"; import processFormProject from "./process-form-project";
import processFormDemand from "./process-form-demand"; import processFormDemand from "./process-form-demand";
import processFormIssue from "./process-form-issue"; import processFormIssue from "./process-form-issue";
import processFormReplayEnd from "./process-form-replay-end";
import processFormDesignate from "./process-form-designate";
let loading; // let loading; //
export default { export default {
data () { data() {
return { return {
casOptions: [], casOptions: [],
iscascaderShow: 0, iscascaderShow: 0,
selCategoryArray: [], selCategoryArray: [],
selCateObj: {}, selCateObj: {},
optionProps: { optionProps: {
multiple: false, multiple: false,
value: 'id', value: "id",
label: 'name', label: "name",
children: 'subCategory', children: "subCategory",
}, },
operationType: '', operationType: "",
replayInfo: {}, replayInfo: {},
demand: {}, demand: {},
@ -101,30 +114,28 @@ export default {
okflag: false, okflag: false,
eventDetailCopy: {}, eventDetailCopy: {},
transferObj:{ transferObj: {
latitude :"", latitude: "",
longitude :"" longitude: "",
} },
}; };
}, },
components: { components: {
processFormReplay, processFormReplay,
processFormProject, processFormProject,
processFormDemand, processFormDemand,
processFormIssue processFormIssue,
processFormReplayEnd,
processFormDesignate,
}, },
computed: { computed: {
dataRule () { dataRule() {
return { return {
operationType: [ operationType: [
{ required: true, message: "处理方式不能为空", trigger: "blur" }, { required: true, message: "处理方式不能为空", trigger: "blur" },
], ],
}; };
}, },
}, },
props: { props: {
demandUserId: { demandUserId: {
@ -149,107 +160,89 @@ export default {
}, },
eventDetailData: { eventDetailData: {
type: Object, type: Object,
default () { default() {
return {} return {};
}
}, },
source: {//manage visiual },
source: {
//manage visiual
type: String, type: String,
default: 'manage' default: "manage",
}
}, },
watch: {
}, },
created () { watch: {},
console.log(this.source)
created() {
console.log(this.source);
}, },
async mounted () { async mounted() {
const { user } = this.$store.state const { user } = this.$store.state;
this.agencyId = user.agencyId this.agencyId = user.agencyId;
if (this.eventId) { if (this.eventId) {
this.eventDetailCopy = JSON.parse(JSON.stringify(this.eventDetailData)); this.eventDetailCopy = JSON.parse(JSON.stringify(this.eventDetailData));
} }
if(this.eventDetailData.operationType){ if (this.eventDetailData.operationType) {
this.operationType = this.eventDetailCopy.operationType this.operationType = this.eventDetailCopy.operationType;
// this.getProcessInfo() // this.getProcessInfo()
} }
this.$EventBus.$on('map',(val)=>{ this.$EventBus.$on("map", (val) => {
this.transferObj.latitude = val.lat this.transferObj.latitude = val.lat;
this.transferObj.longitude = val.lng this.transferObj.longitude = val.lng;
}) });
}, },
methods: { methods: {
handleChangeOperationType (val) { handleChangeOperationType(val) {
this.operationType = val;
}, },
async getProcessInfo () { async getProcessInfo() {
this.okflag = false this.okflag = false;
if (this.operationType === '0') { if (this.operationType === "0") {
this.$refs.ref_process_form_replay.getReplayInfo() this.$refs.ref_process_form_replay.getReplayInfo();
if (this.$refs.ref_process_form_replay.okflag) { if (this.$refs.ref_process_form_replay.okflag) {
this.replayInfo = this.$refs.ref_process_form_replay.formData this.replayInfo = this.$refs.ref_process_form_replay.formData;
this.okflag = true
this.okflag = true;
} else { } else {
return false return false;
} }
} else if (this.operationType === "2") {
} else if (this.operationType === '1') { this.$refs.ref_process_form_demond.getDemandInfo();
this.$refs.ref_process_form_project.getProjectInfo()
if (this.$refs.ref_process_form_project.okflag) {
this.project = this.$refs.ref_process_form_project.formData
//
this.okflag = true
} else {
return false
}
} else if (this.operationType === '2') {
this.$refs.ref_process_form_demond.getDemandInfo()
if (this.$refs.ref_process_form_demond.okflag) { if (this.$refs.ref_process_form_demond.okflag) {
this.demand = this.$refs.ref_process_form_demond.formData this.demand = this.$refs.ref_process_form_demond.formData;
this.okflag = true
this.okflag = true;
} else { } else {
return false return false;
} }
} else if (this.operationType === '3') { } else if (this.operationType === "5") {
this.$refs.ref_process_form_issue.getIssueInfo() this.$refs.ref_process_form_designate.getReplayInfo();
if (this.$refs.ref_process_form_issue.okflag) { this.replayInfo = this.$refs.ref_process_form_designate.formData;
this.issueInfo = this.$refs.ref_process_form_issue.formData if (this.$refs.ref_process_form_designate.okflag) {
this.replayInfo = this.$refs.ref_process_form_designate.formData;
this.okflag = true this.okflag = true;
} else {
return false
} }
} else if (this.operationType === "6") {
this.$refs.ref_process_form_replay_end.getReplayInfo();
this.replayInfo = this.$refs.ref_process_form_replay_end.formData;
if (this.$refs.ref_process_form_replay_end.okflag) {
this.replayInfo = this.$refs.ref_process_form_replay_end.formData;
this.okflag = true;
}
} else if (this.formData.operationType === "4") {
this.replayInfo = {};
} }
}, },
handleCancle() {
handleCancle () {
this.resetData(); this.resetData();
},
resetData () {
}, },
resetData() {},
// //
startLoading () { startLoading() {
loading = Loading.service({ loading = Loading.service({
lock: true, // lock: true, //
text: "正在加载……", // text: "正在加载……", //
@ -257,7 +250,7 @@ export default {
}); });
}, },
// //
endLoading () { endLoading() {
// clearTimeout(timer); // clearTimeout(timer);
if (loading) { if (loading) {
loading.close(); loading.close();

8
src/views/modules/shequzhili/eventOld/eventList.vue

@ -573,10 +573,10 @@ export default {
value: "2", value: "2",
label: "社区电话", label: "社区电话",
}, },
{ // {
value: "3", // value: "3",
label: "12345", // label: "12345",
}, // },
{ {
value: "4", value: "4",
label: "网络员手持终端", label: "网络员手持终端",

Loading…
Cancel
Save