فهرست منبع

详情返回 是否有按钮权限

lyhzzz 2 سال پیش
والد
کامیت
bc8b9bf168

+ 15 - 1
src/main/java/com/fdkankan/sale/controller/RepairInfoController.java

@@ -1,5 +1,6 @@
 package com.fdkankan.sale.controller;
 import java.math.BigDecimal;
+import java.security.interfaces.ECKey;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -43,8 +44,21 @@ public class RepairInfoController extends BaseController{
         if(StringUtils.isBlank(repairId)){
             throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS);
         }
+        SysUser user = getUser();
+        if(user == null){
+            throw new BusinessException(ResultCode.USER_NOT_LOGIN);
+        }
+        RepairDetailVo detailVo = repairInfoService.getDetailsByRepairId(repairId);
+        if(user.getRoleId() == 1){
+            detailVo.setHaveButton(1);
+        }else {
+            if(detailVo.getRepairerVo() != null){
+                Integer status = detailVo.getRepairerVo().getStatus();
+                Integer haveButton = repairInfoService.getHaveButton(detailVo,status,user);
+            }
+        }
 
-        return ResultData.ok(repairInfoService.getDetailsByRepairId(repairId));
+        return ResultData.ok();
     }
 
     @GetMapping("/process")

+ 5 - 1
src/main/java/com/fdkankan/sale/controller/RepairPersonnelController.java

@@ -7,6 +7,7 @@ import com.fdkankan.sale.common.ResultData;
 import com.fdkankan.sale.entity.OrderReceiving;
 import com.fdkankan.sale.entity.PriceList;
 import com.fdkankan.sale.entity.Repair;
+import com.fdkankan.sale.entity.SysUser;
 import com.fdkankan.sale.exception.BusinessException;
 import com.fdkankan.sale.service.IPartService;
 import com.fdkankan.sale.service.IRepairService;
@@ -41,7 +42,10 @@ public class RepairPersonnelController extends BaseController{
      */
     @PostMapping("/repairOrderList")
     public ResultData repairerOrderList(@RequestBody RepairParam param){
-
+        SysUser user = getUser();
+        if(user != null && user.getRoleId() != 1){
+            param.setUserId(user.getId());
+        }
         return ResultData.ok(repairPersonnelService.repairerOrderList(param));
     }
 

+ 5 - 1
src/main/java/com/fdkankan/sale/controller/RepairSupplyController.java

@@ -3,6 +3,7 @@ package com.fdkankan.sale.controller;
 
 import com.fdkankan.sale.common.ResultData;
 import com.fdkankan.sale.entity.Repair;
+import com.fdkankan.sale.entity.SysUser;
 import com.fdkankan.sale.service.IPartService;
 import com.fdkankan.sale.service.IRepairService;
 import com.fdkankan.sale.service.impl.RepairSupplyService;
@@ -36,7 +37,10 @@ public class RepairSupplyController extends BaseController{
      */
     @PostMapping("/supplyOrderList")
     public ResultData supplyOrderList(@RequestBody RepairParam param){
-
+        SysUser user = getUser();
+        if(user != null && user.getRoleId() != 1){
+            param.setUserId(user.getId());
+        }
         return ResultData.ok(repairSupplyService.supplyOrderList(param));
     }
 

+ 5 - 1
src/main/java/com/fdkankan/sale/controller/RepairTestController.java

@@ -2,6 +2,7 @@ package com.fdkankan.sale.controller;
 
 
 import com.fdkankan.sale.common.ResultData;
+import com.fdkankan.sale.entity.SysUser;
 import com.fdkankan.sale.service.IRepairTestService;
 import com.fdkankan.sale.service.impl.RepairTesterService;
 import com.fdkankan.sale.vo.request.RepairParam;
@@ -32,7 +33,10 @@ public class RepairTestController extends BaseController{
 
     @PostMapping("/repairTesterList")
     public ResultData testOrderList(@RequestBody RepairParam param){
-
+        SysUser user = getUser();
+        if(user != null && user.getRoleId() != 1){
+            param.setUserId(user.getId());
+        }
         return ResultData.ok(repairTestService.repairTesterList(param));
     }
 

+ 23 - 0
src/main/java/com/fdkankan/sale/service/impl/RepairInfoService.java

@@ -51,6 +51,8 @@ public class RepairInfoService {
     IRepairInvoiceService repairInvoiceService;
     @Autowired
     IRepairRegisterLogService repairRegisterLogService;
+    @Autowired
+    ISysRoleService roleService;
 
 
     public RepairDetailVo getDetailsByRepairId(String repairId) {
@@ -212,4 +214,25 @@ public class RepairInfoService {
         vo.setConfirmPriceListDate(priceData2);
         return vo;
     }
+
+    public Integer getHaveButton(RepairDetailVo detailVo, Integer status, SysUser user) {
+        switch (status){
+            case 10 :
+            case 20 :
+            case 30 :
+            case 40 :
+            case 80 :
+            case 100 :
+                return  detailVo.getRepairerVo().getSysUserId().equals(user.getId()) ? 1 : 0;
+            case 50 :
+            case 90 :
+            case 91 :
+                return detailVo.getOrderReceivingVo().getSupplyAdminId().equals(user.getId()) ? 1 : 0;
+            case 60 :
+                return detailVo.getOrderReceivingVo().getRepairManId().equals(user.getId()) ? 1 : 0;
+            case 70 :
+                return detailVo.getOrderReceivingVo().getTesterId().equals(user.getId()) ? 1 : 0;
+        }
+        return 0;
+    }
 }

+ 2 - 0
src/main/java/com/fdkankan/sale/vo/response/RepairDetailVo.java

@@ -42,4 +42,6 @@ public class RepairDetailVo {
 
     private List<RepairRegisterVo> repairRegisterVoList;
 
+    private Integer haveButton = 0;   // 0无,1有
+
 }

+ 9 - 0
src/main/resources/mapper/sale/RepairMapper.xml

@@ -50,6 +50,9 @@
         <foreach item="status" collection="param.statusList" open="(" separator="," close=")">
             #{status}
         </foreach>
+        <if test="param.userId !=null ">
+            and o.supply_admin_id = #{param.userId}
+        </if>
         <if test="param.repairId != null and param.repairId != ''">
             and r.repair_id like  concat ('%',#{param.repairId},'%')
         </if>
@@ -77,6 +80,9 @@
         <foreach item="status" collection="param.statusList" open="(" separator="," close=")">
             #{status}
         </foreach>
+        <if test="param.userId !=null ">
+            and o.repair_man_id = #{param.userId}
+        </if>
         <if test="param.repairId != null and param.repairId != ''">
             and r.repair_id like  concat ('%',#{param.repairId},'%')
         </if>
@@ -100,6 +106,9 @@
         <foreach item="status" collection="param.statusList" open="(" separator="," close=")">
             #{status}
         </foreach>
+        <if test="param.userId !=null ">
+            and o.tester_id = #{param.userId}
+        </if>
         <if test="param.repairId != null and param.repairId != ''">
             and r.repair_id like  concat ('%',#{param.repairId},'%')
         </if>