|
|
@@ -19,6 +19,38 @@
|
|
|
@onEditSuccess="queryMainData($route.query.id)">
|
|
|
<div slot="customOperation">
|
|
|
<edit class="inline-16" v-if="(mainData.status != '已完成' && mainData.status != '已中止') && someUserid" @editSuccess="queryMainData($route.query.id)" :data="mainData"></edit>
|
|
|
+ <refundOrder class="inline-16" btnTitle="转单" btnType="primary" @dialogShow="dialogShow" @onSubmit="onSubmit" ref="refundOrderRef"
|
|
|
+ @onCancel="onCancel">
|
|
|
+ <template slot="formRule">
|
|
|
+ <el-form
|
|
|
+ :model="form"
|
|
|
+ :rules="rules"
|
|
|
+ ref="form"
|
|
|
+ :label-width="tool.onlyZh('125px')"
|
|
|
+ label-position="top"
|
|
|
+ size="mini"
|
|
|
+ >
|
|
|
+ <el-form-item :label="$t('请选择改善单真因分析人') + ':'" prop="userid_analysis">
|
|
|
+ <el-select
|
|
|
+ v-model="form.userid_analysis"
|
|
|
+ :placeholder="$t('请选择')"
|
|
|
+ style="width: 100%"
|
|
|
+ size="mini"
|
|
|
+ filterable
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="(item, index) in personList"
|
|
|
+ :key="index"
|
|
|
+ :label="$t(item.name)"
|
|
|
+ :value="item.userid"
|
|
|
+ >
|
|
|
+ <span style="float: left">{{ $t(item.name) }}</span>
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </template>
|
|
|
+ </refundOrder>
|
|
|
<customBtn
|
|
|
btnName="提交分析"
|
|
|
message="是否确定提交真因分析?"
|
|
|
@@ -78,7 +110,7 @@
|
|
|
</div>
|
|
|
<div slot="slot0" >
|
|
|
<div v-if="!tool.checkAuth($route.name,'linkedApplication') && !tool.checkAuth($route.name,'linkedTicket')">
|
|
|
- <serviceImprovement :mainData="mainData"></serviceImprovement>
|
|
|
+ <serviceImprovement :mainData="mainData" :someUserid="someUserid" @Success="queryMainData"></serviceImprovement>
|
|
|
</div>
|
|
|
<div v-if="tool.checkAuth($route.name,'linkedApplication')">
|
|
|
<serviceApplication ref="serviceApplicationRef" v-if="mainData" :mainData="mainData" :new-query="true"></serviceApplication>
|
|
|
@@ -94,11 +126,11 @@
|
|
|
:team_name="team_name" :team_phone_number="team_phone_number" :new-query="true"></serviceWorkOrder>
|
|
|
</div>
|
|
|
<div v-else>
|
|
|
- <serviceImprovement :mainData="mainData"></serviceImprovement>
|
|
|
+ <serviceImprovement :mainData="mainData" :someUserid="someUserid" @Success="queryMainData"></serviceImprovement>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div slot="slot2" >
|
|
|
- <serviceImprovement :mainData="mainData"></serviceImprovement>
|
|
|
+ <serviceImprovement :mainData="mainData" :someUserid="someUserid" @Success="queryMainData"></serviceImprovement>
|
|
|
</div>
|
|
|
</basicDetails>
|
|
|
</div>
|
|
|
@@ -109,13 +141,15 @@ import serviceApplication from "@/HDrpManagement/serveBillMag/components/service
|
|
|
import serviceWorkOrder from '@/HDrpManagement/serveWorkBill/modules/serviceWorkOrder/index';
|
|
|
import serviceImprovement from '@/HDrpManagement/serviceImprovement/components/serviceImprovement/index'
|
|
|
import edit from './edit'
|
|
|
+import refundOrder from '@/components/dialogTemplate/index2'
|
|
|
export default {
|
|
|
- name: "detail",
|
|
|
+ name: "detail2",
|
|
|
components:{
|
|
|
serviceApplication,
|
|
|
serviceWorkOrder,
|
|
|
edit,
|
|
|
- serviceImprovement
|
|
|
+ serviceImprovement,
|
|
|
+ refundOrder
|
|
|
},
|
|
|
data(){
|
|
|
return {
|
|
|
@@ -125,15 +159,28 @@ export default {
|
|
|
team_name:'',
|
|
|
team_phone_number:'',
|
|
|
userid:JSON.parse(sessionStorage.getItem('active_account')).userid,
|
|
|
- someUserid:false
|
|
|
+ someUserid:false,
|
|
|
+ form:{
|
|
|
+ userid_analysis:''
|
|
|
+ },
|
|
|
+ rules:{
|
|
|
+ userid_analysis: [
|
|
|
+ {
|
|
|
+ required: true,
|
|
|
+ message: this.$t("请选择改善单真因分析人"),
|
|
|
+ trigger: "change",
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ },
|
|
|
+ personList:[]
|
|
|
}
|
|
|
},
|
|
|
methods:{
|
|
|
- async queryMainData(id){
|
|
|
+ async queryMainData(){
|
|
|
const res = await this.$api.requested({
|
|
|
"id": 2026013111234002,
|
|
|
"content": {
|
|
|
- "sa_service_improvementid": id
|
|
|
+ "sa_service_improvementid": this.$route.query.id
|
|
|
},
|
|
|
})
|
|
|
this.mainData = res.data
|
|
|
@@ -146,6 +193,14 @@ export default {
|
|
|
},
|
|
|
changeDataStructure(){
|
|
|
let that = this
|
|
|
+ if (this.mainData.workorderinfo.team && this.mainData.workorderinfo.team.length > 0){
|
|
|
+ this.mainData.workorderinfo.team.forEach(item => {
|
|
|
+ if (item.isleader){
|
|
|
+ this.team_name = item.name
|
|
|
+ this.team_phone_number = item.phonenumber
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
this.mainAreaData = [
|
|
|
{label:'改善单号',value:this.mainData.billno},
|
|
|
{label:'改善类别',value:this.mainData.type},
|
|
|
@@ -158,6 +213,51 @@ export default {
|
|
|
{label:'工单号',value:this.mainData.billno_workorder},
|
|
|
{label:'申请单号',value:this.mainData.billno_serviceorder},
|
|
|
{label:'客诉大类',value:this.mainData.class2},
|
|
|
+ {
|
|
|
+ label: "问题描述",
|
|
|
+ value: this.mainData.workorderinfo.reason,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "企业名称",
|
|
|
+ value: this.mainData.workorderinfo.enterprisename,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "省市县",
|
|
|
+ value:
|
|
|
+ this.mainData.workorderinfo.province + this.mainData.workorderinfo.city + this.mainData.workorderinfo.county,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "详细地址",
|
|
|
+ value: this.mainData.workorderinfo.address,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "应用系统",
|
|
|
+ value: this.mainData.workorderinfo.class1,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "工单类型",
|
|
|
+ value: this.mainData.workorderinfo.type,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "服务负责人",
|
|
|
+ value: this.team_name,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "业务员",
|
|
|
+ value: this.mainData.workorderinfo.saler_name,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "业务员手机号",
|
|
|
+ value: this.mainData.workorderinfo.saler_phonenumber,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "项目名称",
|
|
|
+ value: this.mainData.workorderinfo.projectname,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "历史服务次数",
|
|
|
+ value: this.tool.qtyShow(this.mainData.workorderinfo.historicalservicesqty),
|
|
|
+ },
|
|
|
{label:'分析负责人',value:this.mainData.name_analysis},
|
|
|
{label:'真因分析时间',value:this.mainData.submitdate},
|
|
|
{label:'方案编辑人',value:this.mainData.name_charge},
|
|
|
@@ -171,7 +271,8 @@ export default {
|
|
|
style:function () {
|
|
|
let style = that.tool.getStatusColor(that.mainData.result)
|
|
|
return style
|
|
|
- }},
|
|
|
+ }
|
|
|
+ },
|
|
|
{label:'创建时间',value:this.mainData.createdate},
|
|
|
{label:'完成时间',value:this.mainData.finishdate},
|
|
|
{label:'备注',value:this.mainData.remarks},
|
|
|
@@ -184,6 +285,42 @@ export default {
|
|
|
this.$router.replace({path:'/serveBillDetail',query:{id:id,rowindex:rowindex,tabIndex:tabIndex}})
|
|
|
this.queryMainData(id)
|
|
|
},
|
|
|
+ async dialogShow(){
|
|
|
+ this.form.userid_analysis = ''
|
|
|
+ const res = await this.$api.requested({
|
|
|
+ id:20230213143003,
|
|
|
+ content:{
|
|
|
+ isExport:0,
|
|
|
+ pageNumber:1,
|
|
|
+ pageSize:9999999
|
|
|
+ }
|
|
|
+ })
|
|
|
+ if (res.code == 0){
|
|
|
+ this.tool.showMessage(res,()=>{})
|
|
|
+ }else {
|
|
|
+ this.personList = res.data
|
|
|
+ }
|
|
|
+ },
|
|
|
+ onSubmit(){
|
|
|
+ this.$refs.form.validate(async (valid) => {
|
|
|
+ if (!valid) return false
|
|
|
+ const res = await this.$api.requested({
|
|
|
+ "content": {
|
|
|
+ "sa_service_improvementid": this.$route.query.id,
|
|
|
+ "userid_analysis": this.form.userid_analysis//userid
|
|
|
+ },
|
|
|
+ "id": "2026030414420602",
|
|
|
+ })
|
|
|
+ this.tool.showMessage(res,()=>{
|
|
|
+ this.$refs.refundOrderRef.dialogTableVisible = false
|
|
|
+ this.$refs.form.resetFields()
|
|
|
+ this.queryMainData()
|
|
|
+ })
|
|
|
+ })
|
|
|
+ },
|
|
|
+ onCancel(){
|
|
|
+ this.$refs.form.resetFields()
|
|
|
+ }
|
|
|
},
|
|
|
mounted() {
|
|
|
this.queryMainData()
|