This commit is contained in:
2025-12-29 17:54:33 +08:00
35 changed files with 702 additions and 247 deletions

View File

@ -30,6 +30,11 @@ public class LngContractFactPageDto extends PageInput {
*/ */
@ApiModelProperty("合同名称") @ApiModelProperty("合同名称")
private String kName; private String kName;
/**
* 关联类别(M-主合同/U-合同变更/C-确认函/A-补充协议/F-框架协议/R-续签合同/I-同一事项关联合同;以下不要:无/原合同补充协议/原合同续签合同/同一事项关联合同)
*/
@ApiModelProperty("关联类别(M-主合同/U-合同变更/C-确认函/A-补充协议/F-框架协议/R-续签合同/I-同一事项关联合同;以下不要:无/原合同补充协议/原合同续签合同/同一事项关联合同)")
private String relTypeCode;
/** /**
* 合同类别(日常采购/工程建设/人力资源/投资管理/金融保险/租赁/信息管理/咨询服务/综合服务/生产运营/天然气公司业务合同) * 合同类别(日常采购/工程建设/人力资源/投资管理/金融保险/租赁/信息管理/咨询服务/综合服务/生产运营/天然气公司业务合同)
*/ */

View File

@ -245,7 +245,7 @@ public class UpdateLngContractFactDto implements Serializable {
@ApiModelProperty("lngContractFactCp子表") @ApiModelProperty("lngContractFactCp子表")
@LogJoin(name = "lngContractFactCp子表", @LogJoin(name = "lngContractFactCp子表",
columns = { columns = {
@LogJoinColumn(field = "kFactId",relatedField = "id", valueDirection = ValueDirectionType.RIGHT) @LogJoinColumn(field = "id",relatedField = "kFactId", valueDirection = ValueDirectionType.RIGHT)
}, },
caseType = JoinCaseType.FULL, target = UpdateLngContractFactCpDto.class, type = JoinType.MANY) caseType = JoinCaseType.FULL, target = UpdateLngContractFactCpDto.class, type = JoinType.MANY)
private List<UpdateLngContractFactCpDto> lngContractFactCpList; private List<UpdateLngContractFactCpDto> lngContractFactCpList;
@ -255,7 +255,7 @@ public class UpdateLngContractFactDto implements Serializable {
@ApiModelProperty("lngContractApproRel子表") @ApiModelProperty("lngContractApproRel子表")
@LogJoin(name = "lngContractApproRel子表", @LogJoin(name = "lngContractApproRel子表",
columns = { columns = {
@LogJoinColumn(field = "tableId",relatedField = "id", valueDirection = ValueDirectionType.RIGHT) @LogJoinColumn(field = "id",relatedField = "tableId", valueDirection = ValueDirectionType.RIGHT)
}, },
caseType = JoinCaseType.FULL, target = UpdateLngContractApproRelDto.class, type = JoinType.MANY) caseType = JoinCaseType.FULL, target = UpdateLngContractApproRelDto.class, type = JoinType.MANY)
private List<UpdateLngContractApproRelDto> lngContractApproRelList; private List<UpdateLngContractApproRelDto> lngContractApproRelList;

View File

@ -27,7 +27,13 @@ public class LngContractFactPageVo {
* 合同主体ID(天然气公司/惠贸) * 合同主体ID(天然气公司/惠贸)
*/ */
@ApiModelProperty("合同主体ID(天然气公司/惠贸)") @ApiModelProperty("合同主体ID(天然气公司/惠贸)")
@Trans(type = TransType.DEPT, transToFieldName = "comName")
private Long comId; private Long comId;
/**
* 合同主体名称
*/
@ApiModelProperty("合同主体名称")
private String comName;
/** /**
* 合同号 * 合同号
*/ */
@ -38,11 +44,27 @@ public class LngContractFactPageVo {
*/ */
@ApiModelProperty("合同名称") @ApiModelProperty("合同名称")
private String kName; private String kName;
/**
* 关联类别(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("合同类别(日常采购/工程建设/人力资源/投资管理/金融保险/租赁/信息管理/咨询服务/综合服务/生产运营/天然气公司业务合同)") @ApiModelProperty("合同类别(日常采购/工程建设/人力资源/投资管理/金融保险/租赁/信息管理/咨询服务/综合服务/生产运营/天然气公司业务合同)")
@Trans(type = TransType.DIC, id = "2003815931950215169", transToFieldName = "kTypeName1")
private String kTypeCode1; private String kTypeCode1;
private String kTypeName1;
/**
* 二级类别(天然气购入/天然气销售/接收站加工/管道代输/槽车运输/船舶运输/其他;合同类别为天然气公司业务合同时,其他类别还有很多选项)
*/
@ApiModelProperty("二级类别(天然气购入/天然气销售/接收站加工/管道代输/槽车运输/船舶运输/其他;合同类别为天然气公司业务合同时,其他类别还有很多选项)")
@Trans(type = TransType.DIC, id = "2003816733997608961", transToFieldName = "kTypeName2")
private String kTypeCode2;
private String kTypeName2;
/** /**
* 相对方数量 * 相对方数量
*/ */
@ -52,7 +74,9 @@ public class LngContractFactPageVo {
* 合同期限类型编码(Y-有固定期限/N-无固定期限) * 合同期限类型编码(Y-有固定期限/N-无固定期限)
*/ */
@ApiModelProperty("合同期限类型编码(Y-有固定期限/N-无固定期限)") @ApiModelProperty("合同期限类型编码(Y-有固定期限/N-无固定期限)")
@Trans(type = TransType.DIC, id = "2003817739355500546", transToFieldName = "periodTypeName")
private String periodTypeCode; private String periodTypeCode;
private String periodTypeName;
/** /**
* 有效期开始(有固定期限时录入) * 有效期开始(有固定期限时录入)
*/ */
@ -69,43 +93,69 @@ public class LngContractFactPageVo {
* 币种编码 * 币种编码
*/ */
@ApiModelProperty("币种编码") @ApiModelProperty("币种编码")
@Trans(type = TransType.API, id = "93d735dcb7364a0f8102188ec4d77ac7") @Trans(type = TransType.API, id = "93d735dcb7364a0f8102188ec4d77ac7", transToFieldName = "curName")
private String curCode; private String curCode;
private String curName;
/** /**
* 合同金额(万元)(固定总价/非固定金额时必须录入) * 合同金额(万元)(固定总价/非固定金额时必须录入)
*/ */
@ApiModelProperty("合同金额(万元)(固定总价/非固定金额时必须录入)") @ApiModelProperty("合同金额(万元)(固定总价/非固定金额时必须录入)")
private BigDecimal amount; private BigDecimal amount;
/**
* 合同金额类型(Y-固定总价/N-非固定金额/U-无金额)
*/
@ApiModelProperty("合同金额类型(Y-固定总价/N-非固定金额/U-无金额)")
@Trans(type = TransType.DIC, id = "2003818343192670209", transToFieldName = "amountTypeName")
private String amountTypeCode;
private String amountTypeName;
/**
* 结算类别(收款合同/付款合同/无金额)
*/
@ApiModelProperty("结算类别(收款合同/付款合同/无金额)")
@Trans(type = TransType.DIC, id = "2003818749167742977", transToFieldName = "settleTypeName")
private String settleTypeCode;
private String settleTypeName;
/** /**
* 是否招投标(Y-是/N-否/U-不适用) * 是否招投标(Y-是/N-否/U-不适用)
*/ */
@ApiModelProperty("是否招投标(Y-是/N-否/U-不适用)") @ApiModelProperty("是否招投标(Y-是/N-否/U-不适用)")
@Trans(type = TransType.DIC, id = "2003819376161665026")
private String bidSign; private String bidSign;
/** /**
* 是否已获前置审批(Y-是/N-否/U-不适用) * 是否已获前置审批(Y-是/N-否/U-不适用)
*/ */
@ApiModelProperty("是否已获前置审批(Y-是/N-否/U-不适用)") @ApiModelProperty("是否已获前置审批(Y-是/N-否/U-不适用)")
@Trans(type = TransType.DIC, id = "2003819376161665026")
private String preApproSign; private String preApproSign;
/** /**
* 先行履行(Y-是/N-否/U-不适用) * 先行履行(Y-是/N-否/U-不适用)
*/ */
@ApiModelProperty("先行履行(Y-是/N-否/U-不适用)") @ApiModelProperty("先行履行(Y-是/N-否/U-不适用)")
@Trans(type = TransType.DIC, id = "2003819376161665026")
private String aheadSign; private String aheadSign;
/** /**
* 采用范本(Y-是/N-否/R-参考) * 采用范本(Y-是/N-否/R-参考)
*/ */
@ApiModelProperty("采用范本(Y-是/N-否/R-参考)") @ApiModelProperty("采用范本(Y-是/N-否/R-参考)")
@Trans(type = TransType.DIC, id = "2003819644643258370")
private String tempSign; private String tempSign;
/** /**
* 是否属于重大事项所涉合同(Y-是N-否) * 是否属于重大事项所涉合同(Y-是N-否)
*/ */
@ApiModelProperty("是否属于重大事项所涉合同(Y-是N-否)") @ApiModelProperty("是否属于重大事项所涉合同(Y-是N-否)")
@Trans(type = TransType.DIC, id = "1978056598125330433")
private String impSign; private String impSign;
/** /**
* 我方联系人ID * 我方联系人ID
*/ */
@ApiModelProperty("我方联系人ID") @ApiModelProperty("我方联系人ID")
@Trans(type = TransType.USER, transToFieldName = "empName")
private Long empId; private Long empId;
/**
* 我方联系人名称
*/
@ApiModelProperty("我方联系人名称")
private String empName;
/** /**
* 联系电话 * 联系电话
*/ */
@ -115,7 +165,13 @@ public class LngContractFactPageVo {
* 业务部门ID * 业务部门ID
*/ */
@ApiModelProperty("业务部门ID") @ApiModelProperty("业务部门ID")
@Trans(type = TransType.DEPT, transToFieldName = "bDeptName")
private Long bDeptId; private Long bDeptId;
/**
* 业务部门名称
*/
@ApiModelProperty("业务部门名称")
private String bDeptName;
/** /**
* 起草日期 * 起草日期
*/ */
@ -126,7 +182,9 @@ public class LngContractFactPageVo {
* 状态(未提交/审批中/已审批/已驳回) * 状态(未提交/审批中/已审批/已驳回)
*/ */
@ApiModelProperty("状态(未提交/审批中/已审批/已驳回)") @ApiModelProperty("状态(未提交/审批中/已审批/已驳回)")
@Trans(type = TransType.DIC, id = "1990669393069129729", transToFieldName = "approName")
private String approCode; private String approCode;
private String approName;
/** /**
* 合同说明 * 合同说明
*/ */

View File

@ -1,5 +1,9 @@
package com.xjrsoft.module.contract.vo; 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 io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
@ -27,7 +31,15 @@ public class LngContractFactVo {
* 合同主体ID(天然气公司/惠贸) * 合同主体ID(天然气公司/惠贸)
*/ */
@ApiModelProperty("合同主体ID(天然气公司/惠贸)") @ApiModelProperty("合同主体ID(天然气公司/惠贸)")
@Trans(type = TransType.DEPT, transToFieldName = "comName")
private Long comId; private Long comId;
/**
* 合同主体名称
*/
@ApiModelProperty("合同主体名称")
private String comName;
/** /**
@ -174,7 +186,14 @@ public class LngContractFactVo {
* 我方联系人ID * 我方联系人ID
*/ */
@ApiModelProperty("我方联系人ID") @ApiModelProperty("我方联系人ID")
@Trans(type = TransType.USER, transToFieldName = "empName")
private Long empId; private Long empId;
/**
* 我方联系人名称
*/
@ApiModelProperty("我方联系人名称")
private String empName;
/** /**
@ -188,8 +207,15 @@ public class LngContractFactVo {
* 业务部门ID * 业务部门ID
*/ */
@ApiModelProperty("业务部门ID") @ApiModelProperty("业务部门ID")
@Trans(type = TransType.DEPT, transToFieldName = "bDeptName")
private Long bDeptId; private Long bDeptId;
/**
* 业务部门名称
*/
@ApiModelProperty("业务部门名称")
private String bDeptName;
/** /**
* 起草日期 * 起草日期
@ -275,10 +301,23 @@ public class LngContractFactVo {
*/ */
@ApiModelProperty("lngContractFactCp子表") @ApiModelProperty("lngContractFactCp子表")
private List<LngContractFactCpVo> lngContractFactCpList; private List<LngContractFactCpVo> lngContractFactCpList;
/** /**
* lngContractApproRel * lngContractApproRel
*/ */
@ApiModelProperty("lngContractApproRel子表") @ApiModelProperty("lngContractApproRel子表")
private List<LngContractApproRelVo> lngContractApproRelList; private List<LngContractApproRelVo> lngContractApproRelList;
/**
* lngApproVoList
*/
@ApiModelProperty("lngApproVoList子表")
private List<LngApproVo> lngApproVoList;
/**
* lngFileUpload
*/
@ApiModelProperty("lngFileUpload子表")
private List<LngFileUploadVo> lngFileUploadList;
} }

View File

@ -0,0 +1,24 @@
package com.xjrsoft.module.sales.client;
import java.util.Map;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import com.xjrsoft.common.constant.GlobalConstant;
/**
* @author: ksy
* @since: 2025/11/5
*/
@FeignClient(value = GlobalConstant.CLIENT_PCITC_MDM_NAME, path = GlobalConstant.CLIENT_API_PRE + GlobalConstant.SALES_MODULE_PREFIX + "/tran/customer")
public interface ICustomerClient {
@GetMapping("/getAllTranData")
Map<String,String> getAllTranData();
@GetMapping("/getTranById")
String getTranById(@RequestParam("id")String id);
}

View File

@ -0,0 +1,24 @@
package com.xjrsoft.module.sales.client;
import java.util.Map;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import com.xjrsoft.common.constant.GlobalConstant;
/**
* @author: ksy
* @since: 2025/11/5
*/
@FeignClient(value = GlobalConstant.CLIENT_PCITC_MDM_NAME, path = GlobalConstant.CLIENT_API_PRE + GlobalConstant.SALES_MODULE_PREFIX + "/tran/gradeSystem")
public interface IGradeSystemClient {
@GetMapping("/getAllTranData")
Map<String,String> getAllTranData();
@GetMapping("/getTranById")
String getTranById(@RequestParam("id")String id);
}

View File

@ -71,4 +71,16 @@ public class LngApproPageDto extends PageInput {
@ApiModelProperty("内容摘要") @ApiModelProperty("内容摘要")
private String content; private String content;
/**
* 拟稿日期开始时间
*/
@ApiModelProperty("拟稿日期开始时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime startDate;
/**
* 拟稿日期结束时间
*/
@ApiModelProperty("拟稿日期结束时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime endDate;
} }

View File

@ -5,8 +5,6 @@ import com.pictc.annotations.datalog.LogTable;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.io.Serializable;
@ -18,7 +16,7 @@ import java.io.Serializable;
*/ */
@Data @Data
@LogTable(source="lng_customer_group_customer",name="客户组-客户") @LogTable(source="lng_customer_group_customer",name="客户组-客户")
public class UpdateLngCustomerGroupCustomerDto extends com.xjrsoft.common.model.base.BaseModel { public class UpdateLngCustomerGroupCustomerDto {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;

View File

@ -2,7 +2,6 @@ package com.xjrsoft.module.sales.dto;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.pictc.annotations.datalog.*; import com.pictc.annotations.datalog.*;
import com.xjrsoft.common.model.base.BaseModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
@ -19,7 +18,7 @@ import java.util.List;
*/ */
@Data @Data
@LogTable(source="lng_customer_group",name="客户组") @LogTable(source="lng_customer_group",name="客户组")
public class UpdateLngCustomerGroupDto extends BaseModel { public class UpdateLngCustomerGroupDto {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;

View File

@ -6,7 +6,6 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime;
/** /**
@ -70,48 +69,12 @@ public class UpdateLngGradeSystemItemDto implements Serializable {
@ApiModelProperty("备注") @ApiModelProperty("备注")
private String note; private String note;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime modifyDate;
/** /**
* 租户id * 租户id
*/ */
@LogField(name="租户id",index=7) @LogField(name="租户id",index=7)
@ApiModelProperty("租户id") @ApiModelProperty("租户id")
private Long tenantId; private Long tenantId;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
private Long ruleUserId;
} }

View File

@ -2,9 +2,12 @@ package com.xjrsoft.module.sales.vo;
import com.xjrsoft.common.annotation.Trans; import com.xjrsoft.common.annotation.Trans;
import com.xjrsoft.common.enums.TransType; import com.xjrsoft.common.enums.TransType;
import com.xjrsoft.module.system.vo.LngFileUploadVo;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.util.List;
/** /**
* @title: 分页列表出参 * @title: 分页列表出参
* @Author 管理员 * @Author 管理员
@ -18,13 +21,14 @@ public class LngApproPageVo {
* 主键 * 主键
*/ */
@ApiModelProperty("主键") @ApiModelProperty("主键")
private String id; private Long id;
/** /**
* 签报类型(DJ-定价方案/XB-询比价销售方案/XS-双边协商谈判销售方案/YY-应邀报价销售方案/JP-竞拍销售方案/SJ-商机) * 签报类型(DJ-定价方案/XB-询比价销售方案/XS-双边协商谈判销售方案/YY-应邀报价销售方案/JP-竞拍销售方案/SJ-商机)
*/ */
@ApiModelProperty("签报类型(DJ-定价方案/XB-询比价销售方案/XS-双边协商谈判销售方案/YY-应邀报价销售方案/JP-竞拍销售方案/SJ-商机)") @ApiModelProperty("签报类型(DJ-定价方案/XB-询比价销售方案/XS-双边协商谈判销售方案/YY-应邀报价销售方案/JP-竞拍销售方案/SJ-商机)")
@Trans(type = TransType.DIC, id = "2001500486723887105") @Trans(type = TransType.DIC, id = "2001500486723887105", transToFieldName = "typeName")
private String typeCode; private String typeCode;
private String typeName;
/** /**
* 编号(自动生成) * 编号(自动生成)
*/ */
@ -39,14 +43,16 @@ public class LngApproPageVo {
* 密级(1-加密/9-普通) * 密级(1-加密/9-普通)
*/ */
@ApiModelProperty("密级(1-加密/9-普通)") @ApiModelProperty("密级(1-加密/9-普通)")
@Trans(type = TransType.DIC, id = "2001501242533273602") @Trans(type = TransType.DIC, id = "2001501242533273602", transToFieldName = "securityName")
private String securityCode; private String securityCode;
private String securityName;
/** /**
* 缓急(1-特急/2-紧急/9-普通) * 缓急(1-特急/2-紧急/9-普通)
*/ */
@ApiModelProperty("缓急(1-特急/2-紧急/9-普通)") @ApiModelProperty("缓急(1-特急/2-紧急/9-普通)")
@Trans(type = TransType.DIC, id = "2001501562994876418") @Trans(type = TransType.DIC, id = "2001501562994876418", transToFieldName = "urgencyName")
private String urgencyCode; private String urgencyCode;
private String urgencyName;
/** /**
* 内容摘要 * 内容摘要
*/ */
@ -56,23 +62,40 @@ public class LngApproPageVo {
* 拟稿日期 * 拟稿日期
*/ */
@ApiModelProperty("拟稿日期") @ApiModelProperty("拟稿日期")
@Trans(type = TransType.API, id = "93d735dcb7364a0f8102188ec4d77ac7")
private String dateAppro; private String dateAppro;
/** /**
* 拟稿人(xjr_user.id) * 拟稿人(xjr_user.id)
*/ */
@ApiModelProperty("拟稿人(xjr_user.id)") @ApiModelProperty("拟稿人(xjr_user.id)")
@Trans(type = TransType.USER, transToFieldName = "empName")
private Long empId; private Long empId;
/**
* 拟稿人名称
*/
@ApiModelProperty("拟稿人名称")
private String empName;
/** /**
* 业务部门(xjr_department.id) * 业务部门(xjr_department.id)
*/ */
@ApiModelProperty("业务部门(xjr_department.id)") @ApiModelProperty("业务部门(xjr_department.id)")
@Trans(type = TransType.DEPT, transToFieldName = "bDeptName")
private Long bDeptId; private Long bDeptId;
/**
* 业务部门名称
*/
@ApiModelProperty("业务部门名称")
private String bDeptName;
/** /**
* 审批状态(未提交/审批中/已审批/已驳回) * 审批状态(未提交/审批中/已审批/已驳回)
*/ */
@ApiModelProperty("审批状态(未提交/审批中/已审批/已驳回)") @ApiModelProperty("审批状态(未提交/审批中/已审批/已驳回)")
@Trans(type = TransType.DIC, id = "1990669393069129729") @Trans(type = TransType.DIC, id = "1990669393069129729", transToFieldName = "approName")
private String approCode; private String approCode;
private String approName;
/**
* lngFileUpload
*/
@ApiModelProperty("lngFileUpload子表")
private List<LngFileUploadVo> lngFileUploadList;
} }

View File

@ -30,6 +30,12 @@ public class LngApproVo {
*/ */
@ApiModelProperty("签报类型(DJ-定价方案/XB-询比价销售方案/XS-双边协商谈判销售方案/YY-应邀报价销售方案/JP-竞拍销售方案/SJ-商机)") @ApiModelProperty("签报类型(DJ-定价方案/XB-询比价销售方案/XS-双边协商谈判销售方案/YY-应邀报价销售方案/JP-竞拍销售方案/SJ-商机)")
private String typeCode; private String typeCode;
/**
* 签报类型描述
*/
@ApiModelProperty("签报类型描述")
private String typeName;
/** /**

View File

@ -75,7 +75,8 @@ public class LngCustomerPageVo {
* 状态(未提交/审批中/已审批/已驳回) * 状态(未提交/审批中/已审批/已驳回)
*/ */
@ApiModelProperty("状态(未提交/审批中/已审批/已驳回)") @ApiModelProperty("状态(未提交/审批中/已审批/已驳回)")
@Trans(type = TransType.DIC, id = "1990669393069129729", transToFieldName = "approName") //@Trans(type = TransType.DIC, id = "1990669393069129729", transToFieldName = "approName")
@Trans(type = TransType.DIC, id = "1990669393069129729")
private String approCode; private String approCode;
@ApiModelProperty("状态(未提交/审批中/已审批/已驳回)") @ApiModelProperty("状态(未提交/审批中/已审批/已驳回)")

View File

@ -34,13 +34,26 @@ public class LngScorePageVo {
* 评价体系主键 * 评价体系主键
*/ */
@ApiModelProperty("评价体系主键") @ApiModelProperty("评价体系主键")
//@Trans(type = TransType.API, id = "93d735dcb7364a0f8102188ec4d77ac7") @Trans(type = TransType.GRADE_SYSTEM, transToFieldName = "gsName")
private String gsId; private String gsId;
/**
* 评价体系名称主键
*/
@ApiModelProperty("评价体系名称")
private String gsName;
/** /**
* 供应商/客户 * 供应商/客户
*/ */
@ApiModelProperty("供应商/客户") @ApiModelProperty("供应商/客户")
@Trans(type = TransType.CUSTOMER, transToFieldName = "cpName")
private String cpCode; private String cpCode;
/**
* 供应商/客户
*/
@ApiModelProperty("供应商/客户名称")
private String cpName;
/** /**
* 分数 * 分数
*/ */

View File

@ -0,0 +1,24 @@
package com.xjrsoft.module.supplier.client;
import java.util.Map;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import com.xjrsoft.common.constant.GlobalConstant;
/**
* @author: ksy
* @since: 2025/11/5
*/
@FeignClient(value = GlobalConstant.CLIENT_PCITC_MDM_NAME, path = GlobalConstant.CLIENT_API_PRE + GlobalConstant.SUPPLIER_MODULE_PREFIX + "/tran/supplier")
public interface ISupplierClient {
@GetMapping("/getAllTranData")
Map<String,String> getAllTranData();
@GetMapping("/getTranById")
String getTranById(@RequestParam("id")String id);
}

View File

@ -31,16 +31,29 @@ public class LngScorePageVo {
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime dateGrade; private LocalDateTime dateGrade;
/** /**
* 评价体系主键 * 评价体系主键
*/ */
@ApiModelProperty("评价体系主键") @ApiModelProperty("评价体系主键")
@Trans(type = TransType.API, id = "93d735dcb7364a0f8102188ec4d77ac7") @Trans(type = TransType.GRADE_SYSTEM, transToFieldName = "gsName")
private String gsId; private String gsId;
/**
* 评价体系名称主键
*/
@ApiModelProperty("评价体系名称")
private String gsName;
/** /**
* 供应商/客户 * 供应商/客户
*/ */
@ApiModelProperty("供应商/客户") @ApiModelProperty("供应商/客户")
@Trans(type = TransType.SUPPLIER, transToFieldName = "cpName")
private String cpCode; private String cpCode;
/**
* 供应商/客户
*/
@ApiModelProperty("供应商/客户名称")
private String cpName;
/** /**
* 分数 * 分数
*/ */

View File

@ -1,8 +1,6 @@
package com.xjrsoft.module.contract.controller; package com.xjrsoft.module.contract.controller;
import cn.dev33.satoken.annotation.SaCheckPermission; import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
@ -24,7 +22,6 @@ import com.xjrsoft.module.contract.dto.UpdateLngContractFactDto;
import com.xjrsoft.module.contract.entity.LngContractFact; import com.xjrsoft.module.contract.entity.LngContractFact;
import com.xjrsoft.module.contract.service.IContractFactService; import com.xjrsoft.module.contract.service.IContractFactService;
import com.xjrsoft.module.contract.vo.LngContractFactPageVo; import com.xjrsoft.module.contract.vo.LngContractFactPageVo;
import com.xjrsoft.module.contract.vo.LngContractFactVo;
import com.xjrsoft.module.datalog.service.DatalogService; import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.datalog.vo.DataChangeLogVo; import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
@ -51,34 +48,19 @@ public class ContractFactController {
private final IContractFactService contractFactService; private final IContractFactService contractFactService;
private final DatalogService dataService; private final DatalogService dataService;
// @GetMapping(value = "/page") @GetMapping(value = "/page")
@ApiOperation(value="LngContractFact列表(分页)") @ApiOperation(value="LngContractFact列表(分页)")
@SaCheckPermission("contractFact:list") @SaCheckPermission("contractFact:list")
public R page(@Valid LngContractFactPageDto dto){ public R page(@Valid LngContractFactPageDto dto){
LambdaQueryWrapper<LngContractFact> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<LngContractFact> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper queryWrapper
.like(StrUtil.isNotBlank(dto.getKNo()),LngContractFact::getKNo,dto.getKNo()) .and(StrUtil.isNotBlank(dto.getKName()), r ->
.like(StrUtil.isNotBlank(dto.getKName()),LngContractFact::getKName,dto.getKName()) r.like(LngContractFact::getKNo, dto.getKName())
.like(StrUtil.isNotBlank(dto.getKTypeCode1()),LngContractFact::getKTypeCode1,dto.getKTypeCode1()) .or()
.eq(ObjectUtil.isNotNull(dto.getComId()),LngContractFact::getComId,dto.getComId()) .like(LngContractFact::getKName, dto.getKName())
.between(ObjectUtil.isNotNull(dto.getDateDraftStart()) && ObjectUtil.isNotNull(dto.getDateDraftEnd()),LngContractFact::getDateDraft,dto.getDateDraftStart(),dto.getDateDraftEnd()) )
.like(StrUtil.isNotBlank(dto.getPeriodTypeCode()),LngContractFact::getPeriodTypeCode,dto.getPeriodTypeCode()) .eq(StrUtil.isNotBlank(dto.getRelTypeCode()), LngContractFact::getRelTypeCode,dto.getRelTypeCode())
.between(ObjectUtil.isNotNull(dto.getDateFromStart()) && ObjectUtil.isNotNull(dto.getDateFromEnd()),LngContractFact::getDateFrom,dto.getDateFromStart(),dto.getDateFromEnd())
.between(ObjectUtil.isNotNull(dto.getDateToStart()) && ObjectUtil.isNotNull(dto.getDateToEnd()),LngContractFact::getDateTo,dto.getDateToStart(),dto.getDateToEnd())
.like(StrUtil.isNotBlank(dto.getCurCode()),LngContractFact::getCurCode,dto.getCurCode())
.eq(ObjectUtil.isNotNull(dto.getAmount()),LngContractFact::getAmount,dto.getAmount())
.eq(ObjectUtil.isNotNull(dto.getEmpId()),LngContractFact::getEmpId,dto.getEmpId())
.like(StrUtil.isNotBlank(dto.getTel()),LngContractFact::getTel,dto.getTel())
.eq(ObjectUtil.isNotNull(dto.getBDeptId()),LngContractFact::getBDeptId,dto.getBDeptId())
.like(StrUtil.isNotBlank(dto.getBidSign()),LngContractFact::getBidSign,dto.getBidSign())
.like(StrUtil.isNotBlank(dto.getPreApproSign()),LngContractFact::getPreApproSign,dto.getPreApproSign())
.like(StrUtil.isNotBlank(dto.getAheadSign()),LngContractFact::getAheadSign,dto.getAheadSign())
.like(StrUtil.isNotBlank(dto.getTempSign()),LngContractFact::getTempSign,dto.getTempSign())
.like(StrUtil.isNotBlank(dto.getImpSign()),LngContractFact::getImpSign,dto.getImpSign())
.like(StrUtil.isNotBlank(dto.getApproCode()),LngContractFact::getApproCode,dto.getApproCode())
.like(StrUtil.isNotBlank(dto.getKDesc()),LngContractFact::getKDesc,dto.getKDesc())
.like(StrUtil.isNotBlank(dto.getNote()),LngContractFact::getNote,dto.getNote())
.orderByDesc(LngContractFact::getId) .orderByDesc(LngContractFact::getId)
.select(LngContractFact.class,x -> VoToColumnUtil.fieldsToColumns(LngContractFactPageVo.class).contains(x.getProperty())); .select(LngContractFact.class,x -> VoToColumnUtil.fieldsToColumns(LngContractFactPageVo.class).contains(x.getProperty()));
IPage<LngContractFact> page = contractFactService.page(ConventPage.getPage(dto), queryWrapper); IPage<LngContractFact> page = contractFactService.page(ConventPage.getPage(dto), queryWrapper);
@ -90,11 +72,7 @@ public class ContractFactController {
@ApiOperation(value="根据id查询LngContractFact信息") @ApiOperation(value="根据id查询LngContractFact信息")
@SaCheckPermission("contractFact:detail") @SaCheckPermission("contractFact:detail")
public R info(@RequestParam Long id){ public R info(@RequestParam Long id){
LngContractFact lngContractFact = contractFactService.getByIdDeep(id); return R.ok(contractFactService.getInfoById(id));
if (lngContractFact == null) {
return R.error("找不到此数据!");
}
return R.ok(BeanUtil.toBean(lngContractFact, LngContractFactVo.class));
} }
@GetMapping(value = "/datalog") @GetMapping(value = "/datalog")
@ -121,7 +99,7 @@ public class ContractFactController {
return null; return null;
} }
}); });
return R.ok(res.getId()); return R.ok(res);
} }
@PutMapping @PutMapping

View File

@ -1,5 +1,6 @@
package com.xjrsoft.module.contract.mapper; package com.xjrsoft.module.contract.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper; import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.contract.entity.LngContractApproRel; import com.xjrsoft.module.contract.entity.LngContractApproRel;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -11,6 +12,6 @@ import org.apache.ibatis.annotations.Mapper;
* @Version 1.0 * @Version 1.0
*/ */
@Mapper @Mapper
public interface LngContractApproRelMapper extends MPJBaseMapper<LngContractApproRel> { public interface LngContractApproRelMapper extends MPJBaseMapper<LngContractApproRel>, BaseMapper<LngContractApproRel> {
} }

View File

@ -1,5 +1,6 @@
package com.xjrsoft.module.contract.mapper; package com.xjrsoft.module.contract.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper; import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.contract.entity.LngContractFactCp; import com.xjrsoft.module.contract.entity.LngContractFactCp;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -11,6 +12,6 @@ import org.apache.ibatis.annotations.Mapper;
* @Version 1.0 * @Version 1.0
*/ */
@Mapper @Mapper
public interface LngContractFactCpMapper extends MPJBaseMapper<LngContractFactCp> { public interface LngContractFactCpMapper extends MPJBaseMapper<LngContractFactCp>, BaseMapper<LngContractFactCp> {
} }

View File

@ -1,8 +1,12 @@
package com.xjrsoft.module.contract.mapper; package com.xjrsoft.module.contract.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper; import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.contract.entity.LngContractFact; import com.xjrsoft.module.contract.entity.LngContractFact;
import com.xjrsoft.module.sales.vo.LngApproVo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
/** /**
* @title: mapper * @title: mapper
@ -11,6 +15,22 @@ import org.apache.ibatis.annotations.Mapper;
* @Version 1.0 * @Version 1.0
*/ */
@Mapper @Mapper
public interface LngContractFactMapper extends MPJBaseMapper<LngContractFact> { public interface LngContractFactMapper extends MPJBaseMapper<LngContractFact>, BaseMapper<LngContractFact> {
@Select("SELECT a.id, a.title, a.code, dd_qb.name as typeName," +
" u.name as empName, dept.name as bDeptName, a.date_appro AS dateAppro" +
" FROM lng_appro a" +
" LEFT JOIN xjr_dictionary_item di_qb on di_qb.code='LNG_QB'" +
" LEFT JOIN xjr_dictionary_detail dd_qb on dd_qb.item_id=di_qb.id AND dd_qb.code=a.type_code" +
" LEFT JOIN xjr_dictionary_item di_s on di_s.code='LNG_SECRET'" +
" LEFT JOIN xjr_dictionary_detail dd_s on dd_s.item_id=di_s.id AND dd_s.code=a.security_code" +
" LEFT JOIN xjr_dictionary_item di_u on di_u.code='LNG_URGEN'" +
" LEFT JOIN xjr_dictionary_detail dd_u on dd_u.item_id=di_u.id AND dd_u.code=a.urgency_code" +
" LEFT JOIN xjr_dictionary_item di_a on di_a.code='LNG_APPRO'" +
" LEFT JOIN xjr_dictionary_detail dd_a on dd_a.item_id=di_a.id AND dd_a.code=a.appro_code" +
" LEFT JOIN xjr_user u on u.id=a.emp_id" +
" LEFT JOIN xjr_department dept on dept.id=a.dept_id" +
" LEFT JOIN xjr_department com on com.id=a.com_id" +
" WHERE a.id = #{id}")
LngApproVo getLngApproVo(@Param("id") Long id);
} }

View File

@ -4,8 +4,7 @@ import com.github.yulichang.base.MPJBaseService;
import com.github.yulichang.extension.mapping.base.MPJDeepService; import com.github.yulichang.extension.mapping.base.MPJDeepService;
import com.github.yulichang.extension.mapping.base.MPJRelationService; import com.github.yulichang.extension.mapping.base.MPJRelationService;
import com.xjrsoft.module.contract.entity.LngContractFact; import com.xjrsoft.module.contract.entity.LngContractFact;
import com.xjrsoft.module.contract.vo.LngContractFactVo;
import java.util.List;
/** /**
* @title: service * @title: service
@ -15,27 +14,6 @@ import java.util.List;
*/ */
public interface IContractFactService extends MPJBaseService<LngContractFact>, MPJDeepService<LngContractFact>, MPJRelationService<LngContractFact> { public interface IContractFactService extends MPJBaseService<LngContractFact>, MPJDeepService<LngContractFact>, MPJRelationService<LngContractFact> {
/**
* 新增
*
* @param lngContractFact
* @return
*/
Boolean add(LngContractFact lngContractFact);
/** LngContractFactVo getInfoById(Long id);
* 更新
*
* @param lngContractFact
* @return
*/
Boolean update(LngContractFact lngContractFact);
/**
* 删除
*
* @param ids
* @return
*/
Boolean delete(List<Long> ids);
} }

View File

@ -1,7 +1,11 @@
package com.xjrsoft.module.contract.service.impl; package com.xjrsoft.module.contract.service.impl;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.github.yulichang.base.MPJBaseServiceImpl; 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.LngContractApproRel; import com.xjrsoft.module.contract.entity.LngContractApproRel;
import com.xjrsoft.module.contract.entity.LngContractFact; import com.xjrsoft.module.contract.entity.LngContractFact;
import com.xjrsoft.module.contract.entity.LngContractFactCp; import com.xjrsoft.module.contract.entity.LngContractFactCp;
@ -9,13 +13,16 @@ import com.xjrsoft.module.contract.mapper.LngContractApproRelMapper;
import com.xjrsoft.module.contract.mapper.LngContractFactCpMapper; import com.xjrsoft.module.contract.mapper.LngContractFactCpMapper;
import com.xjrsoft.module.contract.mapper.LngContractFactMapper; import com.xjrsoft.module.contract.mapper.LngContractFactMapper;
import com.xjrsoft.module.contract.service.IContractFactService; import com.xjrsoft.module.contract.service.IContractFactService;
import com.xjrsoft.module.contract.vo.LngContractFactCpVo;
import com.xjrsoft.module.contract.vo.LngContractFactVo;
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 lombok.AllArgsConstructor;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List; import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/** /**
* @title: service * @title: service
@ -26,100 +33,42 @@ import java.util.stream.Collectors;
@Service @Service
@AllArgsConstructor @AllArgsConstructor
public class ContractFactServiceImpl extends MPJBaseServiceImpl<LngContractFactMapper, LngContractFact> implements IContractFactService { public class ContractFactServiceImpl extends MPJBaseServiceImpl<LngContractFactMapper, LngContractFact> implements IContractFactService {
private final LngContractFactMapper contractFactLngContractFactMapper;
private final LngContractFactCpMapper contractFactLngContractFactCpMapper;
private final LngContractApproRelMapper contractFactLngContractApproRelMapper;
private final LngContractFactCpMapper lngContractFactCpMapper;
private final LngContractApproRelMapper lngContractApproRelMapper;
private final IFileClient fileClient;
@Override @Override
@Transactional(rollbackFor = Exception.class) public LngContractFactVo getInfoById(Long id) {
public Boolean add(LngContractFact lngContractFact) { LngContractFact lngContractFact = this.getById(id);
contractFactLngContractFactMapper.insert(lngContractFact); if(lngContractFact == null) {
for (LngContractFactCp lngContractFactCp : lngContractFact.getLngContractFactCpList()) { new BusinessException(BusinessCode.of(10500,"找不到此数据"));
lngContractFactCp.setKFactId(lngContractFact.getId());
contractFactLngContractFactCpMapper.insert(lngContractFactCp);
} }
for (LngContractApproRel lngContractApproRel : lngContractFact.getLngContractApproRelList()) { LngContractFactVo vo = BeanUtil.toBean(lngContractFact, LngContractFactVo.class);
lngContractApproRel.setTableId(lngContractFact.getId()); List<LngContractFactCp> lngContractFactCpList = lngContractFactCpMapper.selectList(
contractFactLngContractApproRelMapper.insert(lngContractApproRel); new LambdaQueryWrapper<LngContractFactCp>()
.eq(LngContractFactCp::getKFactId, lngContractFact.getId()));
if (CollectionUtils.isNotEmpty(lngContractFactCpList)) {
vo.setLngContractFactCpList(BeanUtil.copyToList(lngContractFactCpList, LngContractFactCpVo.class));
} }
List<LngContractApproRel> lngContractApproRelList = lngContractApproRelMapper.selectList(
return true; new LambdaQueryWrapper<LngContractApproRel>()
} .eq(LngContractApproRel::getTableId, lngContractFact.getId()));
if (CollectionUtils.isNotEmpty(lngContractApproRelList)) {
@Override List<LngApproVo> approVoList = Lists.newArrayList();
@Transactional(rollbackFor = Exception.class) lngContractApproRelList.forEach(x -> {
public Boolean update(LngContractFact lngContractFact) { LngApproVo approVo = this.baseMapper.getLngApproVo(x.getApproId());
contractFactLngContractFactMapper.updateById(lngContractFact); List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_appro",
//********************************* LngContractFactCp 增删改 开始 *******************************************/ "lngFileUploadList", approVo.getId());
{ approVo.setLngFileUploadList(fileList);
// 查出所有子级的id approVoList.add(approVo);
List<LngContractFactCp> lngContractFactCpList = contractFactLngContractFactCpMapper.selectList(Wrappers.lambdaQuery(LngContractFactCp.class).eq(LngContractFactCp::getKFactId, lngContractFact.getId()).select(LngContractFactCp::getId)); });
List<Long> lngContractFactCpIds = lngContractFactCpList.stream().map(LngContractFactCp::getId).collect(Collectors.toList()); vo.setLngApproVoList(approVoList);
//原有子表单 没有被删除的主键
List<Long> lngContractFactCpOldIds = lngContractFact.getLngContractFactCpList().stream().map(LngContractFactCp::getId).filter(Objects::nonNull).collect(Collectors.toList());
//找到需要删除的id
List<Long> lngContractFactCpRemoveIds = lngContractFactCpIds.stream().filter(item -> !lngContractFactCpOldIds.contains(item)).collect(Collectors.toList());
for (LngContractFactCp lngContractFactCp : lngContractFact.getLngContractFactCpList()) {
//如果不等于空则修改
if (lngContractFactCp.getId() != null) {
contractFactLngContractFactCpMapper.updateById(lngContractFactCp);
}
//如果等于空 则新增
else {
//已经不存在的id 删除
lngContractFactCp.setKFactId(lngContractFact.getId());
contractFactLngContractFactCpMapper.insert(lngContractFactCp);
}
}
//已经不存在的id 删除
if(lngContractFactCpRemoveIds.size() > 0){
contractFactLngContractFactCpMapper.deleteBatchIds(lngContractFactCpRemoveIds);
}
} }
//********************************* LngContractFactCp 增删改 结束 *******************************************/ List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_contract_fact",
"lngFileUploadList", vo.getId());
//********************************* LngContractApproRel 增删改 开始 *******************************************/ vo.setLngFileUploadList(fileList);
{ return vo;
// 查出所有子级的id
List<LngContractApproRel> lngContractApproRelList = contractFactLngContractApproRelMapper.selectList(Wrappers.lambdaQuery(LngContractApproRel.class).eq(LngContractApproRel::getTableId, lngContractFact.getId()).select(LngContractApproRel::getId));
List<Long> lngContractApproRelIds = lngContractApproRelList.stream().map(LngContractApproRel::getId).collect(Collectors.toList());
//原有子表单 没有被删除的主键
List<Long> lngContractApproRelOldIds = lngContractFact.getLngContractApproRelList().stream().map(LngContractApproRel::getId).filter(Objects::nonNull).collect(Collectors.toList());
//找到需要删除的id
List<Long> lngContractApproRelRemoveIds = lngContractApproRelIds.stream().filter(item -> !lngContractApproRelOldIds.contains(item)).collect(Collectors.toList());
for (LngContractApproRel lngContractApproRel : lngContractFact.getLngContractApproRelList()) {
//如果不等于空则修改
if (lngContractApproRel.getId() != null) {
contractFactLngContractApproRelMapper.updateById(lngContractApproRel);
}
//如果等于空 则新增
else {
//已经不存在的id 删除
lngContractApproRel.setTableId(lngContractFact.getId());
contractFactLngContractApproRelMapper.insert(lngContractApproRel);
}
}
//已经不存在的id 删除
if(lngContractApproRelRemoveIds.size() > 0){
contractFactLngContractApproRelMapper.deleteBatchIds(lngContractApproRelRemoveIds);
}
}
//********************************* LngContractApproRel 增删改 结束 *******************************************/
return true;
}
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean delete(List<Long> ids) {
contractFactLngContractFactMapper.deleteBatchIds(ids);
contractFactLngContractFactCpMapper.delete(Wrappers.lambdaQuery(LngContractFactCp.class).in(LngContractFactCp::getKFactId, ids));
contractFactLngContractApproRelMapper.delete(Wrappers.lambdaQuery(LngContractApproRel.class).in(LngContractApproRel::getTableId, ids));
return true;
} }
} }

View File

@ -0,0 +1,50 @@
package com.xjrsoft.module.sales.client;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.xjrsoft.common.constant.GlobalConstant;
import com.xjrsoft.common.utils.TenantUtil;
import com.xjrsoft.module.sales.entity.LngCustomer;
import com.xjrsoft.module.sales.service.ICustomerService;
import lombok.AllArgsConstructor;
/**
* @author: yjw
* @since: 2025/3/5
*/
//@Api(hidden = true)
@RestController
@RequestMapping(GlobalConstant.CLIENT_API_PRE + GlobalConstant.SALES_MODULE_PREFIX + "/tran/customer")
@AllArgsConstructor
public class CustomerClientImpl implements ICustomerClient {
private final ICustomerService customerService;
@GetMapping("/getAllTranData")
@Override
public Map<String, String> getAllTranData() {
try {
TenantUtil.ignore(true);
List<LngCustomer> list = customerService.list();
return list.stream().collect(Collectors.toMap(LngCustomer::getCuCode,LngCustomer::getCuName));
}finally {
TenantUtil.clear();
}
}
@GetMapping("/getTranById")
@Override
public String getTranById(@RequestParam("id")String code) {
LngCustomer cu = customerService.getByCode(code);
return cu!=null?cu.getCuName():null;
}
}

View File

@ -0,0 +1,50 @@
package com.xjrsoft.module.sales.client;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.xjrsoft.common.constant.GlobalConstant;
import com.xjrsoft.common.utils.TenantUtil;
import com.xjrsoft.module.sales.entity.LngGradeSystem;
import com.xjrsoft.module.sales.service.IGradeSystemService;
import lombok.AllArgsConstructor;
/**
* @author: yjw
* @since: 2025/3/5
*/
//@Api(hidden = true)
@RestController
@RequestMapping(GlobalConstant.CLIENT_API_PRE + GlobalConstant.SALES_MODULE_PREFIX + "/tran/gradeSystem")
@AllArgsConstructor
public class GradeSystemClientImpl implements IGradeSystemClient {
private final IGradeSystemService gradeSystemService;
@GetMapping("/getAllTranData")
@Override
public Map<String, String> getAllTranData() {
try {
TenantUtil.ignore(true);
List<LngGradeSystem> list = gradeSystemService.list();
return list.stream().collect(Collectors.toMap(e -> String.valueOf(e.getId()),LngGradeSystem::getGsName));
}finally {
TenantUtil.clear();
}
}
@GetMapping("/getTranById")
@Override
public String getTranById(@RequestParam("id")String code) {
LngGradeSystem gs = gradeSystemService.getById(code);
return gs!=null?gs.getGsName():null;
}
}

View File

@ -25,9 +25,12 @@ import com.xjrsoft.module.sales.dto.UpdateLngApproDto;
import com.xjrsoft.module.sales.entity.LngAppro; import com.xjrsoft.module.sales.entity.LngAppro;
import com.xjrsoft.module.sales.service.IApproService; import com.xjrsoft.module.sales.service.IApproService;
import com.xjrsoft.module.sales.vo.LngApproPageVo; import com.xjrsoft.module.sales.vo.LngApproPageVo;
import com.xjrsoft.module.system.client.IFileClient;
import com.xjrsoft.module.system.vo.LngFileUploadVo;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.Valid; import javax.validation.Valid;
@ -48,27 +51,36 @@ public class ApproController {
private final IApproService approService; private final IApproService approService;
private final DatalogService dataService; private final DatalogService dataService;
private final IFileClient fileClient;
// @GetMapping(value = "/page") @GetMapping(value = "/page")
@ApiOperation(value="LngAppro列表(分页)") @ApiOperation(value="LngAppro列表(分页)")
@SaCheckPermission("appro:list") @SaCheckPermission("appro:list")
public R page(@Valid LngApproPageDto dto){ public R page(@Valid LngApproPageDto dto){
LambdaQueryWrapper<LngAppro> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<LngAppro> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper queryWrapper
.like(StrUtil.isNotBlank(dto.getCode()),LngAppro::getCode,dto.getCode()) .between(ObjectUtil.isNotNull(dto.getStartDate()) && ObjectUtil.isNotNull(dto.getEndDate()),
.like(StrUtil.isNotBlank(dto.getTitle()),LngAppro::getTitle,dto.getTitle()) LngAppro::getDateAppro, dto.getStartDate(), dto.getEndDate())
.like(StrUtil.isNotBlank(dto.getTypeCode()),LngAppro::getTypeCode,dto.getTypeCode()) .and(StrUtil.isNotBlank(dto.getTitle()), r ->
.like(StrUtil.isNotBlank(dto.getSecurityCode()),LngAppro::getSecurityCode,dto.getSecurityCode()) r.like(LngAppro::getCode, dto.getTitle())
.like(StrUtil.isNotBlank(dto.getUrgencyCode()),LngAppro::getUrgencyCode,dto.getUrgencyCode()) .or()
.eq(ObjectUtil.isNotNull(dto.getEmpId()),LngAppro::getEmpId,dto.getEmpId()) .like(LngAppro::getTitle, dto.getTitle())
.eq(ObjectUtil.isNotNull(dto.getBDeptId()),LngAppro::getBDeptId,dto.getBDeptId()) )
.like(StrUtil.isNotBlank(dto.getApproCode()),LngAppro::getApproCode,dto.getApproCode()) .eq(StrUtil.isNotBlank(dto.getTypeCode()),LngAppro::getTypeCode,dto.getTypeCode())
.like(StrUtil.isNotBlank(dto.getContent()),LngAppro::getContent,dto.getContent()) .eq(StrUtil.isNotBlank(dto.getApproCode()),LngAppro::getApproCode,dto.getApproCode())
.orderByDesc(LngAppro::getId) .orderByDesc(LngAppro::getId)
.select(LngAppro.class,x -> VoToColumnUtil.fieldsToColumns(LngApproPageVo.class).contains(x.getProperty())); .select(LngAppro.class,x -> VoToColumnUtil.fieldsToColumns(LngApproPageVo.class).contains(x.getProperty()));
IPage<LngAppro> page = approService.page(ConventPage.getPage(dto), queryWrapper); IPage<LngAppro> page = approService.page(ConventPage.getPage(dto), queryWrapper);
PageOutput<LngApproPageVo> pageOutput = ConventPage.getPageOutput(page, LngApproPageVo.class); PageOutput<LngApproPageVo> pageOutput = ConventPage.getPageOutput(page, LngApproPageVo.class);
List<LngApproPageVo> list = pageOutput.list;
if (CollectionUtils.isNotEmpty(list)) {
list.forEach(x -> {
List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_appro",
"lngFileUploadList", x.getId());
x.setLngFileUploadList(fileList);
});
}
return R.ok(pageOutput); return R.ok(pageOutput);
} }

View File

@ -4,6 +4,7 @@ import java.util.List;
import javax.validation.Valid; import javax.validation.Valid;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
@ -15,10 +16,16 @@ import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.pictc.datalog.DataOperationContent;
import com.pictc.datalog.DataOperationListener;
import com.pictc.enums.BusinessCode;
import com.pictc.enums.ExceptionCommonCode;
import com.xjrsoft.common.advice.tran.CustomerDataProvider;
import com.xjrsoft.common.exception.BusinessException;
import com.xjrsoft.common.model.result.R; import com.xjrsoft.common.model.result.R;
import com.xjrsoft.common.page.ConventPage; import com.xjrsoft.common.page.ConventPage;
import com.xjrsoft.common.page.PageOutput; import com.xjrsoft.common.page.PageOutput;
import com.xjrsoft.common.utils.VoToColumnUtil; import com.xjrsoft.module.common.db.utils.CommonCallUtils;
import com.xjrsoft.module.datalog.service.DatalogService; import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.datalog.vo.DataChangeLogVo; import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
import com.xjrsoft.module.sales.dto.LngCustomerPageDto; import com.xjrsoft.module.sales.dto.LngCustomerPageDto;
@ -55,6 +62,8 @@ public class CustomerController {
private final ICodeRuleClient codeRuleClient; private final ICodeRuleClient codeRuleClient;
private final String CUSTOMER_CODE = "customerCode"; private final String CUSTOMER_CODE = "customerCode";
private final CustomerDataProvider tranProvider;
@GetMapping(value = "/page") @GetMapping(value = "/page")
@ApiOperation(value="LngCustomer列表(分页)") @ApiOperation(value="LngCustomer列表(分页)")
@ -101,9 +110,27 @@ public class CustomerController {
String code = codeRuleClient.genEncode(CUSTOMER_CODE); String code = codeRuleClient.genEncode(CUSTOMER_CODE);
dto.setCuCode("C"+code); dto.setCuCode("C"+code);
UpdateLngCustomerDto obj = dataService.insert(dto); //UpdateLngCustomerDto obj = dataService.insert(dto);
codeRuleClient.useEncode(CUSTOMER_CODE); //return R.ok(obj);
return R.ok(obj); return R.ok(dataService.insert(dto,new DataOperationListener<UpdateLngCustomerDto>() {
@Override
public UpdateLngCustomerDto before(DataOperationContent<UpdateLngCustomerDto> content) {
return content.getObj();
}
@Override
public UpdateLngCustomerDto after(DataOperationContent<UpdateLngCustomerDto> content) {
String msg = CommonCallUtils.saveAfter(content.getTableName(),content.getIdValue());
if (StringUtils.isNotBlank(msg)) {
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_EXEC_ERROR, msg));
}
codeRuleClient.useEncode(CUSTOMER_CODE);
UpdateLngCustomerDto obj =content.getObj();
tranProvider.saveData(obj.getCuCode(), obj.getCuName());
return obj;
}
}));
} }
@ -112,7 +139,25 @@ public class CustomerController {
@SaCheckPermission("customer:edit") @SaCheckPermission("customer:edit")
public R update(@Valid @RequestBody UpdateLngCustomerDto dto){ public R update(@Valid @RequestBody UpdateLngCustomerDto dto){
return R.ok(dataService.updateById(dto));
return R.ok(dataService.updateById(dto,new DataOperationListener<UpdateLngCustomerDto>() {
@Override
public UpdateLngCustomerDto before(DataOperationContent<UpdateLngCustomerDto> content) {
return null;
}
@Override
public UpdateLngCustomerDto after(DataOperationContent<UpdateLngCustomerDto> content) {
String msg = CommonCallUtils.saveAfter(content.getTableName(),content.getIdValue());
if (StringUtils.isNotBlank(msg)) {
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_EXEC_ERROR, msg));
}
UpdateLngCustomerDto obj =content.getObj();
tranProvider.saveData(obj.getCuCode(), obj.getCuName());
return obj;
}
}));
} }
@DeleteMapping @DeleteMapping

View File

@ -21,19 +21,15 @@ import com.pictc.utils.StringUtils;
import com.xjrsoft.common.model.result.R; import com.xjrsoft.common.model.result.R;
import com.xjrsoft.common.page.ConventPage; import com.xjrsoft.common.page.ConventPage;
import com.xjrsoft.common.page.PageOutput; import com.xjrsoft.common.page.PageOutput;
import com.xjrsoft.common.utils.VoToColumnUtil;
import com.xjrsoft.module.datalog.service.DatalogService; import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.datalog.vo.DataChangeLogVo; import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
import com.xjrsoft.module.sales.dto.LngScorePageDto; import com.xjrsoft.module.sales.dto.LngScorePageDto;
import com.xjrsoft.module.sales.dto.UpdateLngCustomerGroupDto;
import com.xjrsoft.module.sales.dto.UpdateLngScoreDto; import com.xjrsoft.module.sales.dto.UpdateLngScoreDto;
import com.xjrsoft.module.sales.entity.LngScore; import com.xjrsoft.module.sales.entity.LngScore;
import com.xjrsoft.module.sales.service.IScoreCustomerService; import com.xjrsoft.module.sales.service.IScoreCustomerService;
import com.xjrsoft.module.sales.vo.LngScorePageVo; import com.xjrsoft.module.sales.vo.LngScorePageVo;
import com.xjrsoft.module.sales.vo.LngScoreVo;
import cn.dev33.satoken.annotation.SaCheckPermission; import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;

View File

@ -1,21 +1,35 @@
package com.xjrsoft.module.sales.controller; package com.xjrsoft.module.sales.controller;
import cn.dev33.satoken.annotation.SaCheckPermission; import java.util.List;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil; import javax.validation.Valid;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.pictc.datalog.DataOperationContent; import com.pictc.datalog.DataOperationContent;
import com.pictc.datalog.DataOperationListener; import com.pictc.datalog.DataOperationListener;
import com.pictc.enums.BusinessCode;
import com.pictc.enums.ExceptionCommonCode;
import com.pictc.utils.CollectionUtils; import com.pictc.utils.CollectionUtils;
import com.xjrsoft.common.advice.tran.GradeSystemDataProvider;
import com.xjrsoft.common.exception.BusinessException;
import com.xjrsoft.common.model.result.R; import com.xjrsoft.common.model.result.R;
import com.xjrsoft.common.page.ConventPage; import com.xjrsoft.common.page.ConventPage;
import com.xjrsoft.common.page.PageOutput; import com.xjrsoft.common.page.PageOutput;
import com.xjrsoft.common.utils.VoToColumnUtil; import com.xjrsoft.common.utils.VoToColumnUtil;
import com.xjrsoft.module.common.db.utils.CommonCallUtils;
import com.xjrsoft.module.datalog.service.DatalogService; import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.datalog.vo.DataChangeLogVo; import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
import com.xjrsoft.module.mdm.entity.LngBStationLng;
import com.xjrsoft.module.mdm.vo.LngBStationLngVo;
import com.xjrsoft.module.sales.dto.LngGradeSystemPageDto; import com.xjrsoft.module.sales.dto.LngGradeSystemPageDto;
import com.xjrsoft.module.sales.dto.UpdateLngGradeSystemDto; import com.xjrsoft.module.sales.dto.UpdateLngGradeSystemDto;
import com.xjrsoft.module.sales.entity.LngGradeSystem; import com.xjrsoft.module.sales.entity.LngGradeSystem;
@ -23,13 +37,13 @@ import com.xjrsoft.module.sales.service.IGradeSystemService;
import com.xjrsoft.module.sales.vo.LngGradeSystemPageVo; import com.xjrsoft.module.sales.vo.LngGradeSystemPageVo;
import com.xjrsoft.module.sales.vo.LngGradeSystemVo; import com.xjrsoft.module.sales.vo.LngGradeSystemVo;
import com.xjrsoft.module.system.client.ICodeRuleClient; import com.xjrsoft.module.system.client.ICodeRuleClient;
import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
/** /**
* @title: 评价体系 * @title: 评价体系
@ -48,6 +62,8 @@ public class GradeSystemController {
private final DatalogService dataService; private final DatalogService dataService;
private final ICodeRuleClient codeRuleClient; private final ICodeRuleClient codeRuleClient;
private final String GS_CODE = "gsCode"; private final String GS_CODE = "gsCode";
private final GradeSystemDataProvider tranProvider;
@GetMapping(value = "/page") @GetMapping(value = "/page")
@ApiOperation(value="LngGradeSystem列表(分页)") @ApiOperation(value="LngGradeSystem列表(分页)")
@ -92,16 +108,54 @@ public class GradeSystemController {
public R add(@Valid @RequestBody UpdateLngGradeSystemDto dto){ public R add(@Valid @RequestBody UpdateLngGradeSystemDto dto){
String code = codeRuleClient.genEncode(GS_CODE); String code = codeRuleClient.genEncode(GS_CODE);
dto.setGsCode(code); dto.setGsCode(code);
UpdateLngGradeSystemDto res = dataService.insert(dto); UpdateLngGradeSystemDto res = dataService.insert(dto,new DataOperationListener<UpdateLngGradeSystemDto>() {
codeRuleClient.useEncode(GS_CODE);
@Override
public UpdateLngGradeSystemDto before(DataOperationContent<UpdateLngGradeSystemDto> content) {
return content.getObj();
}
@Override
public UpdateLngGradeSystemDto after(DataOperationContent<UpdateLngGradeSystemDto> content) {
String msg = CommonCallUtils.saveAfter(content.getTableName(),content.getIdValue());
if (StringUtils.isNotBlank(msg)) {
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_EXEC_ERROR, msg));
}
codeRuleClient.useEncode(GS_CODE);
UpdateLngGradeSystemDto obj =content.getObj();
tranProvider.saveData(obj.getId().toString(), obj.getGsName());
return obj;
}
});
return R.ok(res.getId()); return R.ok(res.getId());
} }
@PutMapping @PutMapping
@ApiOperation(value = "修改LngGradeSystem") @ApiOperation(value = "修改LngGradeSystem")
@SaCheckPermission("gradeSystem:edit") @SaCheckPermission("gradeSystem:edit")
public R update(@Valid @RequestBody UpdateLngGradeSystemDto dto){ public R update(@Valid @RequestBody UpdateLngGradeSystemDto dto){
return R.ok(dataService.updateById(dto)); //return R.ok(dataService.updateById(dto));
return R.ok(dataService.updateById(dto,new DataOperationListener<UpdateLngGradeSystemDto>() {
@Override
public UpdateLngGradeSystemDto before(DataOperationContent<UpdateLngGradeSystemDto> content) {
return null;
}
@Override
public UpdateLngGradeSystemDto after(DataOperationContent<UpdateLngGradeSystemDto> content) {
String msg = CommonCallUtils.saveAfter(content.getTableName(),content.getIdValue());
if (StringUtils.isNotBlank(msg)) {
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_EXEC_ERROR, msg));
}
UpdateLngGradeSystemDto obj =content.getObj();
tranProvider.saveData(obj.getId().toString(), obj.getGsName());
return obj;
}
}));
} }
@DeleteMapping @DeleteMapping

View File

@ -27,4 +27,6 @@ public interface ICustomerService extends MPJBaseService<LngCustomer>, MPJDeepSe
LngCustomerVo getCustomerById(Long id); LngCustomerVo getCustomerById(Long id);
LngCustomer getByCode(String code);
} }

View File

@ -39,7 +39,8 @@ public class ApproServiceImpl extends ServiceImpl<LngApproMapper, LngAppro> impl
} }
LngApproVo vo = BeanUtil.toBean(lngAppro, LngApproVo.class); LngApproVo vo = BeanUtil.toBean(lngAppro, LngApproVo.class);
List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_appro", "lngFileUploadList", vo.getId()); List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_appro",
"lngFileUploadList", vo.getId());
vo.setLngFileUploadList(fileList); vo.setLngFileUploadList(fileList);
return vo; return vo;
} }

View File

@ -7,6 +7,7 @@ import java.util.stream.Collectors;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.yulichang.base.MPJBaseServiceImpl; import com.github.yulichang.base.MPJBaseServiceImpl;
import com.xjrsoft.module.sales.entity.LngCustomer; import com.xjrsoft.module.sales.entity.LngCustomer;
@ -82,4 +83,11 @@ public class CustomerServiceImpl extends MPJBaseServiceImpl<LngCustomerMapper, L
vo.setLngFileUploadList(fileList); vo.setLngFileUploadList(fileList);
return vo; return vo;
} }
@Override
public LngCustomer getByCode(String code) {
LambdaQueryWrapper<LngCustomer> queryWrapper = new LambdaQueryWrapper<LngCustomer>();
queryWrapper.eq(LngCustomer::getCuCode,code);
return baseMapper.selectOne(queryWrapper);
}
} }

View File

@ -0,0 +1,50 @@
package com.xjrsoft.module.supplier.client;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.xjrsoft.common.constant.GlobalConstant;
import com.xjrsoft.common.utils.TenantUtil;
import com.xjrsoft.module.supplier.entity.LngSupplier;
import com.xjrsoft.module.supplier.service.ISupplierService;
import lombok.AllArgsConstructor;
/**
* @author: yjw
* @since: 2025/3/5
*/
//@Api(hidden = true)
@RestController
@RequestMapping(GlobalConstant.CLIENT_API_PRE + GlobalConstant.SUPPLIER_MODULE_PREFIX + "/tran/supplier")
@AllArgsConstructor
public class SupplierClientImpl implements ISupplierClient {
private final ISupplierService supplierService;
@GetMapping("/getAllTranData")
@Override
public Map<String, String> getAllTranData() {
try {
TenantUtil.ignore(true);
List<LngSupplier> list = supplierService.list();
return list.stream().collect(Collectors.toMap(LngSupplier::getSuCode,LngSupplier::getSuName));
}finally {
TenantUtil.clear();
}
}
@GetMapping("/getTranById")
@Override
public String getTranById(@RequestParam("id")String code) {
LngSupplier su = supplierService.getByCode(code);
return su!=null?su.getSuName():null;
}
}

View File

@ -4,6 +4,7 @@ import java.util.List;
import javax.validation.Valid; import javax.validation.Valid;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
@ -15,10 +16,17 @@ import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.pictc.datalog.DataOperationContent;
import com.pictc.datalog.DataOperationListener;
import com.pictc.enums.BusinessCode;
import com.pictc.enums.ExceptionCommonCode;
import com.xjrsoft.common.advice.tran.CustomerDataProvider;
import com.xjrsoft.common.advice.tran.SupplierDataProvider;
import com.xjrsoft.common.exception.BusinessException;
import com.xjrsoft.common.model.result.R; import com.xjrsoft.common.model.result.R;
import com.xjrsoft.common.page.ConventPage; import com.xjrsoft.common.page.ConventPage;
import com.xjrsoft.common.page.PageOutput; import com.xjrsoft.common.page.PageOutput;
import com.xjrsoft.common.utils.VoToColumnUtil; import com.xjrsoft.module.common.db.utils.CommonCallUtils;
import com.xjrsoft.module.datalog.service.DatalogService; import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.datalog.vo.DataChangeLogVo; import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
import com.xjrsoft.module.supplier.dto.LngSupplierPageDto; import com.xjrsoft.module.supplier.dto.LngSupplierPageDto;
@ -54,6 +62,8 @@ public class SupplierController {
private final ICodeRuleClient codeRuleClient; private final ICodeRuleClient codeRuleClient;
private final String SUPPLIER_CODE = "supplierCode"; private final String SUPPLIER_CODE = "supplierCode";
private final SupplierDataProvider tranProvider;
@GetMapping(value = "/page") @GetMapping(value = "/page")
@ApiOperation(value="LngSupplier列表(分页)") @ApiOperation(value="LngSupplier列表(分页)")
@ -98,16 +108,53 @@ public class SupplierController {
public R add(@Valid @RequestBody UpdateLngSupplierDto dto){ public R add(@Valid @RequestBody UpdateLngSupplierDto dto){
String code = codeRuleClient.genEncode(SUPPLIER_CODE); String code = codeRuleClient.genEncode(SUPPLIER_CODE);
dto.setSuCode("S"+code); dto.setSuCode("S"+code);
UpdateLngSupplierDto res = dataService.insert(dto); //UpdateLngSupplierDto res = dataService.insert(dto);
codeRuleClient.useEncode(SUPPLIER_CODE);
return R.ok(res); return R.ok(dataService.insert(dto,new DataOperationListener<UpdateLngSupplierDto>() {
@Override
public UpdateLngSupplierDto before(DataOperationContent<UpdateLngSupplierDto> content) {
return content.getObj();
}
@Override
public UpdateLngSupplierDto after(DataOperationContent<UpdateLngSupplierDto> content) {
String msg = CommonCallUtils.saveAfter(content.getTableName(),content.getIdValue());
if (StringUtils.isNotBlank(msg)) {
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_EXEC_ERROR, msg));
}
codeRuleClient.useEncode(SUPPLIER_CODE);
UpdateLngSupplierDto obj =content.getObj();
tranProvider.saveData(obj.getSuCode(), obj.getSuName());
return obj;
}
}));
} }
@PutMapping @PutMapping
@ApiOperation(value = "修改LngSupplier") @ApiOperation(value = "修改LngSupplier")
@SaCheckPermission("supplier:edit") @SaCheckPermission("supplier:edit")
public R update(@Valid @RequestBody UpdateLngSupplierDto dto){ public R update(@Valid @RequestBody UpdateLngSupplierDto dto){
return R.ok(dataService.updateById(dto)); //return R.ok(dataService.updateById(dto));
return R.ok(dataService.updateById(dto,new DataOperationListener<UpdateLngSupplierDto>() {
@Override
public UpdateLngSupplierDto before(DataOperationContent<UpdateLngSupplierDto> content) {
return null;
}
@Override
public UpdateLngSupplierDto after(DataOperationContent<UpdateLngSupplierDto> content) {
String msg = CommonCallUtils.saveAfter(content.getTableName(),content.getIdValue());
if (StringUtils.isNotBlank(msg)) {
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_EXEC_ERROR, msg));
}
UpdateLngSupplierDto obj =content.getObj();
tranProvider.saveData(obj.getSuCode(), obj.getSuName());
return obj;
}
}));
} }
@DeleteMapping @DeleteMapping

View File

@ -31,4 +31,6 @@ public interface ISupplierService extends MPJBaseService<LngSupplier>, MPJDeepSe
LngSupplierVo getSupplierById(Long id); LngSupplierVo getSupplierById(Long id);
LngSupplier getByCode(String code);
} }

View File

@ -5,8 +5,10 @@ import java.util.List;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.yulichang.base.MPJBaseServiceImpl; import com.github.yulichang.base.MPJBaseServiceImpl;
import com.xjrsoft.module.sales.entity.LngCustomer;
import com.xjrsoft.module.supplier.dto.UpdateLngSupplierDto; import com.xjrsoft.module.supplier.dto.UpdateLngSupplierDto;
import com.xjrsoft.module.supplier.entity.LngSupplier; import com.xjrsoft.module.supplier.entity.LngSupplier;
import com.xjrsoft.module.supplier.entity.LngSupplierBank; import com.xjrsoft.module.supplier.entity.LngSupplierBank;
@ -71,6 +73,13 @@ public class SupplierServiceImpl extends MPJBaseServiceImpl<LngSupplierMapper, L
vo.setLngFileUploadList(fileList); vo.setLngFileUploadList(fileList);
return vo; return vo;
} }
@Override
public LngSupplier getByCode(String code) {
LambdaQueryWrapper<LngSupplier> queryWrapper = new LambdaQueryWrapper<LngSupplier>();
queryWrapper.eq(LngSupplier::getSuCode,code);
return baseMapper.selectOne(queryWrapper);
}