|
|
@@ -1,77 +1,96 @@
|
|
|
<template>
|
|
|
<div>
|
|
|
<el-button type="primary" size="small" @click="open">{{
|
|
|
- btnTitle
|
|
|
- }}</el-button>
|
|
|
+ btnTitle
|
|
|
+ }}</el-button>
|
|
|
<dialogTemplate
|
|
|
- ref="dialogRef"
|
|
|
- :title="title"
|
|
|
- @onClose="onClose"
|
|
|
- @onSubmit="onSubmit"
|
|
|
- :disabled="backreason.length == 0"
|
|
|
- width="800px"
|
|
|
+ ref="dialogRef"
|
|
|
+ :title="title"
|
|
|
+ @onClose="onClose"
|
|
|
+ @onSubmit="onSubmit"
|
|
|
+ :disabled="backreason.length == 0"
|
|
|
+ width="800px"
|
|
|
>
|
|
|
<template slot="content">
|
|
|
<div v-if="title == '转服务申请单'">
|
|
|
<el-row :gutter="20">
|
|
|
<el-form
|
|
|
- :model="form"
|
|
|
- :rules="rules"
|
|
|
- ref="form"
|
|
|
- label-width="140px"
|
|
|
- label-position="right"
|
|
|
- size="mini"
|
|
|
+ :model="form"
|
|
|
+ :rules="rules"
|
|
|
+ ref="form"
|
|
|
+ label-width="140px"
|
|
|
+ label-position="right"
|
|
|
+ size="mini"
|
|
|
>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="企业名称:" prop="enterprisename">
|
|
|
- <el-input
|
|
|
- disabled
|
|
|
- type="text"
|
|
|
- size="mini"
|
|
|
- v-model="form.enterprisename"
|
|
|
- ></el-input>
|
|
|
+ <selectAgent
|
|
|
+ :customParam="agentParam"
|
|
|
+ ref="agent"
|
|
|
+ @selectRow="agentChange"
|
|
|
+ qiyi="企业名称"
|
|
|
+ >
|
|
|
+ <el-input
|
|
|
+ readonly
|
|
|
+ type="text"
|
|
|
+ slot="input"
|
|
|
+ size="mini"
|
|
|
+ @focus="$refs.agent.visible = true"
|
|
|
+ v-model="form.enterprisename"
|
|
|
+ ></el-input>
|
|
|
+ </selectAgent>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="服务类型" prop="servicetype">
|
|
|
<el-select
|
|
|
- class="inline-24"
|
|
|
- v-model="form.servicetype"
|
|
|
- @change="classChange"
|
|
|
- placeholder="请选择状态"
|
|
|
- size="mini"
|
|
|
- clearable
|
|
|
- disabled
|
|
|
+ class="inline-24"
|
|
|
+ v-model="form.servicetype"
|
|
|
+ @change="classChange"
|
|
|
+ placeholder="请选择状态"
|
|
|
+ size="mini"
|
|
|
+ clearable
|
|
|
>
|
|
|
<el-option
|
|
|
- v-for="(item, index) in serveClassList"
|
|
|
- :key="index"
|
|
|
- :label="item.value"
|
|
|
- :value="item.value"
|
|
|
+ v-for="(item, index) in serveClassList"
|
|
|
+ :key="index"
|
|
|
+ :label="item.value"
|
|
|
+ :value="item.value"
|
|
|
></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col
|
|
|
- :span="12"
|
|
|
+ :span="12"
|
|
|
+ v-if="form.servicetype == '售中' || form.servicetype == '售后'"
|
|
|
>
|
|
|
<el-form-item label="订单号:" prop="sonum">
|
|
|
- <el-input
|
|
|
- disabled
|
|
|
- type="text"
|
|
|
- size="mini"
|
|
|
- v-model="form.sonum"
|
|
|
- ></el-input>
|
|
|
+ <selectOrder
|
|
|
+ :id="form.sys_enterpriseid"
|
|
|
+ ref="order"
|
|
|
+ @selectRow="orderChange"
|
|
|
+ >
|
|
|
+ <el-input
|
|
|
+ readonly
|
|
|
+ :disabled="!form.sys_enterpriseid"
|
|
|
+ type="text"
|
|
|
+ slot="input"
|
|
|
+ size="mini"
|
|
|
+ @focus="
|
|
|
+ $refs.order.listData(), ($refs.order.visible = true)
|
|
|
+ "
|
|
|
+ v-model="form.sonum"
|
|
|
+ ></el-input>
|
|
|
+ </selectOrder>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="单据日期" prop="billdate">
|
|
|
<el-date-picker
|
|
|
- v-model="form.billdate"
|
|
|
- type="date"
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
- disabled
|
|
|
- placeholder="选择日期"
|
|
|
+ v-model="form.billdate"
|
|
|
+ type="date"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ placeholder="选择日期"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
@@ -79,11 +98,10 @@
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="省市县" prop="province">
|
|
|
<el-cascader
|
|
|
- size="mini"
|
|
|
- v-model="form.province"
|
|
|
- disabled
|
|
|
- :options="basicData.data().areaData"
|
|
|
- ref="cascader"
|
|
|
+ size="mini"
|
|
|
+ v-model="form.province"
|
|
|
+ :options="basicData.data().areaData"
|
|
|
+ ref="cascader"
|
|
|
>
|
|
|
</el-cascader>
|
|
|
</el-form-item>
|
|
|
@@ -91,56 +109,53 @@
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="地址" prop="address">
|
|
|
<el-input
|
|
|
- v-model="form.address"
|
|
|
- placeholder="请输入地址"
|
|
|
- disabled
|
|
|
+ v-model="form.address"
|
|
|
+ placeholder="请输入地址"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
-<!-- <el-col :span="12">
|
|
|
+ <el-col :span="12">
|
|
|
<el-form-item label="服务联系人" prop="scenecontact">
|
|
|
<el-input
|
|
|
- v-model="form.scenecontact"
|
|
|
- placeholder="请输入服务联系人"
|
|
|
+ v-model="form.scenecontact"
|
|
|
+ placeholder="请输入服务联系人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col :span="12">
|
|
|
+<!-- <el-col :span="12">
|
|
|
<el-form-item label="联系人角色" prop="scenecontactrole">
|
|
|
<el-input
|
|
|
- v-model="form.scenecontactrole"
|
|
|
- placeholder="请输入联系人角色"
|
|
|
+ v-model="form.scenecontactrole"
|
|
|
+ placeholder="请输入联系人角色"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>-->
|
|
|
<el-col :span="12">
|
|
|
<el-form-item
|
|
|
- label="服务联系电话"
|
|
|
- prop="scenecontactphonenumber"
|
|
|
+ label="服务联系电话"
|
|
|
+ prop="scenecontactphonenumber"
|
|
|
>
|
|
|
<el-input
|
|
|
- v-model="form.scenecontactphonenumber"
|
|
|
- disabled
|
|
|
- placeholder="请输入服务联系电话"
|
|
|
+ v-model="form.scenecontactphonenumber"
|
|
|
+ placeholder="请输入服务联系电话"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="应用系统" prop="class1">
|
|
|
<el-select
|
|
|
- class="inline-24"
|
|
|
- v-model="form.class1"
|
|
|
- @change="classChange"
|
|
|
- placeholder="请选择应用系统"
|
|
|
- size="mini"
|
|
|
- clearable
|
|
|
- disabled
|
|
|
+ class="inline-24"
|
|
|
+ v-model="form.class1"
|
|
|
+ @change="classChange"
|
|
|
+ placeholder="请选择应用系统"
|
|
|
+ size="mini"
|
|
|
+ clearable
|
|
|
>
|
|
|
<el-option
|
|
|
- v-for="(item, index) in systemapp"
|
|
|
- :key="index"
|
|
|
- :label="item.value"
|
|
|
- :value="item.value"
|
|
|
+ v-for="(item, index) in systemapp"
|
|
|
+ :key="index"
|
|
|
+ :label="item.value"
|
|
|
+ :value="item.value"
|
|
|
></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
@@ -148,38 +163,37 @@
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="客诉大类" prop="class2">
|
|
|
<el-select
|
|
|
- class="inline-24"
|
|
|
- v-model="form.class2"
|
|
|
- @change="classChange"
|
|
|
- placeholder="请选择客诉大类"
|
|
|
- size="mini"
|
|
|
- clearable
|
|
|
- disabled
|
|
|
+ class="inline-24"
|
|
|
+ v-model="form.class2"
|
|
|
+ @change="classChange"
|
|
|
+ placeholder="请选择客诉大类"
|
|
|
+ size="mini"
|
|
|
+ clearable
|
|
|
>
|
|
|
<el-option
|
|
|
- v-for="(item, index) in customerclass"
|
|
|
- :key="index"
|
|
|
- :label="item.value"
|
|
|
- :value="item.value"
|
|
|
+ v-for="(item, index) in customerclass"
|
|
|
+ :key="index"
|
|
|
+ :label="item.value"
|
|
|
+ :value="item.value"
|
|
|
></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
-<!-- <el-col :span="12">
|
|
|
+ <el-col :span="12">
|
|
|
<el-form-item label="申请原因" prop="reason">
|
|
|
<el-input
|
|
|
- v-model="form.reason"
|
|
|
- placeholder="请输入申请原因"
|
|
|
+ v-model="form.reason"
|
|
|
+ placeholder="请输入申请原因"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col :span="12">
|
|
|
+<!-- <el-col :span="12">
|
|
|
<el-form-item label="需求服务开始日期" prop="begdate">
|
|
|
<el-date-picker
|
|
|
- v-model="form.begdate"
|
|
|
- type="date"
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
- placeholder="选择日期"
|
|
|
+ v-model="form.begdate"
|
|
|
+ type="date"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ placeholder="选择日期"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
@@ -187,10 +201,10 @@
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="需求服务结束日期" prop="enddate">
|
|
|
<el-date-picker
|
|
|
- v-model="form.enddate"
|
|
|
- type="date"
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
- placeholder="选择日期"
|
|
|
+ v-model="form.enddate"
|
|
|
+ type="date"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ placeholder="选择日期"
|
|
|
>
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
|
@@ -198,10 +212,9 @@
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="备注" prop="remarks">
|
|
|
<el-input
|
|
|
- type="textarea"
|
|
|
- v-model="form.remarks"
|
|
|
- placeholder="请输入备注"
|
|
|
- disabled
|
|
|
+ type="textarea"
|
|
|
+ v-model="form.remarks"
|
|
|
+ placeholder="请输入备注"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
@@ -210,10 +223,10 @@
|
|
|
</div>
|
|
|
<div v-else>
|
|
|
<el-input
|
|
|
- style="margin-top: 10px"
|
|
|
- type="textarea"
|
|
|
- v-model="backreason"
|
|
|
- placeholder="填写拒绝原因"
|
|
|
+ style="margin-top: 10px"
|
|
|
+ type="textarea"
|
|
|
+ v-model="backreason"
|
|
|
+ placeholder="填写拒绝原因"
|
|
|
></el-input>
|
|
|
</div>
|
|
|
</template>
|
|
|
@@ -227,7 +240,7 @@ import selectAgent from "@/template/selectAgent/index";
|
|
|
import selectOrder from "@/HDrpManagement/serveBillMag/components/selectOrder";
|
|
|
export default {
|
|
|
name: "transferService",
|
|
|
- props: ["btnTitle", "message", "data","sonum"],
|
|
|
+ props: ["btnTitle", "message", "data"],
|
|
|
components: { dialogTemplate, selectAgent, selectOrder },
|
|
|
data() {
|
|
|
return {
|
|
|
@@ -252,21 +265,21 @@ export default {
|
|
|
scenecontactrole: "",
|
|
|
scenecontactphonenumber: "",
|
|
|
billdate: `${new Date().getFullYear()}-${
|
|
|
- new Date().getMonth() + 1
|
|
|
+ new Date().getMonth() + 1
|
|
|
}-${new Date().getDate()}`,
|
|
|
begdate: "",
|
|
|
enddate: "",
|
|
|
},
|
|
|
rules: {
|
|
|
servicetype: [
|
|
|
- { required: false, message: "请选择服务类型", trigger: "change" },
|
|
|
+ { required: true, message: "请选择服务类型", trigger: "change" },
|
|
|
],
|
|
|
enterprisename: [
|
|
|
- { required: false, message: "请选择经销商", trigger: "change" },
|
|
|
+ { required: true, message: "请选择经销商", trigger: "change" },
|
|
|
],
|
|
|
- sonum: [{ required: false, message: "请选择订单", trigger: "change" }],
|
|
|
+ sonum: [{ required: true, message: "请选择订单", trigger: "change" }],
|
|
|
scenecontactphonenumber: [
|
|
|
- { required: false, message: "请填写手机号码", trigger: "blur" },
|
|
|
+ { required: true, message: "请填写手机号码", trigger: "blur" },
|
|
|
{
|
|
|
pattern: /^1[3-9][0-9]\d{8}$/,
|
|
|
message: "请输入正确手机号码",
|
|
|
@@ -274,23 +287,23 @@ export default {
|
|
|
},
|
|
|
],
|
|
|
province: [
|
|
|
- { required: false, message: "请选择省市县", trigger: "change" },
|
|
|
+ { required: true, message: "请选择省市县", trigger: "change" },
|
|
|
],
|
|
|
- address: [{ required: false, message: "请填写地址", trigger: "blur" }],
|
|
|
+ address: [{ required: true, message: "请填写地址", trigger: "blur" }],
|
|
|
scenecontact: [
|
|
|
- { required: false, message: "服务联系人", trigger: "blur" },
|
|
|
+ { required: true, message: "服务联系人", trigger: "blur" },
|
|
|
],
|
|
|
scenecontactrole: [
|
|
|
- { required: false, message: "联系人角色", trigger: "blur" },
|
|
|
+ { required: true, message: "联系人角色", trigger: "blur" },
|
|
|
],
|
|
|
- class1: [{ required: false, message: "应用系统", trigger: "change" }],
|
|
|
- class2: [{ required: false, message: "客诉大类", trigger: "change" }],
|
|
|
- reason: [{ required: false, message: "申请原因", trigger: "blur" }],
|
|
|
+ class1: [{ required: true, message: "应用系统", trigger: "change" }],
|
|
|
+ class2: [{ required: true, message: "客诉大类", trigger: "change" }],
|
|
|
+ reason: [{ required: true, message: "申请原因", trigger: "blur" }],
|
|
|
begdate: [
|
|
|
- { required: false, message: "需求服务开始日期", trigger: "change" },
|
|
|
+ { required: true, message: "需求服务开始日期", trigger: "change" },
|
|
|
],
|
|
|
enddate: [
|
|
|
- { required: false, message: "需求服务结束日期", trigger: "change" },
|
|
|
+ { required: true, message: "需求服务结束日期", trigger: "change" },
|
|
|
],
|
|
|
},
|
|
|
agentParam: {
|
|
|
@@ -319,31 +332,31 @@ export default {
|
|
|
confirmButtonText: "确认",
|
|
|
cancelButtonText: "拒绝",
|
|
|
})
|
|
|
- .then(async () => {
|
|
|
- this.title = "转服务申请单";
|
|
|
- this.sonum?this.form.sonum = this.sonum : this.form.sonum = ''
|
|
|
- this.form = Object.assign({}, this.form, this.data);
|
|
|
- this.form.province = [this.form.province,this.form.city,this.form.county]
|
|
|
- this.$refs.dialogRef.dialogVisible = true;
|
|
|
- /* this.getServeClass();*/
|
|
|
- /*const res = await this.$store.dispatch(
|
|
|
- "optiontypeselect",
|
|
|
- "customerclass"
|
|
|
- );
|
|
|
- this.customerclass = res.data;
|
|
|
- const res1 = await this.$store.dispatch(
|
|
|
- "optiontypeselect",
|
|
|
- "systemapp"
|
|
|
- );
|
|
|
- this.systemapp = res1.data;*/
|
|
|
- })
|
|
|
- .catch((action) => {
|
|
|
- if (action === "cancel") {
|
|
|
- this.title = "拒绝服务";
|
|
|
- this.disabled = true;
|
|
|
+ .then(async () => {
|
|
|
+ this.title = "转服务申请单";
|
|
|
+ console.log(this.data, "data====");
|
|
|
+ this.form = Object.assign({}, this.form, this.data);
|
|
|
+ console.log(this.form, "form");
|
|
|
this.$refs.dialogRef.dialogVisible = true;
|
|
|
- }
|
|
|
- });
|
|
|
+ this.getServeClass();
|
|
|
+ const res = await this.$store.dispatch(
|
|
|
+ "optiontypeselect",
|
|
|
+ "customerclass"
|
|
|
+ );
|
|
|
+ this.customerclass = res.data;
|
|
|
+ const res1 = await this.$store.dispatch(
|
|
|
+ "optiontypeselect",
|
|
|
+ "systemapp"
|
|
|
+ );
|
|
|
+ this.systemapp = res1.data;
|
|
|
+ })
|
|
|
+ .catch((action) => {
|
|
|
+ if (action === "cancel") {
|
|
|
+ this.title = "拒绝服务";
|
|
|
+ this.disabled = true;
|
|
|
+ this.$refs.dialogRef.dialogVisible = true;
|
|
|
+ }
|
|
|
+ });
|
|
|
},
|
|
|
onSubmit() {
|
|
|
if (this.title == "拒绝服务") {
|
|
|
@@ -360,10 +373,6 @@ export default {
|
|
|
sys_enterpriseid: this.form.sys_enterpriseid, //服务预约单中sys_enterpriseid为0时,此时sys_enterpriseid必传
|
|
|
},
|
|
|
});
|
|
|
- if (res.code == 0){
|
|
|
- this.$refs.dialogRef.loading = false
|
|
|
- this.tool.showMessage(res,() => {})
|
|
|
- }
|
|
|
this.tool.showMessage(res, () => {
|
|
|
this.$refs.dialogRef.loading = false;
|
|
|
this.$refs.dialogRef.dialogVisible = false;
|
|
|
@@ -391,8 +400,8 @@ export default {
|
|
|
inputChange() {
|
|
|
console.log(this.backreason);
|
|
|
this.backreason.length > 0
|
|
|
- ? (this.disabled = false)
|
|
|
- : (this.disabled = true);
|
|
|
+ ? (this.disabled = false)
|
|
|
+ : (this.disabled = true);
|
|
|
},
|
|
|
onClose() {
|
|
|
this.backreason = "";
|
|
|
@@ -425,7 +434,7 @@ export default {
|
|
|
classChange() {
|
|
|
if (this.form.servicetype == "售中" || this.form.servicetype == "售后") {
|
|
|
this.$refs.agent.param.content.sys_enterpriseid =
|
|
|
- this.form.sys_enterpriseid;
|
|
|
+ this.form.sys_enterpriseid;
|
|
|
}
|
|
|
},
|
|
|
},
|