From 891111b0be4018b5d646b4f4651ba0cda4137a47 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E7=A7=89=E5=8D=93?= Date: Wed, 4 Feb 2026 09:42:35 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../contract/dto/AddLngContractPurIntDto.java | 195 +++++++++++ .../dto/AddLngContractSalesIntDto.java | 200 +++++++++++ .../contract/dto/UpdateLngContractPIDto.java | 218 ++++++++++++ .../dto/UpdateLngContractPurIntDto.java | 265 +++++++++++++++ .../contract/dto/UpdateLngContractSIDto.java | 218 ++++++++++++ .../dto/UpdateLngContractSalesIntDto.java | 265 +++++++++++++++ .../module/contract/vo/LngContractPIVo.java | 262 +++++++++++++++ .../contract/vo/LngContractPurIntVo.java | 307 +++++++++++++++++ .../module/contract/vo/LngContractSIVo.java | 261 +++++++++++++++ .../contract/vo/LngContractSalesIntVo.java | 313 ++++++++++++++++++ .../controller/ContractPurIntController.java | 159 +++++++++ .../ContractSalesIntController.java | 159 +++++++++ .../contract/entity/LngContractPurInt.java | 282 ++++++++++++++++ .../contract/entity/LngContractSalesInt.java | 282 ++++++++++++++++ .../mapper/LngContractPurIntMapper.java | 17 + .../mapper/LngContractSalesIntMapper.java | 17 + .../service/IContractPurIntService.java | 19 ++ .../service/IContractSalesIntService.java | 19 ++ .../impl/ContractPurIntServiceImpl.java | 79 +++++ .../impl/ContractSalesIntServiceImpl.java | 87 +++++ 20 files changed, 3624 insertions(+) create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractPurIntDto.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractSalesIntDto.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractPIDto.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractPurIntDto.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractSIDto.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractSalesIntDto.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractPIVo.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractPurIntVo.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractSIVo.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractSalesIntVo.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/controller/ContractPurIntController.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/controller/ContractSalesIntController.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/entity/LngContractPurInt.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/entity/LngContractSalesInt.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/mapper/LngContractPurIntMapper.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/mapper/LngContractSalesIntMapper.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/IContractPurIntService.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/IContractSalesIntService.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractPurIntServiceImpl.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractSalesIntServiceImpl.java diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractPurIntDto.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractPurIntDto.java new file mode 100644 index 0000000..acd2be8 --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractPurIntDto.java @@ -0,0 +1,195 @@ +package com.xjrsoft.module.contract.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; + + + + + +/** +* @title: 国际采购合同 +* @Author 管理员 +* @Date: 2026-01-30 +* @Version 1.0 +*/ +@Getter +@Setter +@ToString +@Accessors(chain = true) +public class AddLngContractPurIntDto extends com.xjrsoft.common.model.base.BaseModel { + + private static final long serialVersionUID = 1L; + + /** + * 合同-档案主键 + */ + @ApiModelProperty("合同-档案主键") + private Long kId; + /** + * 长协/现货(长协/现货……) + */ + @ApiModelProperty("长协/现货(长协/现货……)") + private String longSpotCode; + /** + * 国际气源地 + */ + @ApiModelProperty("国际气源地") + private String sourceName; + /** + * 销售区域 + */ + @ApiModelProperty("销售区域") + private String salesAreaCode; + /** + * 价格条款 + */ + @ApiModelProperty("价格条款") + private String prcTermCode; + /** + * 价格说明 + */ + @ApiModelProperty("价格说明") + private String prcDesc; + /** + * 信用担保(SBLC/Open) + */ + @ApiModelProperty("信用担保(SBLC/Open)") + private String crTermCode; + /** + * 信用说明 + */ + @ApiModelProperty("信用说明") + private String crDesc; + /** + * 最小合同量(百万英热) + */ + @ApiModelProperty("最小合同量(百万英热)") + private BigDecimal qtyFrom; + /** + * 最大合同量(百万英热) + */ + @ApiModelProperty("最大合同量(百万英热)") + private BigDecimal qtyTo; + /** + * 合同量约定 + */ + @ApiModelProperty("合同量约定") + private String qtyDesc; + /** + * 最小甲烷含量(百万英热/立方英尺) + */ + @ApiModelProperty("最小甲烷含量(百万英热/立方英尺)") + private BigDecimal specCh4From; + /** + * 最低热值(百万英热/立方英尺) + */ + @ApiModelProperty("最低热值(百万英热/立方英尺)") + private BigDecimal specMmbtuFrom; + /** + * 最高热值(百万英热/立方英尺) + */ + @ApiModelProperty("最高热值(百万英热/立方英尺)") + private BigDecimal specMmbtuTo; + /** + * 气质约定 + */ + @ApiModelProperty("气质约定") + private String specDesc; + /** + * 收付款说明(收到发票后日) + */ + @ApiModelProperty("收付款说明(收到发票后日)") + private Short afterInv; + /** + * 自然日/工作日(N-自然日,CN-工作日) + */ + @ApiModelProperty("自然日/工作日(N-自然日,CN-工作日)") + private String calTypeCode; + /** + * 收付款说明 + */ + @ApiModelProperty("收付款说明") + private String paymentDesc; + /** + * 装港(可选可录入) + */ + @ApiModelProperty("装港(可选可录入)") + private String loadingPort; + /** + * 装港描述 + */ + @ApiModelProperty("装港描述") + private String loadingPortDesc; + /** + * 卸港(可选可录入) + */ + @ApiModelProperty("卸港(可选可录入)") + private String unloadingPort; + /** + * 卸港描述 + */ + @ApiModelProperty("卸港描述") + private String unloadingPortDesc; + /** + * 装卸条款说明 + */ + @ApiModelProperty("装卸条款说明") + private String loadUnloadDesc; + /** + * 滞期费说明 + */ + @ApiModelProperty("滞期费说明") + private String dmDesc; + /** + * 交付说明 + */ + @ApiModelProperty("交付说明") + private String deliveryDesc; + /** + * 计量说明 + */ + @ApiModelProperty("计量说明") + private String meaDesc; + /** + * 所有权和风险说明 + */ + @ApiModelProperty("所有权和风险说明") + private String riskDesc; + /** + * 保险说明 + */ + @ApiModelProperty("保险说明") + private String insurDesc; + /** + * GT&C + */ + @ApiModelProperty("GT&C") + private String gtc; + /** + * 法律仲裁信息 + */ + @ApiModelProperty("法律仲裁信息") + private String legalDesc; + /** + * 违约条款说明 + */ + @ApiModelProperty("违约条款说明") + private String defaultDesc; + /** + * 备注 + */ + @ApiModelProperty("备注") + private String note; + /** + * 租户id + */ + @ApiModelProperty("租户id") + private Long tenantId; + +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractSalesIntDto.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractSalesIntDto.java new file mode 100644 index 0000000..f75b392 --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractSalesIntDto.java @@ -0,0 +1,200 @@ +package com.xjrsoft.module.contract.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; +import lombok.experimental.Accessors; +import java.io.Serializable; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.time.LocalTime; +import java.time.LocalDateTime; +import java.math.BigDecimal; +import java.util.List; + + + + + +/** +* @title: 国际销售合同 +* @Author 管理员 +* @Date: 2026-02-03 +* @Version 1.0 +*/ +@Getter +@Setter +@ToString +@Accessors(chain = true) +public class AddLngContractSalesIntDto extends com.xjrsoft.common.model.base.BaseModel { + + private static final long serialVersionUID = 1L; + + /** + * 合同-档案主键 + */ + @ApiModelProperty("合同-档案主键") + private Long kId; + /** + * 长协/现货(长协/现货……) + */ + @ApiModelProperty("长协/现货(长协/现货……)") + private String longSpotCode; + /** + * 国际气源地 + */ + @ApiModelProperty("国际气源地") + private String sourceName; + /** + * 销售区域 + */ + @ApiModelProperty("销售区域") + private String salesAreaCode; + /** + * 价格条款 + */ + @ApiModelProperty("价格条款") + private String prcTermCode; + /** + * 价格说明 + */ + @ApiModelProperty("价格说明") + private String prcDesc; + /** + * 信用担保(SBLC/Open) + */ + @ApiModelProperty("信用担保(SBLC/Open)") + private String crTermCode; + /** + * 信用说明 + */ + @ApiModelProperty("信用说明") + private String crDesc; + /** + * 最小合同量(百万英热) + */ + @ApiModelProperty("最小合同量(百万英热)") + private BigDecimal qtyFrom; + /** + * 最大合同量(百万英热) + */ + @ApiModelProperty("最大合同量(百万英热)") + private BigDecimal qtyTo; + /** + * 合同量约定 + */ + @ApiModelProperty("合同量约定") + private String qtyDesc; + /** + * 最小甲烷含量(百万英热/立方英尺) + */ + @ApiModelProperty("最小甲烷含量(百万英热/立方英尺)") + private BigDecimal specCh4From; + /** + * 最低热值(百万英热/立方英尺) + */ + @ApiModelProperty("最低热值(百万英热/立方英尺)") + private BigDecimal specMmbtuFrom; + /** + * 最高热值(百万英热/立方英尺) + */ + @ApiModelProperty("最高热值(百万英热/立方英尺)") + private BigDecimal specMmbtuTo; + /** + * 气质约定 + */ + @ApiModelProperty("气质约定") + private String specDesc; + /** + * 收付款说明(收到发票后日) + */ + @ApiModelProperty("收付款说明(收到发票后日)") + private Short afterInv; + /** + * 自然日/工作日(N-自然日,W-工作日) + */ + @ApiModelProperty("自然日/工作日(N-自然日,W-工作日)") + private String calTypeCode; + /** + * 收付款说明 + */ + @ApiModelProperty("收付款说明") + private String paymentDesc; + /** + * 装港(可选可录入) + */ + @ApiModelProperty("装港(可选可录入)") + private String loadingPort; + /** + * 装港描述 + */ + @ApiModelProperty("装港描述") + private String loadingPortDesc; + /** + * 卸港(可选可录入) + */ + @ApiModelProperty("卸港(可选可录入)") + private String unloadingPort; + /** + * 卸港描述 + */ + @ApiModelProperty("卸港描述") + private String unloadingPortDesc; + /** + * 装卸条款说明 + */ + @ApiModelProperty("装卸条款说明") + private String loadUnloadDesc; + /** + * 滞期费说明 + */ + @ApiModelProperty("滞期费说明") + private String dmDesc; + /** + * 交付说明 + */ + @ApiModelProperty("交付说明") + private String deliveryDesc; + /** + * 计量说明 + */ + @ApiModelProperty("计量说明") + private String meaDesc; + /** + * 所有权和风险说明 + */ + @ApiModelProperty("所有权和风险说明") + private String riskDesc; + /** + * 保险说明 + */ + @ApiModelProperty("保险说明") + private String insurDesc; + /** + * GT&C + */ + @ApiModelProperty("GT&C") + private String gtc; + /** + * 法律仲裁信息 + */ + @ApiModelProperty("法律仲裁信息") + private String legalDesc; + /** + * 违约条款说明 + */ + @ApiModelProperty("违约条款说明") + private String defaultDesc; + /** + * 备注 + */ + @ApiModelProperty("备注") + private String note; + /** + * 租户id + */ + @ApiModelProperty("租户id") + private Long tenantId; + +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractPIDto.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractPIDto.java new file mode 100644 index 0000000..8d19d77 --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractPIDto.java @@ -0,0 +1,218 @@ +package com.xjrsoft.module.contract.dto; + +import com.pictc.annotations.datalog.*; +import com.xjrsoft.module.system.dto.UpdateLngFileUploadDto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.time.LocalDateTime; +import java.util.List; + + + +/** +* @title: 国际采购合同 +* @Author 管理员 +* @Date: 2026-01-30 +* @Version 1.0 +*/ +@Data +@LogTable(source="lng_contract",name="国际采购合同") +public class UpdateLngContractPIDto implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @LogField(name="主键",index=0) + @ApiModelProperty("主键") + private Long id; + + /** + * 合同主体ID(天然气公司/惠贸) + */ + @LogField(name="合同主体ID",index=1) + @ApiModelProperty("合同主体ID(天然气公司/惠贸)") + private Long comId; + + /** + * 合同号 + */ + @LogField(name="合同号",index=2) + @ApiModelProperty("合同号") + private String kNo; + + /** + * 合同名称 + */ + @LogField(name="合同名称",index=3) + @ApiModelProperty("合同名称") + private String kName; + + /** + * 业务类型(PI-国际采购/SI-国际销售/PP-国内PNG采购/SL-国内LNG销售/SP-国内PNG销售/T-管道运输/P-加工服务) + */ + @LogField(name="业务类型",index=4) + @ApiModelProperty("业务类型(PI-国际采购/SI-国际销售/PP-国内PNG采购/SL-国内LNG销售/SP-国内PNG销售/T-管道运输/P-加工服务)") + private String typeCode; + + /** + * 是否线上(竞拍)合同(Y-是,N-否;线上合同不需要审批) + */ + @LogField(name="是否线上(竞拍)合同",index=5) + @ApiModelProperty("是否线上(竞拍)合同(Y-是,N-否;线上合同不需要审批)") + private String onlineSign; + + /** + * 交易对手类型(lng_supplier-供应商,lng_customer-客户;不显示) + */ + @LogField(name="交易对手类型",index=6) + @ApiModelProperty("交易对手类型(lng_supplier-供应商,lng_customer-客户;不显示)") + private String cpTableName; + + /** + * 主交易对手编码 + */ + @LogField(name="主交易对手编码",index=7) + @ApiModelProperty("主交易对手编码") + private String cpCode; + + /** + * 主交易对手名称 + */ + @LogField(name="主交易对手名称",index=8) + @ApiModelProperty("主交易对手名称") + private String cpName; + + /** + * 合同期限 + */ + @LogField(name="合同期限",index=9) + @ApiModelProperty("合同期限") + private String kPeriod; + + /** + * 合同签订日期 + */ + @LogField(name="合同签订日期",index=10) + @ApiModelProperty("合同签订日期") + private LocalDateTime dateSign; + + /** + * 有效期开始 + */ + @LogField(name="有效期开始",index=11) + @ApiModelProperty("有效期开始") + private LocalDateTime dateFrom; + + /** + * 有效期结束 + */ + @LogField(name="有效期结束",index=12) + @ApiModelProperty("有效期结束") + private LocalDateTime dateTo; + + /** + * 确认函开始日 + */ + @LogField(name="确认函开始日",index=13) + @ApiModelProperty("确认函开始日") + private LocalDateTime dateCfmFrom; + + /** + * 确认函结束日 + */ + @LogField(name="确认函结束日",index=14) + @ApiModelProperty("确认函结束日") + private LocalDateTime dateCfmTo; + + /** + * 币种 + */ + @LogField(name="币种",index=15) + @ApiModelProperty("币种") + private String curCode; + + /** + * 合同金额 + */ + @LogField(name="合同金额",index=16) + @ApiModelProperty("合同金额") + private String amountDesc; + + /** + * 我方联系人 + */ + @LogField(name="我方联系人",index=17) + @ApiModelProperty("我方联系人") + private Long empId; + + /** + * 业务部门ID + */ + @LogField(name="业务部门ID",index=18) + @ApiModelProperty("业务部门ID") + private Long bDeptId; + + /** + * 状态(未提交/审批中/已审批/已驳回) + */ + @LogField(name="状态",index=19) + @ApiModelProperty("状态(未提交/审批中/已审批/已驳回)") + private String approCode; + + /** + * 备注 + */ + @LogField(name="备注",index=20) + @ApiModelProperty("备注") + private String note; + + /** + * 租户id + */ + @LogField(name="租户id",index=21) + @ApiModelProperty("租户id") + private Long tenantId; + + + /** + * lngContractPurInt + */ + @ApiModelProperty("lngContractPurInt子表") + @LogJoin(name = "lngContractPurInt子表", + columns = { + @LogJoinColumn(field = "id",relatedField = "kId", valueDirection = ValueDirectionType.RIGHT) + }, + caseType = JoinCaseType.FULL, target = UpdateLngContractPurIntDto.class, type = JoinType.MANY) + private List lngContractPurIntList; + /** + * lngContractFactRel + */ + @ApiModelProperty("lngContractFactRel子表") + @LogJoin(name = "lngContractFactRel子表", + columns = { + @LogJoinColumn(field = "id",relatedField = "kId", valueDirection = ValueDirectionType.RIGHT) + }, + caseType = JoinCaseType.FULL, target = UpdateLngContractFactRelDto.class, type = JoinType.MANY) + private List lngContractFactRelList; + /** + * lngContractApproRel + */ + @ApiModelProperty("lngContractApproRel子表") + @LogJoin(name = "lngContractApproRel子表", + columns = { + @LogJoinColumn(field = "id",relatedField = "tableId", valueDirection = ValueDirectionType.RIGHT) + }, + caseType = JoinCaseType.FULL, target = UpdateLngContractApproRelDto.class, type = JoinType.MANY) + private List lngContractApproRelList; + + /** + * lngFileUpload + */ + @ApiModelProperty("lngFileUpload子表") + @LogAttrField + private List lngFileUploadList; +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractPurIntDto.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractPurIntDto.java new file mode 100644 index 0000000..e1a9e44 --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractPurIntDto.java @@ -0,0 +1,265 @@ +package com.xjrsoft.module.contract.dto; + +import com.pictc.annotations.datalog.LogField; +import com.pictc.annotations.datalog.LogTable; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; + + + + +/** +* @title: 国际采购合同 +* @Author 管理员 +* @Date: 2026-01-30 +* @Version 1.0 +*/ +@Data +@LogTable(source="lng_contract_pur_int",name="国际采购合同") +public class UpdateLngContractPurIntDto implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @LogField(name="主键",index=0) + @ApiModelProperty("主键") + private Long id; + + /** + * 合同-档案主键 + */ + @LogField(name="合同-档案主键",index=1) + @ApiModelProperty("合同-档案主键") + private Long kId; + + /** + * 长协/现货(长协/现货……) + */ + @LogField(name="长协/现货",index=2) + @ApiModelProperty("长协/现货(长协/现货……)") + private String longSpotCode; + + /** + * 国际气源地 + */ + @LogField(name="国际气源地",index=3) + @ApiModelProperty("国际气源地") + private String sourceName; + + /** + * 销售区域 + */ + @LogField(name="销售区域",index=4) + @ApiModelProperty("销售区域") + private String salesAreaCode; + + /** + * 价格条款 + */ + @LogField(name="价格条款",index=5) + @ApiModelProperty("价格条款") + private String prcTermCode; + + /** + * 价格说明 + */ + @LogField(name="价格说明",index=6) + @ApiModelProperty("价格说明") + private String prcDesc; + + /** + * 信用担保(SBLC/Open) + */ + @LogField(name="信用担保",index=7) + @ApiModelProperty("信用担保(SBLC/Open)") + private String crTermCode; + + /** + * 信用说明 + */ + @LogField(name="信用说明",index=8) + @ApiModelProperty("信用说明") + private String crDesc; + + /** + * 最小合同量(百万英热) + */ + @LogField(name="最小合同量",index=9) + @ApiModelProperty("最小合同量(百万英热)") + private BigDecimal qtyFrom; + + /** + * 最大合同量(百万英热) + */ + @LogField(name="最大合同量",index=10) + @ApiModelProperty("最大合同量(百万英热)") + private BigDecimal qtyTo; + + /** + * 合同量约定 + */ + @LogField(name="合同量约定",index=11) + @ApiModelProperty("合同量约定") + private String qtyDesc; + + /** + * 最小甲烷含量(百万英热/立方英尺) + */ + @LogField(name="最小甲烷含量",index=12) + @ApiModelProperty("最小甲烷含量(百万英热/立方英尺)") + private BigDecimal specCh4From; + + /** + * 最低热值(百万英热/立方英尺) + */ + @LogField(name="最低热值",index=13) + @ApiModelProperty("最低热值(百万英热/立方英尺)") + private BigDecimal specMmbtuFrom; + + /** + * 最高热值(百万英热/立方英尺) + */ + @LogField(name="最高热值",index=14) + @ApiModelProperty("最高热值(百万英热/立方英尺)") + private BigDecimal specMmbtuTo; + + /** + * 气质约定 + */ + @LogField(name="气质约定",index=15) + @ApiModelProperty("气质约定") + private String specDesc; + + /** + * 收付款说明(收到发票后日) + */ + @LogField(name="收付款说明",index=16) + @ApiModelProperty("收付款说明(收到发票后日)") + private Short afterInv; + + /** + * 自然日/工作日(N-自然日,CN-工作日) + */ + @LogField(name="自然日/工作日",index=17) + @ApiModelProperty("自然日/工作日(N-自然日,CN-工作日)") + private String calTypeCode; + + /** + * 收付款说明 + */ + @LogField(name="收付款说明",index=18) + @ApiModelProperty("收付款说明") + private String paymentDesc; + + /** + * 装港(可选可录入) + */ + @LogField(name="装港",index=19) + @ApiModelProperty("装港(可选可录入)") + private String loadingPort; + + /** + * 装港描述 + */ + @LogField(name="装港描述",index=20) + @ApiModelProperty("装港描述") + private String loadingPortDesc; + + /** + * 卸港(可选可录入) + */ + @LogField(name="卸港",index=21) + @ApiModelProperty("卸港(可选可录入)") + private String unloadingPort; + + /** + * 卸港描述 + */ + @LogField(name="卸港描述",index=22) + @ApiModelProperty("卸港描述") + private String unloadingPortDesc; + + /** + * 装卸条款说明 + */ + @LogField(name="装卸条款说明",index=23) + @ApiModelProperty("装卸条款说明") + private String loadUnloadDesc; + + /** + * 滞期费说明 + */ + @LogField(name="滞期费说明",index=24) + @ApiModelProperty("滞期费说明") + private String dmDesc; + + /** + * 交付说明 + */ + @LogField(name="交付说明",index=25) + @ApiModelProperty("交付说明") + private String deliveryDesc; + + /** + * 计量说明 + */ + @LogField(name="计量说明",index=26) + @ApiModelProperty("计量说明") + private String meaDesc; + + /** + * 所有权和风险说明 + */ + @LogField(name="所有权和风险说明",index=27) + @ApiModelProperty("所有权和风险说明") + private String riskDesc; + + /** + * 保险说明 + */ + @LogField(name="保险说明",index=28) + @ApiModelProperty("保险说明") + private String insurDesc; + + /** + * GT&C + */ + @LogField(name="GT&C",index=29) + @ApiModelProperty("GT&C") + private String gtc; + + /** + * 法律仲裁信息 + */ + @LogField(name="法律仲裁信息",index=30) + @ApiModelProperty("法律仲裁信息") + private String legalDesc; + + /** + * 违约条款说明 + */ + @LogField(name="违约条款说明",index=31) + @ApiModelProperty("违约条款说明") + private String defaultDesc; + + /** + * 备注 + */ + @LogField(name="备注",index=32) + @ApiModelProperty("备注") + private String note; + + /** + * 租户id + */ + @LogField(name="租户id",index=33) + @ApiModelProperty("租户id") + private Long tenantId; + + +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractSIDto.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractSIDto.java new file mode 100644 index 0000000..382a1ba --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractSIDto.java @@ -0,0 +1,218 @@ +package com.xjrsoft.module.contract.dto; + +import com.pictc.annotations.datalog.*; +import com.xjrsoft.module.system.dto.UpdateLngFileUploadDto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.time.LocalDateTime; +import java.util.List; + + + +/** +* @title: 国际销售合同 +* @Author 管理员 +* @Date: 2026-02-03 +* @Version 1.0 +*/ +@Data +@LogTable(source="lng_contract",name="国际销售合同") +public class UpdateLngContractSIDto implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @LogField(name="主键",index=0) + @ApiModelProperty("主键") + private Long id; + + /** + * 合同主体ID(天然气公司/惠贸) + */ + @LogField(name="合同主体ID",index=1) + @ApiModelProperty("合同主体ID(天然气公司/惠贸)") + private Long comId; + + /** + * 合同号 + */ + @LogField(name="合同号",index=2) + @ApiModelProperty("合同号") + private String kNo; + + /** + * 合同名称 + */ + @LogField(name="合同名称",index=3) + @ApiModelProperty("合同名称") + private String kName; + + /** + * 业务类型(PI-国际采购/SI-国际销售/PP-国内PNG采购/SL-国内LNG销售/SP-国内PNG销售/T-管道运输/P-加工服务) + */ + @LogField(name="业务类型",index=4) + @ApiModelProperty("业务类型(PI-国际采购/SI-国际销售/PP-国内PNG采购/SL-国内LNG销售/SP-国内PNG销售/T-管道运输/P-加工服务)") + private String typeCode; + + /** + * 是否线上(竞拍)合同(Y-是,N-否;线上合同不需要审批) + */ + @LogField(name="是否线上(竞拍)合同",index=5) + @ApiModelProperty("是否线上(竞拍)合同(Y-是,N-否;线上合同不需要审批)") + private String onlineSign; + + /** + * 交易对手类型(lng_supplier-供应商,lng_customer-客户;不显示) + */ + @LogField(name="交易对手类型",index=6) + @ApiModelProperty("交易对手类型(lng_supplier-供应商,lng_customer-客户;不显示)") + private String cpTableName; + + /** + * 主交易对手编码 + */ + @LogField(name="主交易对手编码",index=7) + @ApiModelProperty("主交易对手编码") + private String cpCode; + + /** + * 主交易对手名称 + */ + @LogField(name="主交易对手名称",index=8) + @ApiModelProperty("主交易对手名称") + private String cpName; + + /** + * 合同期限 + */ + @LogField(name="合同期限",index=9) + @ApiModelProperty("合同期限") + private String kPeriod; + + /** + * 合同签订日期 + */ + @LogField(name="合同签订日期",index=10) + @ApiModelProperty("合同签订日期") + private LocalDateTime dateSign; + + /** + * 有效期开始 + */ + @LogField(name="有效期开始",index=11) + @ApiModelProperty("有效期开始") + private LocalDateTime dateFrom; + + /** + * 有效期结束 + */ + @LogField(name="有效期结束",index=12) + @ApiModelProperty("有效期结束") + private LocalDateTime dateTo; + + /** + * 确认函开始日 + */ + @LogField(name="确认函开始日",index=13) + @ApiModelProperty("确认函开始日") + private LocalDateTime dateCfmFrom; + + /** + * 确认函结束日 + */ + @LogField(name="确认函结束日",index=14) + @ApiModelProperty("确认函结束日") + private LocalDateTime dateCfmTo; + + /** + * 币种 + */ + @LogField(name="币种",index=15) + @ApiModelProperty("币种") + private String curCode; + + /** + * 合同金额 + */ + @LogField(name="合同金额",index=16) + @ApiModelProperty("合同金额") + private String amountDesc; + + /** + * 我方联系人 + */ + @LogField(name="我方联系人",index=17) + @ApiModelProperty("我方联系人") + private Long empId; + + /** + * 业务部门ID + */ + @LogField(name="业务部门ID",index=18) + @ApiModelProperty("业务部门ID") + private Long bDeptId; + + /** + * 状态(未提交/审批中/已审批/已驳回) + */ + @LogField(name="状态",index=19) + @ApiModelProperty("状态(未提交/审批中/已审批/已驳回)") + private String approCode; + + /** + * 备注 + */ + @LogField(name="备注",index=20) + @ApiModelProperty("备注") + private String note; + + /** + * 租户id + */ + @LogField(name="租户id",index=21) + @ApiModelProperty("租户id") + private Long tenantId; + + + /** + * lngContractSalesInt + */ + @ApiModelProperty("lngContractSalesInt子表") + @LogJoin(name = "lngContractSalesInt子表", + columns = { + @LogJoinColumn(field = "id",relatedField = "kId", valueDirection = ValueDirectionType.RIGHT) + }, + caseType = JoinCaseType.FULL, target = UpdateLngContractSalesIntDto.class, type = JoinType.MANY) + private List lngContractSalesIntList; + /** + * lngContractFactRel + */ + @ApiModelProperty("lngContractFactRel子表") + @LogJoin(name = "lngContractFactRel子表", + columns = { + @LogJoinColumn(field = "id",relatedField = "kId", valueDirection = ValueDirectionType.RIGHT) + }, + caseType = JoinCaseType.FULL, target = UpdateLngContractFactRelDto.class, type = JoinType.MANY) + private List lngContractFactRelList; + /** + * lngContractApproRel + */ + @ApiModelProperty("lngContractApproRel子表") + @LogJoin(name = "lngContractApproRel子表", + columns = { + @LogJoinColumn(field = "id",relatedField = "tableId", valueDirection = ValueDirectionType.RIGHT) + }, + caseType = JoinCaseType.FULL, target = UpdateLngContractApproRelDto.class, type = JoinType.MANY) + private List lngContractApproRelList; + + /** + * lngFileUpload + */ + @ApiModelProperty("lngFileUpload子表") + @LogAttrField + private List lngFileUploadList; +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractSalesIntDto.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractSalesIntDto.java new file mode 100644 index 0000000..91c41f1 --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractSalesIntDto.java @@ -0,0 +1,265 @@ +package com.xjrsoft.module.contract.dto; + +import com.pictc.annotations.datalog.LogField; +import com.pictc.annotations.datalog.LogTable; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; + + + + +/** +* @title: 国际销售合同 +* @Author 管理员 +* @Date: 2026-02-03 +* @Version 1.0 +*/ +@Data +@LogTable(source="lng_contract_sales_int",name="国际销售合同") +public class UpdateLngContractSalesIntDto implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @LogField(name="主键",index=0) + @ApiModelProperty("主键") + private Long id; + + /** + * 合同-档案主键 + */ + @LogField(name="合同-档案主键",index=1) + @ApiModelProperty("合同-档案主键") + private Long kId; + + /** + * 长协/现货(长协/现货……) + */ + @LogField(name="长协/现货",index=2) + @ApiModelProperty("长协/现货(长协/现货……)") + private String longSpotCode; + + /** + * 国际气源地 + */ + @LogField(name="国际气源地",index=3) + @ApiModelProperty("国际气源地") + private String sourceName; + + /** + * 销售区域 + */ + @LogField(name="销售区域",index=4) + @ApiModelProperty("销售区域") + private String salesAreaCode; + + /** + * 价格条款 + */ + @LogField(name="价格条款",index=5) + @ApiModelProperty("价格条款") + private String prcTermCode; + + /** + * 价格说明 + */ + @LogField(name="价格说明",index=6) + @ApiModelProperty("价格说明") + private String prcDesc; + + /** + * 信用担保(SBLC/Open) + */ + @LogField(name="信用担保",index=7) + @ApiModelProperty("信用担保(SBLC/Open)") + private String crTermCode; + + /** + * 信用说明 + */ + @LogField(name="信用说明",index=8) + @ApiModelProperty("信用说明") + private String crDesc; + + /** + * 最小合同量(百万英热) + */ + @LogField(name="最小合同量",index=9) + @ApiModelProperty("最小合同量(百万英热)") + private BigDecimal qtyFrom; + + /** + * 最大合同量(百万英热) + */ + @LogField(name="最大合同量",index=10) + @ApiModelProperty("最大合同量(百万英热)") + private BigDecimal qtyTo; + + /** + * 合同量约定 + */ + @LogField(name="合同量约定",index=11) + @ApiModelProperty("合同量约定") + private String qtyDesc; + + /** + * 最小甲烷含量(百万英热/立方英尺) + */ + @LogField(name="最小甲烷含量",index=12) + @ApiModelProperty("最小甲烷含量(百万英热/立方英尺)") + private BigDecimal specCh4From; + + /** + * 最低热值(百万英热/立方英尺) + */ + @LogField(name="最低热值",index=13) + @ApiModelProperty("最低热值(百万英热/立方英尺)") + private BigDecimal specMmbtuFrom; + + /** + * 最高热值(百万英热/立方英尺) + */ + @LogField(name="最高热值",index=14) + @ApiModelProperty("最高热值(百万英热/立方英尺)") + private BigDecimal specMmbtuTo; + + /** + * 气质约定 + */ + @LogField(name="气质约定",index=15) + @ApiModelProperty("气质约定") + private String specDesc; + + /** + * 收付款说明(收到发票后日) + */ + @LogField(name="收付款说明",index=16) + @ApiModelProperty("收付款说明(收到发票后日)") + private Short afterInv; + + /** + * 自然日/工作日(N-自然日,W-工作日) + */ + @LogField(name="自然日/工作日",index=17) + @ApiModelProperty("自然日/工作日(N-自然日,W-工作日)") + private String calTypeCode; + + /** + * 收付款说明 + */ + @LogField(name="收付款说明",index=18) + @ApiModelProperty("收付款说明") + private String paymentDesc; + + /** + * 装港(可选可录入) + */ + @LogField(name="装港(可选可录入)",index=19) + @ApiModelProperty("装港(可选可录入)") + private String loadingPort; + + /** + * 装港描述 + */ + @LogField(name="装港描述",index=20) + @ApiModelProperty("装港描述") + private String loadingPortDesc; + + /** + * 卸港(可选可录入) + */ + @LogField(name="卸港",index=21) + @ApiModelProperty("卸港(可选可录入)") + private String unloadingPort; + + /** + * 卸港描述 + */ + @LogField(name="卸港描述",index=22) + @ApiModelProperty("卸港描述") + private String unloadingPortDesc; + + /** + * 装卸条款说明 + */ + @LogField(name="装卸条款说明",index=23) + @ApiModelProperty("装卸条款说明") + private String loadUnloadDesc; + + /** + * 滞期费说明 + */ + @LogField(name="滞期费说明",index=24) + @ApiModelProperty("滞期费说明") + private String dmDesc; + + /** + * 交付说明 + */ + @LogField(name="交付说明",index=25) + @ApiModelProperty("交付说明") + private String deliveryDesc; + + /** + * 计量说明 + */ + @LogField(name="计量说明",index=26) + @ApiModelProperty("计量说明") + private String meaDesc; + + /** + * 所有权和风险说明 + */ + @LogField(name="所有权和风险说明",index=27) + @ApiModelProperty("所有权和风险说明") + private String riskDesc; + + /** + * 保险说明 + */ + @LogField(name="保险说明",index=28) + @ApiModelProperty("保险说明") + private String insurDesc; + + /** + * GT&C + */ + @LogField(name="GT&C",index=29) + @ApiModelProperty("GT&C") + private String gtc; + + /** + * 法律仲裁信息 + */ + @LogField(name="法律仲裁信息",index=30) + @ApiModelProperty("法律仲裁信息") + private String legalDesc; + + /** + * 违约条款说明 + */ + @LogField(name="违约条款说明",index=31) + @ApiModelProperty("违约条款说明") + private String defaultDesc; + + /** + * 备注 + */ + @LogField(name="备注",index=32) + @ApiModelProperty("备注") + private String note; + + /** + * 租户id + */ + @LogField(name="租户id",index=33) + @ApiModelProperty("租户id") + private Long tenantId; + + +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractPIVo.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractPIVo.java new file mode 100644 index 0000000..7ae3a1e --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractPIVo.java @@ -0,0 +1,262 @@ +package com.xjrsoft.module.contract.vo; + +import com.xjrsoft.common.annotation.Trans; +import com.xjrsoft.common.enums.TransType; +import com.xjrsoft.module.sales.vo.LngApproVo; +import com.xjrsoft.module.system.vo.LngFileUploadVo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; +import lombok.experimental.Accessors; + +import java.time.LocalDateTime; +import java.util.List; + +/** +* @title: 表单出参 +* @Author 管理员 +* @Date: 2025-12-30 +* @Version 1.0 +*/ +@Getter +@Setter +@ToString +@Accessors(chain = true) +public class LngContractPIVo { + + /** + * 主键 + */ + @ApiModelProperty("主键") + private Long id; + + + /** + * 合同主体ID(天然气公司/惠贸) + */ + @ApiModelProperty("合同主体ID(天然气公司/惠贸)") + @Trans(type = TransType.DEPT, transToFieldName = "comName") + private Long comId; + + private String comName; + + + /** + * 合同号 + */ + @ApiModelProperty("合同号") + private String kNo; + + + /** + * 合同名称 + */ + @ApiModelProperty("合同名称") + private String kName; + + + /** + * 业务类型(PI-国际采购/SI-国际销售/PP-国内PNG采购/SL-国内LNG销售/SP-国内PNG销售/T-管道运输/P-加工服务) + */ + @ApiModelProperty("业务类型(PI-国际采购/SI-国际销售/PP-国内PNG采购/SL-国内LNG销售/SP-国内PNG销售/T-管道运输/P-加工服务)") + private String typeCode; + + + /** + * 是否线上(竞拍)合同(Y-是,N-否;线上合同不需要审批) + */ + @ApiModelProperty("是否线上(竞拍)合同(Y-是,N-否;线上合同不需要审批)") + private String onlineSign; + + + /** + * 交易对手类型(lng_supplier-供应商,lng_customer-客户;不显示) + */ + @ApiModelProperty("交易对手类型(lng_supplier-供应商,lng_customer-客户;不显示)") + private String cpTableName; + + + /** + * 主交易对手编码 + */ + @ApiModelProperty("主交易对手编码") + private String cpCode; + + + /** + * 主交易对手名称 + */ + @ApiModelProperty("主交易对手名称") + private String cpName; + + + /** + * 合同期限 + */ + @ApiModelProperty("合同期限") + private String kPeriod; + + + /** + * 合同签订日期 + */ + @ApiModelProperty("合同签订日期") + private LocalDateTime dateSign; + + + /** + * 有效期开始 + */ + @ApiModelProperty("有效期开始") + private LocalDateTime dateFrom; + + + /** + * 有效期结束 + */ + @ApiModelProperty("有效期结束") + private LocalDateTime dateTo; + + + /** + * 确认函开始日 + */ + @ApiModelProperty("确认函开始日") + private LocalDateTime dateCfmFrom; + + + /** + * 确认函结束日 + */ + @ApiModelProperty("确认函结束日") + private LocalDateTime dateCfmTo; + + + /** + * 币种 + */ + @ApiModelProperty("币种") + @Trans(type = TransType.CURRENCY, transToFieldName = "curName") + private String curCode; + private String curName; + + /** + * 合同金额 + */ + @ApiModelProperty("合同金额") + private String amountDesc; + + + /** + * 我方联系人 + */ + @ApiModelProperty("我方联系人") + @Trans(type = TransType.USER, transToFieldName = "empName") + private Long empId; + private String empName; + + + /** + * 业务部门ID + */ + @ApiModelProperty("业务部门ID") + @Trans(type = TransType.DEPT, transToFieldName = "bDeptName") + private Long bDeptId; + private String bDeptName; + + + /** + * 状态(未提交/审批中/已审批/已驳回) + */ + @ApiModelProperty("状态(未提交/审批中/已审批/已驳回)") + private String approCode; + + + /** + * 备注 + */ + @ApiModelProperty("备注") + private String note; + + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + private Long createUserId; + + + /** + * 创建时间 + */ + @ApiModelProperty("创建时间") + private LocalDateTime createDate; + + + /** + * 修改人id + */ + @ApiModelProperty("修改人id") + private Long modifyUserId; + + + /** + * 修改时间 + */ + @ApiModelProperty("修改时间") + private LocalDateTime modifyDate; + + + /** + * 租户id + */ + @ApiModelProperty("租户id") + private Long tenantId; + + + /** + * 部门id + */ + @ApiModelProperty("部门id") + private Long deptId; + + + /** + * 数据权限id + */ + @ApiModelProperty("数据权限id") + private Long ruleUserId; + + /** + * lngContractPurInt + */ + @ApiModelProperty("lngContractPurInt子表") + private List lngContractPurIntList; + /** + * lngContractFact + */ + @ApiModelProperty("lngContractFac子表") + private List lngContractFactList; + /** + * lngContractFactRel + */ + @ApiModelProperty("lngContractFactRel子表") + private List lngContractFactRelList; + /** + * lngApproVoList + */ + @ApiModelProperty("lngAppro子表") + private List lngApproVoList; + /** + * lngContractApproRel + */ + @ApiModelProperty("lngContractApproRel子表") + private List lngContractApproRelList; + /** + * lngFileUpload + */ + @ApiModelProperty("lngFileUpload子表") + private List lngFileUploadList; + +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractPurIntVo.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractPurIntVo.java new file mode 100644 index 0000000..6e80a72 --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractPurIntVo.java @@ -0,0 +1,307 @@ +package com.xjrsoft.module.contract.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.time.LocalDateTime; + +/** +* @title: 表单出参 +* @Author 管理员 +* @Date: 2026-01-30 +* @Version 1.0 +*/ +@Getter +@Setter +@ToString +@Accessors(chain = true) +public class LngContractPurIntVo extends com.xjrsoft.common.model.base.BaseModel{ + + /** + * 主键 + */ + @ApiModelProperty("主键") + private Long id; + + + /** + * 合同-档案主键 + */ + @ApiModelProperty("合同-档案主键") + private Long kId; + + + /** + * 长协/现货(长协/现货……) + */ + @ApiModelProperty("长协/现货(长协/现货……)") + private String longSpotCode; + + + /** + * 国际气源地 + */ + @ApiModelProperty("国际气源地") + private String sourceName; + + + /** + * 销售区域 + */ + @ApiModelProperty("销售区域") + private String salesAreaCode; + + + /** + * 价格条款 + */ + @ApiModelProperty("价格条款") + private String prcTermCode; + + + /** + * 价格说明 + */ + @ApiModelProperty("价格说明") + private String prcDesc; + + + /** + * 信用担保(SBLC/Open) + */ + @ApiModelProperty("信用担保(SBLC/Open)") + private String crTermCode; + + + /** + * 信用说明 + */ + @ApiModelProperty("信用说明") + private String crDesc; + + + /** + * 最小合同量(百万英热) + */ + @ApiModelProperty("最小合同量(百万英热)") + private BigDecimal qtyFrom; + + + /** + * 最大合同量(百万英热) + */ + @ApiModelProperty("最大合同量(百万英热)") + private BigDecimal qtyTo; + + + /** + * 合同量约定 + */ + @ApiModelProperty("合同量约定") + private String qtyDesc; + + + /** + * 最小甲烷含量(百万英热/立方英尺) + */ + @ApiModelProperty("最小甲烷含量(百万英热/立方英尺)") + private BigDecimal specCh4From; + + + /** + * 最低热值(百万英热/立方英尺) + */ + @ApiModelProperty("最低热值(百万英热/立方英尺)") + private BigDecimal specMmbtuFrom; + + + /** + * 最高热值(百万英热/立方英尺) + */ + @ApiModelProperty("最高热值(百万英热/立方英尺)") + private BigDecimal specMmbtuTo; + + + /** + * 气质约定 + */ + @ApiModelProperty("气质约定") + private String specDesc; + + + /** + * 收付款说明(收到发票后日) + */ + @ApiModelProperty("收付款说明(收到发票后日)") + private Short afterInv; + + + /** + * 自然日/工作日(N-自然日,CN-工作日) + */ + @ApiModelProperty("自然日/工作日(N-自然日,CN-工作日)") + private String calTypeCode; + + + /** + * 收付款说明 + */ + @ApiModelProperty("收付款说明") + private String paymentDesc; + + + /** + * 装港(可选可录入) + */ + @ApiModelProperty("装港(可选可录入)") + private String loadingPort; + + + /** + * 装港描述 + */ + @ApiModelProperty("装港描述") + private String loadingPortDesc; + + + /** + * 卸港(可选可录入) + */ + @ApiModelProperty("卸港(可选可录入)") + private String unloadingPort; + + + /** + * 卸港描述 + */ + @ApiModelProperty("卸港描述") + private String unloadingPortDesc; + + + /** + * 装卸条款说明 + */ + @ApiModelProperty("装卸条款说明") + private String loadUnloadDesc; + + + /** + * 滞期费说明 + */ + @ApiModelProperty("滞期费说明") + private String dmDesc; + + + /** + * 交付说明 + */ + @ApiModelProperty("交付说明") + private String deliveryDesc; + + + /** + * 计量说明 + */ + @ApiModelProperty("计量说明") + private String meaDesc; + + + /** + * 所有权和风险说明 + */ + @ApiModelProperty("所有权和风险说明") + private String riskDesc; + + + /** + * 保险说明 + */ + @ApiModelProperty("保险说明") + private String insurDesc; + + + /** + * GT&C + */ + @ApiModelProperty("GT&C") + private String gtc; + + + /** + * 法律仲裁信息 + */ + @ApiModelProperty("法律仲裁信息") + private String legalDesc; + + + /** + * 违约条款说明 + */ + @ApiModelProperty("违约条款说明") + private String defaultDesc; + + + /** + * 备注 + */ + @ApiModelProperty("备注") + private String note; + + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + private Long createUserId; + + + /** + * 创建时间 + */ + @ApiModelProperty("创建时间") + private LocalDateTime createDate; + + + /** + * 修改人id + */ + @ApiModelProperty("修改人id") + private Long modifyUserId; + + + /** + * 修改时间 + */ + @ApiModelProperty("修改时间") + private LocalDateTime modifyDate; + + + /** + * 租户id + */ + @ApiModelProperty("租户id") + private Long tenantId; + + + /** + * 部门id + */ + @ApiModelProperty("部门id") + private Long deptId; + + + /** + * 数据权限id + */ + @ApiModelProperty("数据权限id") + private Long ruleUserId; + + + + + +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractSIVo.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractSIVo.java new file mode 100644 index 0000000..1eb0a2d --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractSIVo.java @@ -0,0 +1,261 @@ +package com.xjrsoft.module.contract.vo; + +import com.xjrsoft.common.annotation.Trans; +import com.xjrsoft.common.enums.TransType; +import com.xjrsoft.module.sales.vo.LngApproVo; +import com.xjrsoft.module.system.vo.LngFileUploadVo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; +import lombok.experimental.Accessors; + +import java.time.LocalDateTime; +import java.util.List; + +/** +* @title: 表单出参 +* @Author 管理员 +* @Date: 2025-12-30 +* @Version 1.0 +*/ +@Getter +@Setter +@ToString +@Accessors(chain = true) +public class LngContractSIVo { + + /** + * 主键 + */ + @ApiModelProperty("主键") + private Long id; + + + /** + * 合同主体ID(天然气公司/惠贸) + */ + @ApiModelProperty("合同主体ID(天然气公司/惠贸)") + @Trans(type = TransType.DEPT, transToFieldName = "comName") + private Long comId; + + private String comName; + + + /** + * 合同号 + */ + @ApiModelProperty("合同号") + private String kNo; + + + /** + * 合同名称 + */ + @ApiModelProperty("合同名称") + private String kName; + + + /** + * 业务类型(PI-国际采购/SI-国际销售/PP-国内PNG采购/SL-国内LNG销售/SP-国内PNG销售/T-管道运输/P-加工服务) + */ + @ApiModelProperty("业务类型(PI-国际采购/SI-国际销售/PP-国内PNG采购/SL-国内LNG销售/SP-国内PNG销售/T-管道运输/P-加工服务)") + private String typeCode; + + + /** + * 是否线上(竞拍)合同(Y-是,N-否;线上合同不需要审批) + */ + @ApiModelProperty("是否线上(竞拍)合同(Y-是,N-否;线上合同不需要审批)") + private String onlineSign; + + + /** + * 交易对手类型(lng_supplier-供应商,lng_customer-客户;不显示) + */ + @ApiModelProperty("交易对手类型(lng_supplier-供应商,lng_customer-客户;不显示)") + private String cpTableName; + + + /** + * 主交易对手编码 + */ + @ApiModelProperty("主交易对手编码") + private String cpCode; + + + /** + * 主交易对手名称 + */ + @ApiModelProperty("主交易对手名称") + private String cpName; + + + /** + * 合同期限 + */ + @ApiModelProperty("合同期限") + private String kPeriod; + + + /** + * 合同签订日期 + */ + @ApiModelProperty("合同签订日期") + private LocalDateTime dateSign; + + + /** + * 有效期开始 + */ + @ApiModelProperty("有效期开始") + private LocalDateTime dateFrom; + + + /** + * 有效期结束 + */ + @ApiModelProperty("有效期结束") + private LocalDateTime dateTo; + + + /** + * 确认函开始日 + */ + @ApiModelProperty("确认函开始日") + private LocalDateTime dateCfmFrom; + + + /** + * 确认函结束日 + */ + @ApiModelProperty("确认函结束日") + private LocalDateTime dateCfmTo; + + + /** + * 币种 + */ + @ApiModelProperty("币种") + @Trans(type = TransType.CURRENCY, transToFieldName = "curName") + private String curCode; + private String curName; + + /** + * 合同金额 + */ + @ApiModelProperty("合同金额") + private String amountDesc; + + + /** + * 我方联系人 + */ + @ApiModelProperty("我方联系人") + @Trans(type = TransType.USER, transToFieldName = "empName") + private Long empId; + private String empName; + + + /** + * 业务部门ID + */ + @ApiModelProperty("业务部门ID") + @Trans(type = TransType.DEPT, transToFieldName = "bDeptName") + private Long bDeptId; + private String bDeptName; + + + /** + * 状态(未提交/审批中/已审批/已驳回) + */ + @ApiModelProperty("状态(未提交/审批中/已审批/已驳回)") + private String approCode; + + + /** + * 备注 + */ + @ApiModelProperty("备注") + private String note; + + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + private Long createUserId; + + + /** + * 创建时间 + */ + @ApiModelProperty("创建时间") + private LocalDateTime createDate; + + + /** + * 修改人id + */ + @ApiModelProperty("修改人id") + private Long modifyUserId; + + + /** + * 修改时间 + */ + @ApiModelProperty("修改时间") + private LocalDateTime modifyDate; + + + /** + * 租户id + */ + @ApiModelProperty("租户id") + private Long tenantId; + + + /** + * 部门id + */ + @ApiModelProperty("部门id") + private Long deptId; + + + /** + * 数据权限id + */ + @ApiModelProperty("数据权限id") + private Long ruleUserId; + + /** + * lngContractSalesInt + */ + @ApiModelProperty("lngContractSalesInt子表") + private List lngContractSalesIntList; + /** + * lngContractFact + */ + @ApiModelProperty("lngContractFac子表") + private List lngContractFactList; + /** + * lngContractFactRel + */ + @ApiModelProperty("lngContractFactRel子表") + private List lngContractFactRelList; + /** + * lngApproVoList + */ + @ApiModelProperty("lngAppro子表") + private List lngApproVoList; + /** + * lngContractApproRel + */ + @ApiModelProperty("lngContractApproRel子表") + private List lngContractApproRelList; + /** + * lngFileUpload + */ + @ApiModelProperty("lngFileUpload子表") + private List lngFileUploadList; +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractSalesIntVo.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractSalesIntVo.java new file mode 100644 index 0000000..9d462f4 --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractSalesIntVo.java @@ -0,0 +1,313 @@ +package com.xjrsoft.module.contract.vo; + +import com.xjrsoft.common.annotation.Trans; +import com.xjrsoft.common.enums.TransType; +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.time.LocalDateTime; + +/** +* @title: 表单出参 +* @Author 管理员 +* @Date: 2026-02-03 +* @Version 1.0 +*/ +@Getter +@Setter +@ToString +@Accessors(chain = true) +public class LngContractSalesIntVo extends com.xjrsoft.common.model.base.BaseModel{ + + /** + * 主键 + */ + @ApiModelProperty("主键") + private Long id; + + + /** + * 合同-档案主键 + */ + @ApiModelProperty("合同-档案主键") + private Long kId; + + + /** + * 长协/现货(长协/现货……) + */ + @ApiModelProperty("长协/现货(长协/现货……)") + @Trans(type = TransType.DIC, id = "1980562721538633730",transToFieldName = "longSpotName") + private String longSpotCode; + private String longSpotName; + + + /** + * 国际气源地 + */ + @ApiModelProperty("国际气源地") + private String sourceName; + + + /** + * 销售区域 + */ + @ApiModelProperty("销售区域") + @Trans(type = TransType.REGION,transToFieldName = "salesAreaName") + private String salesAreaCode; + private String salesAreaName; + + + /** + * 价格条款 + */ + @ApiModelProperty("价格条款") + private String prcTermCode; + + + /** + * 价格说明 + */ + @ApiModelProperty("价格说明") + private String prcDesc; + + + /** + * 信用担保(SBLC/Open) + */ + @ApiModelProperty("信用担保(SBLC/Open)") + private String crTermCode; + + + /** + * 信用说明 + */ + @ApiModelProperty("信用说明") + private String crDesc; + + + /** + * 最小合同量(百万英热) + */ + @ApiModelProperty("最小合同量(百万英热)") + private BigDecimal qtyFrom; + + + /** + * 最大合同量(百万英热) + */ + @ApiModelProperty("最大合同量(百万英热)") + private BigDecimal qtyTo; + + + /** + * 合同量约定 + */ + @ApiModelProperty("合同量约定") + private String qtyDesc; + + + /** + * 最小甲烷含量(百万英热/立方英尺) + */ + @ApiModelProperty("最小甲烷含量(百万英热/立方英尺)") + private BigDecimal specCh4From; + + + /** + * 最低热值(百万英热/立方英尺) + */ + @ApiModelProperty("最低热值(百万英热/立方英尺)") + private BigDecimal specMmbtuFrom; + + + /** + * 最高热值(百万英热/立方英尺) + */ + @ApiModelProperty("最高热值(百万英热/立方英尺)") + private BigDecimal specMmbtuTo; + + + /** + * 气质约定 + */ + @ApiModelProperty("气质约定") + private String specDesc; + + + /** + * 收付款说明(收到发票后日) + */ + @ApiModelProperty("收付款说明(收到发票后日)") + private Short afterInv; + + + /** + * 自然日/工作日(N-自然日,W-工作日) + */ + @ApiModelProperty("自然日/工作日(N-自然日,W-工作日)") + private String calTypeCode; + + + /** + * 收付款说明 + */ + @ApiModelProperty("收付款说明") + private String paymentDesc; + + + /** + * 装港(可选可录入) + */ + @ApiModelProperty("装港(可选可录入)") + private String loadingPort; + + + /** + * 装港描述 + */ + @ApiModelProperty("装港描述") + private String loadingPortDesc; + + + /** + * 卸港(可选可录入) + */ + @ApiModelProperty("卸港(可选可录入)") + private String unloadingPort; + + + /** + * 卸港描述 + */ + @ApiModelProperty("卸港描述") + private String unloadingPortDesc; + + + /** + * 装卸条款说明 + */ + @ApiModelProperty("装卸条款说明") + private String loadUnloadDesc; + + + /** + * 滞期费说明 + */ + @ApiModelProperty("滞期费说明") + private String dmDesc; + + + /** + * 交付说明 + */ + @ApiModelProperty("交付说明") + private String deliveryDesc; + + + /** + * 计量说明 + */ + @ApiModelProperty("计量说明") + private String meaDesc; + + + /** + * 所有权和风险说明 + */ + @ApiModelProperty("所有权和风险说明") + private String riskDesc; + + + /** + * 保险说明 + */ + @ApiModelProperty("保险说明") + private String insurDesc; + + + /** + * GT&C + */ + @ApiModelProperty("GT&C") + private String gtc; + + + /** + * 法律仲裁信息 + */ + @ApiModelProperty("法律仲裁信息") + private String legalDesc; + + + /** + * 违约条款说明 + */ + @ApiModelProperty("违约条款说明") + private String defaultDesc; + + + /** + * 备注 + */ + @ApiModelProperty("备注") + private String note; + + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + private Long createUserId; + + + /** + * 创建时间 + */ + @ApiModelProperty("创建时间") + private LocalDateTime createDate; + + + /** + * 修改人id + */ + @ApiModelProperty("修改人id") + private Long modifyUserId; + + + /** + * 修改时间 + */ + @ApiModelProperty("修改时间") + private LocalDateTime modifyDate; + + + /** + * 租户id + */ + @ApiModelProperty("租户id") + private Long tenantId; + + + /** + * 部门id + */ + @ApiModelProperty("部门id") + private Long deptId; + + + /** + * 数据权限id + */ + @ApiModelProperty("数据权限id") + private Long ruleUserId; + + + + + +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/controller/ContractPurIntController.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/controller/ContractPurIntController.java new file mode 100644 index 0000000..e05f8d0 --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/controller/ContractPurIntController.java @@ -0,0 +1,159 @@ +package com.xjrsoft.module.contract.controller; + +import cn.dev33.satoken.annotation.SaCheckPermission; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.google.api.client.util.Lists; +import com.pictc.datalog.DataOperationContent; +import com.pictc.datalog.DataOperationListener; +import com.pictc.enums.BusinessCode; +import com.pictc.enums.ExceptionCommonCode; +import com.pictc.jdbc.JdbcTools; +import com.pictc.jdbc.model.JdbcParam; +import com.pictc.utils.StringUtils; +import com.xjrsoft.common.exception.BusinessException; +import com.xjrsoft.common.model.result.R; +import com.xjrsoft.common.page.ConventPage; +import com.xjrsoft.common.page.PageOutput; +import com.xjrsoft.common.utils.VoToColumnUtil; +import com.xjrsoft.module.contract.dto.LngContractPageDto; +import com.xjrsoft.module.contract.dto.UpdateLngContractPIDto; +import com.xjrsoft.module.contract.entity.LngContract; +import com.xjrsoft.module.contract.service.IContractPurIntService; +import com.xjrsoft.module.contract.vo.LngContractPageVo; +import com.xjrsoft.module.datalog.service.DatalogService; +import com.xjrsoft.module.datalog.vo.DataChangeLogVo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; + +/** +* @title: 国际采购合同 +* @Author 管理员 +* @Date: 2026-01-30 +* @Version 1.0 +*/ +@RestController +@RequestMapping("/contract" + "/contractPurInt") +@Api(value = "/contract" + "/contractPurInt",tags = "国际采购合同代码") +@AllArgsConstructor +public class ContractPurIntController { + + + private final IContractPurIntService contractPurIntService; + private final DatalogService dataService; + + @GetMapping(value = "/page") + @ApiOperation(value="LngContract列表(分页)") + @SaCheckPermission("contractPurInt:list") + public R page(@Valid LngContractPageDto dto){ + + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper + .eq(ObjectUtil.isNotNull(dto.getId()),LngContract::getId,dto.getId()) + .orderByDesc(LngContract::getId) + .select(LngContract.class,x -> VoToColumnUtil.fieldsToColumns(LngContractPageVo.class).contains(x.getProperty())); + IPage page = contractPurIntService.page(ConventPage.getPage(dto), queryWrapper); + PageOutput pageOutput = ConventPage.getPageOutput(page, LngContractPageVo.class); + return R.ok(pageOutput); + } + + @GetMapping(value = "/info") + @ApiOperation(value="根据id查询LngContract信息") + @SaCheckPermission("contractPurInt:detail") + public R info(@RequestParam Long id){ + return R.ok(contractPurIntService.getInfoById(id)); + } + + @GetMapping(value = "/datalog") + @ApiOperation(value="根据id查询LngContract数据详细日志") + @SaCheckPermission("contractPurInt:datalog") + public R datalog(@RequestParam Long id){ + List logs = dataService.findLogsByEntityId(UpdateLngContractPIDto.class,id); + return R.ok(logs); + } + + + @PostMapping + @ApiOperation(value = "新增LngContract") + @SaCheckPermission("contractPurInt:add") + public R add(@Valid @RequestBody UpdateLngContractPIDto dto){ + UpdateLngContractPIDto res = dataService.insert(dto, new DataOperationListener() { + @Override + public UpdateLngContractPIDto before(DataOperationContent content) { + return null; + } + + @Override + public UpdateLngContractPIDto after(DataOperationContent content) { + execAfter(content.getTableName(), content.getIdValue(), "I"); + return content.getObj(); + } + }); + return R.ok(res); + } + + private void execAfter(String table, Long id, String sign) { + String sql = StringUtils.format("{? = call pc_{0}.f_save(?, ?)}", table); + List params = Lists.newArrayList(); + JdbcParam outParam = JdbcParam.ofString(null).setOut(true); + params.add(outParam); + params.add(JdbcParam.ofLong(id)); + params.add(JdbcParam.ofString(sign)); + JdbcTools.call(sql,params); + String error = outParam.getStringValue(); + if (StringUtils.isNotEmpty(error)) { + throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_SAVE_EXEC_ERROR, error)); + } + } + + @PutMapping + @ApiOperation(value = "修改LngContract") + @SaCheckPermission("contractPurInt:edit") + public R update(@Valid @RequestBody UpdateLngContractPIDto dto){ + return R.ok(dataService.updateById(dto, new DataOperationListener() { + @Override + public UpdateLngContractPIDto before(DataOperationContent content) { + return null; + } + + @Override + public UpdateLngContractPIDto after(DataOperationContent content) { + execAfter(content.getTableName(), content.getIdValue(), "U"); + return content.getObj(); + } + })); + } + + @DeleteMapping + @ApiOperation(value = "删除") + @SaCheckPermission("contractPurInt:delete") + public R delete(@Valid @RequestBody List ids){ + return R.ok(dataService.deleteByIds(UpdateLngContractPIDto.class, ids, new DataOperationListener() { + @Override + public UpdateLngContractPIDto before(DataOperationContent content) { + String sql = StringUtils.format("{? = call pc_{0}.f_before_delete(?)}", content.getTableName()); + List params = Lists.newArrayList(); + JdbcParam outParam = JdbcParam.ofString(null).setOut(true); + params.add(outParam); + params.add(JdbcParam.ofLong(content.getIdValue())); + JdbcTools.call(sql,params); + String error = outParam.getStringValue(); + if (StringUtils.isNotEmpty(error)) { + throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_DELETE_EXEC_ERROR, error)); + } + return content.getObj(); + } + + @Override + public UpdateLngContractPIDto after(DataOperationContent content) { + return null; + } + })); + } +} \ No newline at end of file diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/controller/ContractSalesIntController.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/controller/ContractSalesIntController.java new file mode 100644 index 0000000..4c11a25 --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/controller/ContractSalesIntController.java @@ -0,0 +1,159 @@ +package com.xjrsoft.module.contract.controller; + +import cn.dev33.satoken.annotation.SaCheckPermission; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.google.api.client.util.Lists; +import com.pictc.datalog.DataOperationContent; +import com.pictc.datalog.DataOperationListener; +import com.pictc.enums.BusinessCode; +import com.pictc.enums.ExceptionCommonCode; +import com.pictc.jdbc.JdbcTools; +import com.pictc.jdbc.model.JdbcParam; +import com.pictc.utils.StringUtils; +import com.xjrsoft.common.exception.BusinessException; +import com.xjrsoft.common.model.result.R; +import com.xjrsoft.common.page.ConventPage; +import com.xjrsoft.common.page.PageOutput; +import com.xjrsoft.common.utils.VoToColumnUtil; +import com.xjrsoft.module.contract.dto.LngContractPageDto; +import com.xjrsoft.module.contract.dto.UpdateLngContractSIDto; +import com.xjrsoft.module.contract.entity.LngContract; +import com.xjrsoft.module.contract.service.IContractSalesIntService; +import com.xjrsoft.module.contract.vo.LngContractPageVo; +import com.xjrsoft.module.datalog.service.DatalogService; +import com.xjrsoft.module.datalog.vo.DataChangeLogVo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; + +/** +* @title: 国际销售合同 +* @Author 管理员 +* @Date: 2026-02-03 +* @Version 1.0 +*/ +@RestController +@RequestMapping("/contract" + "/contractSalesInt") +@Api(value = "/contract" + "/contractSalesInt",tags = "国际销售合同代码") +@AllArgsConstructor +public class ContractSalesIntController { + + + private final IContractSalesIntService contractSalesIntService; + private final DatalogService dataService; + + @GetMapping(value = "/page") + @ApiOperation(value="LngContract列表(分页)") + @SaCheckPermission("contractSalesInt:list") + public R page(@Valid LngContractPageDto dto){ + + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper + .eq(ObjectUtil.isNotNull(dto.getId()),LngContract::getId,dto.getId()) + .orderByDesc(LngContract::getId) + .select(LngContract.class,x -> VoToColumnUtil.fieldsToColumns(LngContractPageVo.class).contains(x.getProperty())); + IPage page = contractSalesIntService.page(ConventPage.getPage(dto), queryWrapper); + PageOutput pageOutput = ConventPage.getPageOutput(page, LngContractPageVo.class); + return R.ok(pageOutput); + } + + @GetMapping(value = "/info") + @ApiOperation(value="根据id查询LngContract信息") + @SaCheckPermission("contractSalesInt:detail") + public R info(@RequestParam Long id){ + return R.ok(contractSalesIntService.getInfoById(id)); + } + + @GetMapping(value = "/datalog") + @ApiOperation(value="根据id查询LngContract数据详细日志") + @SaCheckPermission("contractSalesInt:datalog") + public R datalog(@RequestParam Long id){ + List logs = dataService.findLogsByEntityId(UpdateLngContractSIDto.class,id); + return R.ok(logs); + } + + + @PostMapping + @ApiOperation(value = "新增LngContract") + @SaCheckPermission("contractSalesInt:add") + public R add(@Valid @RequestBody UpdateLngContractSIDto dto){ + UpdateLngContractSIDto res = dataService.insert(dto, new DataOperationListener() { + @Override + public UpdateLngContractSIDto before(DataOperationContent content) { + return null; + } + + @Override + public UpdateLngContractSIDto after(DataOperationContent content) { + execAfter(content.getTableName(), content.getIdValue(), "I"); + return content.getObj(); + } + }); + return R.ok(res); + } + + private void execAfter(String table, Long id, String sign) { + String sql = StringUtils.format("{? = call pc_{0}.f_save(?, ?)}", table); + List params = Lists.newArrayList(); + JdbcParam outParam = JdbcParam.ofString(null).setOut(true); + params.add(outParam); + params.add(JdbcParam.ofLong(id)); + params.add(JdbcParam.ofString(sign)); + JdbcTools.call(sql,params); + String error = outParam.getStringValue(); + if (StringUtils.isNotEmpty(error)) { + throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_SAVE_EXEC_ERROR, error)); + } + } + + @PutMapping + @ApiOperation(value = "修改LngContract") + @SaCheckPermission("contractSalesInt:edit") + public R update(@Valid @RequestBody UpdateLngContractSIDto dto){ + return R.ok(dataService.updateById(dto, new DataOperationListener() { + @Override + public UpdateLngContractSIDto before(DataOperationContent content) { + return null; + } + + @Override + public UpdateLngContractSIDto after(DataOperationContent content) { + execAfter(content.getTableName(), content.getIdValue(), "U"); + return content.getObj(); + } + })); + } + + @DeleteMapping + @ApiOperation(value = "删除") + @SaCheckPermission("contractSalesInt:delete") + public R delete(@Valid @RequestBody List ids){ + return R.ok(dataService.deleteByIds(UpdateLngContractSIDto.class, ids, new DataOperationListener() { + @Override + public UpdateLngContractSIDto before(DataOperationContent content) { + String sql = StringUtils.format("{? = call pc_{0}.f_before_delete(?)}", content.getTableName()); + List params = Lists.newArrayList(); + JdbcParam outParam = JdbcParam.ofString(null).setOut(true); + params.add(outParam); + params.add(JdbcParam.ofLong(content.getIdValue())); + JdbcTools.call(sql,params); + String error = outParam.getStringValue(); + if (StringUtils.isNotEmpty(error)) { + throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_DELETE_EXEC_ERROR, error)); + } + return content.getObj(); + } + + @Override + public UpdateLngContractSIDto after(DataOperationContent content) { + return null; + } + })); + } +} \ No newline at end of file diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/entity/LngContractPurInt.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/entity/LngContractPurInt.java new file mode 100644 index 0000000..8bd7daa --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/entity/LngContractPurInt.java @@ -0,0 +1,282 @@ +package com.xjrsoft.module.contract.entity; + +import com.baomidou.mybatisplus.annotation.*; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.time.LocalDateTime; + + +/** +* @title: 国际采购合同 +* @Author 管理员 +* @Date: 2026-01-30 +* @Version 1.0 +*/ +@Data +@TableName("lng_contract_pur_int") +@ApiModel(value = "国际采购合同对象", description = "国际采购合同") +public class LngContractPurInt implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @ApiModelProperty("主键") + @TableId + private Long id; + + /** + * 合同-档案主键 + */ + @ApiModelProperty("合同-档案主键") + private Long kId; + + /** + * 长协/现货(长协/现货……) + */ + @ApiModelProperty("长协/现货(长协/现货……)") + private String longSpotCode; + + /** + * 国际气源地 + */ + @ApiModelProperty("国际气源地") + private String sourceName; + + /** + * 销售区域 + */ + @ApiModelProperty("销售区域") + private String salesAreaCode; + + /** + * 价格条款 + */ + @ApiModelProperty("价格条款") + private String prcTermCode; + + /** + * 价格说明 + */ + @ApiModelProperty("价格说明") + private String prcDesc; + + /** + * 信用担保(SBLC/Open) + */ + @ApiModelProperty("信用担保(SBLC/Open)") + private String crTermCode; + + /** + * 信用说明 + */ + @ApiModelProperty("信用说明") + private String crDesc; + + /** + * 最小合同量(百万英热) + */ + @ApiModelProperty("最小合同量(百万英热)") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private BigDecimal qtyFrom; + + /** + * 最大合同量(百万英热) + */ + @ApiModelProperty("最大合同量(百万英热)") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private BigDecimal qtyTo; + + /** + * 合同量约定 + */ + @ApiModelProperty("合同量约定") + private String qtyDesc; + + /** + * 最小甲烷含量(百万英热/立方英尺) + */ + @ApiModelProperty("最小甲烷含量(百万英热/立方英尺)") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private BigDecimal specCh4From; + + /** + * 最低热值(百万英热/立方英尺) + */ + @ApiModelProperty("最低热值(百万英热/立方英尺)") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private BigDecimal specMmbtuFrom; + + /** + * 最高热值(百万英热/立方英尺) + */ + @ApiModelProperty("最高热值(百万英热/立方英尺)") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private BigDecimal specMmbtuTo; + + /** + * 气质约定 + */ + @ApiModelProperty("气质约定") + private String specDesc; + + /** + * 收付款说明(收到发票后日) + */ + @ApiModelProperty("收付款说明(收到发票后日)") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private Short afterInv; + + /** + * 自然日/工作日(N-自然日,CN-工作日) + */ + @ApiModelProperty("自然日/工作日(N-自然日,CN-工作日)") + private String calTypeCode; + + /** + * 收付款说明 + */ + @ApiModelProperty("收付款说明") + private String paymentDesc; + + /** + * 装港(可选可录入) + */ + @ApiModelProperty("装港(可选可录入)") + private String loadingPort; + + /** + * 装港描述 + */ + @ApiModelProperty("装港描述") + private String loadingPortDesc; + + /** + * 卸港(可选可录入) + */ + @ApiModelProperty("卸港(可选可录入)") + private String unloadingPort; + + /** + * 卸港描述 + */ + @ApiModelProperty("卸港描述") + private String unloadingPortDesc; + + /** + * 装卸条款说明 + */ + @ApiModelProperty("装卸条款说明") + private String loadUnloadDesc; + + /** + * 滞期费说明 + */ + @ApiModelProperty("滞期费说明") + private String dmDesc; + + /** + * 交付说明 + */ + @ApiModelProperty("交付说明") + private String deliveryDesc; + + /** + * 计量说明 + */ + @ApiModelProperty("计量说明") + private String meaDesc; + + /** + * 所有权和风险说明 + */ + @ApiModelProperty("所有权和风险说明") + private String riskDesc; + + /** + * 保险说明 + */ + @ApiModelProperty("保险说明") + private String insurDesc; + + /** + * GT&C + */ + @ApiModelProperty("GT&C") + private String gtc; + + /** + * 法律仲裁信息 + */ + @ApiModelProperty("法律仲裁信息") + private String legalDesc; + + /** + * 违约条款说明 + */ + @ApiModelProperty("违约条款说明") + private String defaultDesc; + + /** + * 备注 + */ + @ApiModelProperty("备注") + private String note; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED) + private Long createUserId; + + /** + * 创建时间 + */ + @ApiModelProperty("创建时间") + @TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED) + private LocalDateTime createDate; + + /** + * 修改人id + */ + @ApiModelProperty("修改人id") + @TableField(fill = FieldFill.UPDATE, updateStrategy = FieldStrategy.IGNORED) + private Long modifyUserId; + + /** + * 修改时间 + */ + @ApiModelProperty("修改时间") + @TableField(fill = FieldFill.UPDATE, updateStrategy = FieldStrategy.IGNORED) + private LocalDateTime modifyDate; + + /** + * 租户id + */ + @ApiModelProperty("租户id") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private Long tenantId; + + /** + * 部门id + */ + @ApiModelProperty("部门id") + @TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED) + private Long deptId; + + /** + * 数据权限id + */ + @ApiModelProperty("数据权限id") + @TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED) + private Long ruleUserId; + + + +} \ No newline at end of file diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/entity/LngContractSalesInt.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/entity/LngContractSalesInt.java new file mode 100644 index 0000000..ff7319a --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/entity/LngContractSalesInt.java @@ -0,0 +1,282 @@ +package com.xjrsoft.module.contract.entity; + +import com.baomidou.mybatisplus.annotation.*; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.time.LocalDateTime; + + +/** +* @title: 国际销售合同 +* @Author 管理员 +* @Date: 2026-02-03 +* @Version 1.0 +*/ +@Data +@TableName("lng_contract_sales_int") +@ApiModel(value = "国际销售合同对象", description = "国际销售合同") +public class LngContractSalesInt implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @ApiModelProperty("主键") + @TableId + private Long id; + + /** + * 合同-档案主键 + */ + @ApiModelProperty("合同-档案主键") + private Long kId; + + /** + * 长协/现货(长协/现货……) + */ + @ApiModelProperty("长协/现货(长协/现货……)") + private String longSpotCode; + + /** + * 国际气源地 + */ + @ApiModelProperty("国际气源地") + private String sourceName; + + /** + * 销售区域 + */ + @ApiModelProperty("销售区域") + private String salesAreaCode; + + /** + * 价格条款 + */ + @ApiModelProperty("价格条款") + private String prcTermCode; + + /** + * 价格说明 + */ + @ApiModelProperty("价格说明") + private String prcDesc; + + /** + * 信用担保(SBLC/Open) + */ + @ApiModelProperty("信用担保(SBLC/Open)") + private String crTermCode; + + /** + * 信用说明 + */ + @ApiModelProperty("信用说明") + private String crDesc; + + /** + * 最小合同量(百万英热) + */ + @ApiModelProperty("最小合同量(百万英热)") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private BigDecimal qtyFrom; + + /** + * 最大合同量(百万英热) + */ + @ApiModelProperty("最大合同量(百万英热)") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private BigDecimal qtyTo; + + /** + * 合同量约定 + */ + @ApiModelProperty("合同量约定") + private String qtyDesc; + + /** + * 最小甲烷含量(百万英热/立方英尺) + */ + @ApiModelProperty("最小甲烷含量(百万英热/立方英尺)") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private BigDecimal specCh4From; + + /** + * 最低热值(百万英热/立方英尺) + */ + @ApiModelProperty("最低热值(百万英热/立方英尺)") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private BigDecimal specMmbtuFrom; + + /** + * 最高热值(百万英热/立方英尺) + */ + @ApiModelProperty("最高热值(百万英热/立方英尺)") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private BigDecimal specMmbtuTo; + + /** + * 气质约定 + */ + @ApiModelProperty("气质约定") + private String specDesc; + + /** + * 收付款说明(收到发票后日) + */ + @ApiModelProperty("收付款说明(收到发票后日)") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private Short afterInv; + + /** + * 自然日/工作日(N-自然日,W-工作日) + */ + @ApiModelProperty("自然日/工作日(N-自然日,W-工作日)") + private String calTypeCode; + + /** + * 收付款说明 + */ + @ApiModelProperty("收付款说明") + private String paymentDesc; + + /** + * 装港(可选可录入) + */ + @ApiModelProperty("装港(可选可录入)") + private String loadingPort; + + /** + * 装港描述 + */ + @ApiModelProperty("装港描述") + private String loadingPortDesc; + + /** + * 卸港(可选可录入) + */ + @ApiModelProperty("卸港(可选可录入)") + private String unloadingPort; + + /** + * 卸港描述 + */ + @ApiModelProperty("卸港描述") + private String unloadingPortDesc; + + /** + * 装卸条款说明 + */ + @ApiModelProperty("装卸条款说明") + private String loadUnloadDesc; + + /** + * 滞期费说明 + */ + @ApiModelProperty("滞期费说明") + private String dmDesc; + + /** + * 交付说明 + */ + @ApiModelProperty("交付说明") + private String deliveryDesc; + + /** + * 计量说明 + */ + @ApiModelProperty("计量说明") + private String meaDesc; + + /** + * 所有权和风险说明 + */ + @ApiModelProperty("所有权和风险说明") + private String riskDesc; + + /** + * 保险说明 + */ + @ApiModelProperty("保险说明") + private String insurDesc; + + /** + * GT&C + */ + @ApiModelProperty("GT&C") + private String gtc; + + /** + * 法律仲裁信息 + */ + @ApiModelProperty("法律仲裁信息") + private String legalDesc; + + /** + * 违约条款说明 + */ + @ApiModelProperty("违约条款说明") + private String defaultDesc; + + /** + * 备注 + */ + @ApiModelProperty("备注") + private String note; + + /** + * 创建人id + */ + @ApiModelProperty("创建人id") + @TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED) + private Long createUserId; + + /** + * 创建时间 + */ + @ApiModelProperty("创建时间") + @TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED) + private LocalDateTime createDate; + + /** + * 修改人id + */ + @ApiModelProperty("修改人id") + @TableField(fill = FieldFill.UPDATE, updateStrategy = FieldStrategy.IGNORED) + private Long modifyUserId; + + /** + * 修改时间 + */ + @ApiModelProperty("修改时间") + @TableField(fill = FieldFill.UPDATE, updateStrategy = FieldStrategy.IGNORED) + private LocalDateTime modifyDate; + + /** + * 租户id + */ + @ApiModelProperty("租户id") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private Long tenantId; + + /** + * 部门id + */ + @ApiModelProperty("部门id") + @TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED) + private Long deptId; + + /** + * 数据权限id + */ + @ApiModelProperty("数据权限id") + @TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED) + private Long ruleUserId; + + + +} \ No newline at end of file diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/mapper/LngContractPurIntMapper.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/mapper/LngContractPurIntMapper.java new file mode 100644 index 0000000..b07e136 --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/mapper/LngContractPurIntMapper.java @@ -0,0 +1,17 @@ +package com.xjrsoft.module.contract.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.github.yulichang.base.MPJBaseMapper; +import com.xjrsoft.module.contract.entity.LngContractPurInt; +import org.apache.ibatis.annotations.Mapper; + +/** +* @title: mapper +* @Author 管理员 +* @Date: 2026-01-30 +* @Version 1.0 +*/ +@Mapper +public interface LngContractPurIntMapper extends MPJBaseMapper, BaseMapper { + +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/mapper/LngContractSalesIntMapper.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/mapper/LngContractSalesIntMapper.java new file mode 100644 index 0000000..9d4a480 --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/mapper/LngContractSalesIntMapper.java @@ -0,0 +1,17 @@ +package com.xjrsoft.module.contract.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.github.yulichang.base.MPJBaseMapper; +import com.xjrsoft.module.contract.entity.LngContractSalesInt; +import org.apache.ibatis.annotations.Mapper; + +/** +* @title: mapper +* @Author 管理员 +* @Date: 2026-02-03 +* @Version 1.0 +*/ +@Mapper +public interface LngContractSalesIntMapper extends MPJBaseMapper, BaseMapper { + +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/IContractPurIntService.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/IContractPurIntService.java new file mode 100644 index 0000000..05386db --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/IContractPurIntService.java @@ -0,0 +1,19 @@ +package com.xjrsoft.module.contract.service; + +import com.github.yulichang.base.MPJBaseService; +import com.github.yulichang.extension.mapping.base.MPJDeepService; +import com.github.yulichang.extension.mapping.base.MPJRelationService; +import com.xjrsoft.module.contract.entity.LngContract; +import com.xjrsoft.module.contract.vo.LngContractPIVo; + +/** +* @title: service +* @Author 管理员 +* @Date: 2026-01-30 +* @Version 1.0 +*/ + +public interface IContractPurIntService extends MPJBaseService, MPJDeepService, MPJRelationService { + + LngContractPIVo getInfoById(Long id); +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/IContractSalesIntService.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/IContractSalesIntService.java new file mode 100644 index 0000000..e1b09ec --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/IContractSalesIntService.java @@ -0,0 +1,19 @@ +package com.xjrsoft.module.contract.service; + +import com.github.yulichang.base.MPJBaseService; +import com.github.yulichang.extension.mapping.base.MPJDeepService; +import com.github.yulichang.extension.mapping.base.MPJRelationService; +import com.xjrsoft.module.contract.entity.LngContract; +import com.xjrsoft.module.contract.vo.LngContractSIVo; + +/** +* @title: service +* @Author 管理员 +* @Date: 2026-02-03 +* @Version 1.0 +*/ + +public interface IContractSalesIntService extends MPJBaseService, MPJDeepService, MPJRelationService { + + LngContractSIVo getInfoById(Long id); +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractPurIntServiceImpl.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractPurIntServiceImpl.java new file mode 100644 index 0000000..1396747 --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractPurIntServiceImpl.java @@ -0,0 +1,79 @@ +package com.xjrsoft.module.contract.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.github.yulichang.base.MPJBaseServiceImpl; +import com.google.common.collect.Lists; +import com.pictc.enums.BusinessCode; +import com.xjrsoft.common.exception.BusinessException; +import com.xjrsoft.module.contract.entity.*; +import com.xjrsoft.module.contract.mapper.*; +import com.xjrsoft.module.contract.service.IContractPurIntService; +import com.xjrsoft.module.contract.vo.*; +import com.xjrsoft.module.sales.vo.LngApproVo; +import com.xjrsoft.module.system.client.IFileClient; +import com.xjrsoft.module.system.vo.LngFileUploadVo; +import lombok.AllArgsConstructor; +import org.apache.commons.collections4.CollectionUtils; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** +* @title: service +* @Author 管理员 +* @Date: 2026-01-30 +* @Version 1.0 +*/ +@Service +@AllArgsConstructor +public class ContractPurIntServiceImpl extends MPJBaseServiceImpl implements IContractPurIntService { + + private final LngContractPurIntMapper lngContractPurIntMapper; + private final LngContractFactMapper lngContractFactMapper; + private final LngContractFactRelMapper lngContractFactRelMapper; + private final LngContractApproRelMapper lngContractApproRelMapper; + private final IFileClient fileClient; + + @Override + public LngContractPIVo getInfoById(Long id) { + LngContract lngContract = this.getById(id); + if(lngContract == null) { + throw new BusinessException(BusinessCode.of(10500,"找不到此数据")); + } + LngContractPIVo vo = BeanUtil.toBean(lngContract, LngContractPIVo.class); + List lngContractFactRelList = lngContractFactRelMapper.selectList( + new LambdaQueryWrapper() + .eq(LngContractFactRel::getKId, lngContract.getId())); + if (CollectionUtils.isNotEmpty(lngContractFactRelList)) { + List lngContractFactVoList = Lists.newArrayList(); + lngContractFactRelList.forEach(x -> { + LngContractFact lngContractFact = lngContractFactMapper.selectById(x.getKFactId()); + List fileList = fileClient.getTableFiles("lng_contract_fact", + "lngFileUploadList", lngContractFact.getId()); + LngContractFactVo lngContractFactVo = BeanUtil.toBean(lngContractFact, LngContractFactVo.class); + lngContractFactVo.setLngFileUploadList(fileList); + lngContractFactVoList.add(lngContractFactVo); + }); + vo.setLngContractFactList(lngContractFactVoList); + } + List lngContractApproRelList = lngContractApproRelMapper.selectList( + new LambdaQueryWrapper() + .eq(LngContractApproRel::getTableId, lngContract.getId())); + if (CollectionUtils.isNotEmpty(lngContractApproRelList)) { + List approVoList = Lists.newArrayList(); + lngContractApproRelList.forEach(x -> { + LngApproVo approVo = lngContractFactMapper.getLngApproVo(x.getApproId()); + List fileList = fileClient.getTableFiles("lng_appro", + "lngFileUploadList", approVo.getId()); + approVo.setLngFileUploadList(fileList); + approVoList.add(approVo); + }); + vo.setLngApproVoList(approVoList); + } + List fileList = fileClient.getTableFiles("lng_contract", + "lngFileUploadList", vo.getId()); + vo.setLngFileUploadList(fileList); + return vo; + } +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractSalesIntServiceImpl.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractSalesIntServiceImpl.java new file mode 100644 index 0000000..6715d0c --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractSalesIntServiceImpl.java @@ -0,0 +1,87 @@ +package com.xjrsoft.module.contract.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.github.yulichang.base.MPJBaseServiceImpl; +import com.google.common.collect.Lists; +import com.pictc.enums.BusinessCode; +import com.xjrsoft.common.exception.BusinessException; +import com.xjrsoft.module.contract.entity.*; +import com.xjrsoft.module.contract.mapper.*; +import com.xjrsoft.module.contract.service.IContractSalesIntService; +import com.xjrsoft.module.contract.vo.*; +import com.xjrsoft.module.sales.vo.LngApproVo; +import com.xjrsoft.module.system.client.IFileClient; +import com.xjrsoft.module.system.vo.LngFileUploadVo; +import lombok.AllArgsConstructor; +import org.apache.commons.collections4.CollectionUtils; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** +* @title: service +* @Author 管理员 +* @Date: 2026-02-03 +* @Version 1.0 +*/ +@Service +@AllArgsConstructor +public class ContractSalesIntServiceImpl extends MPJBaseServiceImpl implements IContractSalesIntService { + + private final LngContractSalesIntMapper lngContractSalesIntMapper; + private final LngContractFactMapper lngContractFactMapper; + private final LngContractFactRelMapper lngContractFactRelMapper; + private final LngContractApproRelMapper lngContractApproRelMapper; + private final IFileClient fileClient; + + @Override + public LngContractSIVo getInfoById(Long id) { + LngContract lngContract = this.getById(id); + if(lngContract == null) { + throw new BusinessException(BusinessCode.of(10500,"找不到此数据")); + } + LngContractSIVo vo = BeanUtil.toBean(lngContract, LngContractSIVo.class); + List lngContractSalesIntList = lngContractSalesIntMapper.selectList( + new LambdaQueryWrapper() + .eq(LngContractSalesInt::getKId, lngContract.getId())); + if (CollectionUtils.isNotEmpty(lngContractSalesIntList)) { + vo.setLngContractSalesIntList(BeanUtil.copyToList(lngContractSalesIntList, + LngContractSalesIntVo.class)); + } + + List lngContractFactRelList = lngContractFactRelMapper.selectList( + new LambdaQueryWrapper() + .eq(LngContractFactRel::getKId, lngContract.getId())); + if (CollectionUtils.isNotEmpty(lngContractFactRelList)) { + List lngContractFactVoList = Lists.newArrayList(); + lngContractFactRelList.forEach(x -> { + LngContractFact lngContractFact = lngContractFactMapper.selectById(x.getKFactId()); + List fileList = fileClient.getTableFiles("lng_contract_fact", + "lngFileUploadList", lngContractFact.getId()); + LngContractFactVo lngContractFactVo = BeanUtil.toBean(lngContractFact, LngContractFactVo.class); + lngContractFactVo.setLngFileUploadList(fileList); + lngContractFactVoList.add(lngContractFactVo); + }); + vo.setLngContractFactList(lngContractFactVoList); + } + List lngContractApproRelList = lngContractApproRelMapper.selectList( + new LambdaQueryWrapper() + .eq(LngContractApproRel::getTableId, lngContract.getId())); + if (CollectionUtils.isNotEmpty(lngContractApproRelList)) { + List approVoList = Lists.newArrayList(); + lngContractApproRelList.forEach(x -> { + LngApproVo approVo = lngContractFactMapper.getLngApproVo(x.getApproId()); + List fileList = fileClient.getTableFiles("lng_appro", + "lngFileUploadList", approVo.getId()); + approVo.setLngFileUploadList(fileList); + approVoList.add(approVo); + }); + vo.setLngApproVoList(approVoList); + } + List fileList = fileClient.getTableFiles("lng_contract", + "lngFileUploadList", vo.getId()); + vo.setLngFileUploadList(fileList); + return vo; + } +} From 6b799fe8ce80733c3b9a026009a48c4ea7cc839a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E7=A7=89=E5=8D=93?= Date: Wed, 4 Feb 2026 17:25:41 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../contract/dto/AddLngContractPurIntDto.java | 5 -- .../dto/AddLngContractSalesIntDto.java | 10 ---- .../contract/dto/UpdateLngContractPIDto.java | 11 +--- .../contract/dto/UpdateLngContractSIDto.java | 11 +--- .../module/contract/vo/LngContractFactVo.java | 4 ++ .../contract/vo/LngContractPurIntVo.java | 51 +---------------- .../contract/vo/LngContractSalesIntVo.java | 55 ------------------- .../impl/ContractPurIntServiceImpl.java | 7 +++ .../impl/ContractSalesIntServiceImpl.java | 1 - .../src/main/resources/bootstrap-dev.yml | 2 +- 10 files changed, 17 insertions(+), 140 deletions(-) diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractPurIntDto.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractPurIntDto.java index acd2be8..6a1ba4e 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractPurIntDto.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractPurIntDto.java @@ -186,10 +186,5 @@ public class AddLngContractPurIntDto extends com.xjrsoft.common.model.base.BaseM */ @ApiModelProperty("备注") private String note; - /** - * 租户id - */ - @ApiModelProperty("租户id") - private Long tenantId; } diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractSalesIntDto.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractSalesIntDto.java index f75b392..f86ad59 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractSalesIntDto.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/AddLngContractSalesIntDto.java @@ -5,13 +5,8 @@ import lombok.Getter; import lombok.Setter; import lombok.ToString; import lombok.experimental.Accessors; -import java.io.Serializable; -import com.fasterxml.jackson.annotation.JsonFormat; -import java.time.LocalTime; -import java.time.LocalDateTime; import java.math.BigDecimal; -import java.util.List; @@ -191,10 +186,5 @@ public class AddLngContractSalesIntDto extends com.xjrsoft.common.model.base.Bas */ @ApiModelProperty("备注") private String note; - /** - * 租户id - */ - @ApiModelProperty("租户id") - private Long tenantId; } diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractPIDto.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractPIDto.java index 8d19d77..b64327c 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractPIDto.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractPIDto.java @@ -1,6 +1,7 @@ package com.xjrsoft.module.contract.dto; import com.pictc.annotations.datalog.*; +import com.xjrsoft.common.model.base.BaseModel; import com.xjrsoft.module.system.dto.UpdateLngFileUploadDto; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -19,7 +20,7 @@ import java.util.List; */ @Data @LogTable(source="lng_contract",name="国际采购合同") -public class UpdateLngContractPIDto implements Serializable { +public class UpdateLngContractPIDto extends BaseModel implements Serializable { private static final long serialVersionUID = 1L; @@ -169,14 +170,6 @@ public class UpdateLngContractPIDto implements Serializable { @LogField(name="备注",index=20) @ApiModelProperty("备注") private String note; - - /** - * 租户id - */ - @LogField(name="租户id",index=21) - @ApiModelProperty("租户id") - private Long tenantId; - /** * lngContractPurInt diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractSIDto.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractSIDto.java index 382a1ba..04c90f7 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractSIDto.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/dto/UpdateLngContractSIDto.java @@ -1,6 +1,7 @@ package com.xjrsoft.module.contract.dto; import com.pictc.annotations.datalog.*; +import com.xjrsoft.common.model.base.BaseModel; import com.xjrsoft.module.system.dto.UpdateLngFileUploadDto; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -19,7 +20,7 @@ import java.util.List; */ @Data @LogTable(source="lng_contract",name="国际销售合同") -public class UpdateLngContractSIDto implements Serializable { +public class UpdateLngContractSIDto extends BaseModel implements Serializable { private static final long serialVersionUID = 1L; @@ -169,14 +170,6 @@ public class UpdateLngContractSIDto implements Serializable { @LogField(name="备注",index=20) @ApiModelProperty("备注") private String note; - - /** - * 租户id - */ - @LogField(name="租户id",index=21) - @ApiModelProperty("租户id") - private Long tenantId; - /** * lngContractSalesInt diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractFactVo.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractFactVo.java index 9666c8b..b406eb2 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractFactVo.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractFactVo.java @@ -60,14 +60,18 @@ public class LngContractFactVo { * 关联类别(M-主合同/U-合同变更/C-确认函/A-补充协议/F-框架协议/R-续签合同/I-同一事项关联合同;以下不要:无/原合同补充协议/原合同续签合同/同一事项关联合同) */ @ApiModelProperty("关联类别(M-主合同/U-合同变更/C-确认函/A-补充协议/F-框架协议/R-续签合同/I-同一事项关联合同;以下不要:无/原合同补充协议/原合同续签合同/同一事项关联合同)") + @Trans(type = TransType.DIC, id = "2003815292742479874", transToFieldName = "relTypeName") private String relTypeCode; + private String relTypeName; /** * 合同类别(日常采购/工程建设/人力资源/投资管理/金融保险/租赁/信息管理/咨询服务/综合服务/生产运营/天然气公司业务合同) */ @ApiModelProperty("合同类别(日常采购/工程建设/人力资源/投资管理/金融保险/租赁/信息管理/咨询服务/综合服务/生产运营/天然气公司业务合同)") + @Trans(type = TransType.DIC, id = "2003815931950215169", transToFieldName = "kTypeName1") private String kTypeCode1; + private String kTypeName1; /** diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractPurIntVo.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractPurIntVo.java index 6e80a72..2c2d3e3 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractPurIntVo.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractPurIntVo.java @@ -7,7 +7,6 @@ import lombok.ToString; import lombok.experimental.Accessors; import java.math.BigDecimal; -import java.time.LocalDateTime; /** * @title: 表单出参 @@ -250,55 +249,7 @@ public class LngContractPurIntVo extends com.xjrsoft.common.model.base.BaseModel */ @ApiModelProperty("备注") private String note; - - - /** - * 创建人id - */ - @ApiModelProperty("创建人id") - private Long createUserId; - - - /** - * 创建时间 - */ - @ApiModelProperty("创建时间") - private LocalDateTime createDate; - - - /** - * 修改人id - */ - @ApiModelProperty("修改人id") - private Long modifyUserId; - - - /** - * 修改时间 - */ - @ApiModelProperty("修改时间") - private LocalDateTime modifyDate; - - - /** - * 租户id - */ - @ApiModelProperty("租户id") - private Long tenantId; - - - /** - * 部门id - */ - @ApiModelProperty("部门id") - private Long deptId; - - - /** - * 数据权限id - */ - @ApiModelProperty("数据权限id") - private Long ruleUserId; + diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractSalesIntVo.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractSalesIntVo.java index 9d462f4..e487967 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractSalesIntVo.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/contract/vo/LngContractSalesIntVo.java @@ -9,7 +9,6 @@ import lombok.ToString; import lombok.experimental.Accessors; import java.math.BigDecimal; -import java.time.LocalDateTime; /** * @title: 表单出参 @@ -256,58 +255,4 @@ public class LngContractSalesIntVo extends com.xjrsoft.common.model.base.BaseMod */ @ApiModelProperty("备注") private String note; - - - /** - * 创建人id - */ - @ApiModelProperty("创建人id") - private Long createUserId; - - - /** - * 创建时间 - */ - @ApiModelProperty("创建时间") - private LocalDateTime createDate; - - - /** - * 修改人id - */ - @ApiModelProperty("修改人id") - private Long modifyUserId; - - - /** - * 修改时间 - */ - @ApiModelProperty("修改时间") - private LocalDateTime modifyDate; - - - /** - * 租户id - */ - @ApiModelProperty("租户id") - private Long tenantId; - - - /** - * 部门id - */ - @ApiModelProperty("部门id") - private Long deptId; - - - /** - * 数据权限id - */ - @ApiModelProperty("数据权限id") - private Long ruleUserId; - - - - - } diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractPurIntServiceImpl.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractPurIntServiceImpl.java index 1396747..94a97d8 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractPurIntServiceImpl.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractPurIntServiceImpl.java @@ -42,6 +42,13 @@ public class ContractPurIntServiceImpl extends MPJBaseServiceImpl lngContractPurIntList = lngContractPurIntMapper.selectList( + new LambdaQueryWrapper() + .eq(LngContractPurInt::getKId, lngContract.getId())); + if (CollectionUtils.isNotEmpty(lngContractPurIntList)) { + vo.setLngContractPurIntList(BeanUtil.copyToList(lngContractPurIntList, + LngContractPurIntVo.class)); + } List lngContractFactRelList = lngContractFactRelMapper.selectList( new LambdaQueryWrapper() .eq(LngContractFactRel::getKId, lngContract.getId())); diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractSalesIntServiceImpl.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractSalesIntServiceImpl.java index 6715d0c..f488e02 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractSalesIntServiceImpl.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/contract/service/impl/ContractSalesIntServiceImpl.java @@ -49,7 +49,6 @@ public class ContractSalesIntServiceImpl extends MPJBaseServiceImpl lngContractFactRelList = lngContractFactRelMapper.selectList( new LambdaQueryWrapper() .eq(LngContractFactRel::getKId, lngContract.getId())); diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-start/src/main/resources/bootstrap-dev.yml b/itc-pcitc-mdm/itc-pcitc-mdm-start/src/main/resources/bootstrap-dev.yml index ac06c3b..32a510c 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-start/src/main/resources/bootstrap-dev.yml +++ b/itc-pcitc-mdm/itc-pcitc-mdm-start/src/main/resources/bootstrap-dev.yml @@ -45,7 +45,7 @@ spring: group: DNE discovery: - ip: 10.0.0.2 + ip: 10.0.0.3 #network-interface: net7 xjrsoft: From 35c33406c42851a265c42227fe9fd794afeffa82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E7=A7=89=E5=8D=93?= Date: Wed, 4 Feb 2026 18:02:19 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../itc-pcitc-mdm-start/src/main/resources/bootstrap-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-start/src/main/resources/bootstrap-dev.yml b/itc-pcitc-mdm/itc-pcitc-mdm-start/src/main/resources/bootstrap-dev.yml index 32a510c..ac06c3b 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-start/src/main/resources/bootstrap-dev.yml +++ b/itc-pcitc-mdm/itc-pcitc-mdm-start/src/main/resources/bootstrap-dev.yml @@ -45,7 +45,7 @@ spring: group: DNE discovery: - ip: 10.0.0.3 + ip: 10.0.0.2 #network-interface: net7 xjrsoft: