【品质异常通知单审核】增加4个字段(生产数量、检验数量、解决方案、处罚意见)

dev
siontion 4 months ago
parent 6a72dab0ad
commit 907a21a3f8

@ -1,106 +1,123 @@
package com.chanko.yunxi.mes.module.biz.controller.admin.saleorderpackingclause; package com.chanko.yunxi.mes.module.biz.controller.admin.saleorderpackingclause;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import javax.validation.constraints.*; import javax.validation.constraints.*;
import javax.validation.*; import javax.validation.*;
import javax.servlet.http.*; import javax.servlet.http.*;
import java.util.*; import java.util.*;
import java.io.IOException; import java.io.IOException;
import com.chanko.yunxi.mes.framework.common.pojo.PageParam; import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
import com.chanko.yunxi.mes.framework.common.pojo.PageResult; import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
import com.chanko.yunxi.mes.framework.common.pojo.CommonResult; import com.chanko.yunxi.mes.framework.common.pojo.CommonResult;
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils; import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success; import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success;
import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils; import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils;
import com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog; import com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog;
import static com.chanko.yunxi.mes.framework.operatelog.core.enums.OperateTypeEnum.*; import static com.chanko.yunxi.mes.framework.operatelog.core.enums.OperateTypeEnum.*;
import com.chanko.yunxi.mes.module.biz.controller.admin.saleorderpackingclause.vo.*; import com.chanko.yunxi.mes.module.biz.controller.admin.saleorderpackingclause.vo.*;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.saleorderpackingclause.SaleOrderPackingClauseDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.saleorderpackingclause.SaleOrderPackingClauseDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.saleorderpackingclausedetail.SaleOrderPackingClauseDetailDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.saleorderpackingclausedetail.SaleOrderPackingClauseDetailDO;
import com.chanko.yunxi.mes.module.biz.service.saleorderpackingclause.SaleOrderPackingClauseService; import com.chanko.yunxi.mes.module.biz.service.saleorderpackingclause.SaleOrderPackingClauseService;
@Tag(name = "管理后台 - 生产订单包装规则") @Tag(name = "管理后台 - 生产订单包装规则")
@RestController @RestController
@RequestMapping("/biz/sale-order-packing-clause") @RequestMapping("/biz/sale-order-packing-clause")
@Validated @Validated
public class SaleOrderPackingClauseController { public class SaleOrderPackingClauseController {
@Resource @Resource
private SaleOrderPackingClauseService saleOrderPackingClauseService; private SaleOrderPackingClauseService saleOrderPackingClauseService;
@PostMapping("/create")
@Operation(summary = "创建生产订单包装规则") @PostMapping("/save")
@PreAuthorize("@ss.hasPermission('biz:sale-order-packing-clause:create')") @Operation(summary = "创建生产订单包装规则")
public CommonResult<Long> createSaleOrderPackingClause(@Valid @RequestBody SaleOrderPackingClauseSaveReqVO createReqVO) { @PreAuthorize("@ss.hasPermission('biz:sale-order-packing-clause:create')")
return success(saleOrderPackingClauseService.createSaleOrderPackingClause(createReqVO)); public CommonResult<Boolean> saveSaleOrderPackingClause(@Valid @RequestBody List<SaleOrderPackingClauseSaveReqVO> saveReqVO) {
}
saveReqVO.forEach(vo->{
@PutMapping("/update") if(vo.getId()==null || vo.getId()==0){
@Operation(summary = "更新生产订单包装规则") saleOrderPackingClauseService.createSaleOrderPackingClause(vo);
@PreAuthorize("@ss.hasPermission('biz:sale-order-packing-clause:update')") }else{
public CommonResult<Boolean> updateSaleOrderPackingClause(@Valid @RequestBody SaleOrderPackingClauseSaveReqVO updateReqVO) { saleOrderPackingClauseService.updateSaleOrderPackingClause(vo);
saleOrderPackingClauseService.updateSaleOrderPackingClause(updateReqVO); }
return success(true); });
}
return success(true);
@DeleteMapping("/delete") }
@Operation(summary = "删除生产订单包装规则")
@Parameter(name = "id", description = "编号", required = true) @PostMapping("/create")
@PreAuthorize("@ss.hasPermission('biz:sale-order-packing-clause:delete')") @Operation(summary = "创建生产订单包装规则")
public CommonResult<Boolean> deleteSaleOrderPackingClause(@RequestParam("id") Long id) { @PreAuthorize("@ss.hasPermission('biz:sale-order-packing-clause:create')")
saleOrderPackingClauseService.deleteSaleOrderPackingClause(id); public CommonResult<Long> createSaleOrderPackingClause(@Valid @RequestBody SaleOrderPackingClauseSaveReqVO createReqVO) {
return success(true); return success(saleOrderPackingClauseService.createSaleOrderPackingClause(createReqVO));
} }
@GetMapping("/get") @PutMapping("/update")
@Operation(summary = "获得生产订单包装规则") @Operation(summary = "更新生产订单包装规则")
@Parameter(name = "id", description = "编号", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('biz:sale-order-packing-clause:update')")
@PreAuthorize("@ss.hasPermission('biz:sale-order-packing-clause:query')") public CommonResult<Boolean> updateSaleOrderPackingClause(@Valid @RequestBody SaleOrderPackingClauseSaveReqVO updateReqVO) {
public CommonResult<SaleOrderPackingClauseRespVO> getSaleOrderPackingClause(@RequestParam("id") Long id) { saleOrderPackingClauseService.updateSaleOrderPackingClause(updateReqVO);
SaleOrderPackingClauseDO saleOrderPackingClause = saleOrderPackingClauseService.getSaleOrderPackingClause(id); return success(true);
return success(BeanUtils.toBean(saleOrderPackingClause, SaleOrderPackingClauseRespVO.class)); }
}
@DeleteMapping("/delete")
@GetMapping("/page") @Operation(summary = "删除生产订单包装规则")
@Operation(summary = "获得生产订单包装规则分页") @Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('biz:sale-order-packing-clause:query')") @PreAuthorize("@ss.hasPermission('biz:sale-order-packing-clause:delete')")
public CommonResult<PageResult<SaleOrderPackingClauseRespVO>> getSaleOrderPackingClausePage(@Valid SaleOrderPackingClausePageReqVO pageReqVO) { public CommonResult<Boolean> deleteSaleOrderPackingClause(@RequestParam("id") Long id) {
PageResult<SaleOrderPackingClauseDO> pageResult = saleOrderPackingClauseService.getSaleOrderPackingClausePage(pageReqVO); saleOrderPackingClauseService.deleteSaleOrderPackingClause(id);
return success(BeanUtils.toBean(pageResult, SaleOrderPackingClauseRespVO.class)); return success(true);
} }
@GetMapping("/export-excel") @GetMapping("/get")
@Operation(summary = "导出生产订单包装规则 Excel") @Operation(summary = "获得生产订单包装规则")
@PreAuthorize("@ss.hasPermission('biz:sale-order-packing-clause:export')") @Parameter(name = "id", description = "编号", required = true, example = "1024")
@OperateLog(type = EXPORT) @PreAuthorize("@ss.hasPermission('biz:sale-order-packing-clause:query')")
public void exportSaleOrderPackingClauseExcel(@Valid SaleOrderPackingClausePageReqVO pageReqVO, public CommonResult<SaleOrderPackingClauseRespVO> getSaleOrderPackingClause(@RequestParam("id") Long id) {
HttpServletResponse response) throws IOException { SaleOrderPackingClauseDO saleOrderPackingClause = saleOrderPackingClauseService.getSaleOrderPackingClause(id);
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); return success(BeanUtils.toBean(saleOrderPackingClause, SaleOrderPackingClauseRespVO.class));
List<SaleOrderPackingClauseDO> list = saleOrderPackingClauseService.getSaleOrderPackingClausePage(pageReqVO).getList(); }
// 导出 Excel
ExcelUtils.write(response, "生产订单包装规则.xls", "数据", SaleOrderPackingClauseRespVO.class, @GetMapping("/page")
BeanUtils.toBean(list, SaleOrderPackingClauseRespVO.class)); @Operation(summary = "获得生产订单包装规则分页")
} @PreAuthorize("@ss.hasPermission('biz:sale-order-packing-clause:query')")
public CommonResult<PageResult<SaleOrderPackingClauseRespVO>> getSaleOrderPackingClausePage(@Valid SaleOrderPackingClausePageReqVO pageReqVO) {
// ==================== 子表(生产订单包装规则明细) ==================== PageResult<SaleOrderPackingClauseDO> pageResult = saleOrderPackingClauseService.getSaleOrderPackingClausePage(pageReqVO);
return success(BeanUtils.toBean(pageResult, SaleOrderPackingClauseRespVO.class));
@GetMapping("/sale-order-packing-clause-detail/list-by-clause-id") }
@Operation(summary = "获得生产订单包装规则明细列表")
@Parameter(name = "clauseId", description = "项目订单包装规则id") @GetMapping("/export-excel")
@PreAuthorize("@ss.hasPermission('biz:sale-order-packing-clause:query')") @Operation(summary = "导出生产订单包装规则 Excel")
public CommonResult<List<SaleOrderPackingClauseDetailDO>> getSaleOrderPackingClauseDetailListByClauseId(@RequestParam("clauseId") Long clauseId) { @PreAuthorize("@ss.hasPermission('biz:sale-order-packing-clause:export')")
return success(saleOrderPackingClauseService.getSaleOrderPackingClauseDetailListByClauseId(clauseId)); @OperateLog(type = EXPORT)
} public void exportSaleOrderPackingClauseExcel(@Valid SaleOrderPackingClausePageReqVO pageReqVO,
HttpServletResponse response) throws IOException {
} pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<SaleOrderPackingClauseDO> list = saleOrderPackingClauseService.getSaleOrderPackingClausePage(pageReqVO).getList();
// 导出 Excel
ExcelUtils.write(response, "生产订单包装规则.xls", "数据", SaleOrderPackingClauseRespVO.class,
BeanUtils.toBean(list, SaleOrderPackingClauseRespVO.class));
}
// ==================== 子表(生产订单包装规则明细) ====================
@GetMapping("/sale-order-packing-clause-detail/list-by-clause-id")
@Operation(summary = "获得生产订单包装规则明细列表")
@Parameter(name = "clauseId", description = "项目订单包装规则id")
@PreAuthorize("@ss.hasPermission('biz:sale-order-packing-clause:query')")
public CommonResult<List<SaleOrderPackingClauseDetailDO>> getSaleOrderPackingClauseDetailListByClauseId(@RequestParam("clauseId") Long clauseId) {
return success(saleOrderPackingClauseService.getSaleOrderPackingClauseDetailListByClauseId(clauseId));
}
}

@ -73,4 +73,13 @@ public class UnqualifiedNotificationSaveReqVO {
@Schema(description = "附件列表") @Schema(description = "附件列表")
private List<UnqualifiedNotificationFileReqVO> mediaList; private List<UnqualifiedNotificationFileReqVO> mediaList;
@Schema(description = "生产数量")
private Integer productAmount;
@Schema(description = "检验数量")
private Integer checkAmount;
@Schema(description = "解决方案")
private String solutionContent;
@Schema(description = "处罚意见")
private String punishmentOpinion;
} }

@ -1,5 +1,6 @@
package com.chanko.yunxi.mes.module.biz.dal.dataobject.saleorderpackingclausedetail; package com.chanko.yunxi.mes.module.biz.dal.dataobject.saleorderpackingclausedetail;
import io.swagger.v3.oas.models.security.SecurityScheme;
import lombok.*; import lombok.*;
import java.util.*; import java.util.*;
import java.time.LocalDateTime; import java.time.LocalDateTime;
@ -44,4 +45,6 @@ public class SaleOrderPackingClauseDetailDO extends BaseDO {
*/ */
private Integer amount; private Integer amount;
private Integer sort;
} }

@ -368,6 +368,7 @@ CREATE TABLE `project_sale_order_packing_clause_detail` (
`clause_id` bigint(20) NOT NULL COMMENT '项目订单包装规则id', `clause_id` bigint(20) NOT NULL COMMENT '项目订单包装规则id',
`material_id` bigint(20) NOT NULL COMMENT '产品id', `material_id` bigint(20) NOT NULL COMMENT '产品id',
`amount` int(10) DEFAULT NULL COMMENT '每箱配比', `amount` int(10) DEFAULT NULL COMMENT '每箱配比',
`sort` int(10) DEFAULT NULL COMMENT '显示序号',
`creator` varchar(64) DEFAULT '' COMMENT '创建者', `creator` varchar(64) DEFAULT '' COMMENT '创建者',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`updater` varchar(64) DEFAULT '' COMMENT '更新者', `updater` varchar(64) DEFAULT '' COMMENT '更新者',

Loading…
Cancel
Save