feat(production): 添加uidNo字段并优化API路径配置
- 在多个DTO类中添加uidNo字段以支持唯一标识查询
- 更新SQL映射文件以包含uid_no字段的数据查询
- 为控制器API路径统一添加前缀斜杠以符合规范
- 修复质量检验服务中通过产品模型ID获取uidNo的逻辑
- 移除未使用的导入和注解以清理代码结构
| | |
| | | package com.ruoyi.production.controller; |
| | | |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.framework.web.domain.R; |
| | | import com.ruoyi.production.dto.ProcessRouteDto; |
| | | import com.ruoyi.production.pojo.ProcessRoute; |
| | | import com.ruoyi.production.pojo.ProcessRouteItem; |
| | | import com.ruoyi.production.service.ProcessRouteItemService; |
| | | import com.ruoyi.production.service.ProcessRouteService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | |
| | | import java.util.Arrays; |
| | | |
| | | @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("新增工艺路线") |
| | | @ApiOperation("/新增工艺路线") |
| | | @PostMapping () |
| | | public R add(@RequestBody ProcessRoute processRoute) { |
| | | return R.ok(processRouteService.saveProcessRoute(processRoute)); |
| | | } |
| | | @ApiOperation("修改工艺路线") |
| | | @ApiOperation("/修改工艺路线") |
| | | @PutMapping () |
| | | public R update(@RequestBody ProcessRoute processRoute) { |
| | | return R.ok(processRouteService.updateById(processRoute)); |
| | | } |
| | | @ApiOperation("删除工艺路线") |
| | | @ApiOperation("/删除工艺路线") |
| | | @DeleteMapping("/{ids}") |
| | | public R delete(@PathVariable("ids") Long[] ids) { |
| | | return R.ok(processRouteService.batchDelete(Arrays.asList(ids))); |
| | |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | @RequestMapping("productionProductInput") |
| | | @RequestMapping("/productionProductInput") |
| | | @RestController |
| | | @Api(value = "生产投入") |
| | | public class ProductionProductInputController { |
| | |
| | | @Autowired |
| | | private ProductionProductInputService productionProductInputService; |
| | | |
| | | @GetMapping("listPage") |
| | | @GetMapping("/listPage") |
| | | public R page(Page<ProductionProductInputDto> page, ProductionProductInputDto productionProductInputDto) { |
| | | return R.ok(productionProductInputService.listPageProductionProductInputDto(page, productionProductInputDto)); |
| | | } |
| | |
| | | private String model; |
| | | |
| | | private String bomNo; |
| | | private String uidNo; |
| | | } |
| | |
| | | import com.ruoyi.production.pojo.ProductBom; |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | |
| | | //分页查询回显数据 |
| | | @Data |
| | | public class ProductBomDto extends ProductBom { |
| | |
| | | //产品规格型号 |
| | | private String productModelName; |
| | | |
| | | private String uidNo; |
| | | } |
| | |
| | | |
| | | //是否发货(台账页面颜色控制) |
| | | private Boolean isFh; |
| | | |
| | | private String uidNo; |
| | | } |
| | |
| | | package com.ruoyi.production.dto; |
| | | |
| | | import com.ruoyi.framework.aspectj.lang.annotation.Excel; |
| | | import com.ruoyi.production.pojo.ProductWorkOrder; |
| | | import com.ruoyi.production.pojo.ProductWorkOrderFile; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.List; |
| | | |
| | | @EqualsAndHashCode(callSuper = true) |
| | | @Data |
| | |
| | | |
| | | @ApiModelProperty(value = "工单类型 正常 /返工返修") |
| | | private String workOrderType; |
| | | |
| | | private String uidNo; |
| | | } |
| | |
| | | |
| | | @ApiModelProperty(value = "单位") |
| | | private String unit; |
| | | private String uidNo; |
| | | } |
| | |
| | | //产品规格型号 |
| | | @Excel(name = "产品规格型号") |
| | | private String productModelName; |
| | | private String uidNo; |
| | | |
| | | //单位 |
| | | @Excel(name = "单位") |
| | |
| | | private String BatchNo; |
| | | private BigDecimal inspectedQuantity; |
| | | private String manufacturingTeam; |
| | | private String uidNO; |
| | | } |
| | |
| | | @ApiModelProperty("是否不合格处理自己新增") |
| | | @TableField(exist = false) |
| | | private Boolean method; |
| | | private String uidNo; |
| | | } |
| | |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.deepoove.poi.XWPFTemplate; |
| | | import com.deepoove.poi.config.Configure; |
| | | import com.ruoyi.basic.mapper.ProductModelMapper; |
| | | import com.ruoyi.basic.pojo.ProductModel; |
| | | import com.ruoyi.common.enums.StockInQualifiedRecordTypeEnum; |
| | | import com.ruoyi.common.enums.StockOutQualifiedRecordTypeEnum; |
| | | import com.ruoyi.common.utils.HackLoopTableRenderPolicy; |
| | | import com.ruoyi.common.utils.poi.ExcelUtil; |
| | | import com.ruoyi.procurementrecord.service.ProcurementRecordService; |
| | |
| | | private SalesLedgerProductMapper salesLedgerProductMapper; |
| | | |
| | | private ProcurementRecordService procurementRecordService; |
| | | |
| | | private ProductModelMapper productModelMapper; |
| | | |
| | | @Override |
| | | public int add(QualityInspectDto qualityInspectDto) { |
| | |
| | | |
| | | @Override |
| | | public IPage<QualityInspect> qualityInspectListPage(Page page, QualityInspect qualityInspect) { |
| | | IPage<QualityInspect> qualityInspectIPage = qualityInspectMapper.qualityInspectListPage(page, qualityInspect); |
| | | List<QualityInspect> records = qualityInspectIPage.getRecords(); |
| | | for (int i = 0; i < records.size(); i++) { |
| | | QualityInspect item = records.get(i); |
| | | ProductModel productModel = productModelMapper.selectById(item.getProductModelId()); |
| | | if (productModel == null) { |
| | | continue; |
| | | } |
| | | item.setUidNO(productModel.getUidNo()); |
| | | } |
| | | |
| | | return qualityInspectMapper.qualityInspectListPage(page, qualityInspect); |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | |
| | | @PostMapping("importStockInventory") |
| | | @PostMapping("/importStockInventory") |
| | | @ApiOperation("导入库存") |
| | | public R importStockInventory(MultipartFile file) { |
| | | return stockInventoryService.importStockInventory(file); |
| | |
| | | stockInventoryService.exportStockInventory(response, stockInventoryDto); |
| | | } |
| | | |
| | | @GetMapping("stockInventoryPage") |
| | | @GetMapping("/stockInventoryPage") |
| | | @ApiOperation("库存报表查询") |
| | | public R stockInventoryPage(Page page, StockInventoryDto stockInventoryDto) { |
| | | return R.ok(stockInventoryService.stockInventoryPage(stockInventoryDto,page)); |
| | | } |
| | | |
| | | @GetMapping("stockInAndOutRecord") |
| | | @GetMapping("/stockInAndOutRecord") |
| | | @ApiOperation("统计各个产品的入库和出库记录") |
| | | public R stockInAndOutRecord(StockInventoryDto stockInventoryDto,Page page) { |
| | | return R.ok(stockInventoryService.stockInAndOutRecord(stockInventoryDto,page)); |
| | |
| | | * 产品单位 |
| | | */ |
| | | private String unit; |
| | | private String uidNo; |
| | | |
| | | private String timeStr; |
| | | |
| | |
| | | |
| | | private String productName; |
| | | private String model; |
| | | private String uidNo; |
| | | private String unit; |
| | | |
| | | |
| | |
| | | * 产品规格 |
| | | */ |
| | | private String model; |
| | | private String uidNo; |
| | | /** |
| | | * 产品单位 |
| | | */ |
| | |
| | | </resultMap> |
| | | |
| | | <select id="pageProcessRouteDto" resultType="com.ruoyi.production.dto.ProcessRouteDto"> |
| | | select ps.*, p.product_name,pm.product_id,pm.model,pb.bom_no |
| | | select ps.*, p.product_name,pm.product_id,pm.model,pb.bom_no, pm.uid_no |
| | | from process_route ps |
| | | left join product_bom pb on ps.bom_id = pb.id |
| | | left join product_model pm on ps.product_model_id = pm.id |
| | |
| | | <select id="listPage" resultType="com.ruoyi.production.dto.ProductBomDto"> |
| | | select * from (select pb.*, |
| | | pm.model productModelName, |
| | | p.product_name productName |
| | | p.product_name productName, |
| | | pm.uid_no |
| | | from product_bom pb |
| | | left join product_model pm on pb.product_model_id = pm.id |
| | | left join product p on pm.product_id = p.id)A |
| | |
| | | p.product_name as product_category, |
| | | pm.model as specification_model, |
| | | pm.unit, |
| | | pm.uid_no, |
| | | ppr.process_route_code, |
| | | pb.bom_no, |
| | | ROUND(po.complete_quantity / po.quantity * 100, 2) AS completionStatus, |
| | |
| | | pp.NAME as processName, |
| | | pm.model, |
| | | pm.unit, |
| | | pm.uid_no, |
| | | p.product_name AS productName, |
| | | po.nps_no AS productOrderNpsNo, |
| | | ROUND(pwo.complete_quantity / pwo.plan_quantity * 100, 2) AS completionStatus, |
| | |
| | | pm.model as model, |
| | | ppm.product_no as productNo, |
| | | p.product_name, |
| | | pm.unit |
| | | pm.unit, |
| | | pm.uid_no |
| | | from |
| | | production_product_input ppi |
| | | left join production_product_main ppm on ppm.id = ppi.product_main_id |
| | |
| | | ppo.quantity, |
| | | ppo.scrap_qty, |
| | | pm.unit, |
| | | pm.uid_no, |
| | | sl.sales_contract_no salesContractNo |
| | | from |
| | | production_product_main ppm |
| | |
| | | qu.deal_result, |
| | | qu.deal_name, |
| | | qu.deal_time, |
| | | pm.uid_no, |
| | | CASE |
| | | WHEN qu.model = pm.id THEN pm.model |
| | | ELSE qu.model |
| | |
| | | p.product_name as product_name, |
| | | pm.model, |
| | | pm.unit, |
| | | pm.uid_no |
| | | u.nick_name as createBy |
| | | FROM stock_in_record as sir |
| | | LEFT JOIN product_model as pm on sir.product_model_id = pm.id |
| | |
| | | pm.model, |
| | | si.remark, |
| | | pm.unit, |
| | | pm.uidNo, |
| | | p.product_name |
| | | from stock_inventory si |
| | | left join product_model pm on si.product_model_id = pm.id |
| | |
| | | select sir.*,si.qualitity as current_stock, |
| | | pm.model, |
| | | pm.unit, |
| | | pm.uidNo, |
| | | p.product_name, |
| | | su.nick_name as create_by |
| | | from |
| | |
| | | p.product_name as productName, |
| | | pm.model, |
| | | pm.unit, |
| | | pm.uidNo, |
| | | u.nick_name as createBy |
| | | FROM stock_out_record as sor |
| | | LEFT JOIN product_model as pm on sor.product_model_id = pm.id |