wangmengwei 3 nedēļas atpakaļ
vecāks
revīzija
a386cb05f2

+ 2 - 0
ruoyi-ui-gongdan/package.json

@@ -37,6 +37,8 @@
   },
   "dependencies": {
     "@riophae/vue-treeselect": "0.4.0",
+    "@vue-office/docx": "^1.6.3",
+    "@vue/composition-api": "^1.7.2",
     "axios": "0.28.1",
     "clipboard": "2.0.8",
     "core-js": "3.37.1",

+ 8 - 0
ruoyi-ui-gongdan/src/api/system/info.js

@@ -59,3 +59,11 @@ export function delInfo(orderId) {
     method: 'get'
   })
 }
+
+export function dzgd(orderId) {
+  return request({
+    url: '/work/info/dzgd/' + orderId,
+    method: 'get'
+  })
+}
+

+ 8 - 3
ruoyi-ui-gongdan/src/views/gongdan/gongdanxq/index.vue

@@ -398,7 +398,7 @@
 // import { listTime, getTime, delTime, addTime, updateTime } from "@/api/system/time";
 // import { listDept} from "@/api/system/dept";
 // import { listCheckPointManage, getCheckPointManage, delCheckPointManage, addCheckPointManage, updateCheckPointManage,addCheckPointManageadd } from "@/api/wuguan/checkPointManage";
-import { listInfo, getInfo, delInfo, addInfo, updateInfo } from "@/api/system/info"
+import { listInfo, getInfo, delInfo, addInfo, updateInfo,dzgd } from "@/api/system/info"
 import Decimal from 'decimal.js';
 export default {
   name: "Time",
@@ -763,8 +763,13 @@ export default {
             console.log(this.form,this.shangwu,7)
             // return
             updateInfo(this.form).then(response => {
-              this.$modal.msgSuccess("操作成功");
-              this.$router.go(-1)
+              dzgd(this.form.orderId).then(response => {
+                this.$modal.msgSuccess("操作成功");
+                this.$router.go(-1)
+                // this.open = false;
+                // this.getList();
+              });
+
               // this.open = false;
               // this.getList();
             });

+ 18 - 8
ruoyi-ui-gongdan/src/views/gongdan/gongdanzhipai/index.vue

@@ -363,7 +363,7 @@
                   </div>
       					</div>
       	</div>
-        <div class="collapse" @click.stop="" style="border-top: 1px  solid #E6E6E6;" v-if="chakn.workOrderFjgd!=null">
+        <div class="collapse" @click.stop="" style="border-top: 1px  solid #E6E6E6;" v-if="chakn.workOrderFjgd!=null && chakn.serviceProgress >1">
         			<div class="bsers" style="padding-top: 20px;" >
         			 <div>
         			   <p> <img src="../../../assets/images/wenjian.png" alt="" style="width: 20px;height: 20px;"></p>
@@ -371,8 +371,8 @@
         			 </div>
         			  <div>
         			              <!-- + baseUrl -->
-        			              <p @click="yuangl(defaultSettings.urls + baseUrl + item.url)" style="color: #658CF8;margin-right: 10px;font-size: 14px;cursor: pointer;"><img src="../../../assets/images/icon_xq_yl.png" alt="" style="width: 15px;height: 10px;">预览</p>
-        			              <p @click="downloadFileg(defaultSettings.urls+ baseUrl  + item.url,item.name)" style="color: #658CF8; font-size: 14px;cursor: pointer;"><img src="../../../assets/images/icon_xq_xz.png" alt=""  style="width: 15px;height: 15px;">下载</p>
+        			              <p @click="yuanglw(defaultSettings.urls + baseUrl + chakn.workOrderFjgd.url)" style="color: #658CF8;margin-right: 10px;font-size: 14px;cursor: pointer;"><img src="../../../assets/images/icon_xq_yl.png" alt="" style="width: 15px;height: 10px;">预览</p>
+        			              <p @click="downloadFileg(defaultSettings.urls+ baseUrl  + chakn.workOrderFjgd.url,chakn.workOrderFjgd.name)" style="color: #658CF8; font-size: 14px;cursor: pointer;"><img src="../../../assets/images/icon_xq_xz.png" alt=""  style="width: 15px;height: 15px;">下载</p>
         			            </div>
         			</div>
 
@@ -429,6 +429,10 @@
             </el-carousel-item>
       </el-carousel>
      </el-dialog>
+     <el-dialog title="查看文件" :visible.sync="openw" width="840px" append-to-body class="boet">
+        <VueOfficeDocx :src="docx" />
+      </el-carousel>
+     </el-dialog>
 
 
   </div>
@@ -438,8 +442,10 @@
 // import 'videojs-flash'
 import { listInfo, getInfo, delInfo, addInfo, updateInfo,jd,listStaffManageNoPage } from "@/api/system/info"
 const defaultSettings = require("@/settings.js");
+import VueOfficeDocx from '@vue-office/docx';
 import download from 'downloadjs'
 export default {
+  components: { VueOfficeDocx },
   name: "Repair",
     dicts: ['baoxiutype', 'work_order_evaluation', 'shelf_life', 'work_order_type', 'sys_yes_no', 'service_progress', 'order_placement'],
   data() {
@@ -478,6 +484,8 @@ export default {
       // 是否显示弹出层
       open: false,
       openz:false,
+      openw:false,
+      docx:'',
       houseInfoLise:[],
       defaultSettings:defaultSettings,
       baseUrl: process.env.VUE_APP_BASE_API,
@@ -755,7 +763,7 @@ export default {
         }else{
           this.chakn.titke = '无'
         }
-        if(this.chakn.workOrderFjXqList.length !=0){
+        if(this.chakn.workOrderFjXqList!=null && this.chakn.workOrderFjXqList.length !=0){
           this.chakn.imgelis=[]
           this.chakn.workOrderFjXqList.filter(rou=>{
             if (!/\.(png|PNG|jpg|JPG)$/.test(rou.url)) {
@@ -840,14 +848,13 @@ export default {
     },
     // 预览文件
     yuangl(row){
-
       if (!/\.(pdf|PDF|png|PNG|jpg|JPG)$/.test(row)) {
               // 不是pdf格式
                 window.open(
                   " https://view.officeapps.live.com/op/view.aspx?src=" + row,
                   "_blank"
                 );
-              } else  {
+              } else{
                 console.log(this.chakn.imgelis)
                 if (!/\.(png|PNG|jpg|JPG)$/.test(row)) {
                     // pdf 格式
@@ -856,9 +863,12 @@ export default {
                             // 图片格式
                           this.openc = true
                         }
-
               }
-
+    },
+    yuanglw(row){
+      console.log(row)
+      this.docx = row
+      this.openw = true
     },
     /** 提交按钮 */
     submitForm: function() {

+ 17 - 8
ruoyi-ui-gongdan/src/views/gongdan/gongdanzhipaime/index.vue

@@ -363,7 +363,7 @@
                   </div>
       					</div>
       	</div>
-        <div class="collapse" @click.stop="" style="border-top: 1px  solid #E6E6E6;" v-if="chakn.workOrderFjgd!=null">
+        <div class="collapse" @click.stop="" style="border-top: 1px  solid #E6E6E6;" v-if="chakn.workOrderFjgd!=null && chakn.serviceProgress >1">
         			<div class="bsers" style="padding-top: 20px;" >
         			 <div>
         			   <p> <img src="../../../assets/images/wenjian.png" alt="" style="width: 20px;height: 20px;"></p>
@@ -371,8 +371,8 @@
         			 </div>
         			  <div>
         			              <!-- + baseUrl -->
-        			              <p @click="yuangl(defaultSettings.urls + baseUrl + item.url)" style="color: #658CF8;margin-right: 10px;font-size: 14px;cursor: pointer;"><img src="../../../assets/images/icon_xq_yl.png" alt="" style="width: 15px;height: 10px;">预览</p>
-        			              <p @click="downloadFileg(defaultSettings.urls+ baseUrl  + item.url,item.name)" style="color: #658CF8; font-size: 14px;cursor: pointer;"><img src="../../../assets/images/icon_xq_xz.png" alt=""  style="width: 15px;height: 15px;">下载</p>
+        			              <p @click="yuanglw(defaultSettings.urls + baseUrl + chakn.workOrderFjgd.url)" style="color: #658CF8;margin-right: 10px;font-size: 14px;cursor: pointer;"><img src="../../../assets/images/icon_xq_yl.png" alt="" style="width: 15px;height: 10px;">预览</p>
+        			              <p @click="downloadFileg(defaultSettings.urls+ baseUrl  + chakn.workOrderFjgd.url,chakn.workOrderFjgd.name)" style="color: #658CF8; font-size: 14px;cursor: pointer;"><img src="../../../assets/images/icon_xq_xz.png" alt=""  style="width: 15px;height: 15px;">下载</p>
         			            </div>
         			</div>
 
@@ -429,6 +429,10 @@
             </el-carousel-item>
       </el-carousel>
      </el-dialog>
+     <el-dialog title="查看文件" :visible.sync="openw" width="640px" append-to-body class="boet">
+        <VueOfficeDocx :src="docx" />
+      </el-carousel>
+     </el-dialog>
 
 
   </div>
@@ -438,8 +442,10 @@
 // import 'videojs-flash'
 import { listInfo, getInfo, delInfo, addInfo, updateInfo,jd,listStaffManageNoPage } from "@/api/system/info"
 const defaultSettings = require("@/settings.js");
+import VueOfficeDocx from '@vue-office/docx';
 import download from 'downloadjs'
 export default {
+  components: { VueOfficeDocx },
   name: "Repair",
     dicts: ['baoxiutype', 'work_order_evaluation', 'shelf_life', 'work_order_type', 'sys_yes_no', 'service_progress', 'order_placement'],
   data() {
@@ -478,6 +484,8 @@ export default {
       // 是否显示弹出层
       open: false,
       openz:false,
+      openw:false,
+      docx:'',
       houseInfoLise:[],
       defaultSettings:defaultSettings,
       baseUrl: process.env.VUE_APP_BASE_API,
@@ -756,7 +764,7 @@ export default {
         }else{
           this.chakn.titke = '无'
         }
-        if(this.chakn.workOrderFjXqList.length !=0){
+        if(this.chakn.workOrderFjXqList!=null && this.chakn.workOrderFjXqList.length !=0){
           this.chakn.imgelis=[]
           this.chakn.workOrderFjXqList.filter(rou=>{
             if (!/\.(png|PNG|jpg|JPG)$/.test(rou.url)) {
@@ -841,14 +849,13 @@ export default {
     },
     // 预览文件
     yuangl(row){
-
       if (!/\.(pdf|PDF|png|PNG|jpg|JPG)$/.test(row)) {
               // 不是pdf格式
                 window.open(
                   " https://view.officeapps.live.com/op/view.aspx?src=" + row,
                   "_blank"
                 );
-              } else  {
+              } else{
                 console.log(this.chakn.imgelis)
                 if (!/\.(png|PNG|jpg|JPG)$/.test(row)) {
                     // pdf 格式
@@ -857,9 +864,11 @@ export default {
                             // 图片格式
                           this.openc = true
                         }
-
               }
-
+    },
+    yuanglw(row){
+      this.docx = row
+      this.openw = true
     },
     /** 提交按钮 */
     submitForm: function() {

+ 15 - 3
ruoyi-ui-gongdan/src/views/gongdan/gongdanzhipaipj/index.vue

@@ -351,7 +351,7 @@
                   </div>
       					</div>
       	</div>
-        <div class="collapse" @click.stop="" style="border-top: 1px  solid #E6E6E6;" v-if="chakn.workOrderFjgd!=null">
+        <div class="collapse" @click.stop="" style="border-top: 1px  solid #E6E6E6;" v-if="chakn.workOrderFjgd!=null && chakn.serviceProgress >1">
         			<div class="bsers" style="padding-top: 20px;" >
         			 <div>
         			   <p> <img src="../../../assets/images/wenjian.png" alt="" style="width: 20px;height: 20px;"></p>
@@ -359,8 +359,8 @@
         			 </div>
         			  <div>
         			              <!-- + baseUrl -->
-        			              <p @click="yuangl(defaultSettings.urls + baseUrl + item.url)" style="color: #658CF8;margin-right: 10px;font-size: 14px;cursor: pointer;"><img src="../../../assets/images/icon_xq_yl.png" alt="" style="width: 15px;height: 10px;">预览</p>
-        			              <p @click="downloadFileg(defaultSettings.urls+ baseUrl  + item.url,item.name)" style="color: #658CF8; font-size: 14px;cursor: pointer;"><img src="../../../assets/images/icon_xq_xz.png" alt=""  style="width: 15px;height: 15px;">下载</p>
+        			              <p @click="yuanglw(defaultSettings.urls + baseUrl + chakn.workOrderFjgd.url)" style="color: #658CF8;margin-right: 10px;font-size: 14px;cursor: pointer;"><img src="../../../assets/images/icon_xq_yl.png" alt="" style="width: 15px;height: 10px;">预览</p>
+        			              <p @click="downloadFileg(defaultSettings.urls+ baseUrl  + chakn.workOrderFjgd.url,chakn.workOrderFjgd.name)" style="color: #658CF8; font-size: 14px;cursor: pointer;"><img src="../../../assets/images/icon_xq_xz.png" alt=""  style="width: 15px;height: 15px;">下载</p>
         			            </div>
         			</div>
 
@@ -410,6 +410,10 @@
 
       </div>
     </el-dialog>
+    <el-dialog title="查看文件" :visible.sync="openw" width="640px" append-to-body class="boet">
+       <VueOfficeDocx :src="docx" />
+     </el-carousel>
+    </el-dialog>
 
   </div>
 </template>
@@ -418,8 +422,10 @@
 // import 'videojs-flash'
 import { listInfo, getInfo, delInfo, addInfo, updateInfo,jd,listStaffManageNoPage } from "@/api/system/info"
 const defaultSettings = require("@/settings.js");
+import VueOfficeDocx from '@vue-office/docx';
 import download from 'downloadjs'
 export default {
+  components: { VueOfficeDocx },
   name: "Repair",
     dicts: ['baoxiutype', 'work_order_evaluation', 'shelf_life', 'work_order_type', 'sys_yes_no', 'service_progress', 'order_placement'],
   data() {
@@ -457,6 +463,8 @@ export default {
       // 是否显示弹出层
       open: false,
       openz:false,
+      openw:false,
+      docx:'',
       houseInfoLise:[],
       defaultSettings:defaultSettings,
       baseUrl: process.env.VUE_APP_BASE_API,
@@ -802,6 +810,10 @@ export default {
               }
 
     },
+    yuanglw(row){
+      this.docx = row
+      this.openw = true
+    },
     /** 提交按钮 */
     submitForm: function() {
       this.$refs["form"].validate(valid => {

+ 6 - 6
ruoyi-ui-gongdan/src/views/gongdan/kehurenyuan/index.vue

@@ -152,9 +152,9 @@
 
                      <!-- <img v-if="item.isnum == true" src="../../../assets/images/icon_htgl_kp_gx.png" alt="" style="width: 35px;height: 35px;position: absolute;bottom: 0;right: 0;"> -->
                      <div class="bortt tongty" style="justify-content: space-between; margin-top: 0;">
-                        <p style="cursor: pointer;" @click="handleUpdate(item)"><span  >查看</span></span>  </p>
+                        <!-- <p style="cursor: pointer;" @click="handleUpdate(item)"><span  >查看</span></span>  </p> -->
                        <!-- <span @click="handleUpdatef(item)">查看</span> -->
-                       <p  v-hasPermi="['basic:info:remove']" style="color:red;cursor: pointer;" @click="handleDelete(item)">删除  </p>
+                       <p  v-hasPermi="['basic:info:remove']" style="color:red;cursor: pointer; width: 100%;" @click="handleDelete(item)">删除  </p>
                      </div>
                     </div>
                   </el-col>
@@ -458,7 +458,7 @@ export default {
         },
     // 多选框选中数据
        handleSelectionChange(selection) {
-         this.ids = selection.map(item => item.staffId)
+         this.ids = selection.map(item => item.id)
          this.single = selection.length!==1
          this.multiple = !selection.length
        },
@@ -471,7 +471,7 @@ export default {
         /** 修改按钮操作 */
         handleUpdate(row) {
           this.reset()
-          const staffId = row.staffId || this.ids
+          const staffId = row.id || this.ids
           getStaffManage(staffId).then(response => {
             this.form = response.data
             this.open = true
@@ -483,7 +483,7 @@ export default {
 
           this.$refs["form"].validate(valid => {
             if (valid) {
-              if (this.form.staffId != null) {
+              if (this.form.id != null) {
                 updateStaffManage(this.form).then(response => {
                   this.$modal.msgSuccess("修改成功")
                   this.open = false
@@ -501,7 +501,7 @@ export default {
         },
         /** 删除按钮操作 */
         handleDelete(row) {
-          const staffIds = row.staffId || this.ids
+          const staffIds = row.id || this.ids
           this.$modal.confirm('是否确认删除人员管理编号为"' + staffIds + '"的数据项?').then(function() {
             return delStaffManage(staffIds)
           }).then(() => {

+ 41 - 2
ruoyi-ui-gongdan/src/views/index.vue

@@ -465,7 +465,7 @@
               </div>
 
                     <span class="text_128">客户工单</span>
-                    <div :class="item == 2? 'group_18 group_18it flex-col' : 'group_18 flex-col'" v-for="(item,index) in  infoList" :key="index">
+                    <div :class="{'co77b flex-col group_18':item.type==1,' group_18 co06b flex-col':item.type==2,' group_18 cofbb flex-col':item.type==3,' group_18 coafb flex-col':item.type==4,'group_18 coafsb flex-col':item.type==5,'group_18 coafssb flex-col':item.type==6,}"  v-for="(item,index) in  infoList" :key="index">
                       <div class="group_19 flex-row justify-between">
                         <span class="text_129">{{item.unitName == null ? '暂无数据' : item.unitName}}</span>
                         <img
@@ -531,7 +531,8 @@
                         />
                         <div class="text-group_5">
                           <span class="text_132">服务类型:</span>
-                          <div class="text_133" style="color: #5470C6;"><dict-tag :options="dict.type.work_order_type" :value="item.type"/></div>
+                          <div class="text_133" :class="{'co77':item.type==1,'co06':item.type==2,'cofb':item.type==3,'coaf':item.type==4,'coafs':item.type==5,'coafss':item.type==6,}">
+                            <dict-tag :options="dict.type.work_order_type" :value="item.type"/></div>
                         </div>
                       </div>
 
@@ -4685,5 +4686,43 @@ button:active {
     background: #00A06E !important;
     border-radius: 2px !important;
   }
+  .co77{
+   color: #779AF9 !important;
+
+  }
+  .co06{
+    color: #AF88B8 !important;
+  }
+  .cofb{
+    color: #FFA20C !important;
+  }
+  .coaf{
+    color: #5470C6 !important;
+  }
+  .coafs{
+    color: #00B278 !important;
+  }
+  .coafss{
+    color: #FF6969 !important;
+  }
+  .co77{
+   color: #779AF9 !important;
+
+  }
+  .co06b{
+    border-color: #AF88B8 !important;
+  }
+  .cofbb{
+    border-color: #FFA20C !important;
+  }
+  .coafb{
+    border-color: #5470C6 !important;
+  }
+  .coafsb{
+    border-color: #00B278 !important;
+  }
+  .coafssb{
+    border-color: #FF6969 !important;
+  }
 </style>