This commit is contained in:
张秉卓
2025-11-20 09:18:03 +08:00
33 changed files with 2086 additions and 80 deletions

View File

@ -0,0 +1,58 @@
package com.xjrsoft.module.sales.dto;
import java.io.Serializable;
import java.math.BigDecimal;
import com.pictc.annotations.datalog.LogField;
import com.pictc.annotations.datalog.LogTable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@LogTable(source="lng_customer_attr_power",name="客户")
public class AddLngCustomerAttrPowerDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 客户编码
*/
@ApiModelProperty("客户编码")
@LogField(name="客户编码",index=0)
private String cuCode;
/**
* 管道编码
*/
@ApiModelProperty("管道编码")
@LogField(name="管道编码",index=0)
private String lineCode;
/**
* 装机量万KW
*/
@ApiModelProperty("装机量万KW")
@LogField(name="装机量万KW",index=0)
private BigDecimal capacity;
/**
* 备注
*/
@ApiModelProperty("备注")
@LogField(name="备注",index=0)
private String note;
/**
* 租户id
*/
@ApiModelProperty("租户id")
@LogField(name="租户id",index=0)
private Long tenantId;
}

View File

@ -0,0 +1,74 @@
package com.xjrsoft.module.sales.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
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;
import com.pictc.annotations.datalog.LogField;
import com.pictc.annotations.datalog.LogTable;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@LogTable(source="lng_customer_bank",name="客户")
public class AddLngCustomerBankDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 客户编码
*/
@ApiModelProperty("客户编码")
@LogField(name="客户编码",index=0)
private String cuCode;
/**
* 银行
*/
@ApiModelProperty("银行")
@LogField(name="银行",index=0)
private String bankCode;
/**
* 账号名称
*/
@ApiModelProperty("账号名称")
@LogField(name="账号名称",index=0)
private String accountName;
/**
* 账号
*/
@ApiModelProperty("账号")
@LogField(name="账号",index=0)
private String account;
/**
* 默认账号(Y-是N-否只能有一个Y的有效记录)
*/
@ApiModelProperty("默认账号(Y-是N-否只能有一个Y的有效记录)")
@LogField(name="默认账号(Y-是N-否只能有一个Y的有效记录)",index=0)
private String defaultSign;
/**
* 备注
*/
@ApiModelProperty("备注")
@LogField(name="备注",index=0)
private String note;
/**
* 租户id
*/
@ApiModelProperty("租户id")
@LogField(name="租户id",index=0)
private Long tenantId;
}

View File

@ -0,0 +1,80 @@
package com.xjrsoft.module.sales.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
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;
import com.pictc.annotations.datalog.LogField;
import com.pictc.annotations.datalog.LogTable;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@LogTable(source="lng_customer_contact",name="客户")
public class AddLngCustomerContactDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 客户编码
*/
@ApiModelProperty("客户编码")
@LogField(name="客户编码",index=0)
private String cuCode;
/**
* 姓名
*/
@ApiModelProperty("姓名")
@LogField(name="姓名",index=0)
private String contactName;
/**
* 联系电话
*/
@ApiModelProperty("联系电话")
@LogField(name="联系电话",index=0)
private String tel;
/**
* 通讯地址
*/
@ApiModelProperty("通讯地址")
@LogField(name="通讯地址",index=0)
private String addrMail;
/**
* 电子邮箱
*/
@ApiModelProperty("电子邮箱")
@LogField(name="电子邮箱",index=0)
private String email;
/**
* 职位
*/
@ApiModelProperty("职位")
@LogField(name="职位",index=0)
private String position;
/**
* 备注
*/
@ApiModelProperty("备注")
@LogField(name="备注",index=0)
private String note;
/**
* 租户id
*/
@ApiModelProperty("租户id")
@LogField(name="租户id",index=0)
private Long tenantId;
}

View File

@ -0,0 +1,80 @@
package com.xjrsoft.module.sales.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
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;
import com.pictc.annotations.datalog.LogField;
import com.pictc.annotations.datalog.LogTable;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@LogTable(source="lng_customer_doc",name="客户")
public class AddLngCustomerDocDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 客户编码
*/
@ApiModelProperty("客户编码")
@LogField(name="客户编码",index=0)
private String cuCode;
/**
* 资质证书类型
*/
@ApiModelProperty("资质证书类型")
@LogField(name="资质证书类型",index=0)
private String docTypeCode;
/**
* 资质证书编号
*/
@ApiModelProperty("资质证书编号")
@LogField(name="资质证书编号",index=0)
private String docNo;
/**
* 有效期开始
*/
@ApiModelProperty("有效期开始")
@LogField(name="有效期开始",index=0)
private LocalDateTime dateFrom;
/**
* 有效期结束
*/
@ApiModelProperty("有效期结束")
@LogField(name="有效期结束",index=0)
private LocalDateTime dateTo;
/**
* 显示顺序
*/
@ApiModelProperty("显示顺序")
@LogField(name="显示顺序",index=0)
private Short sort;
/**
* 备注
*/
@ApiModelProperty("备注")
@LogField(name="备注",index=0)
private String note;
/**
* 租户id
*/
@ApiModelProperty("租户id")
@LogField(name="租户id",index=0)
private Long tenantId;
}

View File

@ -1,25 +1,22 @@
package com.xjrsoft.module.sales.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
import com.pictc.annotations.datalog.LogField;
import com.pictc.annotations.datalog.LogTable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-18
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@ -209,4 +206,24 @@ public class AddLngCustomerDto implements Serializable {
@LogField(name="租户id",index=0)
private Long tenantId;
/**
* lngCustomerAttrPower
*/
@ApiModelProperty("lngCustomerAttrPower子表")
private List<AddLngCustomerAttrPowerDto> lngCustomerAttrPowerList;
/**
* lngCustomerBank
*/
@ApiModelProperty("lngCustomerBank子表")
private List<AddLngCustomerBankDto> lngCustomerBankList;
/**
* lngCustomerDoc
*/
@ApiModelProperty("lngCustomerDoc子表")
private List<AddLngCustomerDocDto> lngCustomerDocList;
/**
* lngCustomerContact
*/
@ApiModelProperty("lngCustomerContact子表")
private List<AddLngCustomerContactDto> lngCustomerContactList;
}

View File

@ -1,20 +1,16 @@
package com.xjrsoft.module.sales.dto;
import com.xjrsoft.common.page.PageInput;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
/**
* @title: 分页查询入参
* @Author 管理员
* @Date: 2025-11-18
* @Date: 2025-11-19
* @Version 1.0
*/
@Data

View File

@ -0,0 +1,79 @@
package com.xjrsoft.module.sales.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.List;
import com.pictc.annotations.datalog.LogTable;
import com.pictc.annotations.datalog.LogField;
import com.pictc.annotations.datalog.LogJoin;
import com.pictc.annotations.datalog.LogJoinColumn;
import com.pictc.annotations.datalog.JoinCaseType;
import com.pictc.annotations.datalog.JoinType;
import com.pictc.annotations.datalog.ValueDirectionType;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@LogTable(source="lng_customer_attr_power",name="客户")
public class UpdateLngCustomerAttrPowerDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@LogField(name="主键",index=0)
@ApiModelProperty("主键")
private Long id;
/**
* 客户编码
*/
@LogField(name="客户编码",index=1)
@ApiModelProperty("客户编码")
private String cuCode;
/**
* 管道编码
*/
@LogField(name="管道编码",index=2)
@ApiModelProperty("管道编码")
private String lineCode;
/**
* 装机量万KW
*/
@LogField(name="装机量万KW",index=3)
@ApiModelProperty("装机量万KW")
private BigDecimal capacity;
/**
* 备注
*/
@LogField(name="备注",index=4)
@ApiModelProperty("备注")
private String note;
/**
* 租户id
*/
@LogField(name="租户id",index=5)
@ApiModelProperty("租户id")
private Long tenantId;
}

View File

@ -0,0 +1,93 @@
package com.xjrsoft.module.sales.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.List;
import com.pictc.annotations.datalog.LogTable;
import com.pictc.annotations.datalog.LogField;
import com.pictc.annotations.datalog.LogJoin;
import com.pictc.annotations.datalog.LogJoinColumn;
import com.pictc.annotations.datalog.JoinCaseType;
import com.pictc.annotations.datalog.JoinType;
import com.pictc.annotations.datalog.ValueDirectionType;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@LogTable(source="lng_customer_bank",name="客户")
public class UpdateLngCustomerBankDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@LogField(name="主键",index=0)
@ApiModelProperty("主键")
private Long id;
/**
* 客户编码
*/
@LogField(name="客户编码",index=1)
@ApiModelProperty("客户编码")
private String cuCode;
/**
* 银行
*/
@LogField(name="银行",index=2)
@ApiModelProperty("银行")
private String bankCode;
/**
* 账号名称
*/
@LogField(name="账号名称",index=3)
@ApiModelProperty("账号名称")
private String accountName;
/**
* 账号
*/
@LogField(name="账号",index=4)
@ApiModelProperty("账号")
private String account;
/**
* 默认账号(Y-是N-否只能有一个Y的有效记录)
*/
@LogField(name="默认账号(Y-是N-否只能有一个Y的有效记录)",index=5)
@ApiModelProperty("默认账号(Y-是N-否只能有一个Y的有效记录)")
private String defaultSign;
/**
* 备注
*/
@LogField(name="备注",index=6)
@ApiModelProperty("备注")
private String note;
/**
* 租户id
*/
@LogField(name="租户id",index=7)
@ApiModelProperty("租户id")
private Long tenantId;
}

View File

@ -0,0 +1,100 @@
package com.xjrsoft.module.sales.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.List;
import com.pictc.annotations.datalog.LogTable;
import com.pictc.annotations.datalog.LogField;
import com.pictc.annotations.datalog.LogJoin;
import com.pictc.annotations.datalog.LogJoinColumn;
import com.pictc.annotations.datalog.JoinCaseType;
import com.pictc.annotations.datalog.JoinType;
import com.pictc.annotations.datalog.ValueDirectionType;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@LogTable(source="lng_customer_contact",name="客户")
public class UpdateLngCustomerContactDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@LogField(name="主键",index=0)
@ApiModelProperty("主键")
private Long id;
/**
* 客户编码
*/
@LogField(name="客户编码",index=1)
@ApiModelProperty("客户编码")
private String cuCode;
/**
* 姓名
*/
@LogField(name="姓名",index=2)
@ApiModelProperty("姓名")
private String contactName;
/**
* 联系电话
*/
@LogField(name="联系电话",index=3)
@ApiModelProperty("联系电话")
private String tel;
/**
* 通讯地址
*/
@LogField(name="通讯地址",index=4)
@ApiModelProperty("通讯地址")
private String addrMail;
/**
* 电子邮箱
*/
@LogField(name="电子邮箱",index=5)
@ApiModelProperty("电子邮箱")
private String email;
/**
* 职位
*/
@LogField(name="职位",index=6)
@ApiModelProperty("职位")
private String position;
/**
* 备注
*/
@LogField(name="备注",index=7)
@ApiModelProperty("备注")
private String note;
/**
* 租户id
*/
@LogField(name="租户id",index=8)
@ApiModelProperty("租户id")
private Long tenantId;
}

View File

@ -0,0 +1,100 @@
package com.xjrsoft.module.sales.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.List;
import com.pictc.annotations.datalog.LogTable;
import com.pictc.annotations.datalog.LogField;
import com.pictc.annotations.datalog.LogJoin;
import com.pictc.annotations.datalog.LogJoinColumn;
import com.pictc.annotations.datalog.JoinCaseType;
import com.pictc.annotations.datalog.JoinType;
import com.pictc.annotations.datalog.ValueDirectionType;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@LogTable(source="lng_customer_doc",name="客户")
public class UpdateLngCustomerDocDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@LogField(name="主键",index=0)
@ApiModelProperty("主键")
private Long id;
/**
* 客户编码
*/
@LogField(name="客户编码",index=1)
@ApiModelProperty("客户编码")
private String cuCode;
/**
* 资质证书类型
*/
@LogField(name="资质证书类型",index=2)
@ApiModelProperty("资质证书类型")
private String docTypeCode;
/**
* 资质证书编号
*/
@LogField(name="资质证书编号",index=3)
@ApiModelProperty("资质证书编号")
private String docNo;
/**
* 有效期开始
*/
@LogField(name="有效期开始",index=4)
@ApiModelProperty("有效期开始")
private LocalDateTime dateFrom;
/**
* 有效期结束
*/
@LogField(name="有效期结束",index=5)
@ApiModelProperty("有效期结束")
private LocalDateTime dateTo;
/**
* 显示顺序
*/
@LogField(name="显示顺序",index=6)
@ApiModelProperty("显示顺序")
private Short sort;
/**
* 备注
*/
@LogField(name="备注",index=7)
@ApiModelProperty("备注")
private String note;
/**
* 租户id
*/
@LogField(name="租户id",index=8)
@ApiModelProperty("租户id")
private Long tenantId;
}

View File

@ -1,30 +1,27 @@
package com.xjrsoft.module.sales.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.time.LocalDateTime;
import java.util.List;
import com.pictc.annotations.datalog.LogTable;
import com.pictc.annotations.datalog.JoinCaseType;
import com.pictc.annotations.datalog.JoinType;
import com.pictc.annotations.datalog.LogField;
import com.pictc.annotations.datalog.LogJoin;
import com.pictc.annotations.datalog.LogJoinColumn;
import com.pictc.annotations.datalog.JoinCaseType;
import com.pictc.annotations.datalog.JoinType;
import com.pictc.annotations.datalog.LogTable;
import com.pictc.annotations.datalog.ValueDirectionType;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-18
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@ -251,4 +248,44 @@ public class UpdateLngCustomerDto implements Serializable {
private Long tenantId;
/**
* lngCustomerAttrPower
*/
@ApiModelProperty("lngCustomerAttrPower子表")
@LogJoin(name = "lngCustomerAttrPower子表",
columns = {
@LogJoinColumn(field = "cuCode",relatedField = "cuCode", valueDirection = ValueDirectionType.RIGHT)
},
caseType = JoinCaseType.FULL, target = UpdateLngCustomerAttrPowerDto.class, type = JoinType.MANY)
private List<UpdateLngCustomerAttrPowerDto> lngCustomerAttrPowerList;
/**
* lngCustomerBank
*/
@ApiModelProperty("lngCustomerBank子表")
@LogJoin(name = "lngCustomerBank子表",
columns = {
@LogJoinColumn(field = "cuCode",relatedField = "cuCode", valueDirection = ValueDirectionType.RIGHT)
},
caseType = JoinCaseType.FULL, target = UpdateLngCustomerBankDto.class, type = JoinType.MANY)
private List<UpdateLngCustomerBankDto> lngCustomerBankList;
/**
* lngCustomerDoc
*/
@ApiModelProperty("lngCustomerDoc子表")
@LogJoin(name = "lngCustomerDoc子表",
columns = {
@LogJoinColumn(field = "cuCode",relatedField = "cuCode", valueDirection = ValueDirectionType.RIGHT)
},
caseType = JoinCaseType.FULL, target = UpdateLngCustomerDocDto.class, type = JoinType.MANY)
private List<UpdateLngCustomerDocDto> lngCustomerDocList;
/**
* lngCustomerContact
*/
@ApiModelProperty("lngCustomerContact子表")
@LogJoin(name = "lngCustomerContact子表",
columns = {
@LogJoinColumn(field = "cuCode",relatedField = "cuCode", valueDirection = ValueDirectionType.RIGHT)
},
caseType = JoinCaseType.FULL, target = UpdateLngCustomerContactDto.class, type = JoinType.MANY)
private List<UpdateLngCustomerContactDto> lngCustomerContactList;
}

View File

@ -0,0 +1,107 @@
package com.xjrsoft.module.sales.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/**
* @title: 表单出参
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
public class LngCustomerAttrPowerVo {
/**
* 主键
*/
@ApiModelProperty("主键")
private Long id;
/**
* 客户编码
*/
@ApiModelProperty("客户编码")
private String cuCode;
/**
* 管道编码
*/
@ApiModelProperty("管道编码")
private String lineCode;
/**
* 装机量万KW
*/
@ApiModelProperty("装机量万KW")
private BigDecimal capacity;
/**
* 备注
*/
@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;
}

View File

@ -0,0 +1,121 @@
package com.xjrsoft.module.sales.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/**
* @title: 表单出参
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
public class LngCustomerBankVo {
/**
* 主键
*/
@ApiModelProperty("主键")
private Long id;
/**
* 客户编码
*/
@ApiModelProperty("客户编码")
private String cuCode;
/**
* 银行
*/
@ApiModelProperty("银行")
private String bankCode;
/**
* 账号名称
*/
@ApiModelProperty("账号名称")
private String accountName;
/**
* 账号
*/
@ApiModelProperty("账号")
private String account;
/**
* 默认账号(Y-是N-否只能有一个Y的有效记录)
*/
@ApiModelProperty("默认账号(Y-是N-否只能有一个Y的有效记录)")
private String defaultSign;
/**
* 备注
*/
@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;
}

View File

@ -0,0 +1,128 @@
package com.xjrsoft.module.sales.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/**
* @title: 表单出参
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
public class LngCustomerContactVo {
/**
* 主键
*/
@ApiModelProperty("主键")
private Long id;
/**
* 客户编码
*/
@ApiModelProperty("客户编码")
private String cuCode;
/**
* 姓名
*/
@ApiModelProperty("姓名")
private String contactName;
/**
* 联系电话
*/
@ApiModelProperty("联系电话")
private String tel;
/**
* 通讯地址
*/
@ApiModelProperty("通讯地址")
private String addrMail;
/**
* 电子邮箱
*/
@ApiModelProperty("电子邮箱")
private String email;
/**
* 职位
*/
@ApiModelProperty("职位")
private String position;
/**
* 备注
*/
@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;
}

View File

@ -0,0 +1,128 @@
package com.xjrsoft.module.sales.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/**
* @title: 表单出参
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
public class LngCustomerDocVo {
/**
* 主键
*/
@ApiModelProperty("主键")
private Long id;
/**
* 客户编码
*/
@ApiModelProperty("客户编码")
private String cuCode;
/**
* 资质证书类型
*/
@ApiModelProperty("资质证书类型")
private String docTypeCode;
/**
* 资质证书编号
*/
@ApiModelProperty("资质证书编号")
private String docNo;
/**
* 有效期开始
*/
@ApiModelProperty("有效期开始")
private LocalDateTime dateFrom;
/**
* 有效期结束
*/
@ApiModelProperty("有效期结束")
private LocalDateTime dateTo;
/**
* 显示顺序
*/
@ApiModelProperty("显示顺序")
private Short sort;
/**
* 备注
*/
@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;
}

View File

@ -1,19 +1,12 @@
package com.xjrsoft.module.sales.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import com.xjrsoft.common.annotation.Trans;
import com.xjrsoft.common.enums.TransType;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
/**
* @title: 分页列表出参
* @Author 管理员
* @Date: 2025-11-18
* @Date: 2025-11-19
* @Version 1.0
*/
@Data

View File

@ -1,17 +1,16 @@
package com.xjrsoft.module.sales.vo;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/**
* @title: 表单出参
* @Author 管理员
* @Date: 2025-11-18
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@ -278,5 +277,25 @@ public class LngCustomerVo {
/**
* lngCustomerAttrPower
*/
@ApiModelProperty("lngCustomerAttrPower子表")
private List<LngCustomerAttrPowerVo> lngCustomerAttrPowerList;
/**
* lngCustomerBank
*/
@ApiModelProperty("lngCustomerBank子表")
private List<LngCustomerBankVo> lngCustomerBankList;
/**
* lngCustomerDoc
*/
@ApiModelProperty("lngCustomerDoc子表")
private List<LngCustomerDocVo> lngCustomerDocList;
/**
* lngCustomerContact
*/
@ApiModelProperty("lngCustomerContact子表")
private List<LngCustomerContactVo> lngCustomerContactList;
}

View File

@ -231,11 +231,11 @@ public class CountryRegionController {
@GetMapping("/getParentByCode")
@ApiOperation(value = "根据id 查询下级区域")
public R getRegionByParentId(@RequestParam(required = true) String code,@RequestParam(required = false) String excludeType,
public R getParentByCode(@RequestParam(required = true) String code,@RequestParam(required = false) String excludeType,
@RequestParam(required = false) String startPCode
) {
return R.ok(countryRegionService.getRegionByParentId(code,excludeType,startPCode));
return R.ok(countryRegionService.getParentByCode(code,excludeType,startPCode));
}

View File

@ -19,7 +19,7 @@ import com.xjrsoft.module.mdm.vo.LngBRegionVo;
public interface ICountryRegionService extends IService<LngBRegion> {
Map<String, Object> getRegionByParentId(String code, String excludeType, String startPCode);
Map<String, Object> getParentByCode(String code, String excludeType, String startPCode);
List<LngBRegionVo> child(Long pid,String excludeType, String keyword,String startPCode);

View File

@ -39,7 +39,7 @@ import shade.powerjob.com.google.common.collect.Lists;
public class CountryRegionServiceImpl extends ServiceImpl<LngBRegionMapper, LngBRegion> implements ICountryRegionService {
@Override
public Map<String, Object> getRegionByParentId(String code,String excludeType,String startPCode) {
public Map<String, Object> getParentByCode(String code,String excludeType,String startPCode) {
Map<String,Object> result = new HashMap<>();
LambdaQueryWrapper<LngBRegion> queryWrapper = new LambdaQueryWrapper<LngBRegion>();
queryWrapper.eq(LngBRegion::getCode,code);
@ -51,17 +51,17 @@ public class CountryRegionServiceImpl extends ServiceImpl<LngBRegionMapper, LngB
List<String> excludeTypeList = CollectionUtils.newArrayList();
if(StringUtils.isNotBlank(startPCode)) {
LambdaQueryWrapper<LngBRegion> qw = new LambdaQueryWrapper<LngBRegion>();
queryWrapper.eq(LngBRegion::getCode,startPCode);
qw.eq(LngBRegion::getCode,startPCode);
LngBRegion tempPr = this.getOne(qw);
excludeTypeList.add(tempPr.getRegionTypeCode());
}
if(StringUtils.isNotBlank(startPCode)) {
if(StringUtils.isNotBlank(excludeType)) {
excludeTypeList.add(excludeType);
}
LambdaQueryWrapper<LngBRegion> tempQw = Wrappers.<LngBRegion>query().lambda()
.ne(StringUtils.isNotBlank(excludeType),LngBRegion::getRegionTypeCode, excludeType)
.eq(StringUtils.isNotBlank(startPCode),LngBRegion::getCode, startPCode);
.notIn(StringUtils.isNotBlank(excludeType),LngBRegion::getRegionTypeCode, excludeTypeList);
//.eq(StringUtils.isNotBlank(startPCode),LngBRegion::getCode, startPCode);
List<LngBRegion> allList = this.list(tempQw);
Map<Long,LngBRegion> map = allList.stream().collect(Collectors.toMap(LngBRegion::getId,
obj -> obj));

View File

@ -1,41 +1,44 @@
package com.xjrsoft.module.sales.controller;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import java.util.List;
import javax.validation.Valid;
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.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.xjrsoft.common.constant.GlobalConstant;
import com.baomidou.mybatisplus.core.toolkit.StringPool;
import com.xjrsoft.common.model.result.R;
import com.xjrsoft.common.page.ConventPage;
import com.xjrsoft.common.page.PageOutput;
import com.xjrsoft.common.model.result.R;
import com.xjrsoft.common.utils.VoToColumnUtil;
import com.xjrsoft.module.sales.dto.AddLngCustomerDto;
import com.xjrsoft.module.sales.dto.UpdateLngCustomerDto;
import cn.dev33.satoken.annotation.SaCheckPermission;
import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
import com.xjrsoft.module.sales.dto.LngCustomerPageDto;
import com.xjrsoft.module.sales.dto.UpdateLngCustomerDto;
import com.xjrsoft.module.sales.entity.LngCustomer;
import com.xjrsoft.module.sales.service.ICustomerService;
import com.xjrsoft.module.sales.vo.LngCustomerPageVo;
import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.sales.vo.LngCustomerVo;
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.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-18
* @Date: 2025-11-19
* @Version 1.0
*/
@RestController
@ -75,7 +78,7 @@ public class CustomerController {
@ApiOperation(value="根据id查询LngCustomer信息")
@SaCheckPermission("customer:detail")
public R info(@RequestParam Long id){
LngCustomer lngCustomer = customerService.getById(id);
LngCustomer lngCustomer = customerService.getByIdDeep(id);
if (lngCustomer == null) {
return R.error("找不到此数据!");
}

View File

@ -1,26 +1,25 @@
package com.xjrsoft.module.sales.entity;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.Version;
import com.baomidou.mybatisplus.annotation.TableName;
import com.github.yulichang.annotation.EntityMapping;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-18
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@ -260,5 +259,33 @@ public class LngCustomer implements Serializable {
private Long ruleUserId;
/**
* lngCustomerAttrPower
*/
@ApiModelProperty("lngCustomerAttrPower子表")
@TableField(exist = false)
@EntityMapping(thisField = "cuCode", joinField = "cuCode")
private List<LngCustomerAttrPower> lngCustomerAttrPowerList;
/**
* lngCustomerBank
*/
@ApiModelProperty("lngCustomerBank子表")
@TableField(exist = false)
@EntityMapping(thisField = "cuCode", joinField = "cuCode")
private List<LngCustomerBank> lngCustomerBankList;
/**
* lngCustomerDoc
*/
@ApiModelProperty("lngCustomerDoc子表")
@TableField(exist = false)
@EntityMapping(thisField = "cuCode", joinField = "cuCode")
private List<LngCustomerDoc> lngCustomerDocList;
/**
* lngCustomerContact
*/
@ApiModelProperty("lngCustomerContact子表")
@TableField(exist = false)
@EntityMapping(thisField = "cuCode", joinField = "cuCode")
private List<LngCustomerContact> lngCustomerContactList;
}

View File

@ -0,0 +1,111 @@
package com.xjrsoft.module.sales.entity;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@TableName("lng_customer_attr_power")
@ApiModel(value = "客户对象", description = "客户")
public class LngCustomerAttrPower implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@ApiModelProperty("主键")
@TableId
private Long id;
/**
* 客户编码
*/
@ApiModelProperty("客户编码")
private String cuCode;
/**
* 管道编码
*/
@ApiModelProperty("管道编码")
private String lineCode;
/**
* 装机量万KW
*/
@ApiModelProperty("装机量万KW")
private BigDecimal capacity;
/**
* 备注
*/
@ApiModelProperty("备注")
private String note;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
@TableField(fill = FieldFill.INSERT)
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
@TableField(fill = FieldFill.INSERT)
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
@TableField(fill = FieldFill.UPDATE)
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
@TableField(fill = FieldFill.UPDATE)
private LocalDateTime modifyDate;
/**
* 租户id
*/
@ApiModelProperty("租户id")
private Long tenantId;
/**
* 部门id
*/
@ApiModelProperty("部门id")
@TableField(fill = FieldFill.INSERT)
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
@TableField(fill = FieldFill.INSERT)
private Long ruleUserId;
}

View File

@ -0,0 +1,126 @@
package com.xjrsoft.module.sales.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.Version;
import com.github.yulichang.annotation.EntityMapping;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@TableName("lng_customer_bank")
@ApiModel(value = "客户对象", description = "客户")
public class LngCustomerBank implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@ApiModelProperty("主键")
@TableId
private Long id;
/**
* 客户编码
*/
@ApiModelProperty("客户编码")
private String cuCode;
/**
* 银行
*/
@ApiModelProperty("银行")
private String bankCode;
/**
* 账号名称
*/
@ApiModelProperty("账号名称")
private String accountName;
/**
* 账号
*/
@ApiModelProperty("账号")
private String account;
/**
* 默认账号(Y-是N-否只能有一个Y的有效记录)
*/
@ApiModelProperty("默认账号(Y-是N-否只能有一个Y的有效记录)")
private String defaultSign;
/**
* 备注
*/
@ApiModelProperty("备注")
private String note;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
@TableField(fill = FieldFill.INSERT)
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
@TableField(fill = FieldFill.INSERT)
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
@TableField(fill = FieldFill.UPDATE)
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
@TableField(fill = FieldFill.UPDATE)
private LocalDateTime modifyDate;
/**
* 租户id
*/
@ApiModelProperty("租户id")
private Long tenantId;
/**
* 部门id
*/
@ApiModelProperty("部门id")
@TableField(fill = FieldFill.INSERT)
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
@TableField(fill = FieldFill.INSERT)
private Long ruleUserId;
}

View File

@ -0,0 +1,132 @@
package com.xjrsoft.module.sales.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.Version;
import com.github.yulichang.annotation.EntityMapping;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@TableName("lng_customer_contact")
@ApiModel(value = "客户对象", description = "客户")
public class LngCustomerContact implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@ApiModelProperty("主键")
@TableId
private Long id;
/**
* 客户编码
*/
@ApiModelProperty("客户编码")
private String cuCode;
/**
* 姓名
*/
@ApiModelProperty("姓名")
private String contactName;
/**
* 联系电话
*/
@ApiModelProperty("联系电话")
private String tel;
/**
* 通讯地址
*/
@ApiModelProperty("通讯地址")
private String addrMail;
/**
* 电子邮箱
*/
@ApiModelProperty("电子邮箱")
private String email;
/**
* 职位
*/
@ApiModelProperty("职位")
private String position;
/**
* 备注
*/
@ApiModelProperty("备注")
private String note;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
@TableField(fill = FieldFill.INSERT)
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
@TableField(fill = FieldFill.INSERT)
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
@TableField(fill = FieldFill.UPDATE)
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
@TableField(fill = FieldFill.UPDATE)
private LocalDateTime modifyDate;
/**
* 租户id
*/
@ApiModelProperty("租户id")
private Long tenantId;
/**
* 部门id
*/
@ApiModelProperty("部门id")
@TableField(fill = FieldFill.INSERT)
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
@TableField(fill = FieldFill.INSERT)
private Long ruleUserId;
}

View File

@ -0,0 +1,132 @@
package com.xjrsoft.module.sales.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.Version;
import com.github.yulichang.annotation.EntityMapping;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@TableName("lng_customer_doc")
@ApiModel(value = "客户对象", description = "客户")
public class LngCustomerDoc implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@ApiModelProperty("主键")
@TableId
private Long id;
/**
* 客户编码
*/
@ApiModelProperty("客户编码")
private String cuCode;
/**
* 资质证书类型
*/
@ApiModelProperty("资质证书类型")
private String docTypeCode;
/**
* 资质证书编号
*/
@ApiModelProperty("资质证书编号")
private String docNo;
/**
* 有效期开始
*/
@ApiModelProperty("有效期开始")
private LocalDateTime dateFrom;
/**
* 有效期结束
*/
@ApiModelProperty("有效期结束")
private LocalDateTime dateTo;
/**
* 显示顺序
*/
@ApiModelProperty("显示顺序")
private Short sort;
/**
* 备注
*/
@ApiModelProperty("备注")
private String note;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
@TableField(fill = FieldFill.INSERT)
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
@TableField(fill = FieldFill.INSERT)
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
@TableField(fill = FieldFill.UPDATE)
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
@TableField(fill = FieldFill.UPDATE)
private LocalDateTime modifyDate;
/**
* 租户id
*/
@ApiModelProperty("租户id")
private Long tenantId;
/**
* 部门id
*/
@ApiModelProperty("部门id")
@TableField(fill = FieldFill.INSERT)
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
@TableField(fill = FieldFill.INSERT)
private Long ruleUserId;
}

View File

@ -0,0 +1,17 @@
package com.xjrsoft.module.sales.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.sales.entity.LngCustomerAttrPower;
import org.apache.ibatis.annotations.Mapper;
/**
* @title: mapper
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Mapper
public interface LngCustomerAttrPowerMapper extends MPJBaseMapper<LngCustomerAttrPower> {
}

View File

@ -0,0 +1,17 @@
package com.xjrsoft.module.sales.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.sales.entity.LngCustomerBank;
import org.apache.ibatis.annotations.Mapper;
/**
* @title: mapper
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Mapper
public interface LngCustomerBankMapper extends MPJBaseMapper<LngCustomerBank> {
}

View File

@ -0,0 +1,17 @@
package com.xjrsoft.module.sales.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.sales.entity.LngCustomerContact;
import org.apache.ibatis.annotations.Mapper;
/**
* @title: mapper
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Mapper
public interface LngCustomerContactMapper extends MPJBaseMapper<LngCustomerContact> {
}

View File

@ -0,0 +1,17 @@
package com.xjrsoft.module.sales.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.sales.entity.LngCustomerDoc;
import org.apache.ibatis.annotations.Mapper;
/**
* @title: mapper
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Mapper
public interface LngCustomerDocMapper extends MPJBaseMapper<LngCustomerDoc> {
}

View File

@ -8,10 +8,10 @@ import org.apache.ibatis.annotations.Mapper;
/**
* @title: mapper
* @Author 管理员
* @Date: 2025-11-18
* @Date: 2025-11-19
* @Version 1.0
*/
@Mapper
public interface LngCustomerMapper extends BaseMapper<LngCustomer> {
public interface LngCustomerMapper extends MPJBaseMapper<LngCustomer> {
}

View File

@ -11,9 +11,32 @@ import java.util.List;
/**
* @title: service
* @Author 管理员
* @Date: 2025-11-18
* @Date: 2025-11-19
* @Version 1.0
*/
public interface ICustomerService extends IService<LngCustomer> {
public interface ICustomerService extends MPJBaseService<LngCustomer>, MPJDeepService<LngCustomer>, MPJRelationService<LngCustomer> {
/**
* 新增
*
* @param lngCustomer
* @return
*/
Boolean add(LngCustomer lngCustomer);
/**
* 更新
*
* @param lngCustomer
* @return
*/
Boolean update(LngCustomer lngCustomer);
/**
* 删除
*
* @param ids
* @return
*/
Boolean delete(List<Long> ids);
}

View File

@ -2,6 +2,14 @@ package com.xjrsoft.module.sales.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.xjrsoft.module.sales.entity.LngCustomerAttrPower;
import com.xjrsoft.module.sales.mapper.LngCustomerAttrPowerMapper;
import com.xjrsoft.module.sales.entity.LngCustomerBank;
import com.xjrsoft.module.sales.mapper.LngCustomerBankMapper;
import com.xjrsoft.module.sales.entity.LngCustomerDoc;
import com.xjrsoft.module.sales.mapper.LngCustomerDocMapper;
import com.xjrsoft.module.sales.entity.LngCustomerContact;
import com.xjrsoft.module.sales.mapper.LngCustomerContactMapper;
import com.xjrsoft.module.sales.entity.LngCustomer;
import com.xjrsoft.module.sales.mapper.LngCustomerMapper;
import com.xjrsoft.module.sales.service.ICustomerService;
@ -16,10 +24,176 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
/**
* @title: service
* @Author 管理员
* @Date: 2025-11-18
* @Date: 2025-11-19
* @Version 1.0
*/
@Service
@AllArgsConstructor
public class CustomerServiceImpl extends ServiceImpl<LngCustomerMapper, LngCustomer> implements ICustomerService {
public class CustomerServiceImpl extends MPJBaseServiceImpl<LngCustomerMapper, LngCustomer> implements ICustomerService {
private final LngCustomerMapper customerLngCustomerMapper;
private final LngCustomerAttrPowerMapper customerLngCustomerAttrPowerMapper;
private final LngCustomerBankMapper customerLngCustomerBankMapper;
private final LngCustomerDocMapper customerLngCustomerDocMapper;
private final LngCustomerContactMapper customerLngCustomerContactMapper;
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean add(LngCustomer lngCustomer) {
customerLngCustomerMapper.insert(lngCustomer);
for (LngCustomerAttrPower lngCustomerAttrPower : lngCustomer.getLngCustomerAttrPowerList()) {
lngCustomerAttrPower.setCuCode(lngCustomer.getCuCode());
customerLngCustomerAttrPowerMapper.insert(lngCustomerAttrPower);
}
for (LngCustomerBank lngCustomerBank : lngCustomer.getLngCustomerBankList()) {
lngCustomerBank.setCuCode(lngCustomer.getCuCode());
customerLngCustomerBankMapper.insert(lngCustomerBank);
}
for (LngCustomerDoc lngCustomerDoc : lngCustomer.getLngCustomerDocList()) {
lngCustomerDoc.setCuCode(lngCustomer.getCuCode());
customerLngCustomerDocMapper.insert(lngCustomerDoc);
}
for (LngCustomerContact lngCustomerContact : lngCustomer.getLngCustomerContactList()) {
lngCustomerContact.setCuCode(lngCustomer.getCuCode());
customerLngCustomerContactMapper.insert(lngCustomerContact);
}
return true;
}
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean update(LngCustomer lngCustomer) {
customerLngCustomerMapper.updateById(lngCustomer);
//********************************* LngCustomerAttrPower 增删改 开始 *******************************************/
{
// 查出所有子级的id
List<LngCustomerAttrPower> lngCustomerAttrPowerList = customerLngCustomerAttrPowerMapper.selectList(Wrappers.lambdaQuery(LngCustomerAttrPower.class).eq(LngCustomerAttrPower::getCuCode, lngCustomer.getCuCode()).select(LngCustomerAttrPower::getId));
List<Long> lngCustomerAttrPowerIds = lngCustomerAttrPowerList.stream().map(LngCustomerAttrPower::getId).collect(Collectors.toList());
//原有子表单 没有被删除的主键
List<Long> lngCustomerAttrPowerOldIds = lngCustomer.getLngCustomerAttrPowerList().stream().map(LngCustomerAttrPower::getId).filter(Objects::nonNull).collect(Collectors.toList());
//找到需要删除的id
List<Long> lngCustomerAttrPowerRemoveIds = lngCustomerAttrPowerIds.stream().filter(item -> !lngCustomerAttrPowerOldIds.contains(item)).collect(Collectors.toList());
for (LngCustomerAttrPower lngCustomerAttrPower : lngCustomer.getLngCustomerAttrPowerList()) {
//如果不等于空则修改
if (lngCustomerAttrPower.getId() != null) {
customerLngCustomerAttrPowerMapper.updateById(lngCustomerAttrPower);
}
//如果等于空 则新增
else {
//已经不存在的id 删除
lngCustomerAttrPower.setCuCode(lngCustomer.getCuCode());
customerLngCustomerAttrPowerMapper.insert(lngCustomerAttrPower);
}
}
//已经不存在的id 删除
if(lngCustomerAttrPowerRemoveIds.size() > 0){
customerLngCustomerAttrPowerMapper.deleteBatchIds(lngCustomerAttrPowerRemoveIds);
}
}
//********************************* LngCustomerAttrPower 增删改 结束 *******************************************/
//********************************* LngCustomerBank 增删改 开始 *******************************************/
{
// 查出所有子级的id
List<LngCustomerBank> lngCustomerBankList = customerLngCustomerBankMapper.selectList(Wrappers.lambdaQuery(LngCustomerBank.class).eq(LngCustomerBank::getCuCode, lngCustomer.getCuCode()).select(LngCustomerBank::getId));
List<Long> lngCustomerBankIds = lngCustomerBankList.stream().map(LngCustomerBank::getId).collect(Collectors.toList());
//原有子表单 没有被删除的主键
List<Long> lngCustomerBankOldIds = lngCustomer.getLngCustomerBankList().stream().map(LngCustomerBank::getId).filter(Objects::nonNull).collect(Collectors.toList());
//找到需要删除的id
List<Long> lngCustomerBankRemoveIds = lngCustomerBankIds.stream().filter(item -> !lngCustomerBankOldIds.contains(item)).collect(Collectors.toList());
for (LngCustomerBank lngCustomerBank : lngCustomer.getLngCustomerBankList()) {
//如果不等于空则修改
if (lngCustomerBank.getId() != null) {
customerLngCustomerBankMapper.updateById(lngCustomerBank);
}
//如果等于空 则新增
else {
//已经不存在的id 删除
lngCustomerBank.setCuCode(lngCustomer.getCuCode());
customerLngCustomerBankMapper.insert(lngCustomerBank);
}
}
//已经不存在的id 删除
if(lngCustomerBankRemoveIds.size() > 0){
customerLngCustomerBankMapper.deleteBatchIds(lngCustomerBankRemoveIds);
}
}
//********************************* LngCustomerBank 增删改 结束 *******************************************/
//********************************* LngCustomerDoc 增删改 开始 *******************************************/
{
// 查出所有子级的id
List<LngCustomerDoc> lngCustomerDocList = customerLngCustomerDocMapper.selectList(Wrappers.lambdaQuery(LngCustomerDoc.class).eq(LngCustomerDoc::getCuCode, lngCustomer.getCuCode()).select(LngCustomerDoc::getId));
List<Long> lngCustomerDocIds = lngCustomerDocList.stream().map(LngCustomerDoc::getId).collect(Collectors.toList());
//原有子表单 没有被删除的主键
List<Long> lngCustomerDocOldIds = lngCustomer.getLngCustomerDocList().stream().map(LngCustomerDoc::getId).filter(Objects::nonNull).collect(Collectors.toList());
//找到需要删除的id
List<Long> lngCustomerDocRemoveIds = lngCustomerDocIds.stream().filter(item -> !lngCustomerDocOldIds.contains(item)).collect(Collectors.toList());
for (LngCustomerDoc lngCustomerDoc : lngCustomer.getLngCustomerDocList()) {
//如果不等于空则修改
if (lngCustomerDoc.getId() != null) {
customerLngCustomerDocMapper.updateById(lngCustomerDoc);
}
//如果等于空 则新增
else {
//已经不存在的id 删除
lngCustomerDoc.setCuCode(lngCustomer.getCuCode());
customerLngCustomerDocMapper.insert(lngCustomerDoc);
}
}
//已经不存在的id 删除
if(lngCustomerDocRemoveIds.size() > 0){
customerLngCustomerDocMapper.deleteBatchIds(lngCustomerDocRemoveIds);
}
}
//********************************* LngCustomerDoc 增删改 结束 *******************************************/
//********************************* LngCustomerContact 增删改 开始 *******************************************/
{
// 查出所有子级的id
List<LngCustomerContact> lngCustomerContactList = customerLngCustomerContactMapper.selectList(Wrappers.lambdaQuery(LngCustomerContact.class).eq(LngCustomerContact::getCuCode, lngCustomer.getCuCode()).select(LngCustomerContact::getId));
List<Long> lngCustomerContactIds = lngCustomerContactList.stream().map(LngCustomerContact::getId).collect(Collectors.toList());
//原有子表单 没有被删除的主键
List<Long> lngCustomerContactOldIds = lngCustomer.getLngCustomerContactList().stream().map(LngCustomerContact::getId).filter(Objects::nonNull).collect(Collectors.toList());
//找到需要删除的id
List<Long> lngCustomerContactRemoveIds = lngCustomerContactIds.stream().filter(item -> !lngCustomerContactOldIds.contains(item)).collect(Collectors.toList());
for (LngCustomerContact lngCustomerContact : lngCustomer.getLngCustomerContactList()) {
//如果不等于空则修改
if (lngCustomerContact.getId() != null) {
customerLngCustomerContactMapper.updateById(lngCustomerContact);
}
//如果等于空 则新增
else {
//已经不存在的id 删除
lngCustomerContact.setCuCode(lngCustomer.getCuCode());
customerLngCustomerContactMapper.insert(lngCustomerContact);
}
}
//已经不存在的id 删除
if(lngCustomerContactRemoveIds.size() > 0){
customerLngCustomerContactMapper.deleteBatchIds(lngCustomerContactRemoveIds);
}
}
//********************************* LngCustomerContact 增删改 结束 *******************************************/
return true;
}
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean delete(List<Long> ids) {
customerLngCustomerMapper.deleteBatchIds(ids);
customerLngCustomerAttrPowerMapper.delete(Wrappers.lambdaQuery(LngCustomerAttrPower.class).in(LngCustomerAttrPower::getCuCode, ids));
customerLngCustomerBankMapper.delete(Wrappers.lambdaQuery(LngCustomerBank.class).in(LngCustomerBank::getCuCode, ids));
customerLngCustomerDocMapper.delete(Wrappers.lambdaQuery(LngCustomerDoc.class).in(LngCustomerDoc::getCuCode, ids));
customerLngCustomerContactMapper.delete(Wrappers.lambdaQuery(LngCustomerContact.class).in(LngCustomerContact::getCuCode, ids));
return true;
}
}