diff --git a/sgzb-api/sgzb-api-system/src/main/java/com/bonus/sgzb/base/api/domain/LeaseOutDetails.java b/sgzb-api/sgzb-api-system/src/main/java/com/bonus/sgzb/base/api/domain/LeaseOutDetails.java index 546fe56..40c2e99 100644 --- a/sgzb-api/sgzb-api-system/src/main/java/com/bonus/sgzb/base/api/domain/LeaseOutDetails.java +++ b/sgzb-api/sgzb-api-system/src/main/java/com/bonus/sgzb/base/api/domain/LeaseOutDetails.java @@ -163,6 +163,8 @@ public class LeaseOutDetails implements Serializable { @ApiModelProperty(value = "数量出库 -> 操作前库存量") private Integer num; + /** 操作前库存 */ + private int preStoreNum; /** 操作后库存 */ private int postStoreNum; } \ No newline at end of file diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/RepairTestInputDto.java b/sgzb-api/sgzb-api-system/src/main/java/com/bonus/sgzb/base/api/domain/RepairTestInputDto.java similarity index 68% rename from sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/RepairTestInputDto.java rename to sgzb-api/sgzb-api-system/src/main/java/com/bonus/sgzb/base/api/domain/RepairTestInputDto.java index b6f3d62..eb01bd1 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/RepairTestInputDto.java +++ b/sgzb-api/sgzb-api-system/src/main/java/com/bonus/sgzb/base/api/domain/RepairTestInputDto.java @@ -1,4 +1,4 @@ -package com.bonus.sgzb.material.domain; +package com.bonus.sgzb.base.api.domain; import lombok.Data; @@ -29,4 +29,13 @@ public class RepairTestInputDto{ private String params; + /** 维修数量 */ + private int repairNum; + + /** 操作前库存 */ + private int preStoreNum; + + /** 操作后库存 */ + private int postStoreNum; + } diff --git a/sgzb-common/sgzb-common-log/src/main/java/com/bonus/sgzb/common/log/aspect/LogAspect.java b/sgzb-common/sgzb-common-log/src/main/java/com/bonus/sgzb/common/log/aspect/LogAspect.java index 46f2946..3580a31 100644 --- a/sgzb-common/sgzb-common-log/src/main/java/com/bonus/sgzb/common/log/aspect/LogAspect.java +++ b/sgzb-common/sgzb-common-log/src/main/java/com/bonus/sgzb/common/log/aspect/LogAspect.java @@ -261,9 +261,9 @@ public class LogAspect BmStorageLog bmStorageLog = new BmStorageLog(); bmStorageLog.setTypeId(Objects.isNull(maInputRecord.getTypeId()) ? 0 : maInputRecord.getTypeId().intValue()); bmStorageLog.setTypeName(maInputRecord.getMaCode()); - bmStorageLog.setPreStoreNum(Objects.isNull(maInputRecord.getNum()) ? 0: maInputRecord.getNum().intValue()); + bmStorageLog.setPostStoreNum(Objects.isNull(maInputRecord.getNum()) ? 0: maInputRecord.getNum().intValue()); bmStorageLog.setInNum(Objects.isNull(maInputRecord.getInputNum()) ? 0: maInputRecord.getInputNum().intValue()); - bmStorageLog.setPostStoreNum(bmStorageLog.getPreStoreNum() + bmStorageLog.getInNum()); + bmStorageLog.setPreStoreNum(bmStorageLog.getPostStoreNum() - bmStorageLog.getInNum()); bmStorageLog.setTaskId(String.valueOf(maInputRecord.getTaskId())); bmStorageLogList.add(bmStorageLog); } @@ -291,7 +291,7 @@ public class LogAspect bmStorageLog.setTaskId(String.valueOf(lod.getTaskId())); bmStorageLog.setTypeId(lod.getTypeId()); bmStorageLog.setTypeName(lod.getMaCode()); - bmStorageLog.setPreStoreNum(lod.getNum()); + bmStorageLog.setPreStoreNum(lod.getPreStoreNum()); bmStorageLog.setOutNum(Objects.isNull(lod.getInputNum()) ? 0 : lod.getInputNum().intValue()); bmStorageLog.setPostStoreNum(lod.getPostStoreNum()); bmStorageLogList.add(bmStorageLog); @@ -303,7 +303,7 @@ public class LogAspect bmStorageLog.setTaskId(String.valueOf(lod.getTaskId())); bmStorageLog.setTypeId(lod.getTypeId()); bmStorageLog.setTypeName(lod.getMaCode()); - bmStorageLog.setPreStoreNum(lod.getNum()); + bmStorageLog.setPreStoreNum(lod.getPreStoreNum()); bmStorageLog.setOutNum(Objects.isNull(lod.getInputNum()) ? 0 : lod.getInputNum().intValue()); bmStorageLog.setPostStoreNum(lod.getPostStoreNum()); bmStorageLogList.add(bmStorageLog); @@ -323,6 +323,17 @@ public class LogAspect bmStorageLog.setPostStoreNum(bai.getPostStoreNum()); bmStorageLogList.add(bmStorageLog); } + // 修试后入库-入库操作, 因数据类型问题暂停,等更新过数据类型后再放开 +// if (joinPoint.getArgs()[0] instanceof RepairTestInputDto) { +// RepairTestInputDto rti = (RepairTestInputDto)joinPoint.getArgs()[0]; +// BmStorageLog bmStorageLog = new BmStorageLog(); +// bmStorageLog.setTaskId(String.valueOf(rti.getTaskId())); +// bmStorageLog.setTypeId(Integer.parseInt(rti.getTypeId())); +// bmStorageLog.setPreStoreNum(rti.getPreStoreNum()); +// bmStorageLog.setInNum(rti.getRepairNum()); +// bmStorageLog.setPostStoreNum(rti.getPostStoreNum()); +// bmStorageLogList.add(bmStorageLog); +// } // 二级库出入库, 不影响ma_type库存变化,暂时不加库存监控日志 // if (joinPoint.getArgs()[0] instanceof TeamLeaseInfo) { // TeamLeaseInfo tli = (TeamLeaseInfo)joinPoint.getArgs()[0]; @@ -338,24 +349,6 @@ public class LogAspect } } - /** - * 获取注解中对方法的描述信息 用于Controller层注解 - * - * @param log 日志 - * @param materialLog 物资日志 - * @throws Exception - */ -// public void getControllerMethodDescriptionByMaterial(JoinPoint joinPoint, Log log, BmNumLogs materialLog, Object jsonResult) throws Exception -// { -// // 设置标题 -// materialLog.setModelTitle(log.title()); -// // 获取参数的信息,传入到数据库中。 -// setRequestValue(joinPoint, materialLog, log.excludeParamNames()); -// // 保存response,参数和值 -// if (StringUtils.isNotNull(jsonResult)) { -// materialLog.setJsonResult(StringUtils.substring(JSON.toJSONString(jsonResult), 0, 2000)); -// } -// } /** * 获取请求的参数,放到log中 @@ -376,42 +369,6 @@ public class LogAspect } } - /** - * 获取请求的参数,放到log中 - * - * @param numLog 物资日志 - * @throws Exception 异常 - */ -// private void setRequestValue(JoinPoint joinPoint, BmNumLogs numLog, String[] excludeParamNames) throws Exception { -// String requestMethod = numLog.getRequestMethod(); -// Map paramsMap = ServletUtils.getParamMap(ServletUtils.getRequest()); -// if (StringUtils.isEmpty(paramsMap)) { -// if ((HttpMethod.PUT.name().equals(requestMethod) || HttpMethod.POST.name().equals(requestMethod))){ -// String params = argsArrayToString(joinPoint.getArgs(), excludeParamNames); -// numLog.setDescription(StringUtils.substring(params, 0, 2000)); -// } -// } else { -// if (paramsMap.containsKey("num")) { -// if (paramsMap.get("num") instanceof Integer) { -// numLog.setNum(String.valueOf(paramsMap.get("num"))); -// } else if (paramsMap.get("num") instanceof String) { -// numLog.setNum((String) paramsMap.get("num")); -// } -// } -// if (paramsMap.containsKey("taskId")) { -// numLog.setTask(String.valueOf(paramsMap.get("taskId"))); -// } -// if (paramsMap.containsKey("typeId")) { -// if (paramsMap.get("typeId") instanceof Integer) { -// numLog.setTypeId((Integer) paramsMap.get("typeId")); -// } else if (paramsMap.get("typeId") instanceof String) { -// numLog.setTypeId(Integer.valueOf((String) paramsMap.get("typeId"))); -// } -// } -// numLog.setDescription(StringUtils.substring(JSON.toJSONString(paramsMap, excludePropertyPreFilter(excludeParamNames)), 0, 2000)); -// } -// } - /** * 参数拼装 */ diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/controller/BackReceiveController.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/controller/BackReceiveController.java index a7af6ba..e836869 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/controller/BackReceiveController.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/controller/BackReceiveController.java @@ -11,6 +11,7 @@ import com.bonus.sgzb.common.core.web.controller.BaseController; import com.bonus.sgzb.common.core.web.domain.AjaxResult; import com.bonus.sgzb.common.log.annotation.Log; import com.bonus.sgzb.common.log.enums.BusinessType; +import com.bonus.sgzb.common.security.annotation.PreventRepeatSubmit; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -190,6 +191,7 @@ public class BackReceiveController extends BaseController { } @Log(title = "退料接收-结束任务", businessType = BusinessType.MATERIAL) + @PreventRepeatSubmit @PostMapping("endBack") public AjaxResult endBack(@RequestBody BackApplyInfo record) { try { diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/controller/LeaseOutDetailsController.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/controller/LeaseOutDetailsController.java index 91438e4..21a5c38 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/controller/LeaseOutDetailsController.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/controller/LeaseOutDetailsController.java @@ -11,6 +11,7 @@ import com.bonus.sgzb.common.core.web.domain.AjaxResult; import com.bonus.sgzb.common.core.web.page.TableDataInfo; import com.bonus.sgzb.common.log.annotation.Log; import com.bonus.sgzb.common.log.enums.BusinessType; +import com.bonus.sgzb.common.security.annotation.PreventRepeatSubmit; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.*; @@ -63,6 +64,7 @@ public class LeaseOutDetailsController extends BaseController { * 根据二维码绑定设备 */ @ApiOperation(value = "根据二维码绑定设备-app") + @PreventRepeatSubmit @PostMapping("bindMachineByQrCode") @Log(title = "APP机具设备标签二维码绑定", businessType = BusinessType.MATERIAL) public AjaxResult bindMachineByQrCode(@RequestBody MaMachine maMachine) { @@ -130,6 +132,7 @@ public class LeaseOutDetailsController extends BaseController { * @param record 出库内容 */ @Log(title = "领料出库", businessType = BusinessType.MATERIAL) + @PreventRepeatSubmit @PostMapping("/submitOut") public AjaxResult submitOut(@RequestBody LeaseOutDetails record) { return leaseOutDetailsService.submitOut(record); @@ -140,6 +143,7 @@ public class LeaseOutDetailsController extends BaseController { * @return */ @Log(title = "领料出库", businessType = BusinessType.MATERIAL) + @PreventRepeatSubmit @PostMapping("/submitOutRfid") public AjaxResult submitOutRfid(@RequestBody List recordList) { if (CollUtil.isEmpty(recordList)){ diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/mapper/LeaseOutDetailsMapper.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/mapper/LeaseOutDetailsMapper.java index 0036e6c..0d1198a 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/mapper/LeaseOutDetailsMapper.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/mapper/LeaseOutDetailsMapper.java @@ -92,6 +92,8 @@ public interface LeaseOutDetailsMapper { MaType selectByTypeId(@Param("record") LeaseOutDetails record); + int getCountOfCodeMachine(@Param("record") LeaseOutDetails record); + LeaseApplyDetails getOutboundNum(LeaseOutDetails record); List getMaTypeDetails(LeaseOutDetails record); diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/service/impl/LeaseOutDetailsServiceImpl.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/service/impl/LeaseOutDetailsServiceImpl.java index 93fdeea..5c9292c 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/service/impl/LeaseOutDetailsServiceImpl.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/app/service/impl/LeaseOutDetailsServiceImpl.java @@ -149,6 +149,7 @@ public class LeaseOutDetailsServiceImpl implements LeaseOutDetailsService { try { // 1、判断是否重复提交 res = checkRepeatSubmit(record); + record.setPreStoreNum(getStorageNum(record)); if (res > 0) { if ((record.getManageType() == 1 || record.getManageType() == 2) && record.getInputNum() != null) { record.setOutNum(record.getInputNum().doubleValue()); @@ -201,7 +202,11 @@ public class LeaseOutDetailsServiceImpl implements LeaseOutDetailsService { //判断(ma_type 设备规格表)中的库存够不够出库的 MaType maType = leaseOutDetailsMapper.selectByTypeId(record); if (maType != null) { - return maType.getNum().intValue(); + if ("1".equals(maType.getManageType())) { + return maType.getNum().intValue(); + } else if ("0".equals(maType.getManageType())) { + return leaseOutDetailsMapper.getCountOfCodeMachine(record); + } } return 0; } @@ -274,8 +279,15 @@ public class LeaseOutDetailsServiceImpl implements LeaseOutDetailsService { //判断(ma_type 设备规格表)中的库存够不够出库的 MaType maType = leaseOutDetailsMapper.selectByTypeId(record); if (maType != null) { - if (maType.getNum() == null || maType.getNum().compareTo(BigDecimal.valueOf(record.getOutNum())) < 0) { - return 0; + if ("0".equals(maType.getManageType())) { + int count = leaseOutDetailsMapper.getCountOfCodeMachine(record); + if (BigDecimal.valueOf(count).compareTo(BigDecimal.valueOf(record.getOutNum())) < 0) { + return 0; + } + } else if ("1".equals(maType.getManageType())) { + if (maType.getNum() == null || maType.getNum().compareTo(BigDecimal.valueOf(record.getOutNum())) < 0) { + return 0; + } } } return 1; diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/base/controller/MaLabelBindController.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/base/controller/MaLabelBindController.java index 775d702..d5693d7 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/base/controller/MaLabelBindController.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/base/controller/MaLabelBindController.java @@ -8,6 +8,7 @@ import com.bonus.sgzb.common.core.web.domain.AjaxResult; import com.bonus.sgzb.common.core.web.page.TableDataInfo; import com.bonus.sgzb.common.log.annotation.Log; import com.bonus.sgzb.common.log.enums.BusinessType; +import com.bonus.sgzb.common.security.annotation.PreventRepeatSubmit; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -80,6 +81,7 @@ public class MaLabelBindController extends BaseController * 新增机具设备标签ma_label_bind */ @ApiOperation(value = "新增机具标签绑定管理列表") + @PreventRepeatSubmit @Log(title = "机具设备标签二维码绑定", businessType = BusinessType.MATERIAL) @PostMapping public AjaxResult add(@RequestBody MaLabelBindVO maLabelBindVO) diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/InventoryAndWarehousingController.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/InventoryAndWarehousingController.java index c4fc277..b7730d8 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/InventoryAndWarehousingController.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/InventoryAndWarehousingController.java @@ -5,6 +5,7 @@ import com.bonus.sgzb.common.core.web.domain.AjaxResult; import com.bonus.sgzb.common.core.web.page.TableDataInfo; import com.bonus.sgzb.common.log.annotation.Log; import com.bonus.sgzb.common.log.enums.BusinessType; +import com.bonus.sgzb.common.security.annotation.PreventRepeatSubmit; import com.bonus.sgzb.material.domain.PutInStorageBean; import com.bonus.sgzb.base.api.domain.SavePutInfoDto; import com.bonus.sgzb.material.service.InventoryAndWarehousingService; @@ -47,6 +48,7 @@ public class InventoryAndWarehousingController extends BaseController { * @return */ @ApiOperation(value = "新增入库盘点") + @PreventRepeatSubmit @PostMapping("/addList") @Log(title = "盘点入库操作", businessType = BusinessType.MATERIAL) public AjaxResult savePutInfo(@RequestBody SavePutInfoDto dto) { diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/PurchaseMacodeInfoController.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/PurchaseMacodeInfoController.java index 921bff0..7377776 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/PurchaseMacodeInfoController.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/PurchaseMacodeInfoController.java @@ -5,6 +5,7 @@ import javax.servlet.http.HttpServletResponse; import com.bonus.sgzb.common.log.annotation.Log; import com.bonus.sgzb.common.log.enums.BusinessType; +import com.bonus.sgzb.common.security.annotation.PreventRepeatSubmit; import com.bonus.sgzb.material.service.IPurchaseMacodeInfoService; import com.bonus.sgzb.material.domain.PurchaseMacodeInfo; import com.bonus.sgzb.base.api.domain.MaInputVO; @@ -119,6 +120,7 @@ public class PurchaseMacodeInfoController extends BaseController { * 通过/不通过 */ @ApiOperation(value = "新购入库审核") + @PreventRepeatSubmit @Log(title = "新购验收任务", businessType = BusinessType.MATERIAL) @PutMapping("/manageStatus") public AjaxResult modifyManageStatus(@RequestBody MaInputVO maInputVO) throws Exception { diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/RepairTestInputController.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/RepairTestInputController.java index bdd2eb5..0a65d02 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/RepairTestInputController.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/RepairTestInputController.java @@ -6,8 +6,9 @@ import com.bonus.sgzb.common.core.web.domain.AjaxResult; import com.bonus.sgzb.common.core.web.page.TableDataInfo; import com.bonus.sgzb.common.log.annotation.Log; import com.bonus.sgzb.common.log.enums.BusinessType; +import com.bonus.sgzb.common.security.annotation.PreventRepeatSubmit; import com.bonus.sgzb.material.domain.RepairTestInputDetailVo; -import com.bonus.sgzb.material.domain.RepairTestInputDto; +import com.bonus.sgzb.base.api.domain.RepairTestInputDto; import com.bonus.sgzb.material.domain.RepairTestInputVo; import com.bonus.sgzb.material.service.RepairTestInputService; import io.swagger.annotations.ApiOperation; @@ -60,6 +61,8 @@ public class RepairTestInputController extends BaseController { } @ApiOperation(value = "修试后入库-入库操作") + @PreventRepeatSubmit + //@Log(title = "修试后入库-入库操作", businessType = BusinessType.MATERIAL) @PostMapping("inputByType") public AjaxResult inputByType(@RequestBody RepairTestInputDto dto){ return service.inputByType(dto); diff --git a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/controller/SelectController.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/SelectController.java similarity index 96% rename from sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/controller/SelectController.java rename to sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/SelectController.java index e70ae20..156a1de 100644 --- a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/controller/SelectController.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/SelectController.java @@ -1,8 +1,8 @@ -package com.bonus.sgzb.system.controller; +package com.bonus.sgzb.material.controller; import com.bonus.sgzb.common.core.web.domain.AjaxResult; -import com.bonus.sgzb.system.domain.SelectDto; -import com.bonus.sgzb.system.service.SelectService; +import com.bonus.sgzb.material.domain.SelectDto; +import com.bonus.sgzb.material.service.SelectService; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/AgreementVo.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/AgreementVo.java new file mode 100644 index 0000000..cb88fd9 --- /dev/null +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/AgreementVo.java @@ -0,0 +1,20 @@ +package com.bonus.sgzb.material.domain; + +import lombok.Data; + +/** + * @author 10488 + * 协议信息 + */ +@Data +public class AgreementVo { + + /** 协议ID*/ + private Integer agreementId; + + /** 协议编号*/ + private String agreementCode; + + /** 是否结算*/ + private String isSlt; +} diff --git a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/SelectDto.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SelectDto.java similarity index 88% rename from sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/SelectDto.java rename to sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SelectDto.java index 400c100..4e9e732 100644 --- a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/SelectDto.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SelectDto.java @@ -1,9 +1,7 @@ -package com.bonus.sgzb.system.domain; +package com.bonus.sgzb.material.domain; import lombok.Data; -import java.util.List; - /** * @author 10488 */ diff --git a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/SelectVo.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SelectVo.java similarity index 79% rename from sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/SelectVo.java rename to sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SelectVo.java index 82c7450..6d42b14 100644 --- a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/domain/SelectVo.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SelectVo.java @@ -1,4 +1,4 @@ -package com.bonus.sgzb.system.domain; +package com.bonus.sgzb.material.domain; import lombok.Data; diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/TreeNode.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/TreeNode.java new file mode 100644 index 0000000..b5f0b67 --- /dev/null +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/TreeNode.java @@ -0,0 +1,41 @@ +package com.bonus.sgzb.material.domain; + +import com.fasterxml.jackson.annotation.JsonInclude; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author 10488 + * 下拉树-实体类 + */ +@Data +public class TreeNode { + + private long id; + + private String label; + + private long parentId; + + @JsonInclude(JsonInclude.Include.NON_EMPTY) + private String level; + + @JsonInclude(JsonInclude.Include.NON_EMPTY) + private String unitName; + + @JsonInclude(JsonInclude.Include.NON_EMPTY) + private String companyId; + + private String code; + + private float num; + + private String modelCode; + + private String manageType; + + @JsonInclude(JsonInclude.Include.NON_EMPTY) + private List children = new ArrayList<>(); +} diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/PurchaseMacodeInfoMapper.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/PurchaseMacodeInfoMapper.java index 5d1c70c..b89796d 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/PurchaseMacodeInfoMapper.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/PurchaseMacodeInfoMapper.java @@ -284,4 +284,6 @@ public interface PurchaseMacodeInfoMapper { List selectPurchaseMacodeInfoListDetails(PurchaseMacodeInfo purchaseMacodeInfo); List selectKeepUser(Integer typeId); + + int getCountOfMachineByTypeId(Long typeId); } diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/RepairTestInputMapper.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/RepairTestInputMapper.java index bcf0968..fd03737 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/RepairTestInputMapper.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/RepairTestInputMapper.java @@ -1,5 +1,6 @@ package com.bonus.sgzb.material.mapper; +import com.bonus.sgzb.base.api.domain.RepairTestInputDto; import com.bonus.sgzb.material.domain.*; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -121,4 +122,6 @@ public interface RepairTestInputMapper { List exportList(RepairTestInputDto bean); int addRepaieAudit(RepairAuditDetails bean); + + int getCountOfMachineByTypeId(String typeId); } diff --git a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/mapper/SelectMapper.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/SelectMapper.java similarity index 94% rename from sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/mapper/SelectMapper.java rename to sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/SelectMapper.java index 35ffb85..4448430 100644 --- a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/mapper/SelectMapper.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/SelectMapper.java @@ -1,9 +1,9 @@ -package com.bonus.sgzb.system.mapper; +package com.bonus.sgzb.material.mapper; -import com.bonus.sgzb.system.domain.AgreementVo; -import com.bonus.sgzb.system.domain.SelectDto; -import com.bonus.sgzb.system.domain.SelectVo; -import com.bonus.sgzb.system.domain.TreeNode; +import com.bonus.sgzb.material.domain.AgreementVo; +import com.bonus.sgzb.material.domain.SelectDto; +import com.bonus.sgzb.material.domain.SelectVo; +import com.bonus.sgzb.material.domain.TreeNode; import org.springframework.stereotype.Repository; import java.util.List; diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/RepairTestInputService.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/RepairTestInputService.java index f1fd24f..d5b76ea 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/RepairTestInputService.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/RepairTestInputService.java @@ -2,7 +2,7 @@ package com.bonus.sgzb.material.service; import com.bonus.sgzb.common.core.web.domain.AjaxResult; import com.bonus.sgzb.material.domain.RepairTestInputDetailVo; -import com.bonus.sgzb.material.domain.RepairTestInputDto; +import com.bonus.sgzb.base.api.domain.RepairTestInputDto; import com.bonus.sgzb.material.domain.RepairTestInputVo; import java.util.List; diff --git a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/service/SelectService.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/SelectService.java similarity index 97% rename from sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/service/SelectService.java rename to sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/SelectService.java index 1ad1ec7..761aa42 100644 --- a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/service/SelectService.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/SelectService.java @@ -1,7 +1,7 @@ -package com.bonus.sgzb.system.service; +package com.bonus.sgzb.material.service; import com.bonus.sgzb.common.core.web.domain.AjaxResult; -import com.bonus.sgzb.system.domain.SelectDto; +import com.bonus.sgzb.material.domain.SelectDto; /** * @author 10488 diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/PurchaseMacodeInfoServiceImpl.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/PurchaseMacodeInfoServiceImpl.java index dc271ec..6ed8f72 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/PurchaseMacodeInfoServiceImpl.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/PurchaseMacodeInfoServiceImpl.java @@ -334,6 +334,11 @@ public class PurchaseMacodeInfoServiceImpl implements IPurchaseMacodeInfoService .add(maType.getNum() == null ? new BigDecimal(0) : maType.getNum())); purchaseMacodeInfoMapper.updateTypeByTypeId(maType); + if ("0".equals(maType.getManageType())) { //编码设备 + int countOfMachineByTypeId = purchaseMacodeInfoMapper.getCountOfMachineByTypeId(typeId); + maInputRecord.setNum((double) countOfMachineByTypeId); + } + //判断是否是成套机具,是的话配件库存也要增加 if ("2".equals(maType.getManageType())){ PurchaseCheckInfo purchaseCheckInfo = new PurchaseCheckInfo(); diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/RepairTestInputServiceImpl.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/RepairTestInputServiceImpl.java index 313f6e6..3770926 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/RepairTestInputServiceImpl.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/RepairTestInputServiceImpl.java @@ -1,6 +1,7 @@ package com.bonus.sgzb.material.service.impl; import com.alibaba.fastjson.JSONObject; +import com.bonus.sgzb.base.api.domain.RepairTestInputDto; import com.bonus.sgzb.common.core.constant.HttpStatus; import com.bonus.sgzb.common.core.exception.ServiceException; import com.bonus.sgzb.common.core.utils.DateTimeHelper; @@ -15,7 +16,6 @@ import com.bonus.sgzb.material.mapper.RepairTestInputMapper; import com.bonus.sgzb.material.mapper.TaskMapper; import com.bonus.sgzb.material.mapper.TmTaskAgreementMapper; import com.bonus.sgzb.material.service.RepairTestInputService; -import com.bonus.sgzb.material.vo.GlobalContants; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.springframework.stereotype.Service; @@ -114,11 +114,27 @@ public class RepairTestInputServiceImpl implements RepairTestInputService { String repairNum = StringUtils.isNotEmpty(dto.getRepairNum()) ? dto.getRepairNum() : "0"; double num = countNum(map.get("num"), repairNum); mapper.updateMaTypeNum(dto.getTypeId(), num); + int codeMachinePreStoreNum = 0; if (Objects.equals("0", dto.getType())) { + codeMachinePreStoreNum = mapper.getCountOfMachineByTypeId(dto.getTypeId()); // 查询机具状态-在库的id、管理方式为编号的需更新机具设备的机具状态 - int dicId = mapper.getDicByMaStatusId("ma_status", "在库"); - mapper.updateMaMachineStatus(dicId, dto.getMaId()); + //int dicId = mapper.getDicByMaStatusId("ma_status", "在库"); + mapper.updateMaMachineStatus(15, dto.getMaId()); } +// try { +// if (Objects.equals("0", dto.getType())) { +// repairTestInputDto.setPreStoreNum(codeMachinePreStoreNum); +// repairTestInputDto.setRepairNum(Integer.parseInt(repairNum)); +// repairTestInputDto.setPostStoreNum(mapper.getCountOfMachineByTypeId(dto.getTypeId())); +// } +// else if (Objects.equals("1", dto.getType())) { +// repairTestInputDto.setPreStoreNum((Integer) map.get("num")); +// repairTestInputDto.setRepairNum(Integer.parseInt(repairNum)); +// repairTestInputDto.setPostStoreNum((int) num); +// } +// } catch (Exception e) { +// log.error("修试后入库-入库操作-获取库存日志失败", e); +// } } } RepairTestWarehousingDto dto = list.get(0); diff --git a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/service/impl/SelectServiceImpl.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/SelectServiceImpl.java similarity index 95% rename from sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/service/impl/SelectServiceImpl.java rename to sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/SelectServiceImpl.java index 48f4174..75fd3a3 100644 --- a/sgzb-modules/sgzb-system/src/main/java/com/bonus/sgzb/system/service/impl/SelectServiceImpl.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/SelectServiceImpl.java @@ -1,15 +1,14 @@ -package com.bonus.sgzb.system.service.impl; +package com.bonus.sgzb.material.service.impl; -import cn.hutool.core.collection.CollUtil; import com.bonus.sgzb.common.core.utils.GlobalConstants; import com.bonus.sgzb.common.core.web.domain.AjaxResult; -import com.bonus.sgzb.system.domain.AgreementVo; -import com.bonus.sgzb.system.domain.SelectDto; -import com.bonus.sgzb.system.domain.SelectVo; -import com.bonus.sgzb.system.domain.TreeNode; -import com.bonus.sgzb.system.mapper.SelectMapper; -import com.bonus.sgzb.system.service.SelectService; -import com.bonus.sgzb.system.util.TreeBuild; +import com.bonus.sgzb.material.domain.AgreementVo; +import com.bonus.sgzb.material.domain.SelectDto; +import com.bonus.sgzb.material.domain.SelectVo; +import com.bonus.sgzb.material.domain.TreeNode; +import com.bonus.sgzb.material.mapper.SelectMapper; +import com.bonus.sgzb.material.service.SelectService; +import com.bonus.sgzb.material.utils.TreeBuild; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.springframework.stereotype.Service; diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/utils/TreeBuild.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/utils/TreeBuild.java new file mode 100644 index 0000000..8f2b720 --- /dev/null +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/utils/TreeBuild.java @@ -0,0 +1,79 @@ +package com.bonus.sgzb.material.utils; + +import com.bonus.sgzb.material.domain.TreeNode; + +import java.util.ArrayList; +import java.util.List; + +/** + * BuildTree 构建树形结构 + * @author 10488 + */ +public class TreeBuild { + + public List nodeList = new ArrayList<>(); + + /** + * 构造方法 + * @param nodeList 将数据集合赋值给nodeList,即所有数据作为所有节点。 + */ + public TreeBuild(List nodeList){ + this.nodeList = nodeList; + } + + /** + * 获取需构建的所有根节点(顶级节点) "0" + * @return 所有根节点List集合 + */ + public List getRootNode(){ + // 保存所有根节点(所有根节点的数据) + List rootNodeList = new ArrayList<>(); + // treeNode:查询出的每一条数据(节点) + for (TreeNode treeNode : nodeList){ + // 判断当前节点是否为根节点,此处注意:若parentId类型是String,则要采用equals()方法判断。 + if (0 == treeNode.getParentId()) { + // 是,添加 + rootNodeList.add(treeNode); + } + } + return rootNodeList; + } + + /** + * 根据每一个顶级节点(根节点)进行构建树形结构 + * @return 构建整棵树 + */ + public List buildTree(){ + // treeNodes:保存一个顶级节点所构建出来的完整树形 + List treeNodes = new ArrayList(); + // getRootNode():获取所有的根节点 + for (TreeNode treeRootNode : getRootNode()) { + // 将顶级节点进行构建子树 + treeRootNode = buildChildTree(treeRootNode); + // 完成一个顶级节点所构建的树形,增加进来 + treeNodes.add(treeRootNode); + } + return treeNodes; + } + + /** + * 递归-----构建子树形结构 + * @param pNode 根节点(顶级节点) + * @return 整棵树 + */ + public TreeNode buildChildTree(TreeNode pNode){ + List childTree = new ArrayList(); + // nodeList:所有节点集合(所有数据) + for (TreeNode treeNode : nodeList) { + // 判断当前节点的父节点ID是否等于根节点的ID,即当前节点为其下的子节点 + if (treeNode.getParentId() == pNode.getId()) { + // 再递归进行判断当前节点的情况,调用自身方法 + childTree.add(buildChildTree(treeNode)); + } + } + // for循环结束,即节点下没有任何节点,树形构建结束,设置树结果 + pNode.setChildren(childTree); + return pNode; + } + +} diff --git a/sgzb-modules/sgzb-material/src/main/resources/mapper/app/LeaseOutDetailsMapper.xml b/sgzb-modules/sgzb-material/src/main/resources/mapper/app/LeaseOutDetailsMapper.xml index ce559e0..694e503 100644 --- a/sgzb-modules/sgzb-material/src/main/resources/mapper/app/LeaseOutDetailsMapper.xml +++ b/sgzb-modules/sgzb-material/src/main/resources/mapper/app/LeaseOutDetailsMapper.xml @@ -169,6 +169,8 @@ type_id = #{typeId} AND ma_id IS NULL + AND + status = '0' AND DATE(start_time) = CURDATE(); @@ -176,6 +178,17 @@ select * from ma_type WHERE type_id = #{record.typeId} + UPDATE diff --git a/sgzb-modules/sgzb-material/src/main/resources/mapper/app/TmTaskMapper.xml b/sgzb-modules/sgzb-material/src/main/resources/mapper/app/TmTaskMapper.xml index 4403e1a..2e6947c 100644 --- a/sgzb-modules/sgzb-material/src/main/resources/mapper/app/TmTaskMapper.xml +++ b/sgzb-modules/sgzb-material/src/main/resources/mapper/app/TmTaskMapper.xml @@ -978,12 +978,27 @@ SELECT lad.*, mt.type_name AS typeModelName, mt1.type_name AS typeName,mt.unit_name as unitName, mt.manage_type as manageType, case WHEN mt.manage_type = '0' then '编号' else '计数' end manageTypeName, - mt.num, (lad.pre_num - IF(lad.al_num IS NULL,'0',lad.al_num)) AS outNum,mm.ma_code as maCode + CASE mt.manage_type + WHEN 0 THEN + IFNULL(subquery0.num, 0) + ELSE + IFNULL(mt.num, 0) + END as num, + (lad.pre_num - IF(lad.al_num IS NULL,'0',lad.al_num)) AS outNum,subquery0.ma_code as maCode FROM lease_apply_details lad LEFT JOIN ma_type mt ON lad.type_id = mt.type_id LEFT JOIN ma_type mt1 ON mt.parent_id = mt1.type_id - LEFT JOIN ma_machine mm ON lad.type_id = mm.type_id + LEFT JOIN (SELECT mt.type_id, + mt2.type_name AS typeName, + mt.type_name AS typeModelName, + mm.ma_code, + count(mm.ma_id) num + FROM ma_machine mm + LEFT JOIN ma_type mt ON mt.type_id = mm.type_id + LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id + WHERE mm.ma_code is not null and mm.ma_status in (15) + GROUP BY mt.type_id) AS subquery0 ON subquery0.type_id = mt.type_id WHERE lad.parennt_id = #{record.id} GROUP BY diff --git a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/BackApplyMapper.xml b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/BackApplyMapper.xml index c50305d..e0a9c7c 100644 --- a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/BackApplyMapper.xml +++ b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/BackApplyMapper.xml @@ -571,43 +571,123 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" mt.type_name like concat('%', #{keyWord}, '%')) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SELECT + count(mm.ma_id) + FROM ma_machine mm + LEFT JOIN ma_type mt ON mt.type_id = mm.type_id + LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id + WHERE mm.ma_code is not null and mm.ma_status in (15) + AND mt.type_id = #{typeId} + \ No newline at end of file diff --git a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/RepairTestInputMapper.xml b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/RepairTestInputMapper.xml index d58158f..2bb3c4a 100644 --- a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/RepairTestInputMapper.xml +++ b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/RepairTestInputMapper.xml @@ -259,4 +259,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" values (#{taskId},#{repairId},#{maId},#{typeId},#{repairNum},#{repairedNum},#{scrapNum},#{status},#{createBy},now(),#{updateBy},now(),#{companyId}); + \ No newline at end of file diff --git a/sgzb-modules/sgzb-system/src/main/resources/mapper/system/SelectMapper.xml b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/SelectMapper.xml similarity index 70% rename from sgzb-modules/sgzb-system/src/main/resources/mapper/system/SelectMapper.xml rename to sgzb-modules/sgzb-material/src/main/resources/mapper/material/SelectMapper.xml index 4fdc3a9..b3f4991 100644 --- a/sgzb-modules/sgzb-system/src/main/resources/mapper/system/SelectMapper.xml +++ b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/SelectMapper.xml @@ -2,10 +2,10 @@ - + - /*根据标段工程id关联协议查询往来单位*/ SELECT DISTINCT bui.unit_id AS id, @@ -24,7 +24,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - /*根据往来单位id关联协议查询工程*/ SELECT DISTINCT bpl.lot_id AS id, @@ -43,21 +43,21 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - SELECT type_id AS id, type_name AS `name` FROM ma_type WHERE `level` = #{type} AND del_flag = '0' - SELECT sd2.id,sd2.`name` FROM sys_dic sd LEFT JOIN sys_dic sd2 ON sd.id = sd2.p_id WHERE sd.`value` = #{parentValue} AND sd.p_id = 0 - SELECT dept_id AS id, parent_id AS parentId, dept_name AS label @@ -66,7 +66,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ORDER BY order_num - SELECT post_id AS id, post_name AS `name` FROM sys_post @@ -74,7 +74,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ORDER BY post_sort - SELECT role_id AS id, role_name AS `name` FROM sys_role @@ -82,40 +82,54 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ORDER BY role_sort - SELECT sd2.id,sd2.`name` FROM sys_dic sd LEFT JOIN sys_dic sd2 ON sd.id = sd2.p_id WHERE sd.`value` = #{parentValue} AND sd.p_id = 0 - + SELECT mt.type_id AS id, + mt.type_name AS label, + mt.parent_id AS parentId, + mt.unit_name AS unitName, + mt.company_id AS companyId, + mt.code, + CASE mt.manage_type + WHEN 0 THEN + IFNULL(subquery0.num, 0) + ELSE + IFNULL(mt.num, 0) + END as num, + mt.model_code AS modelCode, + mt.manage_type AS manageType + FROM ma_type mt + left join (SELECT mt.type_id, + mt2.type_name AS typeName, + mt.type_name AS typeModelName, + count(mm.ma_id) num + FROM ma_machine mm + LEFT JOIN ma_type mt ON mt.type_id = mm.type_id + LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id + WHERE mm.ma_code is not null and mm.ma_status in (15) + GROUP BY mt.type_id) AS subquery0 ON subquery0.type_id = mt.type_id + WHERE mt.del_flag = '0' - AND level IN ('1','2') + AND mt.level IN ('1','2') - AND level IN ('1','2','3') + AND mt.level IN ('1','2','3') - AND level IN ('1','2','3','4') + AND mt.level IN ('1','2','3','4') - ORDER BY create_time + ORDER BY mt.create_time - SELECT prop_id AS id, prop_name AS `name` FROM ma_prop_info @@ -123,7 +137,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ORDER BY create_time - SELECT supplier_id AS id, supplier AS `name` FROM ma_supplier_info @@ -131,7 +145,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ORDER BY create_time - SELECT pro_id AS id, pro_name AS `name` FROM bm_project_info @@ -139,7 +153,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ORDER BY create_time - SELECT pa_id AS id, pa_name AS label, parent_id AS parentId, @@ -150,7 +164,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ORDER BY create_time - SELECT pa_id AS id, pa_name AS label, parent_id AS parentId, @@ -160,7 +174,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ORDER BY create_time - SELECT house_id AS id, house_name AS label, parent_id AS parentId @@ -168,7 +182,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" WHERE del_flag = '0' AND status = '0' - SELECT su.user_id AS id, su.nick_name AS `name` FROM sys_role sr @@ -177,7 +191,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" WHERE sr.role_key = #{roleKey} AND sr.del_flag = '0' - SELECT dept_id AS id, parent_id AS parentId, dept_name AS label @@ -193,7 +207,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" WHERE sr.role_key = #{roleKey} AND sr.del_flag = '0' - SELECT agreement_id AS agreementId, agreement_code AS agreementCode, is_slt AS isSlt diff --git a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/StorageStatusMapper.xml b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/StorageStatusMapper.xml index 28b9058..3a3f7b6 100644 --- a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/StorageStatusMapper.xml +++ b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/StorageStatusMapper.xml @@ -8,12 +8,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" SELECT mt2.type_name as typeName, mt.type_name as typeModelName, mt.unit_name as unit, - IFNULL(mt.num, 0) as num, + CASE mt.manage_type + WHEN 0 THEN + IFNULL(subquery0.num, 0) + ELSE + IFNULL(mt.num, 0) + END as num, IFNULL(subquery1.usNum, 0) as usNum, IFNULL(subquery2.repairNum, 0) as repairNum, IFNULL(subquery3.repairInputNum, 0) as repairInputNum, IFNULL(subquery4.inputNum, 0) as inputNum, - IFNULL(mt.num, 0) + IFNULL(subquery1.usNum, 0) + IFNULL(subquery2.repairNum, 0) + IFNULL(subquery3.repairInputNum, 0) as allNum, + CASE mt.manage_type + WHEN 0 THEN + IFNULL(subquery0.num, 0)+ IFNULL(subquery1.usNum, 0) + IFNULL(subquery2.repairNum, 0) + IFNULL(subquery3.repairInputNum, 0) + ELSE + IFNULL(mt.num, 0)+ IFNULL(subquery1.usNum, 0) + IFNULL(subquery2.repairNum, 0) + IFNULL(subquery3.repairInputNum, 0) + END as allNum, CASE mt.manage_type WHEN 0 THEN '否' @@ -22,6 +32,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" END manageType FROM ma_type mt + LEFT JOIN (SELECT mt.type_id, + mt2.type_name AS typeName, + mt.type_name AS typeModelName, + count(mm.ma_id) num + FROM ma_machine mm + LEFT JOIN ma_type mt ON mt.type_id = mm.type_id + LEFT JOIN ma_type mt2 ON mt2.type_id = mt.parent_id + WHERE mm.ma_code is not null and mm.ma_status in (15) + GROUP BY mt.type_id) AS subquery0 ON subquery0.type_id = mt.type_id LEFT JOIN (SELECT subquery1.type_id, subquery1.typeName, subquery1.typeModelName,