qymljy 2 месяцев назад
Родитель
Сommit
e6ad5dbb81

+ 10 - 3
src/HDrpManagement/serveBill/modules/detail.vue

@@ -13,7 +13,10 @@
       :status="mainData.status"
       :delHide="mainData.status !== '新建' || submitDis"
       tags=""
-      :tabs="['服务申请','服务工单','服务改善']"
+      :tabs="tool.checkAuth($route.name,'linkedTicket') && !tool.checkAuth($route.name,'associatedImprovementOrder')?['服务申请','服务工单']:
+      !tool.checkAuth($route.name,'linkedTicket') && tool.checkAuth($route.name,'associatedImprovementOrder')?['服务申请','服务改善']:
+      tool.checkAuth($route.name,'linkedTicket') && tool.checkAuth($route.name,'associatedImprovementOrder')?['服务申请','服务工单','服务改善']:
+      ['服务申请']"
       @hrMain="hrMain"
       @pageChange="pageChange"
       @onEditSuccess="queryMainData($route.query.id)"
@@ -88,10 +91,14 @@
         <serviceApplication  ref="serviceApplicationRef" v-if="mainData" :mainData="mainData"></serviceApplication>
       </div>
       <div slot="slot1">
-        <serviceWorkOrder ref="serviceWorkOrderRef" v-if="mainData" :mainData="mainData" :nodes="nodes"
-                          :team_name="team_name" :team_phone_number="team_phone_number" :new-query="true"></serviceWorkOrder>
+        <div v-if="tool.checkAuth($route.name,'linkedTicket')">
+          <serviceWorkOrder ref="serviceWorkOrderRef" v-if="mainData" :mainData="mainData" :nodes="nodes"
+                            :team_name="team_name" :team_phone_number="team_phone_number" :new-query="true"></serviceWorkOrder>
+        </div>
+        <div v-else>服务改善</div>
       </div>
       <div slot="slot2">
+        服务改善
       </div>
     </basicDetails>
   </div>

+ 10 - 3
src/HDrpManagement/serveBillMag/modules/detail.vue

@@ -13,7 +13,10 @@
         :statusCheck="[{key:'status',value:'已受理'},{key:'status',value:'已中止'}]"
         :delHide="mainData.status !== '新建' || submitDis"
         tags=""
-        :tabs="['服务申请','服务工单','服务改善']"
+        :tabs="tool.checkAuth($route.name,'linkedTicket') && !tool.checkAuth($route.name,'associatedImprovementOrder')?['服务申请','服务工单']:
+        !tool.checkAuth($route.name,'linkedTicket') && tool.checkAuth($route.name,'associatedImprovementOrder')?['服务申请','服务改善']:
+        tool.checkAuth($route.name,'linkedTicket') && tool.checkAuth($route.name,'associatedImprovementOrder')?['服务申请','服务工单','服务改善']:
+        ['服务申请']"
         @hrMain="hrMain"
         @pageChange="pageChange"
         @onEditSuccess="queryMainData($route.query.id)">
@@ -71,10 +74,14 @@
         <serviceApplication  ref="serviceApplicationRef" v-if="mainData" :mainData="mainData"></serviceApplication>
       </div>
       <div slot="slot1">
-        <serviceWorkOrder ref="serviceWorkOrderRef" v-if="mainData" :mainData="mainData" :nodes="nodes"
-                          :team_name="team_name" :team_phone_number="team_phone_number" :new-query="true"></serviceWorkOrder>
+        <div v-if="tool.checkAuth($route.name,'linkedTicket')">
+          <serviceWorkOrder ref="serviceWorkOrderRef" v-if="mainData" :mainData="mainData" :nodes="nodes"
+                            :team_name="team_name" :team_phone_number="team_phone_number" :new-query="true"></serviceWorkOrder>
+        </div>
+        <div v-else>服务改善</div>
       </div>
       <div slot="slot2" >
+        服务改善
       </div>
     </basicDetails>
   </div>

+ 24 - 6
src/HDrpManagement/serveWorkBill/modules/detail.vue

@@ -9,10 +9,13 @@
       turnPageId="20221031141102"
       idname="sa_workorderid"
       ownertable="sa_workorder"
-      tabName="tab1"
+      :tabName="tool.checkAuth($route.name,'linkedApplication')?'tab1':'tab0'"
       SalesmanQ="不执行"
       tags=""
-      :tabs="['服务申请','服务工单','服务改善']"
+      :tabs="tool.checkAuth($route.name,'linkedApplication') && !tool.checkAuth($route.name,'associatedImprovementOrder')?['服务申请','服务工单']:
+      !tool.checkAuth($route.name,'linkedApplication') && tool.checkAuth($route.name,'associatedImprovementOrder')?['服务工单','服务改善']:
+      tool.checkAuth($route.name,'linkedApplication') && tool.checkAuth($route.name,'associatedImprovementOrder')?['服务申请','服务工单','服务改善']:
+      ['服务工单']"
       @pageChange="pageChange"
       @onEditSuccess="queryMainData($route.query.id)"
     >
@@ -128,12 +131,27 @@
 <!--        />-->
       </div>
       <div slot="slot0">
-        <serviceApplication  ref="serviceApplicationRef" v-if="mainData" :mainData="mainData" :newQuery="true"></serviceApplication>
+        <div v-if="tool.checkAuth($route.name,'linkedApplication')">
+          <serviceApplication  ref="serviceApplicationRef" v-if="mainData" :mainData="mainData" :newQuery="true"></serviceApplication>
+        </div>
+        <div v-else>
+          <serviceWorkOrder ref="serviceWorkOrderRef" v-if="mainData" :mainData="mainData" :nodes="nodes"
+                            :team_name="team_name" :team_phone_number="team_phone_number"
+          ></serviceWorkOrder>
+        </div>
       </div>
       <div slot="slot1">
-        <serviceWorkOrder ref="serviceWorkOrderRef" v-if="mainData" :mainData="mainData" :nodes="nodes"
-                          :team_name="team_name" :team_phone_number="team_phone_number"
-        ></serviceWorkOrder>
+        <div v-if="tool.checkAuth($route.name,'associatedImprovementOrder')">
+          服务改善
+        </div>
+        <div v-else>
+          <serviceWorkOrder ref="serviceWorkOrderRef" v-if="mainData" :mainData="mainData" :nodes="nodes"
+                            :team_name="team_name" :team_phone_number="team_phone_number"
+          ></serviceWorkOrder>
+        </div>
+      </div>
+      <div slot="slot2">
+        服务改善
       </div>
     </basicDetails>
   </div>

+ 85 - 0
src/HDrpManagement/serviceImprovement/components/serviceImprovement/index.vue

@@ -0,0 +1,85 @@
+<template>
+  <div>
+    <el-tabs type="border-card" v-model="activeName" @tab-click="handleClick">
+      <el-tab-pane label="真因分析" name="真因分析">{{$t(`真因分析`)}}</el-tab-pane>
+      <el-tab-pane label="改善方案" name="改善方案">{{$t(`改善方案`)}}</el-tab-pane>
+      <el-tab-pane label="方案执行" name="方案执行">{{$t(`方案执行`)}}</el-tab-pane>
+      <el-tab-pane label="影响产品范围" name="影响产品范围">{{$t(`影响产品范围`)}}</el-tab-pane>
+      <el-tab-pane label="改善单信息" name="改善单信息">
+        <detailInfo :more="true"  :data="detailInfo"></detailInfo>
+      </el-tab-pane>
+      <el-tab-pane label="关联改善单" name="关联改善单">{{$t(`关联改善单`)}}</el-tab-pane>
+    </el-tabs>
+  </div>
+</template>
+
+<script>
+import detailInfo from '@/components/detailInfo/index'
+export default {
+  name: "index",
+  props:['mainData'],
+  components:{detailInfo},
+  data(){
+    return {
+      activeName:'真因分析',
+      detailInfo:{},
+      internalData:{}
+    }
+  },
+  methods:{
+    handleClick(){
+      if (this.activeName == '改善单信息'){
+        this.changeDataStructure()
+      }
+    },
+    changeDataStructure(){
+      let that = this
+      this.internalData = { ...this.mainData }
+      this.detailInfo = [
+        {
+          title:'基本信息',
+          info:[
+            { label: "改善单号", value: this.internalData.billno },
+            { label: "改善类别", value: this.internalData.type },
+            { label: "状态", value: this.internalData.status,
+              style:function () {
+                let style = that.tool.getStatusColor(that.mainData.status)
+                return style
+              }
+            },
+            { label: "工单号", value: this.internalData.billno_workorder },
+            { label: "申请单号", value: this.internalData.billno_serviceorder },
+            {label:'客诉大类',value:this.internalData.class2},
+            {label:'分析负责人',value:this.internalData.name_analysis},
+            {label:'方案编辑人',value:this.internalData.name_charge},
+            {label:'责任部门',value:this.internalData.depname_charge},
+            {label:'方案发布人',value:this.internalData.sendby},
+            {label:'改善计划周期',value:this.internalData.planned_cycle},
+            {label:'改善实际周期',value:this.internalData.actual_cycle},
+            {label:'改善方案进度',value:Math.round((this.internalData.progress * 100) * 100)/100 + '%'},
+            {label:'改善结果',value:this.internalData.result},
+            {label:'备注',value:this.internalData.remarks},
+          ]
+        },
+        {
+          title:'系统信息',
+          info:[
+            {label:'创建时间',value:this.internalData.createdate},
+            {label:'最近编辑时间',value:this.internalData.changedate},
+            {label:'提交分析时间',value:this.internalData.submitdate},
+            {label:'方案发布时间',value:this.internalData.senddate},
+            {label:'最近编辑人',value:this.internalData.changeby},
+            {label:'完成时间',value:this.internalData.finishdate},
+            {label:'中止时间',value:this.internalData.abortdate},
+            {label:'中止原因',value:this.internalData.abortreason},
+          ]
+        }
+      ]
+    }
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 3 - 0
src/HDrpManagement/serviceImprovement/index.vue

@@ -155,6 +155,9 @@
               $t(scope.data.column.data[[scope.data.column.columnname]])
             }}</span>
         </div>
+        <div v-else-if="scope.data.column.columnname == 'progress'">
+          {{Math.round((scope.data.column.data.progress * 100) * 100)/100 + '%'}}
+        </div>
         <div v-else>
           {{
             scope.data.column.data[[scope.data.column.columnname]]

+ 28 - 7
src/HDrpManagement/serviceImprovement/modules/detail.vue

@@ -8,10 +8,13 @@
         turnPageId="2026013111220102"
         idname="sa_service_improvementid"
         ownertable="sa_service_improvement"
-        tabName="tab2"
+        :tabName="tool.checkAuth($route.name,'linkedApplication') && tool.checkAuth($route.name,'linkedTicket')?'tab2':!tool.checkAuth($route.name,'linkedApplication') && !tool.checkAuth($route.name,'linkedTicket')?'tab0':'tab1'"
         SalesmanQ="不执行"
         tags=""
-        :tabs="['服务申请','服务工单','服务改善']"
+        :tabs="tool.checkAuth($route.name,'linkedApplication') && !tool.checkAuth($route.name,'linkedTicket')?['服务申请','服务改善']:
+        !tool.checkAuth($route.name,'linkedApplication') && tool.checkAuth($route.name,'linkedTicket')?['服务工单','服务改善']:
+        tool.checkAuth($route.name,'linkedApplication') && tool.checkAuth($route.name,'linkedTicket')?['服务申请','服务工单','服务改善']:
+        ['服务改善']"
         @pageChange="pageChange"
         @onEditSuccess="queryMainData($route.query.id)">
       <div slot="customOperation">
@@ -74,13 +77,28 @@
         />
       </div>
       <div slot="slot0" >
-        <serviceApplication  ref="serviceApplicationRef" v-if="mainData" :mainData="mainData" :new-query="true"></serviceApplication>
+        <div v-if="!tool.checkAuth($route.name,'linkedApplication') && !tool.checkAuth($route.name,'linkedTicket')">
+          <serviceImprovement :mainData="mainData"></serviceImprovement>
+        </div>
+        <div v-if="tool.checkAuth($route.name,'linkedApplication')">
+          <serviceApplication  ref="serviceApplicationRef" v-if="mainData" :mainData="mainData" :new-query="true"></serviceApplication>
+        </div>
+        <div v-if="tool.checkAuth($route.name,'linkedTicket') && !tool.checkAuth($route.name,'linkedApplication')">
+          <serviceWorkOrder ref="serviceWorkOrderRef" v-if="mainData" :mainData="mainData" :nodes="nodes"
+                            :team_name="team_name" :team_phone_number="team_phone_number" :new-query="true"></serviceWorkOrder>
+        </div>
       </div>
       <div slot="slot1">
-        <serviceWorkOrder ref="serviceWorkOrderRef" v-if="mainData" :mainData="mainData" :nodes="nodes"
-                          :team_name="team_name" :team_phone_number="team_phone_number" :new-query="true"></serviceWorkOrder>
+        <div v-if="tool.checkAuth($route.name,'linkedTicket')">
+          <serviceWorkOrder ref="serviceWorkOrderRef" v-if="mainData" :mainData="mainData" :nodes="nodes"
+                            :team_name="team_name" :team_phone_number="team_phone_number" :new-query="true"></serviceWorkOrder>
+        </div>
+        <div v-else>
+          <serviceImprovement :mainData="mainData"></serviceImprovement>
+        </div>
       </div>
       <div slot="slot2" >
+        <serviceImprovement :mainData="mainData"></serviceImprovement>
       </div>
     </basicDetails>
   </div>
@@ -89,13 +107,15 @@
 <script>
 import serviceApplication from "@/HDrpManagement/serveBillMag/components/serviceApplication";
 import serviceWorkOrder from '@/HDrpManagement/serveWorkBill/modules/serviceWorkOrder/index';
+import serviceImprovement from '@/HDrpManagement/serviceImprovement/components/serviceImprovement/index'
 import edit from './edit'
 export default {
   name: "detail",
   components:{
     serviceApplication,
     serviceWorkOrder,
-    edit
+    edit,
+    serviceImprovement
   },
   data(){
     return {
@@ -140,12 +160,13 @@ export default {
         {label:'客诉大类',value:this.mainData.class2},
         {label:'分析负责人',value:this.mainData.name_analysis},
         {label:'真因分析时间',value:this.mainData.submitdate},
+        {label:'方案编辑人',value:this.mainData.name_charge},
         {label:'责任部门',value:this.mainData.depname_charge},
         {label:'方案发布人',value:this.mainData.sendby},
         {label:'方案发布时间',value:this.mainData.senddate},
         {label:'改善计划周期',value:this.mainData.planned_cycle},
         {label:'改善实际周期',value:this.mainData.actual_cycle},
-        {label:'改善方案进度',value:this.mainData.progress},
+        {label:'改善方案进度',value:Math.round((this.mainData.progress * 100) * 100)/100 + '%'},
         {label:'改善结果',value:this.mainData.result},
         {label:'创建时间',value:this.mainData.createdate},
         {label:'完成时间',value:this.mainData.finishdate},