Merge branch 'refs/heads/dev' into test

This commit is contained in:
hxt
2025-10-15 10:44:08 +08:00
20 changed files with 612 additions and 217 deletions

View File

@@ -22,4 +22,5 @@ public interface ErrorCodeConstants {
ErrorCode CONTRACT_STATUS_NOT_SUBMIT_APPROVAL = new ErrorCode(1_027_000_007, "{}状态合同不允许提交审核"); ErrorCode CONTRACT_STATUS_NOT_SUBMIT_APPROVAL = new ErrorCode(1_027_000_007, "{}状态合同不允许提交审核");
ErrorCode CONTRACT_STATUS_NOT_APPROVAL = new ErrorCode(1_027_000_008, "{}状态合同不允许审核"); ErrorCode CONTRACT_STATUS_NOT_APPROVAL = new ErrorCode(1_027_000_008, "{}状态合同不允许审核");
ErrorCode CONTRACT_ERP_COMPANY_PLEASE_BIND = new ErrorCode(1_027_000_009, "请先绑定{}ERP公司信息"); ErrorCode CONTRACT_ERP_COMPANY_PLEASE_BIND = new ErrorCode(1_027_000_009, "请先绑定{}ERP公司信息");
ErrorCode CONTRACT_STATUS_NOT_DELETE = new ErrorCode(1_027_000_010, "{}状态合同不允许删除");
} }

View File

@@ -11,6 +11,8 @@ public class TableFieldConstants {
public static final String ID = "ID"; public static final String ID = "ID";
/* 合同主信息表 */ /* 合同主信息表 */
// 系统合同编号;自动生成,校验唯一
public static final String BSE_CTRT_MAIN_SYS_CTRT_NUM = "SYS_CTRT_NUM";
// 合同名称;与ERP(HTMC)对应,校验唯一 // 合同名称;与ERP(HTMC)对应,校验唯一
public static final String BSE_CTRT_MAIN_CTRT_NAME = "CTRT_NAME"; public static final String BSE_CTRT_MAIN_CTRT_NAME = "CTRT_NAME";
public static final String BSE_CTRT_MAIN_CTRT_NAME_LABEL = "合同名称"; public static final String BSE_CTRT_MAIN_CTRT_NAME_LABEL = "合同名称";

View File

@@ -63,4 +63,8 @@ public enum DictEnum {
public String getRemark() { public String getRemark() {
return remark; return remark;
} }
public static DictEnum getByCode(String code, String dictType) {
return DictEnum.valueOf(dictType + "_" +code);
}
} }

View File

@@ -9,7 +9,6 @@ import com.zt.plat.module.contractorder.controller.admin.contract.vo.contract.*;
import com.zt.plat.module.contractorder.dal.dataobject.contract.ContractMainDO; import com.zt.plat.module.contractorder.dal.dataobject.contract.ContractMainDO;
import com.zt.plat.module.contractorder.service.contract.ContractService; import com.zt.plat.module.contractorder.service.contract.ContractService;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource; import jakarta.annotation.Resource;
import jakarta.validation.Valid; import jakarta.validation.Valid;
@@ -71,13 +70,20 @@ public class ContractController implements BusinessControllerMarker {
@GetMapping("/get") @GetMapping("/get")
@Operation(summary = "获得合同详情") @Operation(summary = "获得合同详情")
@Parameter(name = "id", description = "合同ID", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('base:contract:get')") @PreAuthorize("@ss.hasPermission('base:contract:get')")
public CommonResult<ContractRespVO> get(@RequestParam("id") Long id) { public CommonResult<ContractRespVO> get(@RequestParam("id") Long id) {
ContractRespVO contractRespVO = contractService.get(id); ContractRespVO contractRespVO = contractService.get(id);
return success(contractRespVO); return success(contractRespVO);
} }
@GetMapping("/get/by-system-contract-number")
@Operation(summary = "根据系统合同编号获得合同详情")
@PreAuthorize("@ss.hasPermission('base:contract:get')")
public CommonResult<ContractRespVO> getBySystemContractNumber(@RequestParam("systemContractNumber") String systemContractNumber) {
ContractRespVO contractRespVO = contractService.getBySystemContractNumber(systemContractNumber);
return success(contractRespVO);
}
@PutMapping("update") @PutMapping("update")
@Operation(summary = "修改合同") @Operation(summary = "修改合同")
@PreAuthorize("@ss.hasPermission('base:contract:update')") @PreAuthorize("@ss.hasPermission('base:contract:update')")
@@ -85,13 +91,11 @@ public class ContractController implements BusinessControllerMarker {
return success(contractService.update(reqVO)); return success(contractService.update(reqVO));
} }
// TODO
@DeleteMapping("/delete") @DeleteMapping("/delete")
@Operation(summary = "删除合同") @Operation(summary = "删除合同")
@Parameter(name = "ids", description = "合同ID集合", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('base:contract:delete')") @PreAuthorize("@ss.hasPermission('base:contract:delete')")
public CommonResult<Boolean> delete(@RequestParam("ids") Long[] ids) { public CommonResult<List<JSONObject>> delete(@RequestBody List<Long> ids) {
return success(true); return success(contractService.delete(ids));
} }
// TODO // TODO
@@ -144,11 +148,10 @@ public class ContractController implements BusinessControllerMarker {
public void viewApproval() { public void viewApproval() {
} }
// TODO
@PostMapping("/submit/erp") @PostMapping("/submit/erp")
@Operation(summary = "提交ERP") @Operation(summary = "提交ERP")
@PreAuthorize("@ss.hasPermission('base:contract:erp')") @PreAuthorize("@ss.hasPermission('base:contract:erp')")
public void submitErp(@RequestBody List<Long> ids) { public CommonResult<List<String>> submitErp(@RequestBody List<Long> ids) {
contractService.submitErp(ids); return success(contractService.submitErp(ids));
} }
} }

View File

@@ -86,7 +86,9 @@ public class PurchaseOrderController implements BusinessControllerMarker {
@PreAuthorize("@ss.hasPermission('bse:purchase-order:query')") @PreAuthorize("@ss.hasPermission('bse:purchase-order:query')")
public CommonResult<PurchaseOrderRespVO> getPurchaseOrder(@RequestParam("id") Long id) { public CommonResult<PurchaseOrderRespVO> getPurchaseOrder(@RequestParam("id") Long id) {
PurchaseOrderDO purchaseOrder = purchaseOrderService.getPurchaseOrder(id); PurchaseOrderDO purchaseOrder = purchaseOrderService.getPurchaseOrder(id);
return success(BeanUtils.toBean(purchaseOrder, PurchaseOrderRespVO.class)); PurchaseOrderRespVO purchaseOrderRespVO = BeanUtils.toBean(purchaseOrder, PurchaseOrderRespVO.class);
purchaseOrderService.setOrderDetails(purchaseOrderRespVO);
return success(purchaseOrderRespVO);
} }
@GetMapping("/page") @GetMapping("/page")
@@ -94,7 +96,9 @@ public class PurchaseOrderController implements BusinessControllerMarker {
@PreAuthorize("@ss.hasPermission('bse:purchase-order:query')") @PreAuthorize("@ss.hasPermission('bse:purchase-order:query')")
public CommonResult<PageResult<PurchaseOrderRespVO>> getPurchaseOrderPage(@Valid PurchaseOrderPageReqVO pageReqVO) { public CommonResult<PageResult<PurchaseOrderRespVO>> getPurchaseOrderPage(@Valid PurchaseOrderPageReqVO pageReqVO) {
PageResult<PurchaseOrderDO> pageResult = purchaseOrderService.getPurchaseOrderPage(pageReqVO); PageResult<PurchaseOrderDO> pageResult = purchaseOrderService.getPurchaseOrderPage(pageReqVO);
return success(BeanUtils.toBean(pageResult, PurchaseOrderRespVO.class)); PageResult<PurchaseOrderRespVO> purchaseOrderRespVOPageResult = BeanUtils.toBean(pageResult, PurchaseOrderRespVO.class);
purchaseOrderRespVOPageResult.getList().forEach(purchaseOrderRespVO -> purchaseOrderService.setOrderDetails(purchaseOrderRespVO));
return success(purchaseOrderRespVOPageResult);
} }
@GetMapping("/export-excel") @GetMapping("/export-excel")
@@ -135,7 +139,7 @@ public class PurchaseOrderController implements BusinessControllerMarker {
//通过订单号查询订单信息 //通过订单号查询订单信息
@PostMapping("/get-order-by-order-no") @PostMapping("/get-order-by-order-no")
@Operation(summary = "通过订单号查询订单信息") @Operation(summary = "通过订单号查询订单信息", description = "通过订单号查询订单信息")
public CommonResult<List<PurchaseOrderDetailsRespVO>> getOrderByOrderNo(@RequestBody @Validated @NotEmpty(message = "采购订单不能为空") List<String> orderNos){ public CommonResult<List<PurchaseOrderDetailsRespVO>> getOrderByOrderNo(@RequestBody @Validated @NotEmpty(message = "采购订单不能为空") List<String> orderNos){
return success(purchaseOrderService.getOrderByOrderNo(orderNos)); return success(purchaseOrderService.getOrderByOrderNo(orderNos));
} }

View File

@@ -1,5 +1,6 @@
package com.zt.plat.module.contractorder.controller.admin.purchaseorder.vo; package com.zt.plat.module.contractorder.controller.admin.purchaseorder.vo;
import com.alibaba.fastjson2.JSONObject;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*; import lombok.*;
import java.util.*; import java.util.*;
@@ -62,7 +63,7 @@ public class PrchOrdDtlSaveReqVO {
@Schema(description = "税码(字典: PRCH_TAX);推送ERP", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "税码(字典: PRCH_TAX);推送ERP", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "税码(字典: PRCH_TAX);推送ERP不能为空") @NotNull(message = "税码(字典: PRCH_TAX);推送ERP不能为空")
private BigDecimal taxNum; private String taxNum;
@Schema(description = "是否基于GR的发票校验;推送ERP") @Schema(description = "是否基于GR的发票校验;推送ERP")
private String isGrInv; private String isGrInv;
@@ -149,7 +150,7 @@ public class PrchOrdDtlSaveReqVO {
private String isEnb; private String isEnb;
@Schema(description = "科目分配详情;科目分配类别为K或P时使用(JSON)") @Schema(description = "科目分配详情;科目分配类别为K或P时使用(JSON)")
private String actsCtgrDtl; private JSONObject actsCtgrDtl;
@Schema(description = "委托加工详情;委托加工订单使用(JSON)") @Schema(description = "委托加工详情;委托加工订单使用(JSON)")
private String enttDtl; private String enttDtl;

View File

@@ -164,6 +164,7 @@ public class PurchaseOrderRespVO {
@Schema(description = "订单明细") @Schema(description = "订单明细")
@ExcelProperty("订单明细") @ExcelProperty("订单明细")
private List<PrchOrdDtlRespVO> prchOrdDtlRespVOS; private List<PrchOrdDtlRespVO> prchOrdDtlRespVOS;
@Schema(description = "物料类型(字典:MTRL_TP)", example = "2") @Schema(description = "物料类型(字典:MTRL_TP)", example = "2")
@ExcelProperty("物料类型(字典:MTRL_TP)") @ExcelProperty("物料类型(字典:MTRL_TP)")
private String mtrlTp; private String mtrlTp;

View File

@@ -24,9 +24,9 @@ public class PurchaseOrderSaveReqVO {
@Schema(description = "ERP订单号") @Schema(description = "ERP订单号")
private String orderSAPNumber; private String orderSAPNumber;
@Schema(description = "订单号", requiredMode = Schema.RequiredMode.REQUIRED) // @Schema(description = "订单号", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "订单号不能为空") // @NotEmpty(message = "订单号不能为空")
private String systemOrderNumber; // private String systemOrderNumber;
@Schema(description = "公司编码;推送ERP必须", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "公司编码;推送ERP必须", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "公司编码;推送ERP必须不能为空") @NotEmpty(message = "公司编码;推送ERP必须不能为空")
@@ -94,10 +94,10 @@ public class PurchaseOrderSaveReqVO {
@Schema(description = "代理方名称", example = "张三") @Schema(description = "代理方名称", example = "张三")
private String agentName; private String agentName;
//
@Schema(description = "订单编码", requiredMode = Schema.RequiredMode.REQUIRED) // @Schema(description = "订单编码", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "订单编码不能为空") // @NotEmpty(message = "订单编码不能为空")
private String orderNumber; // private String orderNumber;
@Schema(description = "系统合同编号", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "系统合同编号", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "系统合同编号不能为空") @NotEmpty(message = "系统合同编号不能为空")

View File

@@ -104,7 +104,7 @@ public class PrchOrdDtlDO extends BusinessBaseDO {
* 税码(字典: PRCH_TAX);推送ERP * 税码(字典: PRCH_TAX);推送ERP
*/ */
@TableField("TAX_NUM") @TableField("TAX_NUM")
private BigDecimal taxNum; private String taxNum;
/** /**
* 是否基于GR的发票校验;推送ERP * 是否基于GR的发票校验;推送ERP
*/ */
@@ -271,11 +271,4 @@ public class PrchOrdDtlDO extends BusinessBaseDO {
@TableField("ELEM_CDG") @TableField("ELEM_CDG")
private String elemCdg; private String elemCdg;
/**
* 物料字典
*
*/
@TableField("MTRL_TP")
private String mtrlTp;
} }

View File

@@ -141,8 +141,8 @@ public class PurchaseOrderDO extends BusinessBaseDO {
/** /**
* 订单编码 * 订单编码
*/ */
@TableField("ORD_NUM") // @TableField("ORD_NUM")
private String orderNumber; // private String orderNumber;
/** /**
* 系统合同编号 * 系统合同编号
*/ */
@@ -237,4 +237,12 @@ public class PurchaseOrderDO extends BusinessBaseDO {
*/ */
@TableField("IS_PUSH") @TableField("IS_PUSH")
private int isPush; private int isPush;
/**
* 物料字典
*
*/
@TableField("MTRL_TP")
private String mtrlTp;
} }

Some files were not shown because too many files have changed in this diff Show More