|
|
@ -12,44 +12,16 @@ |
|
|
|
:rules="dataRule" |
|
|
|
class="div_form" |
|
|
|
> |
|
|
|
<el-form-item |
|
|
|
label="服务类别" |
|
|
|
style="display: block" |
|
|
|
label-width="150px" |
|
|
|
prop="serviceTypeLevel2Id" |
|
|
|
> |
|
|
|
<el-select |
|
|
|
class="u-item-width-communitycascader" |
|
|
|
v-model="formData.serviceTypeLevel1Id" |
|
|
|
placeholder="请选择" |
|
|
|
clearable |
|
|
|
@change="handleChangeServiceTypeLevel1" |
|
|
|
> |
|
|
|
<el-option |
|
|
|
v-for="item in serviceTypesLevel1" |
|
|
|
:key="item.id" |
|
|
|
:label="item.name" |
|
|
|
:value="item.id" |
|
|
|
> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
- |
|
|
|
<el-select |
|
|
|
class="u-item-width-communitycascader" |
|
|
|
v-model="formData.serviceTypeLevel2Id" |
|
|
|
placeholder="请选择" |
|
|
|
@change="handleChangeServiceTypeLevel2" |
|
|
|
<el-form-item label="需求类型" prop="categoryCode" label-width="150px"> |
|
|
|
<el-cascader |
|
|
|
v-model="formData.categoryCode" |
|
|
|
:options="demandOptions" |
|
|
|
:props="{label: 'categoryName',value: 'categoryCode',children: 'childCateList'}" |
|
|
|
clearable |
|
|
|
> |
|
|
|
<el-option |
|
|
|
v-for="item in serviceTypesLevel2" |
|
|
|
:key="item.id" |
|
|
|
:label="item.name" |
|
|
|
:value="item.id" |
|
|
|
> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
size="small" |
|
|
|
class="u-item-width-normal" |
|
|
|
></el-cascader> |
|
|
|
</el-form-item> |
|
|
|
<!-- <el-form-item label="政策依据" |
|
|
|
prop="policyId" |
|
|
|
label-width="150px" |
|
|
@ -420,10 +392,6 @@ export default { |
|
|
|
return time.getTime() < nowData; |
|
|
|
}; |
|
|
|
return { |
|
|
|
// 公共服务分类 |
|
|
|
serviceTypesLevel1: [], |
|
|
|
serviceTypesLevel2: [], |
|
|
|
|
|
|
|
btnDisable: false, |
|
|
|
casOptions: [], |
|
|
|
scopeIdArray: [], |
|
|
@ -440,8 +408,8 @@ export default { |
|
|
|
|
|
|
|
keyWords: "", |
|
|
|
formData: { |
|
|
|
serviceTypeLevel1Id: "", // 公共服务(政策级别)一级分类id |
|
|
|
serviceTypeLevel2Id: "", // 公共服务(政策级别)二级分类id |
|
|
|
categoryCode:[], |
|
|
|
parentCategoryCode:'', |
|
|
|
resiSearchTagId: "", //查找享受服务人员 |
|
|
|
resiSearchTagName: "", //享受服务人员名称 |
|
|
|
serviceName: "", //服务事项 |
|
|
@ -469,7 +437,7 @@ export default { |
|
|
|
}, |
|
|
|
sarr: [], |
|
|
|
dataRule: { |
|
|
|
serviceTypeLevel2Id: [ |
|
|
|
categoryCode: [ |
|
|
|
{ required: true, message: "服务类别不能为空", trigger: "change" }, |
|
|
|
], |
|
|
|
serviceName: [ |
|
|
@ -535,16 +503,13 @@ export default { |
|
|
|
], |
|
|
|
showLabelForm: false, |
|
|
|
showFeedback: false, |
|
|
|
demandOptions:[] |
|
|
|
}; |
|
|
|
}, |
|
|
|
|
|
|
|
computed: { |
|
|
|
feedbackDataRule() { |
|
|
|
return { |
|
|
|
// serviceGoal: [ |
|
|
|
// { required: true, message: "服务目标不能为空", trigger: "blur" }, |
|
|
|
// ], |
|
|
|
|
|
|
|
serviceEffect: [ |
|
|
|
{ required: true, message: "服务效果不能为空", trigger: "blur" }, |
|
|
|
], |
|
|
@ -587,24 +552,11 @@ export default { |
|
|
|
} else if (this.formType == "edit") { |
|
|
|
this.loadInfo(); |
|
|
|
} |
|
|
|
|
|
|
|
await this.getDemandOptions() |
|
|
|
await this.iniDefaultData(); |
|
|
|
|
|
|
|
this.endLoading(); |
|
|
|
// 服务分类下拉(其实是获取的共性服务分类) |
|
|
|
this.$http |
|
|
|
.get("/governance/commonServiceType/selectList/0") |
|
|
|
.then(({ data: res }) => { |
|
|
|
if (res.code !== 0) { |
|
|
|
return this.$message.error(res.msg); |
|
|
|
} else { |
|
|
|
this.serviceTypesLevel1 = res.data; |
|
|
|
console.log(res.data); |
|
|
|
} |
|
|
|
}) |
|
|
|
.catch(() => { |
|
|
|
return this.$message.error("网络错误"); |
|
|
|
}); |
|
|
|
}, |
|
|
|
|
|
|
|
methods: { |
|
|
@ -623,6 +575,49 @@ export default { |
|
|
|
} |
|
|
|
console.log(this.dataRule); |
|
|
|
}, |
|
|
|
async getDemandOptions() { |
|
|
|
this.$http |
|
|
|
.post("/actual/base/serviceitem/listAllCategory") |
|
|
|
.then(({ data: res }) => { |
|
|
|
if (res.code !== 0) { |
|
|
|
return this.$message.error(res.msg); |
|
|
|
} else { |
|
|
|
this.demandOptions = this.getFlagData( |
|
|
|
this.getTreeData(res.data), |
|
|
|
"usableFlag" |
|
|
|
); |
|
|
|
} |
|
|
|
}) |
|
|
|
.catch(() => { |
|
|
|
return this.$message.error("网络错误"); |
|
|
|
}); |
|
|
|
}, |
|
|
|
getFlagData(data, flag) { |
|
|
|
if (!Array.isArray(data)) return []; |
|
|
|
let arr1 = data.filter((item) => item[flag]); |
|
|
|
let arr2 = arr1.map((item) => { |
|
|
|
if (item.childCateList) |
|
|
|
return { ...item, childCateList: this.getFlagData(item.childCateList, flag) }; |
|
|
|
else return item; |
|
|
|
}); |
|
|
|
// console.log('arrr-oppp', arr2) |
|
|
|
return arr2; |
|
|
|
}, |
|
|
|
getTreeData(data) { |
|
|
|
if (!Array.isArray(data)) return []; |
|
|
|
let arr = data.map((item) => { |
|
|
|
let _item = {}; |
|
|
|
if (item.childCateList) { |
|
|
|
if (item.childCateList.length === 0) |
|
|
|
_item = { ...item, childCateList: undefined }; |
|
|
|
else _item = { ...item, childCateList: this.getTreeData(item.childCateList) }; |
|
|
|
} else { |
|
|
|
_item = { ...item }; |
|
|
|
} |
|
|
|
return _item; |
|
|
|
}); |
|
|
|
return arr; |
|
|
|
}, |
|
|
|
//获取服务详情数据 |
|
|
|
async loadInfo() { |
|
|
|
const url = "/governance/icServiceRecordV2/detail"; |
|
|
@ -634,13 +629,15 @@ export default { |
|
|
|
|
|
|
|
if (code === 0) { |
|
|
|
this.formData = { ...data }; |
|
|
|
if (data.categoryCode) { |
|
|
|
this.formData.categoryCode = [data.parentCategoryCode, data.categoryCode]; |
|
|
|
} else { |
|
|
|
this.formData.categoryCode = [data.parentCategoryCode]; |
|
|
|
} |
|
|
|
if(!data.noticeApproches){ |
|
|
|
this.formData.noticeApproches = []; |
|
|
|
} |
|
|
|
this.scopeIdArray = data.gridIdList.map(i => i.objectId); |
|
|
|
this.formData.serviceTypeLevel1Id = data.serviceTypeLevel1Id; |
|
|
|
this.handleChangeServiceTypeLevel1(); |
|
|
|
this.formData.serviceTypeLevel2Id = data.serviceTypeLevel2Id; |
|
|
|
this.feedbackFormData = { ...data.feedback }; |
|
|
|
await this.getServiceuserList(data.serviceOrgType); |
|
|
|
|
|
|
@ -675,35 +672,6 @@ export default { |
|
|
|
this.$message.error(msg); |
|
|
|
} |
|
|
|
}, |
|
|
|
// 服务类型下拉框选中事件 |
|
|
|
handleChangeServiceTypeLevel1() { |
|
|
|
this.formData.serviceTypeLevel2Id = ""; |
|
|
|
this.$http |
|
|
|
.get( |
|
|
|
"/governance/commonServiceType/selectList/" + |
|
|
|
this.formData.serviceTypeLevel1Id |
|
|
|
) |
|
|
|
.then(({ data: res }) => { |
|
|
|
if (res.code !== 0) { |
|
|
|
return this.$message.error(res.msg); |
|
|
|
} else { |
|
|
|
this.serviceTypesLevel2 = res.data; |
|
|
|
} |
|
|
|
}) |
|
|
|
.catch(() => { |
|
|
|
return this.$message.error("网络错误"); |
|
|
|
}); |
|
|
|
}, |
|
|
|
// 如果服务方有选择第一个的话让它更新一下 |
|
|
|
handleChangeServiceTypeLevel2() { |
|
|
|
console.log(this.formData.serviceTypeLevel1Id); |
|
|
|
console.log(this.formData.serviceTypeLevel2Id); |
|
|
|
if (this.formData.serviceOrgType) { |
|
|
|
this.getServiceuserList(this.formData.serviceOrgType); |
|
|
|
} else { |
|
|
|
return; |
|
|
|
} |
|
|
|
}, |
|
|
|
handleClickLabel() { |
|
|
|
this.showLabelForm = true; |
|
|
|
this.$nextTick(() => { |
|
|
@ -723,7 +691,6 @@ export default { |
|
|
|
this.formData.resiSearchTagName = ""; |
|
|
|
}, |
|
|
|
getLastItem(list, vals, key) { |
|
|
|
console.log(list, vals, key); |
|
|
|
let LIST = list || []; |
|
|
|
for (let item of LIST) { |
|
|
|
for (let i of vals) { |
|
|
@ -774,7 +741,6 @@ export default { |
|
|
|
}, |
|
|
|
async iniDefaultData() { |
|
|
|
const { defaultData } = this; |
|
|
|
console.log("iniDefaultData3", defaultData); |
|
|
|
if (defaultData) { |
|
|
|
const { serviceOrgType, serviceOrgId, scopeIdArray } = defaultData; |
|
|
|
if (serviceOrgType) { |
|
|
@ -847,7 +813,6 @@ export default { |
|
|
|
// } |
|
|
|
// }, |
|
|
|
async handleServiceChange(type, val) { |
|
|
|
console.log(val); |
|
|
|
if (val === "social_org") { |
|
|
|
if (type === "add") await this.getServiceuserList(val); |
|
|
|
else this.getServiceuserList(val); |
|
|
@ -856,13 +821,13 @@ export default { |
|
|
|
|
|
|
|
async getServiceuserList(serverOrgType) { |
|
|
|
if (!serverOrgType) return false; |
|
|
|
if (this.formData.serviceTypeLevel2Id == "") { |
|
|
|
if (this.formData.categoryCode.length === 0) { |
|
|
|
this.$message.error("请先选择服务类别!"); |
|
|
|
return; |
|
|
|
} |
|
|
|
const url = "/actual/base/serviceitem/listServerOrg"; |
|
|
|
let params = { |
|
|
|
serviceTypeId: this.formData.serviceTypeLevel2Id, |
|
|
|
serviceTypeId: this.formData.categoryCode[1] ||this.formData.categoryCode[0], |
|
|
|
serverOrgType: serverOrgType, |
|
|
|
businessType: "common_service", |
|
|
|
}; |
|
|
@ -988,9 +953,24 @@ export default { |
|
|
|
} |
|
|
|
// const url = 'http://yapi.elinkservice.cn/mock/245/governance/icServiceProject/service/initiate' |
|
|
|
let params = { |
|
|
|
...this.formData, |
|
|
|
categoryCode:this.formData.categoryCode[1]?this.formData.categoryCode[1]:'', |
|
|
|
parentCategoryCode:this.formData.categoryCode[0], |
|
|
|
resiSearchTagId: this.formData.resiSearchTagId, |
|
|
|
resiSearchTagName: this.formData.resiSearchTagName, |
|
|
|
serviceName: this.formData.serviceName, |
|
|
|
noticeApproches: this.formData.noticeApproches, |
|
|
|
policyId: this.formData.policyId, |
|
|
|
serviceOrgType: this.formData.serviceOrgType, |
|
|
|
serviceOrgId: this.formData.serviceOrgId, |
|
|
|
objList: this.formData.gridIdList, |
|
|
|
principalName: this.formData.principalName, |
|
|
|
principalContact: this.formData.principalContact, |
|
|
|
serviceTimeStart: this.formData.serviceTimeStart, |
|
|
|
serviceTimeEnd: this.formData.serviceTimeEnd, |
|
|
|
remark: this.formData.remark, |
|
|
|
feedback:this.formData.feedback, |
|
|
|
serviceRecordId:this.serviceRecordId |
|
|
|
}; |
|
|
|
delete params.serviceTypeLevel1Id; |
|
|
|
const { data, code, msg } = await requestPost(url, params); |
|
|
|
if (code === 0) { |
|
|
|
this.$message.success("发起成功"); |
|
|
@ -1008,8 +988,8 @@ export default { |
|
|
|
|
|
|
|
resetData() { |
|
|
|
this.formData = { |
|
|
|
serviceTypeLevel1Id: "", // 公共服务(政策级别)一级分类id |
|
|
|
serviceTypeLevel2Id: "", // 公共服务(政策级别)二级分类id |
|
|
|
categoryCode:[], |
|
|
|
parentCategoryCode:'', |
|
|
|
gridIdList: [], // |
|
|
|
principalName: "", //经办人(责任人)姓名 |
|
|
|
principalContact: "", //经办人联系方式 |
|
|
|