| doc/宁夏-中盛建材.sql | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/production/controller/ProcessRouteController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/production/controller/ProcessRouteItemController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/production/dto/ProcessRouteDto.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/production/dto/ProcessRouteItemDto.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/production/pojo/ProcessRoute.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/production/service/ProcessRouteService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/production/service/impl/ProcessRouteItemServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/production/service/impl/ProcessRouteServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/resources/mapper/production/ProcessRouteMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
doc/ÄþÏÄ-ÖÐÊ¢½¨²Ä.sql
@@ -273,3 +273,6 @@ ALTER TABLE `product_bom` ADD COLUMN `dict_code` bigint NOT NULL COMMENT 'å ³èåå ¸æ°æ®ç¼ç ï¼sys_dict_data.dict_codeï¼'; ALTER TABLE `product_bom` ADD INDEX `idx_dict_code` (`dict_code`); ALTER TABLE `product-inventory-management-zsjc`.`process_route` ADD COLUMN `dict_code` bigint NOT NULL COMMENT '产åç±»ååå ¸ç¼ç ' AFTER `status`; src/main/java/com/ruoyi/production/controller/ProcessRouteController.java
@@ -2,8 +2,10 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.framework.web.domain.AjaxResult; import com.ruoyi.framework.web.domain.R; import com.ruoyi.production.dto.ProcessRouteDto; import com.ruoyi.production.dto.ProductStructureDto; import com.ruoyi.production.pojo.ProcessRoute; import com.ruoyi.production.pojo.ProcessRouteItem; import com.ruoyi.production.service.ProcessRouteItemService; @@ -14,34 +16,44 @@ import org.springframework.web.bind.annotation.*; import java.util.Arrays; import java.util.List; @RestController @RequestMapping("processRoute") @RequestMapping("/processRoute") @Api(tags = "å·¥èºè·¯çº¿") public class ProcessRouteController { @Autowired private ProcessRouteService processRouteService; @GetMapping("page") @GetMapping("/page") @ApiOperation("å页æ¥è¯¢") public R page(Page<ProcessRouteDto> page, ProcessRouteDto processRouteDto) { return R.ok(processRouteService.pageProcessRouteDto(page, processRouteDto)); } @ApiOperation("æ°å¢å·¥èºè·¯çº¿") @PostMapping () @PostMapping("") public R add(@RequestBody ProcessRoute processRoute) { return R.ok(processRouteService.saveProcessRoute(processRoute)); } @ApiOperation("ä¿®æ¹å·¥èºè·¯çº¿") @PutMapping () @PutMapping("") public R update(@RequestBody ProcessRoute processRoute) { return R.ok(processRouteService.updateById(processRoute)); } @ApiOperation("å é¤å·¥èºè·¯çº¿") @DeleteMapping("/{ids}") public R delete(@PathVariable("ids") Long[] ids) { return R.ok(processRouteService.batchDelete(Arrays.asList(ids))); } @GetMapping("/getRouteBom/{id}") @ApiOperation("è·åå·¥èºè·¯çº¿ç»å®çBOMåé") public AjaxResult getRouteBom(@PathVariable Long id) { List<ProductStructureDto> list = processRouteService.getRouteBom(id); return AjaxResult.success(list); } } src/main/java/com/ruoyi/production/controller/ProcessRouteItemController.java
@@ -21,13 +21,13 @@ import java.util.List; @RestController @RequestMapping("processRouteItem") @RequestMapping("/processRouteItem") @Api(tags = "å·¥èºè·¯çº¿æç»") public class ProcessRouteItemController { @Autowired private ProcessRouteItemService processRouteItemService; @GetMapping("list") @GetMapping("/list") public R listProcessRouteItemDto(ProcessRouteItemDto processRouteItemDto) { return R.ok(processRouteItemService.listProcessRouteItemDto(processRouteItemDto)); } @@ -50,4 +50,5 @@ public AjaxResult batchDelete(@PathVariable("id") Long id) { return AjaxResult.success(processRouteItemService.batchDelete(id)); } } src/main/java/com/ruoyi/production/dto/ProcessRouteDto.java
@@ -11,8 +11,8 @@ private String productName; @ApiModelProperty("è§æ ¼") private String model; @ApiModelProperty("产åç±»å") private String dictLabel; private String bomNo; } src/main/java/com/ruoyi/production/dto/ProcessRouteItemDto.java
@@ -26,4 +26,8 @@ @ApiModelProperty("å·¥åºåæ°ä¸ªæ°") private Integer paramCount; @ApiModelProperty("产åç±»å") private String dictLabel; } src/main/java/com/ruoyi/production/pojo/ProcessRoute.java
@@ -44,4 +44,7 @@ @ApiModelProperty(value = "ç¶æï¼0-è稿ï¼1-å·²æ¹å") private Boolean status; @ApiModelProperty(value = "产åç±»ååå ¸ç¼ç ") private Long dictCode; } src/main/java/com/ruoyi/production/service/ProcessRouteService.java
@@ -4,8 +4,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.production.dto.ProcessRouteDto; import com.ruoyi.production.dto.ProductStructureDto; import com.ruoyi.production.pojo.ProcessRoute; import io.swagger.models.auth.In; import java.util.List; @@ -16,4 +16,6 @@ Integer saveProcessRoute(ProcessRoute processRoute); int batchDelete(List<Long> ids); List<ProductStructureDto> getRouteBom(Long id); } src/main/java/com/ruoyi/production/service/impl/ProcessRouteItemServiceImpl.java
@@ -11,7 +11,6 @@ import com.ruoyi.production.pojo.ProcessRouteItem; import com.ruoyi.production.pojo.ProcessRouteItemParam; import com.ruoyi.production.service.ProcessRouteItemService; import com.ruoyi.production.service.ProductMaterialSkuService; import lombok.AllArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,9 +28,6 @@ @Autowired private ProcessRouteItemParamMapper processRouteItemParamMapper; @Autowired private ProductMaterialSkuService productMaterialSkuService; @Override public List<ProcessRouteItemDto> listProcessRouteItemDto(ProcessRouteItemDto processRouteItemDto) { @@ -107,14 +103,7 @@ if (processRouteItem == null) { throw new ServiceException("æ°æ®ä¸è½ä¸ºç©º"); } if (processRouteItem.getProductModelId() != null) { Object product = productMaterialSkuService.getById(processRouteItem.getProductModelId()); if (product == null) { throw new ServiceException("æä½å¤±è´¥ï¼å ³èç产å(ID:" + processRouteItem.getProductModelId() + ")ä¸åå¨"); } } else { throw new ServiceException("产åIDä¸è½ä¸ºç©º"); } Long tenantId = SecurityUtils.getLoginUser().getTenantId(); processRouteItem.setTenantId(tenantId); src/main/java/com/ruoyi/production/service/impl/ProcessRouteServiceImpl.java
@@ -4,16 +4,19 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.exception.ServiceException; import com.ruoyi.production.dto.ProcessRouteDto; import com.ruoyi.production.dto.ProductStructureDto; import com.ruoyi.production.mapper.ProcessRouteItemMapper; import com.ruoyi.production.mapper.ProcessRouteMapper; import com.ruoyi.production.mapper.ProductOrderMapper; import com.ruoyi.production.mapper.ProductProcessRouteMapper; import com.ruoyi.production.pojo.ProcessRoute; import com.ruoyi.production.pojo.ProcessRouteItem; import com.ruoyi.production.pojo.ProductOrder; import com.ruoyi.production.pojo.ProductProcessRoute; import com.ruoyi.production.service.ProcessRouteService; import com.ruoyi.production.service.ProductStructureService; import com.ruoyi.project.system.domain.SysDictData; import com.ruoyi.project.system.mapper.SysDictDataMapper; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -22,7 +25,7 @@ import java.time.LocalDate; import java.time.format.DateTimeFormatter; import java.util.Arrays; import java.util.ArrayList; import java.util.List; @Service @@ -39,6 +42,13 @@ @Autowired private ProductOrderMapper productOrderMapper; @Autowired private ProductStructureService productStructureService; @Autowired private SysDictDataMapper sysDictDataMapper; @Override public IPage<ProcessRouteDto> pageProcessRouteDto(Page<ProcessRouteDto> page, ProcessRouteDto processRouteDto) { @@ -48,6 +58,14 @@ @Override @Transactional(rollbackFor = Exception.class) public Integer saveProcessRoute(ProcessRoute processRoute) { if (processRoute == null || processRoute.getDictCode() == null) { throw new ServiceException("æ°å¢å·¥èºè·¯çº¿å¤±è´¥,产åç±»åä¸è½ä¸ºç©º"); } SysDictData sysDictData = sysDictDataMapper.selectDictDataById(processRoute.getDictCode()); if (sysDictData == null) { throw new ServiceException("æ°å¢å·¥èºè·¯çº¿å¤±è´¥,产åç±»åä¸åå¨"); } save(processRoute); if (processRoute.getProcessRouteCode() == null || processRoute.getProcessRouteCode().trim().isEmpty()) { String dateStr = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyyMMdd")); @@ -70,4 +88,22 @@ processRouteItemMapper.delete(Wrappers.<ProcessRouteItem>lambdaQuery().in(ProcessRouteItem::getRouteId, ids)); return processRouteMapper.deleteBatchIds(ids); } @Override public List<ProductStructureDto> getRouteBom(Long id) { if (id == null) { return new ArrayList<>(0); } ProcessRoute processRoute = getById(id); if (processRoute == null) { throw new ServiceException("å·¥èºè·¯çº¿ä¸åå¨"); } List<ProductStructureDto> list = productStructureService.listByBomId(processRoute.getBomId()); if (list == null) { list = new ArrayList<>(0); } return list; } } src/main/resources/mapper/production/ProcessRouteMapper.xml
@@ -17,16 +17,15 @@ <select id="pageProcessRouteDto" resultType="com.ruoyi.production.dto.ProcessRouteDto"> select ps.*, pm.product_name, pms.product_id, pms.model, pb.bom_no pb.bom_no, sdd.dict_label AS dictLabel from process_route ps left join product_bom pb on ps.bom_id = pb.id left join product_material_sku pms on ps.product_model_id = pms.id left join product_material pm on pms.product_id = pm.id <where> <if test="c.model != null and c.model != ''"> and pms.model like concat('%', #{c.model}, '%') left join sys_dict_data sdd on sdd.dict_code = ps.dict_code where 1= 1 <if test="c.dictCode != null"> and ps.dict_code = #{c.dictCode} </if> </where> order by ps.id </select>