Procházet zdrojové kódy

-修改了预约票的申请流程,具体内容为:
现在用户主管可以修改并且重新提交申请(有可能更换装置主管,重新走流程)
现在装置主管可以进行修改,例如新增或者删除作业票内容,不影响后续流程(不重新走流程)
现在装置工程师和装置经理可以作废流程了
现在只有当天的特殊动火和受限空间的作业类型需要装置经理签字

jiangbiao před 3 roky
rodič
revize
07e9426843

+ 36 - 81
master/src/main/java/com/ruoyi/project/invoice/controller/TApproveReserveInvoiceController.java

@@ -25,7 +25,6 @@ import org.activiti.engine.TaskService;
 import org.activiti.engine.impl.identity.Authentication;
 import org.activiti.engine.runtime.ProcessInstance;
 import org.activiti.engine.task.Task;
-import org.apache.commons.collections.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
@@ -127,9 +126,9 @@ public class TApproveReserveInvoiceController extends BaseController {
         String applyUser = "";
         for (String id : ids) {
             TInvoiceBookingworkticket invoice = workService.getById(id);
-            applyUser=invoice.getCreaterCode().toString();
-            invoice.setStatus(0L);
-            workService.updateById(invoice);
+            applyUser = invoice.getCreaterCode().toString();
+//            invoice.setStatus(0L);
+//            workService.updateById(invoice);
             switch (invoice.getWorkArea()) {
                 case "310裂解区":
                 case "700开关锅炉":
@@ -165,60 +164,38 @@ public class TApproveReserveInvoiceController extends BaseController {
 //                    devSupId = "10081";
                     break;
             }
-            if (DateUtils.dateTime(invoice.getCreatedate()).equals(DateUtils.dateTime(invoice.getWorkStartTime()))){
-                tApproveReserveInvoice.setIsToday("1");
-            }else {
-                tApproveReserveInvoice.setIsToday("0");
-            }
-            List<TInvoiceWorkcontent> workcontents = invoiceWorkcontentMapper.selectTInvoiceWorkcontentBybookingticketId(Long.valueOf(invoice.getId()));
-            for (TInvoiceWorkcontent tInvoiceWorkcontent : workcontents) {
-               /* if (tInvoiceWorkcontent.getWorkType()==1L||tInvoiceWorkcontent.getWorkType()==15L){
-                    tApproveReserveInvoice.setIsSpecial("1");
-                    break;
-                }
-                else{
-                    tApproveReserveInvoice.setIsSpecial("0");
-                }*/
-            }
         }
         //开始工作流、监听
-        Authentication.setAuthenticatedUserId(applyUser);
+        Authentication.setAuthenticatedUserId(applyUser);//设置当前申请人
         Map<String, Object> variables = new HashMap<>();
         variables.put("applyUser", applyUser);
         variables.put("yhzgusers", tApproveReserveInvoice.getUserSupId().toString());//用户主管
         variables.put("zzzgusers", devSupId);//装置主管
         SysUser sysUser = new SysUser();
         sysUser.setDeptId(103L);
-        if ("1".equals(tApproveReserveInvoice.getIsToday())) {
-            String devEngineerId="";
-            sysUser.setRoleId(20003L);//装置工程师
-            List<SysUser> sysUsers = iSysUserService.selectUserListByRoleAndDept(sysUser);
-            if (CollectionUtils.isNotEmpty(sysUsers))  {
-                for (SysUser user : sysUsers) {
-                    devEngineerId+=user.getUserId()+",";
-                }
-                devEngineerId = devEngineerId.substring(0, devEngineerId.length() - 1);
-                variables.put("zzgcsusers", devEngineerId);//装置工程师
-            }else{
-                return AjaxResult.error("该部门不存在装置工程师");
-            }
+
+        //添加装置工程师
+        String devEngineerId = "";
+        sysUser.setRoleId(20003L);//装置工程师
+        List<SysUser> sysUsers = iSysUserService.selectUserListByRoleAndDept(sysUser);
+        for (SysUser user : sysUsers) {
+            devEngineerId += user.getUserId() + ",";
         }
-        if ("1".equals(tApproveReserveInvoice.getIsSpecial())) {
-            String managerconId="";
-            sysUser.setRoleId(20013L);//装置副经理
-            List<SysUser> sysUsers = iSysUserService.selectUserListByRoleAndDept(sysUser);
-            sysUser.setRoleId(20006L);//装置经理
-            sysUsers.addAll(iSysUserService.selectUserListByRoleAndDept(sysUser));
-            if (CollectionUtils.isNotEmpty(sysUsers)) {
-                for (SysUser user : sysUsers) {
-                    managerconId+=user.getUserId()+",";
-                }
-                managerconId = managerconId.substring(0, managerconId.length() - 1);
-                variables.put("zzjlusers", managerconId);//装置经理
-            }else{
-                return AjaxResult.error("该部门不存在装置经理");
-            }
+        devEngineerId = devEngineerId.substring(0, devEngineerId.length() - 1);
+        variables.put("zzgcsusers", devEngineerId);
+
+        //添加装置经理(副)
+        String managerconId = "";
+        sysUser.setRoleId(20013L);//装置副经理
+        sysUsers = iSysUserService.selectUserListByRoleAndDept(sysUser);
+        sysUser.setRoleId(20006L);//装置经理
+        sysUsers.addAll(iSysUserService.selectUserListByRoleAndDept(sysUser));
+        for (SysUser user : sysUsers) {
+            managerconId += user.getUserId() + ",";
         }
+        managerconId = managerconId.substring(0, managerconId.length() - 1);
+        variables.put("zzjlusers", managerconId);
+
         variables.put("yhzgTaskCreateListener", new YhzgTaskCreateListener());//用户主管监听发送邮件
         variables.put("zzzgTaskCreateListener", new ZzzgTaskCreateListener());//装置主管监听发送邮件
         variables.put("zzgcsTaskCreateListener", new ZzgcsTaskCreateListener());//装置工程师监听发送邮件
@@ -263,52 +240,30 @@ public class TApproveReserveInvoiceController extends BaseController {
         }
         Map<String, Object> param = new HashMap<>();
         List<TInvoiceWorkcontent> workcontents = invoiceWorkcontentMapper.selectTInvoiceWorkcontentBybookingticketId(Long.valueOf(invoice.getInvoiceId()));
-        if (task.getName().equals("用户主管签字确认")) {
-            invoice.setDevSupId(getUserId());
-            invoiceBook.setStatus(2L);
-        }
         if (task.getName().equals("装置主管签字确认")) {
             invoice.setDevSupId(getUserId());
-            if (DateUtils.dateTime(invoiceBook.getCreatedate()).equals(DateUtils.dateTime(invoiceBook.getWorkStartTime()))) {
-                invoiceBook.setStatus(5L);
-            }else {
-                for (TInvoiceWorkcontent workcontent : workcontents) {
-                /*    if (workcontent.getWorkType() == 1 || workcontent.getWorkType() == 15) {
-                        invoiceBook.setStatus(6L);
-                        break;
-                    } else {
-                        invoiceBook.setStatus(3L);
-                    }*/
-                }
-            }
         }
         if (task.getName().equals("装置工程师签字确认")) {
             invoice.setDevEngineerId(getUserId());
-            for (TInvoiceWorkcontent workcontent : workcontents) {
-             /*   if (workcontent.getWorkType() == 1 || workcontent.getWorkType() == 15) {
-                    invoiceBook.setStatus(6L);
-                    break;
-                } else {
-                    invoiceBook.setStatus(3L);
-                }*/
-            }
         }
         if (task.getName().equals("装置经理签字确认")) {
             invoice.setManagerconId(getUserId());
-            invoiceBook.setStatus(3L);
         }
         if (DateUtils.dateTime(invoiceBook.getCreatedate()).equals(DateUtils.dateTime(invoiceBook.getWorkStartTime()))) {
             param.put("istoday", "1");
+            out:for (TInvoiceWorkcontent workcontent : workcontents) {
+                for (String workType : workcontent.getWorkType().split(",")) {
+                    if (workType.equals("1")||workType.equals("15")) {
+                        param.put("isspecial", "1");
+                        break out;
+                    } else {
+                        param.put("isspecial", "0");
+                    }
+                }
+            }
         } else {
             param.put("istoday", "0");
-        }
-        for (TInvoiceWorkcontent workcontent : workcontents) {
-          /*  if (workcontent.getWorkType() == 1 || workcontent.getWorkType() == 15) {
-                param.put("isspecial", "1");
-                break;
-            } else {
-                param.put("isspecial", "0");
-            }*/
+            param.put("isspecial", "0");
         }
         param.put("condition", devTask.getCondition());
         ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();

+ 19 - 35
master/src/main/java/com/ruoyi/project/invoice/controller/TInvoiceBookingworkticketController.java

@@ -1,57 +1,41 @@
 package com.ruoyi.project.invoice.controller;
 
-import java.io.*;
-import java.text.SimpleDateFormat;
-import java.time.LocalDateTime;
-import java.time.format.DateTimeFormatter;
-import java.util.*;
-
 import com.alibaba.fastjson.JSON;
 import com.deepoove.poi.XWPFTemplate;
-import com.deepoove.poi.data.PictureRenderData;
 import com.deepoove.poi.data.Pictures;
 import com.deepoove.poi.data.Texts;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
-import com.ruoyi.common.utils.ServletUtils;
 import com.ruoyi.common.utils.SpringContextUtils;
 import com.ruoyi.common.utils.file.FileUploadUtils;
-import com.ruoyi.common.utils.spring.SpringUtils;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.framework.aspectj.lang.annotation.Log;
+import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
 import com.ruoyi.framework.config.RuoYiConfig;
-import com.ruoyi.framework.security.LoginUser;
-import com.ruoyi.framework.security.service.TokenService;
-import com.ruoyi.project.invoice.domain.*;
+import com.ruoyi.framework.web.controller.BaseController;
+import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.framework.web.page.TableDataInfo;
+import com.ruoyi.project.invoice.domain.TApproveReserveInvoice;
+import com.ruoyi.project.invoice.domain.TInvoiceBookingworkticket;
+import com.ruoyi.project.invoice.domain.TInvoiceWorkcontent;
 import com.ruoyi.project.invoice.service.ITApproveReserveInvoiceService;
-import com.ruoyi.project.invoice.service.ITInvoiceContractorService;
-import com.ruoyi.project.invoice.service.ITInvoiceWorkcontentService;
-import com.ruoyi.project.sems.domain.ParamData;
-import com.ruoyi.project.sems.domain.TSpecdevCc;
+import com.ruoyi.project.invoice.service.ITInvoiceBookingworkticketService;
 import com.ruoyi.project.system.domain.SysDictData;
 import com.ruoyi.project.system.domain.SysUser;
 import com.ruoyi.project.system.service.ISysDictTypeService;
 import com.ruoyi.project.system.service.ISysUserService;
 import io.jsonwebtoken.lang.Assert;
-import org.apache.poi.hssf.usermodel.HSSFCellStyle;
-import org.apache.poi.ss.formula.functions.T;
 import org.apache.poi.ss.usermodel.*;
 import org.apache.poi.xssf.streaming.SXSSFWorkbook;
-import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.ruoyi.framework.aspectj.lang.annotation.Log;
-import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
-import com.ruoyi.project.invoice.service.ITInvoiceBookingworkticketService;
-import com.ruoyi.framework.web.controller.BaseController;
-import com.ruoyi.framework.web.domain.AjaxResult;
-import com.ruoyi.common.utils.poi.ExcelUtil;
-import com.ruoyi.framework.web.page.TableDataInfo;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import java.io.*;
+import java.text.SimpleDateFormat;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.*;
 
 /**
  * 预约作业票台账Controller
@@ -374,7 +358,7 @@ public class TInvoiceBookingworkticketController extends BaseController
     /**
      * 获取预约作业票台账详细信息
      */
-    @PreAuthorize("@ss.hasPermi('invoice:bookingworkticket:query')")
+//    @PreAuthorize("@ss.hasPermi('invoice:bookingworkticket:query')")
     @GetMapping(value = "/{id}")
     public AjaxResult getInfo(@PathVariable("id") Long id)
     {

+ 7 - 0
master/src/main/java/com/ruoyi/project/listener/invoiceApprove/YhzgTaskCreateListener.java

@@ -6,7 +6,9 @@ import com.github.stuxuhai.jpinyin.PinyinHelper;
 import com.ruoyi.common.sendEmail.IMailService;
 import com.ruoyi.common.utils.SpringContextUtils;
 import com.ruoyi.project.invoice.domain.TApproveReserveInvoice;
+import com.ruoyi.project.invoice.domain.TInvoiceBookingworkticket;
 import com.ruoyi.project.invoice.service.ITApproveReserveInvoiceService;
+import com.ruoyi.project.invoice.service.ITInvoiceBookingworkticketService;
 import com.ruoyi.project.system.service.ISysUserService;
 import org.activiti.engine.delegate.DelegateTask;
 import org.activiti.engine.delegate.TaskListener;
@@ -29,6 +31,11 @@ public class YhzgTaskCreateListener implements Serializable, TaskListener {
         ISysUserService sysUserService = (ISysUserService) SpringContextUtils.getBean("sysUserService");
         IMailService mailService = (IMailService) SpringContextUtils.getBean("mailService");
         TApproveReserveInvoice approveEntity = tApproveReserveInvoiceService.selectTApproveReserveInvoiceById(Long.parseLong(id)) ;
+
+        ITInvoiceBookingworkticketService tInvoiceBookingworkticketService = (ITInvoiceBookingworkticketService) SpringContextUtils.getBean("tInvoiceBookingworkticketService");
+        TInvoiceBookingworkticket bookingworkticket = tInvoiceBookingworkticketService.getById(approveEntity.getInvoiceId());
+        bookingworkticket.setStatus(0L);
+        tInvoiceBookingworkticketService.updateTInvoiceBookingworkticket(bookingworkticket);
         logger.info("approveEntity:" + approveEntity);
         //发送邮件
         try {

+ 7 - 0
master/src/main/java/com/ruoyi/project/listener/invoiceApprove/ZzgcsTaskCreateListener.java

@@ -6,7 +6,9 @@ import com.github.stuxuhai.jpinyin.PinyinHelper;
 import com.ruoyi.common.sendEmail.IMailService;
 import com.ruoyi.common.utils.SpringContextUtils;
 import com.ruoyi.project.invoice.domain.TApproveReserveInvoice;
+import com.ruoyi.project.invoice.domain.TInvoiceBookingworkticket;
 import com.ruoyi.project.invoice.service.ITApproveReserveInvoiceService;
+import com.ruoyi.project.invoice.service.ITInvoiceBookingworkticketService;
 import com.ruoyi.project.system.service.ISysUserService;
 import org.activiti.engine.delegate.DelegateTask;
 import org.activiti.engine.delegate.TaskListener;
@@ -29,6 +31,11 @@ public class ZzgcsTaskCreateListener implements Serializable, TaskListener {
         ISysUserService sysUserService = (ISysUserService) SpringContextUtils.getBean("sysUserService");
         IMailService mailService = (IMailService) SpringContextUtils.getBean("mailService");
         TApproveReserveInvoice approveEntity = tApproveReserveInvoiceService.selectTApproveReserveInvoiceById(Long.parseLong(id));
+
+        ITInvoiceBookingworkticketService tInvoiceBookingworkticketService = (ITInvoiceBookingworkticketService) SpringContextUtils.getBean("tInvoiceBookingworkticketService");
+        TInvoiceBookingworkticket bookingworkticket = tInvoiceBookingworkticketService.getById(approveEntity.getInvoiceId());
+        bookingworkticket.setStatus(5L);
+        tInvoiceBookingworkticketService.updateTInvoiceBookingworkticket(bookingworkticket);
         logger.info("approveEntity:" + approveEntity);
         //发送邮件
         try {

+ 7 - 0
master/src/main/java/com/ruoyi/project/listener/invoiceApprove/ZzjlTaskCreateListener.java

@@ -6,7 +6,9 @@ import com.github.stuxuhai.jpinyin.PinyinHelper;
 import com.ruoyi.common.sendEmail.IMailService;
 import com.ruoyi.common.utils.SpringContextUtils;
 import com.ruoyi.project.invoice.domain.TApproveReserveInvoice;
+import com.ruoyi.project.invoice.domain.TInvoiceBookingworkticket;
 import com.ruoyi.project.invoice.service.ITApproveReserveInvoiceService;
+import com.ruoyi.project.invoice.service.ITInvoiceBookingworkticketService;
 import com.ruoyi.project.system.service.ISysUserService;
 import org.activiti.engine.delegate.DelegateTask;
 import org.activiti.engine.delegate.TaskListener;
@@ -29,6 +31,11 @@ public class ZzjlTaskCreateListener implements Serializable, TaskListener {
         ISysUserService sysUserService = (ISysUserService) SpringContextUtils.getBean("sysUserService");
         IMailService mailService = (IMailService) SpringContextUtils.getBean("mailService");
         TApproveReserveInvoice approveEntity = tApproveReserveInvoiceService.selectTApproveReserveInvoiceById(Long.parseLong(id));
+
+        ITInvoiceBookingworkticketService tInvoiceBookingworkticketService = (ITInvoiceBookingworkticketService) SpringContextUtils.getBean("tInvoiceBookingworkticketService");
+        TInvoiceBookingworkticket bookingworkticket = tInvoiceBookingworkticketService.getById(approveEntity.getInvoiceId());
+        bookingworkticket.setStatus(6L);
+        tInvoiceBookingworkticketService.updateTInvoiceBookingworkticket(bookingworkticket);
         logger.info("approveEntity:" + approveEntity);
         //发送邮件
         try {

+ 7 - 0
master/src/main/java/com/ruoyi/project/listener/invoiceApprove/ZzzgTaskCreateListener.java

@@ -6,7 +6,9 @@ import com.github.stuxuhai.jpinyin.PinyinHelper;
 import com.ruoyi.common.sendEmail.IMailService;
 import com.ruoyi.common.utils.SpringContextUtils;
 import com.ruoyi.project.invoice.domain.TApproveReserveInvoice;
+import com.ruoyi.project.invoice.domain.TInvoiceBookingworkticket;
 import com.ruoyi.project.invoice.service.ITApproveReserveInvoiceService;
+import com.ruoyi.project.invoice.service.ITInvoiceBookingworkticketService;
 import com.ruoyi.project.system.service.ISysUserService;
 import org.activiti.engine.delegate.DelegateTask;
 import org.activiti.engine.delegate.TaskListener;
@@ -29,6 +31,11 @@ public class ZzzgTaskCreateListener implements Serializable, TaskListener {
         ISysUserService sysUserService = (ISysUserService) SpringContextUtils.getBean("sysUserService");
         IMailService mailService = (IMailService) SpringContextUtils.getBean("mailService");
         TApproveReserveInvoice approveEntity = tApproveReserveInvoiceService.selectTApproveReserveInvoiceById(Long.parseLong(id));
+
+        ITInvoiceBookingworkticketService tInvoiceBookingworkticketService = (ITInvoiceBookingworkticketService) SpringContextUtils.getBean("tInvoiceBookingworkticketService");
+        TInvoiceBookingworkticket bookingworkticket = tInvoiceBookingworkticketService.getById(approveEntity.getInvoiceId());
+        bookingworkticket.setStatus(2L);
+        tInvoiceBookingworkticketService.updateTInvoiceBookingworkticket(bookingworkticket);
         logger.info("approveEntity:" + approveEntity);
         //发送邮件
         try {

+ 57 - 48
ui/src/views/approve/approveDetail/invoice-detail.vue

@@ -44,9 +44,9 @@
       <el-button v-if="this.taskForm.taskId == ''" @click="visible = false">{{ $t('message.return') }}</el-button>
       <el-button v-if="!this.taskForm.taskId == ''" type="primary"
                  @click="dataFormSubmit(1)">{{ $t('通过') }}</el-button>
-      <el-button v-if="!this.taskForm.taskId == ''&&isUserMag" type="success"
-                 @click="updateDetail">{{ $t('修改并重新申请') }}</el-button>
-      <el-button v-if="!this.taskForm.taskId == ''&&isUserMag" type="danger" @click="dataFormSubmit(0)"
+      <el-button v-if="!this.taskForm.taskId == ''&&(this.isDevSup||this.isUserMag)" type="success"
+                 @click="updateDetail">{{ $t('修改') }}</el-button>
+      <el-button v-if="!this.taskForm.taskId == ''" type="danger" @click="dataFormSubmit(0)"
                  :disabled="submitDisabled">{{ $t('作废') }}</el-button>
     </span>
       <div>
@@ -177,7 +177,7 @@
           <el-row>
             <el-col :span="6">
               <el-form-item label="作业类型" prop="workType">
-                <el-select v-model="ruleForm.workType" placeholder="请选择作业类型" clearable size="small">
+                <el-select v-model="ruleForm.workType" placeholder="请选择作业类型" multiple clearable size="small">
                   <el-option
                     v-for="dict in workTypeOptions"
                     :key="dict.dictValue"
@@ -218,7 +218,8 @@
       <el-button @click="reduce" :disabled="flag">移除一条</el-button>
 
       <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="confirmDetail">确 定</el-button>
+        <el-button v-if="this.isUserMag" type="primary" @click="confirmDetail(1)">保存并重新申请</el-button>
+        <el-button v-else type="primary" @click="confirmDetail">保存</el-button>
         <el-button @click="detailCancel">取 消</el-button>
       </div>
     </el-dialog>
@@ -287,6 +288,7 @@ export default {
       form: [],
       approveForm: {},
       isUserMag: false,
+      isDevSup: false,
       loading: true,
       bookingworkticketVisible: false,
       // 总条数
@@ -454,7 +456,7 @@ export default {
     },
     // 字典翻译
     workTypeFormat(row, column) {
-      return this.selectDictLabel(this.workTypeOptions, row.workType);
+      return this.selectDictLabels(this.workTypeOptions, row.workType);
     },
     // 字典翻译
     riskLevelFormat(row, column) {
@@ -526,6 +528,7 @@ export default {
         this.dataForm.files = response.data.files
         this.devList = response.data.devList
         this.isUserMag = this.devList[0].status == 0 ? true : false;
+        this.isDevSup = this.devList[0].status == 2 ? true : false;
         this.dataForm.delayDate = response.data.delayDate
         this.dataForm.delayReason = response.data.delayReason
         this.dataForm.delayMeasure = response.data.delayMeasure
@@ -740,6 +743,15 @@ export default {
           st.push(parseInt(arr[arrInt]))
         }
         this.form.floorLocation = st
+        for (let j = 0; j < this.ruleForm.length; j++) {
+          let arr1 = this.ruleForm[j].workType.split(",")
+          let st1 = []
+          // 将字符串数组的每一项转换成Number,生成一个新的数组
+          for (var arrInt in arr1) {
+            st1.push(parseInt(arr1[arrInt]))
+          }
+          this.ruleForm[j].workType = st1
+        }
 
         this.ruleForm.length = response.data.tInvoiceWorkcontentList.length
       });
@@ -752,7 +764,7 @@ export default {
         });
       });
     },
-    confirmDetail() {
+    confirmDetail(val) {
 
       let arr = []
       const basicForm = this.$refs.form;
@@ -778,51 +790,48 @@ export default {
       this.submitDisabled = true
       this.taskForm.condition = 0
       this.taskForm.govFiles = this.dataForm.files
-      handleApprove(this.taskForm).then(response => {
-        this.submitDisabled = false
-        this.msgSuccess(this.$t('处理成功'));
-        //多重校验
-        Promise.all(arr.map(this.getFormPromise)).then(res => {
-          const validateResult = res.every(item => !!item);
-          if (validateResult) {
-            if (this.form.id != null) {
-              this.form.tInvoiceWorkcontentList = this.ruleForm
-              this.form.floorLocation = this.form.floorLocation.join(',')
-              updateBookingworkticket(this.form).then(response => {
-                this.approveForm.invoiceId = this.form.id
-                var nowTime = this.getNowFormatDate()
-                //判断是否涉及 动火 和当日
-                if (this.form.workStartTime && this.form.workStartTime === nowTime) {
-                  this.approveForm.isToday = 1;
-                } else {
-                  this.approveForm.isToday = 0;
-                }
-                for (let i = 0; i < this.ruleForm.length; i++) {
-                  if (this.ruleForm[i].workType === 1 || this.ruleForm[i].workType === 15) {
-                    this.approveForm.isSpecial = 1
-                    break;
-                  } else {
-                    this.approveForm.isSpecial = 0
-                  }
-                }
-                this.approveForm.userSupId = this.form.userMg
-
-                addInvoice(this.approveForm).then(response => {
-                  // this.msgSuccess(this.$t('预约成功'));
-                  this.msgSuccess("已提交申请");
 
-                  this.open = false;
-                  this.visible = false;
-                  this.$emit('refreshDataList')
-                })
-                this.msgSuccess("修改成功");
-              });
+      //多重校验
+      Promise.all(arr.map(this.getFormPromise)).then(res => {
+        const validateResult = res.every(item => !!item);
+        if (validateResult) {
+          if (this.form.id != null) {
+            this.form.tInvoiceWorkcontentList = this.ruleForm
+            this.form.floorLocation = this.form.floorLocation.join(',')
+            for (let b = 0; b < this.ruleForm.length; b++) {
+              this.ruleForm[b].workType = this.ruleForm[b].workType.join(',')
             }
-          } else {
-            this.msgError("表单校验未通过,每项申请内容都必填");
+            updateBookingworkticket(this.form).then(response => {
+              this.approveForm.invoiceId = this.form.id
+              var nowTime = this.getNowFormatDate()
+              this.approveForm.userSupId = this.form.userMg
+              if (val === 1) {
+                handleApprove(this.taskForm).then(response => {
+                  this.submitDisabled = false
+                  this.msgSuccess(this.$t('处理成功'));
+                  addInvoice(this.approveForm).then(response => {
+                    // this.msgSuccess(this.$t('预约成功'));
+                    this.msgSuccess("已提交申请");
+
+                    this.open = false;
+                    this.visible = false;
+                    this.$emit('refreshDataList')
+                  })
+                });
+              } else {
+                getInvoice(this.taskForm.businessKey).then(response => {
+                  this.devList=response.data.devList;
+                });
+                this.open = false;
+              }
+              this.msgSuccess("修改成功");
+            });
           }
-        });
+        } else {
+          this.msgError("表单校验未通过,每项申请内容都必填");
+        }
       });
+
       this.$nextTick(function () {
         this.comment = ''
       })

+ 18 - 25
ui/src/views/invoice/bookingworkticket/index.vue

@@ -574,7 +574,7 @@ export default {
       //设置表格高度对应屏幕高度
       this.$nextTick(() => {
           this.clientHeight = document.body.clientHeight -250
-       
+
       })
          this.getNowFormatDate()
        this.getList();
@@ -664,13 +664,6 @@ export default {
       }
       this.$nextTick(() => {
         this.approveForm.invoiceId=row.bookingticketId;
-        if (row.bookingworkticket.workStartTime && row.bookingworkticket.workStartTime === row.createdate){
-              this.approveForm.isToday = 1;
-        }
-         //判断是否涉及 动火 和当日
-          if (row.workType===1||row.workType===15){
-            this.approveForm.isSpecial = 1
-          }
         this.approveForm.userSupId=row.bookingworkticket.userMg;
 
         addInvoice(this.approveForm).then(response => {
@@ -960,7 +953,7 @@ export default {
               for(let b=0;b<this.ruleForm.length;b++){
               this.ruleForm[b].workType=this.ruleForm[b].workType.join(',')
               }
-              
+
             updateBookingworkticket(this.form).then(response => {
 
               this.msgSuccess("修改成功");
@@ -980,19 +973,19 @@ export default {
             var nowTime = this.getNowFormatDate()
 
              //判断是否涉及 动火 和当日
-            if ( this.form.workStartTime &&  this.form.workStartTime ===  nowTime){
-              this.approveForm.isToday = 1;
-            }else{
-                   this.approveForm.isToday = 0;
-            }
-              for (let i = 0; i < this.ruleForm.length; i++) {
-                if (this.ruleForm[i].workType === 1 || this.ruleForm[i].workType === 15) {
-                  this.approveForm.isSpecial = 1
-                  break;
-                } else {
-                  this.approveForm.isSpecial = 0
-                }
-              }
+            // if ( this.form.workStartTime &&  this.form.workStartTime ===  nowTime){
+            //   this.approveForm.isToday = 1;
+            // }else{
+            //        this.approveForm.isToday = 0;
+            // }
+              // for (let i = 0; i < this.ruleForm.length; i++) {
+              //   if (this.ruleForm[i].workType === 1 || this.ruleForm[i].workType === 15) {
+              //     this.approveForm.isSpecial = 1
+              //     break;
+              //   } else {
+              //     this.approveForm.isSpecial = 0
+              //   }
+              // }
              this.approveForm.userSupId=this.form.userMg
 
              addInvoice(this.approveForm).then(response => {
@@ -1058,16 +1051,16 @@ export default {
       putData.reservationNumber=this.reservationNumber
        updateWorkcontent(putData).then(response => {
           //    console.log(response.row)
-            
+
           });
            assion(this.associationParams.bookingticketId).then(response => {
             this.getList()
           });
 
-         this.msgSuccess("请求成功");       
+         this.msgSuccess("请求成功");
       },
       //校验表单中作业内容是否重复
-  
+
         //合并单元格
       mergeMethod({ row, column, rowIndex, columnIndex }) {
       // console.log(row)