Browse Source

社区服务修改

feature
lichao 3 years ago
parent
commit
600956d0cb
  1. 213
      src/views/modules/communityService/commonDemand/addForm.vue
  2. 95
      src/views/modules/communityService/commonDemand/detailForm.vue
  3. 241
      src/views/modules/communityService/commonDemand/editForm.vue
  4. 6
      src/views/modules/communityService/commonDemand/index.vue

213
src/views/modules/communityService/commonDemand/addForm.vue

@ -48,7 +48,7 @@
>
</el-input>
</el-form-item>
<el-form-item
label="服务组织"
prop="serviceOrgId"
@ -88,7 +88,7 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item
label="服务范围"
prop="objList"
@ -107,7 +107,7 @@
@change="handleChangeScope"
></el-cascader>
</el-form-item>
<el-form-item
label="政策依据"
prop="policyId"
@ -129,7 +129,7 @@
>
</el-option>
</el-select>
<el-button
style="margin-left: 10px"
type="primary"
@ -138,7 +138,7 @@
>预览</el-button
>
</el-form-item>
<el-form-item
label="经办人"
prop="principalName"
@ -167,7 +167,7 @@
>
</el-input>
</el-form-item>
<el-form-item
label="服务时间"
label-width="150px"
@ -198,7 +198,7 @@
>
</el-date-picker>
</el-form-item>
<el-form-item
label="备注"
prop="remark"
@ -232,7 +232,7 @@
</el-form>
<div v-show="formType === 'feedback' || showFeedback">
<!-- <h3 class="d-h3">反馈内容</h3> -->
<el-form
ref="ref_form_feedback"
:inline="true"
@ -257,7 +257,7 @@
v-model="feedbackFormData.serviceGoal"
></el-input>
</el-form-item>
<el-form-item
label="服务效果"
prop="serviceEffect"
@ -275,7 +275,7 @@
v-model="feedbackFormData.serviceEffect"
></el-input>
</el-form-item>
<el-form-item
label="服务人数"
style="display: block"
@ -291,7 +291,7 @@
label="服务人数"
></el-input-number>
</el-form-item>
<el-form-item
label="服务状态"
style="display: block"
@ -372,7 +372,7 @@
</div>
</div>
</el-form-item>
<el-form-item
class="block"
label="附件"
@ -403,7 +403,7 @@
</el-form>
</div>
</div>
<div class="div_btn">
<el-button size="small" @click="handleCancle"> </el-button>
<el-button
@ -414,7 +414,7 @@
> </el-button
>
</div>
<el-dialog
v-if="showPersonList"
:visible.sync="showPersonList"
@ -438,7 +438,7 @@
</el-dialog>
</div>
</template>
<script>
import { mapGetters } from "vuex";
import { Loading } from "element-ui"; // Loading
@ -446,10 +446,10 @@
import personList from "../policy/personList";
import nextTick from "dai-js/tools/nextTick";
import daiMap from "@/utils/dai-map";
let loading; //
let map;
export default {
props: {
defaultData: {
@ -487,7 +487,7 @@
default: "manage",
},
},
data() {
let endDisabledDate = (time) => {
//datareturn
@ -508,13 +508,13 @@
let nowData = Date.now();
return time.getTime() > nowData;
};
return {
btnDisable: false,
casOptions: [],
scopeIdArray: [],
iscascaderShow: 0,
optionProps: {
multiple: true,
value: "objectId",
@ -523,7 +523,7 @@
checkStrictly: true,
emitPath: false,
},
keyWords: "",
formData: {
serviceCategoryKey: "",
@ -550,28 +550,28 @@
address: "",
fileList: [], //
},
endPickerOptions: {
// disabledDate: endDisabledDate,
},
startPickerOptions: {
// disabledDate: startDisabledDate,
},
showFeedback: false,
serviceOptions: [],
serviceOptiondList: [],
policyList: [],
fileList: [],
uploadUlr: window.SITE_CONFIG["apiURL"] + "/oss/file/uploadvariedfile",
policyId: "",
showPersonList: false,
ruleList: [],
firstInitMap: true,
categrayOptions: [],
statusArray: [
{
@ -599,7 +599,7 @@
],
};
},
computed: {
dataRule() {
return {
@ -609,7 +609,7 @@
serviceOrgId: [
{ required: true, message: "服务组织不能为空", trigger: "change" },
],
serviceTimeStart: [
{ required: true, message: "服务时间不能为空", trigger: "change" },
],
@ -623,7 +623,7 @@
serviceGoal: [
{ required: true, message: "服务目标不能为空", trigger: "blur" },
],
serviceEffect: [
{ required: true, message: "服务效果不能为空", trigger: "blur" },
],
@ -640,7 +640,7 @@
};
},
},
watch: {
"formData.serviceTimeEnd": function (val) {
if (val && val != "") {
@ -649,14 +649,14 @@
}
},
},
components: { personList },
async mounted() {
this.startLoading();
// prop
this.categrayOptions = this.categrayArray;
this.getCategrayList();
this.getDictOptions();
this.getPolicyList();
@ -664,18 +664,18 @@
this.initMap();
this.$refs.ref_form_feedback.resetFields();
}
if (this.formType === "add") {
this.$refs.ref_form.resetFields();
await this.loadScopeTree();
} else {
}
await this.iniDefaultData();
this.endLoading();
},
methods: {
async iniDefaultData() {
const { defaultData } = this;
@ -696,48 +696,48 @@
}
}
},
//
async handlePersonList() {
if (!this.formData.policyId) {
this.$message.info("请先选择政策");
return false;
}
this.policyId = this.formData.policyId;
await this.loadRuleList();
this.showPersonList = true;
},
async loadRuleList() {
const url = "/heart/policy/rulelist/" + this.policyId;
const url = "/governance/policy/rulelist/" + this.policyId;
let params = {};
const { data, code, msg } = await requestPost(url, params);
if (code === 0) {
this.ruleList = data;
} else {
this.$message.error(msg);
}
},
handleClose() {
this.showPersonList = false;
},
handleOk() {
this.showPersonList = false;
},
async getPolicyList() {
const url = "/heart/policy/policyListSelect";
const url = "/governance/policy/policyListSelect";
let params = {};
const { data, code, msg } = await requestPost(url, params);
if (code === 0) {
this.policyList = data;
} else {
@ -760,17 +760,17 @@
return this.$message.error("网络错误");
});
},
//
async getCategrayList() {
const url = "/sys/dict/data/dictlist";
let params = {
dictType: "ic_service_type",
};
const { data, code, msg } = await requestPost(url, params);
if (code === 0) {
this.categrayOptions = data;
} else {
@ -783,17 +783,17 @@
else this.getServiceuserList(val, "query_demand");
} else this.getServiceuserList(val, "");
},
async getServiceuserList(serviceType, query) {
if (!serviceType) return false;
const params = {
serviceName: "",
serviceType: serviceType,
queryPurpose: query,
};
await this.$http
.post("/heart/userdemand/servicelist", params)
.post("/governance/userdemand/servicelist", params)
.then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg);
@ -807,22 +807,22 @@
},
handleChangeFeedback(val) {
this.showFeedback = val;
if (this.firstInitMap) {
this.$nextTick(() => {
this.initMap();
});
}
},
//
async loadScopeTree() {
const url = "/gov/org/icServiceProject/service/serviceScopeTree";
// const url = 'http://yapi.elinkservice.cn/mock/245/gov/org/isServiceProject/service/serviceScopeTree'
let params = {};
const { data, code, msg } = await requestPost(url, params);
if (code === 0) {
++this.iscascaderShow;
this.casOptions = [];
@ -832,7 +832,7 @@
this.$message.error(rspMsg);
}
},
handleChangeScope(value) {
this.formData.objList = [];
let selArray = this.$refs["myCascader"].getCheckedNodes();
@ -851,7 +851,7 @@
this.formData.objList.push(obj);
});
},
async handleComfirm() {
if (this.formType === "add") {
this.handleAdd();
@ -859,7 +859,7 @@
this.handleFeedback();
}
},
async handleAdd() {
this.btnDisable = true;
setTimeout(() => {
@ -876,7 +876,7 @@
this.$message.error("服务截止时间必须大于服务开始时间");
return false;
}
if (this.showFeedback) {
this.$refs["ref_form_feedback"].validate((valid, messageObj) => {
if (!valid) {
@ -893,7 +893,7 @@
}
});
},
async addFuwu() {
if (this.showFeedback) {
this.feedbackFormData.fileList = [];
@ -902,11 +902,11 @@
} else {
this.formData.feedback = null;
}
console.log(this.formData);
// return false
const regPhone = /^1(3|4|5|6|7|8|9)\d{9}$/; //
if (
this.formData.principalContact &&
regPhone.test(this.formData.principalContact) === false
@ -918,18 +918,18 @@
});
return false;
}
if (this.source === "manage") {
this.formData.serviceCategoryKey = this.serviceCategoryKey;
}
const url = "/heart/icServiceRecordV2/add";
// const url = 'http://yapi.elinkservice.cn/mock/245/heart/icServiceProject/service/initiate'
const url = "/governance/icServiceRecordV2/add";
// const url = 'http://yapi.elinkservice.cn/mock/245/governance/icServiceProject/service/initiate'
let params = {
...this.formData,
};
const { data, code, msg } = await requestPost(url, params);
if (code === 0) {
this.$message.success("发起成功");
this.resetData();
@ -938,13 +938,13 @@
this.$message.error(msg);
}
},
async handleFeedback() {
this.btnDisable = true;
setTimeout(() => {
this.btnDisable = false;
}, 10000);
this.$refs["ref_form_feedback"].validate((valid, messageObj) => {
if (!valid) {
app.util.validateRule(messageObj);
@ -954,23 +954,23 @@
}
});
},
async addFeecback() {
this.feedbackFormData.fileList = [];
this.feedbackFormData.fileList = [...this.fileList];
this.feedbackFormData.serviceRecordId = this.serviceRecordId;
console.log(this.feedbackFormData);
// return false
const url = "/heart/icServiceFeedbackV2/add";
const url = "/governance/icServiceFeedbackV2/add";
let params = {
...this.feedbackFormData,
};
const { data, code, msg } = await requestPost(url, params);
if (code === 0) {
this.$message.success("反馈成功");
this.resetData();
@ -979,11 +979,11 @@
this.$message.error(msg);
}
},
beforeUpload(file) {
const array = file.name.split(".");
const extension = array[array.length - 1];
const formatarray = [
"jpg",
"png",
@ -999,13 +999,13 @@
"xlsx",
"pdf",
];
if (formatarray.indexOf(extension) === -1) {
this.$message.error("只支持图片、word、pdf");
return false;
}
},
handleFileRemove(file) {
if (file && file.status === "success") {
this.fileList.splice(
@ -1014,17 +1014,17 @@
);
}
},
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.format = "image";
} else if (videoarray.indexOf(fileType) > -1) {
@ -1034,19 +1034,19 @@
} else if (mp3Array.indexOf(fileType) > -1) {
file.format = "voice";
}
file.url = res.data.url;
file.type = fileType;
file.name = file.name;
file.type = file.type;
file.url = file.url;
this.fileList.push(file);
console.log(this.fileList);
} else this.$message.error(res.msg);
},
//
handleFileDownload(file) {
var a = document.createElement("a");
@ -1060,11 +1060,11 @@
this.resetData();
this.$emit("handleClose");
},
// init
initMap() {
let { latitude, longitude } = this.$store.state.user;
map = new daiMap(
document.getElementById("map_app"),
{ latitude, longitude },
@ -1074,29 +1074,29 @@
rotation: 45, //
}
);
//
map.on("dragend", (e) => {
this.handleMoveCenter(e);
});
map.setCenter(latitude, longitude);
map.setMarker(latitude, longitude);
},
async handleMoveCenter() {
//
const { lat, lng } = map.getCenter();
this.feedbackFormData.latitude = lat;
this.feedbackFormData.longitude = lng;
map.setMarker(lat, lng);
let { msg, data } = await map.getAddress(lat, lng);
if (msg == "success") {
this.feedbackFormData.address = data.address;
}
},
async handleSearchMap() {
const { msg, data } = await map.searchNearby(this.keyWords);
if (msg == "success") {
@ -1109,7 +1109,7 @@
this.$message.error("未检索到相关位置坐标");
}
},
resetData() {
this.formData = {
objList: [], //
@ -1150,11 +1150,11 @@
},
};
</script>
<style lang="scss" scoped>
@import "@/assets/scss/modules/management/form-main.scss";
@import "@/assets/scss/modules/visual/a_customize.scss";
.form-item::v-deep .el-form-item__label {
color: #fff;
}
@ -1162,10 +1162,9 @@
.el-radio {
color: #fff;
}
.el-checkbox {
color: #fff;
}
}
</style>

95
src/views/modules/communityService/commonDemand/detailForm.vue

@ -7,17 +7,17 @@
<span class="info-title-2">服务名称</span>
<span>{{ formData.serviceName || "--" }}</span>
</div>
<div class="info-prop">
<span class="info-title-2">服务组织</span>
<span>{{ serviceOrgName || "--" }}</span>
</div>
<div class="info-prop">
<span class="info-title-2">服务范围</span>
<span>{{ formData.gridIdListName || "--" }}</span>
</div>
<div class="info-prop">
<span class="info-title-2">政策依据</span>
<span>{{ formData.policyTitle || "--" }}</span>
@ -48,10 +48,10 @@
<span class="info-title-2">备注</span>
<span>{{ formData.remark || "--" }}</span>
</div>
<div v-show="formData.serviceStatus === 'completed'">
<h3 class="d-h3">反馈内容</h3>
<div class="info-prop">
<span class="info-title-2">服务目标</span>
<span>{{ feedbackFormData.serviceGoal || "--" }}</span>
@ -64,7 +64,7 @@
<span class="info-title-2">服务人数</span>
<span>{{ feedbackFormData.servicePeopleNumber || 0 }}</span>
</div>
<div class="info-prop">
<span class="info-title-2">服务状态</span>
<span>{{ feedbackFormData.serviceStatusShow || "--" }}</span>
@ -73,19 +73,19 @@
<span class="info-title-2">满意度</span>
<span>{{ feedbackFormData.satisfactionShow || "--" }}</span>
</div>
<div class="info-prop">
<span class="info-title-2">地理位置</span>
<span>{{ feedbackFormData.address || "--" }}</span>
</div>
<div class="info-prop">
<span class="info-title-2">地图位置</span>
<div class="div_map">
<div id="app_detail"></div>
</div>
</div>
<div class="info-prop">
<span class="info-title-2">附件</span>
<file-list
@ -98,11 +98,11 @@
</div>
</div>
</div>
<div class="div-btn">
<el-button size="small" @click="handleCancle"> </el-button>
</div>
<el-dialog
v-if="showPersonList"
:visible.sync="showPersonList"
@ -126,7 +126,7 @@
</el-dialog>
</div>
</template>
<script>
import { mapGetters } from "vuex";
import { Loading } from "element-ui"; // Loading
@ -134,18 +134,18 @@
import personList from "../policy/personList";
import fileList from "@/views/components/fileList";
import daiMap from "@/utils/dai-map";
var map;
let loading; //
export default {
data() {
return {
initLoading: false,
keyWords: "",
formData: {},
feedbackFormData: {
serviceProjectId: "", // id
serviceName: "",
@ -159,7 +159,7 @@
address: "",
fileList: [], //
},
policyId: "",
showPersonList: false,
ruleList: [],
@ -172,7 +172,7 @@
// if (this.serviceRecordId) {//
await this.loadInfo();
this.initLoading = true;
if (
this.formData.serviceStatus === "completed" &&
this.feedbackFormData.latitude
@ -182,48 +182,48 @@
});
}
},
methods: {
diaDestroy() {},
//
async handlePersonList() {
if (!this.formData.policyId) {
this.$message.info("请先选择政策");
return false;
}
this.policyId = this.formData.policyId;
await this.loadRuleList();
this.showPersonList = true;
},
async loadRuleList() {
const url = "/heart/policy/rulelist/" + this.policyId;
const url = "/governance/policy/rulelist/" + this.policyId;
let params = {};
const { data, code, msg } = await requestPost(url, params);
if (code === 0) {
this.ruleList = data;
} else {
this.$message.error(msg);
}
},
handleClose() {
this.showPersonList = false;
},
async getPolicyList() {
const url = "/heart/policy/policyListSelect";
const url = "/governance/policy/policyListSelect";
let params = {};
const { data, code, msg } = await requestPost(url, params);
if (code === 0) {
this.policyList = data;
} else {
@ -232,14 +232,14 @@
},
//
async loadInfo() {
const url = "/heart/icServiceRecordV2/detail";
const url = "/governance/icServiceRecordV2/detail";
let params = {
serviceRecordId: this.serviceRecordId,
};
const { data, code, msg } = await requestPost(url, params);
if (code === 0) {
this.formData = { ...data };
this.formData.serviceRecordId = this.serviceRecordId;
@ -248,7 +248,7 @@
this.formData.gridIdListName = "";
this.feedbackFormData.serviceStatusShow = "";
this.feedbackFormData.satisfactionShow = "";
let arr = [];
this.formData.gridIdList.forEach((element) => {
arr.push(element.objectName);
@ -269,7 +269,7 @@
this.formData.policyName = element.title;
}
});
this.fileList = [];
if (
data.feedback &&
@ -290,16 +290,16 @@
this.$message.error(msg);
}
},
handleCancle() {
this.resetData();
this.$emit("diaDetailClose");
},
// init
initMap() {
let { latitude, longitude } = this.feedbackFormData;
map = new daiMap(
document.getElementById("app_detail"),
{ latitude, longitude },
@ -309,15 +309,15 @@
rotation: 45, //
}
);
map.setCenter(latitude, longitude);
map.setMarker(latitude, longitude);
},
handleOk() {
this.showPersonList = false;
},
resetData() {
this.formData = {};
},
@ -355,7 +355,7 @@
type: String,
required: true,
},
satisfyArray: {
type: Array,
default() {
@ -371,8 +371,7 @@
},
};
</script>
<style lang="scss" scoped>
@import "@/assets/scss/modules/management/detail-main.scss";
</style>

241
src/views/modules/communityService/commonDemand/editForm.vue

@ -1,13 +1,13 @@
<template>
<div>
<div class="dialog-h-content scroll-h">
<el-form ref="ref_form"
:inline="true"
:model="formData"
:rules="dataRule"
class="div_form">
<el-form-item label="服务名称"
prop="serviceName"
label-width="150px"
@ -25,7 +25,7 @@
:value="item.serviceProjectId">
</el-option>
</el-select> -->
</el-form-item>
<el-form-item label="服务组织"
prop="serviceOrgId"
@ -43,9 +43,9 @@
:value="item.icServiceOrgId">
</el-option>
</el-select> -->
</el-form-item>
<el-form-item label="服务范围"
prop="gridIdList"
label-width="150px"
@ -63,7 +63,7 @@
:show-all-levels="false"
@change="handleChangeScope"></el-cascader> -->
</el-form-item>
<el-form-item label="政策依据"
prop="policyId"
label-width="150px"
@ -79,13 +79,13 @@
:value="item.policyId">
</el-option>
</el-select>
<el-button style="margin-left: 10px"
type="primary"
size="small"
@click="handlePersonList">预览</el-button>
</el-form-item>
<el-form-item label="经办人"
prop="principalName"
label-width="150px"
@ -106,7 +106,7 @@
v-model="formData.principalContact">
</el-input>
</el-form-item>
<el-form-item label="服务时间"
label-width="150px"
prop="serviceTimeStart">
@ -130,7 +130,7 @@
placeholder="结束时间">
</el-date-picker>
</el-form-item>
<el-form-item label="备注"
prop="remark"
label-width="150px"
@ -144,18 +144,18 @@
placeholder="请输入备注,不超过500字"
v-model="formData.remark"></el-input>
</el-form-item>
</el-form>
<div v-show="formData.serviceStatus==='completed'">
<h3 class="d-h3">反馈内容</h3>
<el-form ref="ref_form_feedback"
:inline="true"
:disabled="true"
:model="feedbackFormData"
class="div_form">
<el-form-item label="服务目标"
prop="serviceGoal"
label-width="150px"
@ -168,7 +168,7 @@
placeholder="请输入服务目标,不超过1000字"
v-model="feedbackFormData.serviceGoal"></el-input>
</el-form-item>
<el-form-item label="服务效果"
prop="serviceEffect"
label-width="150px"
@ -181,7 +181,7 @@
placeholder="请输入服务效果,不超过1000字"
v-model="feedbackFormData.serviceEffect"></el-input>
</el-form-item>
<el-form-item label="服务人数"
style="display: block"
prop="servicePeopleNumber"
@ -192,7 +192,7 @@
:max="9999"
label="服务人数"></el-input-number>
</el-form-item>
<el-form-item label="服务状态"
label-width="150px"
style="display: block"
@ -208,7 +208,7 @@
:value="item.value">
</el-option>
</el-select> -->
</el-form-item>
<el-form-item label="满意度"
style="display: block"
@ -224,7 +224,7 @@
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="地址"
prop="address"
@ -237,10 +237,10 @@
label-width="150px"
style="display: block">
<div style="width:500px">
<div class="div_map">
<div id="map_app">
</div>
<div class="div_searchmap">
<el-input maxlength="50"
@ -254,10 +254,10 @@
@click="handleSearchMap">查询</el-button>
</div>
</div>
</div>
</el-form-item> -->
<el-form-item class="block"
label="附件"
label-width="150px"
@ -268,7 +268,7 @@
accept=".doc,.pdf,.xls,.docx,.xlsx,.jpg,.png,.jpeg,.bmp,.mp4,.wma,.m4a,.mp3"
:limit="3"
:file-list="fileList">
</el-upload> -->
<div v-if="feedbackFormData.fileList&&feedbackFormData.fileList.length>0"
class="attachement-list">
@ -284,9 +284,9 @@
</el-form-item>
</el-form>
</div>
</div>
<div class="div_btn">
<el-button size="small"
@click="handleCancle"> </el-button>
@ -296,7 +296,7 @@
:disabled="btnDisable"
@click="handleComfirm"> </el-button>
</div>
<el-dialog v-if="showPersonList"
:visible.sync="showPersonList"
:append-to-body="true"
@ -316,20 +316,20 @@
</el-dialog>
</div>
</template>
<script>
import { mapGetters } from 'vuex'
import { Loading } from 'element-ui' // Loading
import { requestPost } from '@/js/dai/request'
import personList from "../policy/personList";
var map
var search
var markers
var infoWindowList
var geocoder //
let loading //
export default {
data () {
@ -341,36 +341,36 @@
} else {
return time.getTime() > nowData
}
}
let startDisabledDate = (time) => {//datareturn
let nowData = Date.now()
return time.getTime() > nowData
}
return {
btnDisable: false,
keyWords: '',
formData: {},
feedbackFormData: {
serviceProjectId: '',// id
serviceProjectId: '',// id
serviceName: '',
serviceGoal: '',//
serviceEffect: '',//
servicePeopleNumber: null,//
serviceStatus: 'completed',// in_servicecompleted:
satisfaction: '',//:bad:good:perfect
longitude: '',//
latitude: '',//
serviceGoal: '',//
serviceEffect: '',//
servicePeopleNumber: null,//
serviceStatus: 'completed',// in_servicecompleted:
satisfaction: '',//:bad:good:perfect
longitude: '',//
latitude: '',//
address: '',
fileList: [],//
},
serviceList: [],//list
endPickerOptions: {
disabledDate: endDisabledDate
},
@ -381,7 +381,7 @@
projectList: [],
fileList: [],
uploadUlr: window.SITE_CONFIG['apiURL'] + '/oss/file/uploadvariedfile',
policyId: '',
showPersonList: false,
ruleList: []
@ -392,13 +392,13 @@
this.getPolicyList()
if (this.serviceRecordId) {//
this.loadInfo()
}
// this.initMap()
},
methods: {
//
async handlePersonList () {
@ -406,48 +406,48 @@
this.$message.info('请先选择政策')
return false
}
this.policyId = this.formData.policyId
await this.loadRuleList()
this.showPersonList = true;
},
async loadRuleList () {
const url = "/heart/policy/rulelist/" + this.policyId
const url = "/governance/policy/rulelist/" + this.policyId
let params = {}
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.ruleList = data
} else {
this.$message.error(msg)
}
},
handleClose () {
this.showPersonList = false
},
handleOk () {
this.showPersonList = false
},
async getPolicyList () {
const url = '/heart/policy/policyListSelect'
const url = '/governance/policy/policyListSelect'
let params = {}
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.policyList = data
} else {
@ -456,19 +456,19 @@
},
//
async loadInfo () {
const url = '/heart/icServiceRecordV2/detail'
const url = '/governance/icServiceRecordV2/detail'
let params = {
serviceRecordId: this.serviceRecordId
}
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.formData = { ...data }
this.formData.serviceRecordId = this.serviceRecordId
this.feedbackFormData = { ...data.feedback }
this.fileList = []
if (data.feedback && data.feedback.fileList && data.feedback.fileList.length > 0) {
data.feedback.fileList.forEach(element => {
@ -480,15 +480,15 @@
this.fileList.push(obj)
});
}
} else {
this.$message.error(msg)
}
},
async handleComfirm () {
this.btnDisable = true
setTimeout(() => {
this.btnDisable = false
@ -500,10 +500,10 @@
} else {
this.editFuwu()
}
})
},
async editFuwu () {
const regPhone = /^1(3|4|5|6|7|8|9)\d{9}$/; //
@ -515,47 +515,47 @@
})
return false;
}
let url = '/heart/icServiceRecordV2/edit'
// let url = "http://yapi.elinkservice.cn/mock/245/heart/icServiceProject/service/update"
let url = '/governance/icServiceRecordV2/edit'
// let url = "http://yapi.elinkservice.cn/mock/245/governance/icServiceProject/service/update"
const { data, code, msg } = await requestPost(url, this.formData)
if (code === 0) {
this.$message({
type: 'success',
message: '操作成功'
})
this.resetData()
this.$emit('handleOk')
} else {
this.btnDisable = false
this.$message.error(msg)
}
},
handleCancle () {
this.resetData()
this.$emit('handleClose')
},
//
handleFileDownload (file) {
var a = document.createElement('a');
var event = new MouseEvent('click');
a.download = file.name;
console.log(a)
a.href = file.url;
a.dispatchEvent(event);
},
// init
initMap () {
//
@ -567,7 +567,7 @@
pitch: 43.5, //
rotation: 45 //
})
search = new window.TMap.service.Search({ pageSize: 10 })
//
markers = new TMap.MultiMarker({
@ -575,9 +575,9 @@
geometries: []
})
infoWindowList = Array(10)
geocoder = new TMap.service.Geocoder(); //
//
map.on('panend', () => {
this.handleMoveCenter()
@ -585,7 +585,7 @@
this.handleMoveCenter()
this.convert()
},
setMarker (lat, lng) {
markers.setGeometries([])
markers.add([
@ -599,7 +599,7 @@
}
])
},
handleSearchMap () {
infoWindowList.forEach((infoWindow) => {
infoWindow.close()
@ -620,8 +620,8 @@
const {
location: { lat, lng }
} = data[0]
map.setCenter(new TMap.LatLng(lat, lng))
this.setMarker(lat, lng)
this.formData.latitude = lat
@ -632,7 +632,7 @@
}
})
},
handleMoveCenter () {
//
const center = map.getCenter()
@ -643,7 +643,7 @@
this.setMarker(lat, lng)
this.convert(lat, lng)
},
convert (lat, lng) {
markers.setGeometries([]);
// var input = document.getElementById('location').value.split(',');
@ -653,7 +653,7 @@
} else {
location = new TMap.LatLng(this.formData.latitude, this.formData.longitude);
}
// map.setCenter(location);
markers.updateGeometries([
{
@ -668,8 +668,8 @@
//
});
},
resetData () {
this.formData = {}
},
@ -692,18 +692,18 @@
computed: {
dataRule () {
return {
serviceTimeStart: [
{ required: true, message: '服务时间不能为空', trigger: 'blur' }
],
}
},
},
props: {
serviceRecordId: {
type: String,
required: true
@ -716,7 +716,7 @@
type: String,
required: true
},
satisfyArray: {
type: Array,
default () {
@ -726,11 +726,11 @@
}
}
</script>
<style lang="scss" scoped >
@import "@/assets/scss/modules/management/form-main.scss";
.attachement-list {
// padding-left: 20px;
a {
@ -738,11 +738,10 @@
cursor: pointer;
// color: #4df0ff;
font-size: 14px;
i {
color: #333;
}
}
}
</style>

6
src/views/modules/communityService/commonDemand/index.vue

@ -478,7 +478,7 @@
queryPurpose: query,
};
await this.$http
.post("/heart/userdemand/servicelist", params)
.post("/governance/userdemand/servicelist", params)
.then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg);
@ -501,7 +501,7 @@
async loadRuleList () {
const url = "/heart/policy/rulelist/" + this.policyId
const url = "/governance/policy/rulelist/" + this.policyId
let params = {}
@ -601,7 +601,7 @@
async cancelFuwu () {
const url = '/heart/icServiceRecordV2/cancel';
const url = '/governance/icServiceRecordV2/cancel';
let params = {
serviceRecordId: this.serviceRecordId
}

Loading…
Cancel
Save