qymljy пре 3 месеци
родитељ
комит
75e3afba33

+ 91 - 8
src/HDrpManagement/serveWorkBill/modules/checkBill/add.vue

@@ -9,21 +9,73 @@
     <el-drawer
         :title="$t('新建确认单')"
         :visible.sync="drawerVisible"
-        size="700px"
+        size="85%"
         direction="rtl"
         append-to-body
         @close="onClose">
-      <div class="drawer__panel" style="margin-bottom: -10px">
-        <el-descriptions :title="$t(`单据信息`)">
-          <el-descriptions-item :label="$t(`服务申请单号`)"><span style="color: #666">{{$t()}}</span></el-descriptions-item>
+      <div class="drawer__panel" style="margin-bottom: -10px" v-if="dataInfo.workorder">
+        <el-descriptions :title="$t(`单据信息`)" >
+          <el-descriptions-item :label="$t(`服务申请单号`)"><span style="color: #666">{{$t(dataInfo.workorder.servicebillno)}}</span></el-descriptions-item>
+          <el-descriptions-item :label="$t(`项目名称`)"><span style="color: #666">{{$t(dataInfo.workorder.projectname)}}</span></el-descriptions-item>
+          <el-descriptions-item :label="$t(`是否有偿服务`)"><span style="color: #666">{{paidServiceAmount > 0 ? $t('是') : $t('否')}}</span></el-descriptions-item>
+          <el-descriptions-item :label="$t(`是否质保期内`)"><span style="color: #666">{{inqualityguaranteeperiod == 1 ? $t('是') : $t('否')}}</span></el-descriptions-item>
+          <el-descriptions-item :label="$t(`申请原因`)"><span style="color: #666">{{$t(dataInfo.reason)}}</span></el-descriptions-item>
         </el-descriptions>
         <el-descriptions :title="$t(`应用信息`)">
-          <el-descriptions-item :label="$t(`服务申请单号`)"><span style="color: #666">kooriookami</span></el-descriptions-item>
+          <el-descriptions-item :label="$t(`应用系统`)"><span style="color: #666">{{$t(dataInfo.workorder.class1)}}</span></el-descriptions-item>
+          <el-descriptions-item :label="$t(`客诉大类`)"><span style="color: #666">{{$t(dataInfo.workorder.class2)}}</span></el-descriptions-item>
+          <el-descriptions-item :label="$t(`服务方式`)"><span style="color: #666">{{$t(dataInfo.workorder.type)}}</span></el-descriptions-item>
+        </el-descriptions>
+        <el-descriptions :title="$t(`客户信息`)">
+          <el-descriptions-item :label="$t(`企业名称`)"><span style="color: #666">{{$t(dataInfo.workorder.abbreviation)}}</span></el-descriptions-item>
+          <el-descriptions-item :label="$t(`联系方式`)"><span style="color: #666">{{$t(dataInfo.workorder.scenecontactphonenumber)}}</span></el-descriptions-item>
+          <el-descriptions-item :label="$t(`服务地址`)"><span style="color: #666">{{$t(dataInfo.workorder.province + dataInfo.workorder.city + dataInfo.workorder.county + dataInfo.workorder.address)}}</span></el-descriptions-item>
         </el-descriptions>
       </div>
+      <div style="height: 10px;background: #f5f5f5"></div>
+      <div style="margin: 10px;font-weight: bold;font-size: 16px">产品</div>
+      <div class="drawer__panel" style="margin-bottom: -10px" v-if="dataInfo.trainertitems">
+        <tableDetailLayout
+            :layout="tablecols"
+            :data="dataInfo.trainertitems"
+            :opwidth="200"
+            :width="true"
+            :custom="true">
+          <template v-slot:customcol="scope">
+            <div v-if="scope.column.columnname === 'nominalpressure'">
+              {{tool.nominalPressureSet(scope.column.data[scope.column.columnname])}}
+            </div>
+            <div v-else>
+              {{
+                $t(scope.column.data[[scope.column.columnname]])
+                    ? $t(scope.column.data[[scope.column.columnname]])
+                    : "--"
+              }}
+            </div>
+          </template>
+        </tableDetailLayout>
+      </div>
+      <div style="height: 10px;background: #f5f5f5"></div>
+      <div style="margin: 10px;font-weight: bold;font-size: 16px">评价</div>
       <div class="drawer__panel" style="margin-bottom: -10px">
-        2222
+        <div style="display: flex;justify-content: space-between">
+          <div style="display: flex;justify-content: left">
+            <div style="color: #999;font-size: 14px;margin-right: 10px">反应速度:</div>
+            <el-rate v-model="mainData.responsescore"></el-rate>
+          </div>
+          <div style="display: flex;justify-content: left">
+            <div style="color: #999;font-size: 14px;margin-right: 10px">配合态度:</div>
+            <el-rate v-model="mainData.attitudescore"></el-rate>
+          </div>
+          <div style="display: flex;justify-content: left">
+            <div style="color: #999;font-size: 14px;margin-right: 10px">满意态度:</div>
+            <el-rate v-model="mainData.satisfaction"></el-rate>
+          </div>
+        </div>
       </div>
+      <div style="height: 10px;background: #f5f5f5"></div>
+      <div style="margin: 10px;font-weight: bold;font-size: 16px">客户签字</div>
+      <div class="drawer__panel" style="margin-bottom: -10px"></div>
     </el-drawer>
   </div>
 </template>
@@ -31,20 +83,43 @@
 <script>
 export default {
   name: "add",
-  props:["mainData"],
+  props:["mainData",'id'],
   data(){
     return {
-      drawerVisible:false
+      drawerVisible:false,
+      dataInfo:{},
+      paidServiceAmount:0,
+      inqualityguaranteeperiod:0,
+      height:'300px',
+      tablecols:''
     }
   },
   methods:{
     addBtn(){
       this.drawerVisible = true
+      this.infoData()
       console.log(this.mainData,'mainData数据')
     },
+    async infoData(){
+      const res = await this.$api.requested({
+        "id": "20230211105703",
+        "content": {
+          "sa_workorder_confirmationid": 0,
+          "sa_workorderid": this.$route.query.id,
+          "attitudescore": 0,
+          "responsescore": 0,
+        }
+      })
+      console.log(res.data,'data的数据')
+      this.dataInfo = res.data
+    },
     onClose(){
       this.drawerVisible = false
+      this.$emit('onSuccess')
     }
+  },
+  mounted() {
+    this.tablecols = this.tool.tabelCol(this.$route.name).serviceProductBillTable.tablecols
   }
 }
 </script>
@@ -54,4 +129,12 @@ export default {
   color: #999999;
   background-color: #fff;
 }
+/deep/ .el-rate__icon {
+  position: relative;
+  display: inline-block;
+  font-size: 24px;
+  margin-right: 6px;
+  color: #c0c4cc;
+  transition: .3s;
+}
 </style>

+ 1 - 1
src/HDrpManagement/serveWorkBill/modules/checkBill/index.vue

@@ -14,7 +14,7 @@
         clearable
       >
       </el-input>
-      <add :mainData="mainData"></add>
+      <add v-if="mainData.status != '待接单' && mainData.status != '待开始'" :mainData="mainData" @onSuccess="listData"></add>
     </div>
     <div style="margin-top: 15px">
       <tableLayout