db/Ë«ÁÖлð¾æMESÊý¾Ý¿âÉè¼Æ.pdma.json
@@ -4,7 +4,7 @@ "avatar": "", "version": "4.9.2", "createdTime": "2025-3-10 16:38:19", "updatedTime": "2025-8-18 15:02:20", "updatedTime": "2025-8-20 15:14:16", "dbConns": [], "profile": { "default": { @@ -64844,7 +64844,7 @@ "autoIncrement": false, "defaultValue": "", "hideInGraph": false, "domain": "16120F75-6AA7-4483-868D-F07F511BB081", "domain": "73FD2BAD-2358-4336-B96D-45DC897BD792", "refDict": "", "extProps": {}, "notes": {}, @@ -64889,8 +64889,8 @@ "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64" }, { "defKey": "priority", "defName": "ä¼å çº§ï¼æå¨ç±»åï¼", "defKey": "material_transfer_category", "defName": "æå¨ç±»å", "comment": "", "type": "", "len": "", src/main/java/org/jeecg/modules/base/controller/LineSideWarehouseController.java
@@ -191,4 +191,16 @@ return Result.ok("æä½æåï¼"); } //@AutoLog(value = "线边ä»åºä¿¡æ¯-éè¿idæ¥è¯¢") @ApiOperation(value="线边ä»åºä¿¡æ¯-éè¿idæ¥è¯¢", notes="线边ä»åºä¿¡æ¯-éè¿idæ¥è¯¢") @GetMapping(value = "/queryByFactoryId") public Result<LineSideWarehouse> queryByFactoryId(@RequestParam(name="factoryId") String factoryId) { LineSideWarehouse lineSideWarehouse = lineSideWarehouseService.queryByFactoryId(factoryId); if(lineSideWarehouse==null) { return Result.error("æªæ¾å°å¯¹åºæ°æ®"); } return Result.OK(lineSideWarehouse); } } src/main/java/org/jeecg/modules/base/service/ILineSideWarehouseService.java
@@ -11,4 +11,10 @@ */ public interface ILineSideWarehouseService extends IService<LineSideWarehouse> { /** * æ ¹æ®æ¥è¯¢IDæ¥è¯¢çº¿è¾¹åº * @param factoryId * @return */ LineSideWarehouse queryByFactoryId(String factoryId); } src/main/java/org/jeecg/modules/base/service/impl/LineSideWarehouseServiceImpl.java
@@ -1,11 +1,11 @@ package org.jeecg.modules.base.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.jeecg.modules.base.entity.LineSideWarehouse; import org.jeecg.modules.base.mapper.LineSideWarehouseMapper; import org.jeecg.modules.base.service.ILineSideWarehouseService; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; /** * @Description: 线边ä»åºä¿¡æ¯ @@ -16,4 +16,14 @@ @Service public class LineSideWarehouseServiceImpl extends ServiceImpl<LineSideWarehouseMapper, LineSideWarehouse> implements ILineSideWarehouseService { @Override public LineSideWarehouse queryByFactoryId(String factoryId) { LambdaQueryWrapper<LineSideWarehouse> wrapper = new LambdaQueryWrapper<>(); wrapper.eq(LineSideWarehouse::getFactoryId, factoryId); LineSideWarehouse entity = this.getBaseMapper().selectOne(wrapper); if(entity != null) { entity.setWarehouseName(entity.getWarehouseName() + "(" + entity.getWarehouseCode() + ")"); } return entity; } } src/main/java/org/jeecg/modules/eam/constant/BusinessCodeConst.java
@@ -15,6 +15,8 @@ String MAINTENANCE_CODE_RULE = "MaintenanceCodeRule"; // 维修工åç¼ç è§å String REPAIR_ORDER_CODE_RULE = "RepairOrderCodeRule"; // ç©ææå¨ç¼ç è§å String MATERIAL_TRANSFER_CODE_RULE = "MaterialTransferCodeRule"; /** * å²ä½ç¼ç src/main/java/org/jeecg/modules/mes/controller/MesMaterialTransferRequestController.java
@@ -10,8 +10,10 @@ import org.jeecg.common.aspect.annotation.AutoLog; import org.jeecg.common.system.base.controller.JeecgController; import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.modules.eam.constant.BusinessCodeConst; import org.jeecg.modules.mes.entity.MesMaterialTransferRequest; import org.jeecg.modules.mes.service.IMesMaterialTransferRequestService; import org.jeecg.modules.system.service.ISysBusinessCodeRuleService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; @@ -21,149 +23,156 @@ import java.util.Arrays; /** * @Description: ç©ææå¨ç³è¯· * @Author: jeecg-boot * @Date: 2025-07-04 * @Version: V1.0 */ @Api(tags="ç©ææå¨ç³è¯·") * @Description: ç©ææå¨ç³è¯· * @Author: jeecg-boot * @Date: 2025-07-04 * @Version: V1.0 */ @Api(tags = "ç©ææå¨ç³è¯·") @RestController @RequestMapping("/mes/mesMaterialTransferRequest") @Slf4j public class MesMaterialTransferRequestController extends JeecgController<MesMaterialTransferRequest, IMesMaterialTransferRequestService> { @Autowired private IMesMaterialTransferRequestService mesMaterialTransferRequestService; @Autowired private IMesMaterialTransferRequestService mesMaterialTransferRequestService; @Autowired private ISysBusinessCodeRuleService businessCodeRuleService; /** * å页å表æ¥è¯¢ * * @param mesMaterialTransferRequest * @param pageNo * @param pageSize * @param req * @return */ //@AutoLog(value = "ç©ææå¨ç³è¯·-å页å表æ¥è¯¢") @ApiOperation(value="ç©ææå¨ç³è¯·-å页å表æ¥è¯¢", notes="ç©ææå¨ç³è¯·-å页å表æ¥è¯¢") @GetMapping(value = "/list") public Result<IPage<MesMaterialTransferRequest>> queryPageList(MesMaterialTransferRequest mesMaterialTransferRequest, @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, HttpServletRequest req) { QueryWrapper<MesMaterialTransferRequest> queryWrapper = QueryGenerator.initQueryWrapper(mesMaterialTransferRequest, req.getParameterMap()); Page<MesMaterialTransferRequest> page = new Page<MesMaterialTransferRequest>(pageNo, pageSize); IPage<MesMaterialTransferRequest> pageList = mesMaterialTransferRequestService.page(page, queryWrapper); return Result.OK(pageList); } /** * å页å表æ¥è¯¢ * * @param mesMaterialTransferRequest * @param pageNo * @param pageSize * @param req * @return */ //@AutoLog(value = "ç©ææå¨ç³è¯·-å页å表æ¥è¯¢") @ApiOperation(value = "ç©ææå¨ç³è¯·-å页å表æ¥è¯¢", notes = "ç©ææå¨ç³è¯·-å页å表æ¥è¯¢") @GetMapping(value = "/list") public Result<IPage<MesMaterialTransferRequest>> queryPageList(MesMaterialTransferRequest mesMaterialTransferRequest, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) { QueryWrapper<MesMaterialTransferRequest> queryWrapper = QueryGenerator.initQueryWrapper(mesMaterialTransferRequest, req.getParameterMap()); Page<MesMaterialTransferRequest> page = new Page<MesMaterialTransferRequest>(pageNo, pageSize); IPage<MesMaterialTransferRequest> pageList = mesMaterialTransferRequestService.page(page, queryWrapper); return Result.OK(pageList); } /** * æ·»å * * @param mesMaterialTransferRequest * @return */ @AutoLog(value = "ç©ææå¨ç³è¯·-æ·»å ") @ApiOperation(value="ç©ææå¨ç³è¯·-æ·»å ", notes="ç©ææå¨ç³è¯·-æ·»å ") //@RequiresPermissions("org.jeecg.modules:mes_material_transfer_request:add") @PostMapping(value = "/add") public Result<String> add(@RequestBody MesMaterialTransferRequest mesMaterialTransferRequest) { mesMaterialTransferRequestService.save(mesMaterialTransferRequest); return Result.OK("æ·»å æåï¼"); } /** * æ·»å * * @param request * @return */ @AutoLog(value = "ç©ææå¨ç³è¯·-æ·»å ") @ApiOperation(value = "ç©ææå¨ç³è¯·-æ·»å ", notes = "ç©ææå¨ç³è¯·-æ·»å ") @PostMapping(value = "/add") public Result<String> add(@RequestBody MesMaterialTransferRequest request) { String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.MATERIAL_TRANSFER_CODE_RULE); request.setRequestCode(codeSeq); boolean b = mesMaterialTransferRequestService.addMaterialTransferRequest(request); if(!b) { return Result.error("æ·»å 失败ï¼"); } return Result.OK("æ·»å æåï¼"); } /** * ç¼è¾ * * @param mesMaterialTransferRequest * @return */ @AutoLog(value = "ç©ææå¨ç³è¯·-ç¼è¾") @ApiOperation(value="ç©ææå¨ç³è¯·-ç¼è¾", notes="ç©ææå¨ç³è¯·-ç¼è¾") //@RequiresPermissions("org.jeecg.modules:mes_material_transfer_request:edit") @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) public Result<String> edit(@RequestBody MesMaterialTransferRequest mesMaterialTransferRequest) { mesMaterialTransferRequestService.updateById(mesMaterialTransferRequest); return Result.OK("ç¼è¾æå!"); } /** * ç¼è¾ * * @param mesMaterialTransferRequest * @return */ @AutoLog(value = "ç©ææå¨ç³è¯·-ç¼è¾") @ApiOperation(value = "ç©ææå¨ç³è¯·-ç¼è¾", notes = "ç©ææå¨ç³è¯·-ç¼è¾") //@RequiresPermissions("org.jeecg.modules:mes_material_transfer_request:edit") @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) public Result<String> edit(@RequestBody MesMaterialTransferRequest mesMaterialTransferRequest) { mesMaterialTransferRequestService.updateById(mesMaterialTransferRequest); return Result.OK("ç¼è¾æå!"); } /** * éè¿idå é¤ * * @param id * @return */ @AutoLog(value = "ç©ææå¨ç³è¯·-éè¿idå é¤") @ApiOperation(value="ç©ææå¨ç³è¯·-éè¿idå é¤", notes="ç©ææå¨ç³è¯·-éè¿idå é¤") //@RequiresPermissions("org.jeecg.modules:mes_material_transfer_request:delete") @DeleteMapping(value = "/delete") public Result<String> delete(@RequestParam(name="id",required=true) String id) { mesMaterialTransferRequestService.removeById(id); return Result.OK("å 餿å!"); } /** * éè¿idå é¤ * * @param id * @return */ @AutoLog(value = "ç©ææå¨ç³è¯·-éè¿idå é¤") @ApiOperation(value = "ç©ææå¨ç³è¯·-éè¿idå é¤", notes = "ç©ææå¨ç³è¯·-éè¿idå é¤") //@RequiresPermissions("org.jeecg.modules:mes_material_transfer_request:delete") @DeleteMapping(value = "/delete") public Result<String> delete(@RequestParam(name = "id", required = true) String id) { mesMaterialTransferRequestService.removeById(id); return Result.OK("å 餿å!"); } /** * æ¹éå é¤ * * @param ids * @return */ @AutoLog(value = "ç©ææå¨ç³è¯·-æ¹éå é¤") @ApiOperation(value="ç©ææå¨ç³è¯·-æ¹éå é¤", notes="ç©ææå¨ç³è¯·-æ¹éå é¤") //@RequiresPermissions("org.jeecg.modules:mes_material_transfer_request:deleteBatch") @DeleteMapping(value = "/deleteBatch") public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) { this.mesMaterialTransferRequestService.removeByIds(Arrays.asList(ids.split(","))); return Result.OK("æ¹éå 餿å!"); } /** * æ¹éå é¤ * * @param ids * @return */ @AutoLog(value = "ç©ææå¨ç³è¯·-æ¹éå é¤") @ApiOperation(value = "ç©ææå¨ç³è¯·-æ¹éå é¤", notes = "ç©ææå¨ç³è¯·-æ¹éå é¤") //@RequiresPermissions("org.jeecg.modules:mes_material_transfer_request:deleteBatch") @DeleteMapping(value = "/deleteBatch") public Result<String> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { this.mesMaterialTransferRequestService.removeByIds(Arrays.asList(ids.split(","))); return Result.OK("æ¹éå 餿å!"); } /** * éè¿idæ¥è¯¢ * * @param id * @return */ //@AutoLog(value = "ç©ææå¨ç³è¯·-éè¿idæ¥è¯¢") @ApiOperation(value="ç©ææå¨ç³è¯·-éè¿idæ¥è¯¢", notes="ç©ææå¨ç³è¯·-éè¿idæ¥è¯¢") @GetMapping(value = "/queryById") public Result<MesMaterialTransferRequest> queryById(@RequestParam(name="id",required=true) String id) { MesMaterialTransferRequest mesMaterialTransferRequest = mesMaterialTransferRequestService.getById(id); if(mesMaterialTransferRequest==null) { return Result.error("æªæ¾å°å¯¹åºæ°æ®"); } return Result.OK(mesMaterialTransferRequest); } /** * éè¿idæ¥è¯¢ * * @param id * @return */ //@AutoLog(value = "ç©ææå¨ç³è¯·-éè¿idæ¥è¯¢") @ApiOperation(value = "ç©ææå¨ç³è¯·-éè¿idæ¥è¯¢", notes = "ç©ææå¨ç³è¯·-éè¿idæ¥è¯¢") @GetMapping(value = "/queryById") public Result<MesMaterialTransferRequest> queryById(@RequestParam(name = "id", required = true) String id) { MesMaterialTransferRequest mesMaterialTransferRequest = mesMaterialTransferRequestService.getById(id); if (mesMaterialTransferRequest == null) { return Result.error("æªæ¾å°å¯¹åºæ°æ®"); } return Result.OK(mesMaterialTransferRequest); } /** * 导åºexcel * * @param request * @param mesMaterialTransferRequest */ //@RequiresPermissions("org.jeecg.modules:mes_material_transfer_request:exportXls") @RequestMapping(value = "/exportXls") public ModelAndView exportXls(HttpServletRequest request, MesMaterialTransferRequest mesMaterialTransferRequest) { return super.exportXls(request, mesMaterialTransferRequest, MesMaterialTransferRequest.class, "ç©ææå¨ç³è¯·"); } /** * 导åºexcel * * @param request * @param mesMaterialTransferRequest */ //@RequiresPermissions("org.jeecg.modules:mes_material_transfer_request:exportXls") @RequestMapping(value = "/exportXls") public ModelAndView exportXls(HttpServletRequest request, MesMaterialTransferRequest mesMaterialTransferRequest) { return super.exportXls(request, mesMaterialTransferRequest, MesMaterialTransferRequest.class, "ç©ææå¨ç³è¯·"); } /** /** * éè¿excelå¯¼å ¥æ°æ® * * @param request * @param response * @return */ //@RequiresPermissions("mes_material_transfer_request:importExcel") @RequestMapping(value = "/importExcel", method = RequestMethod.POST) public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { return super.importExcel(request, response, MesMaterialTransferRequest.class); } /* * éè¿workOrderId æ¥è¯¢mesMaterialTransferRequestæ°æ® *@param workOrderId * */ * * @param request * @param response * @return */ //@RequiresPermissions("mes_material_transfer_request:importExcel") @RequestMapping(value = "/importExcel", method = RequestMethod.POST) public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { return super.importExcel(request, response, MesMaterialTransferRequest.class); } /* * éè¿workOrderId æ¥è¯¢mesMaterialTransferRequestæ°æ® *@param workOrderId * */ @GetMapping(value = "/queryMaterialTransferRequestByWorkOrderId") public Result<?> queryMaterialTransferRequestByWorkOrderId(@RequestParam(name="workOrderId",required=true) String workOrderId) { return Result.OK(mesMaterialTransferRequestService.queryMaterialTransferRequestByWorkOrderId(workOrderId)); public Result<?> queryMaterialTransferRequestByWorkOrderId(@RequestParam(name = "workOrderId", required = true) String workOrderId) { return Result.OK(mesMaterialTransferRequestService.queryMaterialTransferRequestByWorkOrderId(workOrderId)); } } src/main/java/org/jeecg/modules/mes/entity/MesMaterialTransferRequest.java
@@ -57,16 +57,17 @@ private String requestCode; /**å·¥åID*/ @ApiModelProperty(value = "å·¥åID") @Dict(dictTable = "mes_production_work_order", dicText = "work_order_code", dicCode = "id") private String workOrderId; /**SAPé¢çå·*/ @ApiModelProperty(value = "SAPé¢çå·") private String reservationCode; /**åå¸ç¶æ*/ @Dict(dicCode = "publish_status") @Dict(dicCode = "material_transfer_publish_status") @ApiModelProperty(value = "åå¸ç¶æ") private String publishStatus; /**请æ±ç¶æ*/ @Dict(dicCode = "request_status") @Dict(dicCode = "material_transfer_request_status") @ApiModelProperty(value = "请æ±ç¶æ") private String requestStatus; /**è¯·æ±æ¶é´*/ @@ -74,19 +75,21 @@ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "è¯·æ±æ¶é´") private Date requestTime; /**ååºåå°*/ @ApiModelProperty(value = "ååºåå°") /**èµ·è¿åºåå°*/ @ApiModelProperty(value = "èµ·è¿åºåå°") @Dict(dicCode = "original_warehouse_list") private String originalWarehouseId; /**ç®æ åºåå°*/ @ApiModelProperty(value = "ç®æ åºåå°") @Dict(dictTable = "base_line_side_warehouse", dicText = "warehouse_name", dicCode = "id") private String targetWarehouseId; /**ä¼å çº§ï¼æå¨ç±»åï¼*/ @Dict(dicCode = "material_transfer_category") @ApiModelProperty(value = "æå¨ç±»å") private String materialTransferCategory; /**ææé éæ¶é´*/ @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") @DateTimeFormat(pattern="yyyy-MM-dd") @ApiModelProperty(value = "ææé éæ¶é´") private Date latestDeliveryTime; /**ç©æç¼ç */ @@ -101,17 +104,4 @@ /**å®é æå¨æ°é*/ @ApiModelProperty(value = "å®é æå¨æ°é") private Double actualQuantity; /**车é´å©ä½æ°é*/ @ApiModelProperty(value = "车é´å©ä½æ°é") private Double remainingQuantity; @TableField(exist = false) @ApiModelProperty(value = "å·¥åå·") private String workOrderCode; @TableField(exist = false) @ApiModelProperty(value = "ç®æ åºåå°") private String targetWarehouseName; @TableField(exist = false) @ApiModelProperty(value = "ååºåå°") private String originalWarehouseName; } src/main/java/org/jeecg/modules/mes/enums/MaterialTransferPublishStatus.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,10 @@ package org.jeecg.modules.mes.enums; /** * ç©ææå¨ åå¸ç¶æ */ public enum MaterialTransferPublishStatus { WAIT_PUBLISH, //å¾ åå¸ PUBLISHED, //å·²åå¸ ; } src/main/java/org/jeecg/modules/mes/enums/MaterialTransferRequestStatus.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,11 @@ package org.jeecg.modules.mes.enums; /** * ç©ææå¨è¯·æ±ç¶æ */ public enum MaterialTransferRequestStatus { WAIT_REQUEST, //å¾ è¯·æ± REQUESTED, //å·²è¯·æ± CHECKED_IN, //å·²å ¥åº ; } src/main/java/org/jeecg/modules/mes/service/IMesMaterialTransferRequestService.java
@@ -13,4 +13,10 @@ */ public interface IMesMaterialTransferRequestService extends IService<MesMaterialTransferRequest> { List<MesMaterialTransferRequest> queryMaterialTransferRequestByWorkOrderId(String workOrderId); /** * ç©ææå¨æ°å¢ * @param request */ boolean addMaterialTransferRequest(MesMaterialTransferRequest request); } src/main/java/org/jeecg/modules/mes/service/impl/MesMaterialTransferRequestServiceImpl.java
@@ -1,10 +1,19 @@ package org.jeecg.modules.mes.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.jeecg.common.constant.CommonConstant; import org.jeecg.common.exception.JeecgBootException; import org.jeecg.modules.mes.entity.MesMaterialTransferRequest; import org.jeecg.modules.mes.entity.MesProductionWorkOrder; import org.jeecg.modules.mes.enums.MaterialTransferPublishStatus; import org.jeecg.modules.mes.enums.MaterialTransferRequestStatus; import org.jeecg.modules.mes.enums.ProductionWorkOrderStatus; import org.jeecg.modules.mes.mapper.MesMaterialTransferRequestMapper; import org.jeecg.modules.mes.service.IMesMaterialTransferRequestService; import org.jeecg.modules.mes.service.IMesProductionWorkOrderService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; @@ -17,8 +26,28 @@ @Service public class MesMaterialTransferRequestServiceImpl extends ServiceImpl<MesMaterialTransferRequestMapper, MesMaterialTransferRequest> implements IMesMaterialTransferRequestService { @Autowired private IMesProductionWorkOrderService productionWorkOrderService; @Override public List<MesMaterialTransferRequest> queryMaterialTransferRequestByWorkOrderId(String workOrderId) { return baseMapper.queryMaterialTransferRequestByWorkOrderId(workOrderId); } @Override @Transactional(rollbackFor = Exception.class) public boolean addMaterialTransferRequest(MesMaterialTransferRequest request) { MesProductionWorkOrder order = productionWorkOrderService.getById(request.getWorkOrderId()); if(order == null){ throw new JeecgBootException("æäº§å·¥åä¸åå¨"); } if(!ProductionWorkOrderStatus.PUBLISHED.name().equals(order.getWorkOrderStatus())){ throw new JeecgBootException("åªæåå¸ç¶æçæäº§å·¥åæå¯ç³è¯·ç©æ"); } request.setPublishStatus(MaterialTransferPublishStatus.WAIT_PUBLISH.name()); request.setRequestStatus(MaterialTransferRequestStatus.WAIT_REQUEST.name()); request.setDelFlag(CommonConstant.DEL_FLAG_0); this.getBaseMapper().insert(request); return true; } } src/main/java/org/jeecg/modules/pms/controller/PmsProcessBillMaterialsDetailController.java
@@ -36,4 +36,17 @@ return Result.OK(list); } /** * ç©ææå¨éæ©ç©æä½¿ç¨ * æ ¹æ®æåãåæåç©æå· æ¥è¯¢å¯éæ©çç©ææ°æ® * @param materialNumber æåãåæåç©æç¼ç * @return */ @ApiOperation(value = "ç©ææ¸ å-éè¿ç©æå·æ¥è¯¢", notes = "ç©ææ¸ å-éè¿ç©æå·æ¥è¯¢") @GetMapping(value = "/queryByMaterialNumber") public Result<?> queryByMaterialNumber(@RequestParam(name = "materialNumber") String materialNumber) { List<PmsProcessBillMaterialsDetail> list = pmsProcessBillMaterialsDetailService.queryByMaterialNumber(materialNumber); return Result.OK(list); } } src/main/java/org/jeecg/modules/pms/mapper/PmsProcessBillMaterialsDetailMapper.java
@@ -5,6 +5,7 @@ import org.apache.ibatis.annotations.Param; import org.jeecg.modules.pms.entity.PmsProcessBillMaterialsDetail; import java.util.List; import java.util.Map; /** @@ -16,4 +17,11 @@ public interface PmsProcessBillMaterialsDetailMapper extends BaseMapper<PmsProcessBillMaterialsDetail> { PmsProcessBillMaterialsDetail queryByMaterialId(@Param("materialId") String materialId); IPage<Map<String, Object>> getpmsProcessBillMaterialsDetailListData(IPage<Map> pageData, @Param("params")Map<String, String> paramMap); /** * ç©ææå¨éæ©ç©æä½¿ç¨ * æ ¹æ®æåãåæåç©æå· æ¥è¯¢å¯éæ©çç©ææ°æ® * @param materialNumber æåãåæåç©æç¼ç * @return */ List<PmsProcessBillMaterialsDetail> queryByMaterialNumber(String materialNumber); } src/main/java/org/jeecg/modules/pms/mapper/xml/PmsProcessBillMaterialsDetailMapper.xml
@@ -14,4 +14,13 @@ AND material_name LIKE CONCAT('%', #{params.materialName}, '%') </if> </select> <select id="queryByMaterialNumber" resultType="org.jeecg.modules.pms.entity.PmsProcessBillMaterialsDetail"> select DISTINCT t1.material_number, t1.material_name, t1.production_unit from pms_process_bill_materials_detail t1 where EXISTS(select t2.id from pms_process_bill_materials t2 where t2.material_number = #{materialNumber} and t1.material_id = t2.id) </select> </mapper> src/main/java/org/jeecg/modules/pms/service/IPmsProcessBillMaterialsDetailService.java
@@ -13,6 +13,11 @@ * @Version: V1.0 */ public interface IPmsProcessBillMaterialsDetailService extends IService<PmsProcessBillMaterialsDetail> { /** * æ ¹æ®ç©æIdæ¥è¯¢æç» * @param materialId * @return */ List<PmsProcessBillMaterialsDetail> queryByMaterialId(String materialId); /** @@ -27,4 +32,12 @@ * @param collect */ void saveBatchDetail(String materialsId, List<OrderBomDTO> collect); /** * ç©ææå¨éæ©ç©æä½¿ç¨ * æ ¹æ®æåãåæåç©æå· æ¥è¯¢å¯éæ©çç©ææ°æ® * @param materialNumber æåãåæåç©æç¼ç * @return */ List<PmsProcessBillMaterialsDetail> queryByMaterialNumber(String materialNumber); } src/main/java/org/jeecg/modules/pms/service/impl/PmsProcessBillMaterialsDetailServiceImpl.java
@@ -3,6 +3,7 @@ import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.lang3.StringUtils; import org.jeecg.modules.pms.entity.PmsProcessBillMaterialsDetail; import org.jeecg.modules.pms.mapper.PmsProcessBillMaterialsDetailMapper; import org.jeecg.modules.pms.service.IPmsProcessBillMaterialsDetailService; @@ -10,6 +11,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.Collections; import java.util.List; import java.util.stream.Collectors; @@ -46,4 +48,12 @@ List<PmsProcessBillMaterialsDetail> list = collect.stream().map(orderBomDTO -> new PmsProcessBillMaterialsDetail(materialsId, orderBomDTO)).collect(Collectors.toList()); super.saveBatch(list); } @Override public List<PmsProcessBillMaterialsDetail> queryByMaterialNumber(String materialNumber) { if (StringUtils.isBlank(materialNumber)) { return Collections.emptyList(); } return this.getBaseMapper().queryByMaterialNumber(materialNumber); } }