This commit is contained in:
2025-11-21 14:22:44 +08:00
43 changed files with 4271 additions and 8 deletions

View File

@ -0,0 +1,92 @@
package com.xjrsoft.module.mdm.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-18
* @Version 1.0
*/
@Data
@LogTable(source="lng_b_place_lng_unload",name="卸货地")
public class AddLngBPlaceLngUnloadDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 助记码(自动生成6位000001……)
*/
@ApiModelProperty("助记码(自动生成6位000001……)")
@LogField(name="助记码(自动生成6位000001……)",index=0)
private String code;
/**
* 名称(不能重复)
*/
@ApiModelProperty("名称(不能重复)")
@LogField(name="名称(不能重复)",index=0)
private String fullName;
/**
* 卸货区域
*/
@ApiModelProperty("卸货区域")
@LogField(name="卸货区域",index=0)
private String regionCode;
/**
* 详细地址
*/
@ApiModelProperty("详细地址")
@LogField(name="详细地址",index=0)
private String addr;
/**
* 经度
*/
@ApiModelProperty("经度")
@LogField(name="经度",index=0)
private String longitude;
/**
* 纬度
*/
@ApiModelProperty("纬度")
@LogField(name="纬度",index=0)
private String latitude;
/**
* 显示顺序
*/
@ApiModelProperty("显示顺序")
@LogField(name="显示顺序",index=0)
private Short sort;
/**
* 有效标志(Y-有效N-无效)
*/
@ApiModelProperty("有效标志(Y-有效N-无效)")
@LogField(name="有效标志(Y-有效N-无效)",index=0)
private String valid;
/**
* 备注
*/
@ApiModelProperty("备注")
@LogField(name="备注",index=0)
private String note;
/**
* 租户id
*/
@ApiModelProperty("租户id")
@LogField(name="租户id",index=0)
private Long tenantId;
}

View File

@ -0,0 +1,70 @@
package com.xjrsoft.module.mdm.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
* @Version 1.0
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class LngBPlaceLngUnloadPageDto extends PageInput {
/**
* 名称(不能重复)
*/
@ApiModelProperty("名称(不能重复)")
private String fullName;
/**
* 有效标志(Y-有效N-无效)
*/
@ApiModelProperty("有效标志(Y-有效N-无效)")
private String valid;
/**
* 助记码(自动生成6位000001……)
*/
@ApiModelProperty("助记码(自动生成6位000001……)")
private String code;
/**
* 卸货区域
*/
@ApiModelProperty("卸货区域")
private String regionCode;
/**
* 详细地址
*/
@ApiModelProperty("详细地址")
private String addr;
/**
* 经度
*/
@ApiModelProperty("经度")
private String longitude;
/**
* 纬度
*/
@ApiModelProperty("纬度")
private String latitude;
/**
* 显示顺序
*/
@ApiModelProperty("显示顺序")
private Short sort;
/**
* 备注
*/
@ApiModelProperty("备注")
private String note;
}

View File

@ -0,0 +1,103 @@
package com.xjrsoft.module.mdm.dto;
import com.pictc.annotations.datalog.LogField;
import com.pictc.annotations.datalog.LogTable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* @title: 卸货地
* @Author 管理员
* @Date: 2025-11-18
* @Version 1.0
*/
@Data
@LogTable(source="lng_b_place_lng_unload",name="卸货地")
public class UpdateLngBPlaceLngUnloadDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@LogField(name="主键",index=0)
@ApiModelProperty("主键")
private Long id;
/**
* 助记码(自动生成6位000001……)
*/
@LogField(name="助记码(自动生成6位000001……)",index=1)
@ApiModelProperty("助记码(自动生成6位000001……)")
private String code;
/**
* 名称(不能重复)
*/
@LogField(name="名称(不能重复)",index=2)
@ApiModelProperty("名称(不能重复)")
private String fullName;
/**
* 卸货区域
*/
@LogField(name="卸货区域",index=3)
@ApiModelProperty("卸货区域")
private String regionCode;
/**
* 详细地址
*/
@LogField(name="详细地址",index=4)
@ApiModelProperty("详细地址")
private String addr;
/**
* 经度
*/
@LogField(name="经度",index=5)
@ApiModelProperty("经度")
private String longitude;
/**
* 纬度
*/
@LogField(name="纬度",index=6)
@ApiModelProperty("纬度")
private String latitude;
/**
* 显示顺序
*/
@LogField(name="显示顺序",index=7)
@ApiModelProperty("显示顺序")
private Short sort;
/**
* 有效标志(Y-有效N-无效)
*/
@LogField(name="有效标志(Y-有效N-无效)",index=8)
@ApiModelProperty("有效标志(Y-有效N-无效)")
private String valid;
/**
* 备注
*/
@LogField(name="备注",index=9)
@ApiModelProperty("备注")
private String note;
/**
* 租户id
*/
@LogField(name="租户id",index=10)
@ApiModelProperty("租户id")
private Long tenantId;
}

View File

@ -0,0 +1,70 @@
package com.xjrsoft.module.mdm.vo;
import com.xjrsoft.common.annotation.Trans;
import com.xjrsoft.common.enums.TransType;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @title: 分页列表出参
* @Author 管理员
* @Date: 2025-11-18
* @Version 1.0
*/
@Data
public class LngBPlaceLngUnloadPageVo {
/**
* 主键
*/
@ApiModelProperty("主键")
private String id;
/**
* 助记码(自动生成6位000001……)
*/
@ApiModelProperty("助记码(自动生成6位000001……)")
private String code;
/**
* 名称(不能重复)
*/
@ApiModelProperty("名称(不能重复)")
private String fullName;
/**
* 卸货区域
*/
@ApiModelProperty("卸货区域")
@Trans(type = TransType.REGION)
private String regionCode;
/**
* 详细地址
*/
@ApiModelProperty("详细地址")
private String addr;
/**
* 经度
*/
@ApiModelProperty("经度")
private String longitude;
/**
* 纬度
*/
@ApiModelProperty("纬度")
private String latitude;
/**
* 显示顺序
*/
@ApiModelProperty("显示顺序")
private Short sort;
/**
* 有效标志(Y-有效N-无效)
*/
@ApiModelProperty("有效标志(Y-有效N-无效)")
@Trans(type = TransType.DIC, id = "1978057078528327681")
private String valid;
/**
* 备注
*/
@ApiModelProperty("备注")
private String note;
}

View File

@ -0,0 +1,142 @@
package com.xjrsoft.module.mdm.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-18
* @Version 1.0
*/
@Data
public class LngBPlaceLngUnloadVo {
/**
* 主键
*/
@ApiModelProperty("主键")
private Long id;
/**
* 助记码(自动生成6位000001……)
*/
@ApiModelProperty("助记码(自动生成6位000001……)")
private String code;
/**
* 名称(不能重复)
*/
@ApiModelProperty("名称(不能重复)")
private String fullName;
/**
* 卸货区域
*/
@ApiModelProperty("卸货区域")
private String regionCode;
/**
* 详细地址
*/
@ApiModelProperty("详细地址")
private String addr;
/**
* 经度
*/
@ApiModelProperty("经度")
private String longitude;
/**
* 纬度
*/
@ApiModelProperty("纬度")
private String latitude;
/**
* 显示顺序
*/
@ApiModelProperty("显示顺序")
private Short sort;
/**
* 有效标志(Y-有效N-无效)
*/
@ApiModelProperty("有效标志(Y-有效N-无效)")
private String valid;
/**
* 备注
*/
@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,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

@ -0,0 +1,229 @@
package com.xjrsoft.module.sales.dto;
import java.io.Serializable;
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-19
* @Version 1.0
*/
@Data
@LogTable(source="lng_customer",name="客户")
public class AddLngCustomerDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 客户编码(不能重复以C开头)
*/
@ApiModelProperty("客户编码(不能重复以C开头)")
@LogField(name="客户编码(不能重复以C开头)",index=0)
private String cuCode;
/**
* 集团编码
*/
@ApiModelProperty("集团编码")
@LogField(name="集团编码",index=0)
private String cuMcode;
/**
* 客户名称(不能与名称、简称重复)
*/
@ApiModelProperty("客户名称(不能与名称、简称重复)")
@LogField(name="客户名称(不能与名称、简称重复)",index=0)
private String cuName;
/**
* 简称(不能与名称、简称重复)
*/
@ApiModelProperty("简称(不能与名称、简称重复)")
@LogField(name="简称(不能与名称、简称重复)",index=0)
private String cuSname;
/**
* 国际/国内(I-国际D-国内)
*/
@ApiModelProperty("国际/国内(I-国际D-国内)")
@LogField(name="国际/国内(I-国际D-国内)",index=0)
private String dI;
/**
* 企业性质(国有企业/非国有企业)
*/
@ApiModelProperty("企业性质(国有企业/非国有企业)")
@LogField(name="企业性质(国有企业/非国有企业)",index=0)
private String natureCode;
/**
* 母公司名称
*/
@ApiModelProperty("母公司名称")
@LogField(name="母公司名称",index=0)
private String parentName;
/**
* 统一社会信用代码(非空时不可重复)
*/
@ApiModelProperty("统一社会信用代码(非空时不可重复)")
@LogField(name="统一社会信用代码(非空时不可重复)",index=0)
private String creditNo;
/**
* 纳税人识别号(非空时不可重复)
*/
@ApiModelProperty("纳税人识别号(非空时不可重复)")
@LogField(name="纳税人识别号(非空时不可重复)",index=0)
private String tiNo;
/**
* 法定代表人
*/
@ApiModelProperty("法定代表人")
@LogField(name="法定代表人",index=0)
private String representative;
/**
* 成立日期
*/
@ApiModelProperty("成立日期")
@LogField(name="成立日期",index=0)
private LocalDateTime dateEstab;
/**
* 准入日期
*/
@ApiModelProperty("准入日期")
@LogField(name="准入日期",index=0)
private LocalDateTime dateEntry;
/**
* 注册资本(万元)
*/
@ApiModelProperty("注册资本(万元)")
@LogField(name="注册资本(万元)",index=0)
private String amtReg;
/**
* 注册地址
*/
@ApiModelProperty("注册地址")
@LogField(name="注册地址",index=0)
private String addrReg;
/**
* 通讯地址
*/
@ApiModelProperty("通讯地址")
@LogField(name="通讯地址",index=0)
private String addrMail;
/**
* 客户分类(一类/二类)
*/
@ApiModelProperty("客户分类(一类/二类)")
@LogField(name="客户分类(一类/二类)",index=0)
private String classCode;
/**
* 客户类别(电厂/工业用户/城燃/贸易商)
*/
@ApiModelProperty("客户类别(电厂/工业用户/城燃/贸易商)")
@LogField(name="客户类别(电厂/工业用户/城燃/贸易商)",index=0)
private String typeCode;
/**
* 统计分类(内部/国电/华电/深能/其他)
*/
@ApiModelProperty("统计分类(内部/国电/华电/深能/其他)")
@LogField(name="统计分类(内部/国电/华电/深能/其他)",index=0)
private String propCode;
/**
* 国有企业持股
*/
@ApiModelProperty("国有企业持股")
@LogField(name="国有企业持股",index=0)
private String stateSign;
/**
* 国企持股比例
*/
@ApiModelProperty("国企持股比例")
@LogField(name="国企持股比例",index=0)
private BigDecimal rateShare;
/**
* 持股第一大股东名称
*/
@ApiModelProperty("持股第一大股东名称")
@LogField(name="持股第一大股东名称",index=0)
private String shareName;
/**
* 集团持股比例
*/
@ApiModelProperty("集团持股比例")
@LogField(name="集团持股比例",index=0)
private BigDecimal rateShareGn;
/**
* 是否校验预付款(Y-是N-否)
*/
@ApiModelProperty("是否校验预付款(Y-是N-否)")
@LogField(name="是否校验预付款(Y-是N-否)",index=0)
private String prepaySign;
/**
* 有无线上(竞拍)(Y-有N-无)
*/
@ApiModelProperty("有无线上(竞拍)(Y-有N-无)")
@LogField(name="有无线上(竞拍)(Y-有N-无)",index=0)
private String onlineSign;
/**
* 自有终端(Y-是N-否)
*/
@ApiModelProperty("自有终端(Y-是N-否)")
@LogField(name="自有终端(Y-是N-否)",index=0)
private String tSign;
/**
* 组织架构编码
*/
@ApiModelProperty("组织架构编码")
@LogField(name="组织架构编码",index=0)
private String orgCode;
/**
* 有效标志(不在黑名单)(Y-有效N-无效)
*/
@ApiModelProperty("有效标志(不在黑名单)(Y-有效N-无效)")
@LogField(name="有效标志(不在黑名单)(Y-有效N-无效)",index=0)
private String valid;
/**
* 状态(未提交/审批中/已审批/已驳回)
*/
@ApiModelProperty("状态(未提交/审批中/已审批/已驳回)")
@LogField(name="状态(未提交/审批中/已审批/已驳回)",index=0)
private String approCode;
/**
* 备注
*/
@ApiModelProperty("备注")
@LogField(name="备注",index=0)
private String note;
/**
* 租户id
*/
@ApiModelProperty("租户id")
@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

@ -0,0 +1,66 @@
package com.xjrsoft.module.sales.dto;
import com.xjrsoft.common.page.PageInput;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* @title: 分页查询入参
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class LngCustomerPageDto extends PageInput {
/**
* 客户编码(不能重复以C开头)
*/
@ApiModelProperty("客户编码(不能重复以C开头)")
private String cuCode;
/**
* 客户名称(不能与名称、简称重复)
*/
@ApiModelProperty("客户名称(不能与名称、简称重复)")
private String cuName;
/**
* 简称(不能与名称、简称重复)
*/
@ApiModelProperty("简称(不能与名称、简称重复)")
private String cuSname;
/**
* 集团编码
*/
@ApiModelProperty("集团编码")
private String cuMcode;
/**
* 客户分类(一类/二类)
*/
@ApiModelProperty("客户分类(一类/二类)")
private String classCode;
/**
* 客户类别(电厂/工业用户/城燃/贸易商)
*/
@ApiModelProperty("客户类别(电厂/工业用户/城燃/贸易商)")
private String typeCode;
/**
* 企业性质(国有企业/非国有企业)
*/
@ApiModelProperty("企业性质(国有企业/非国有企业)")
private String natureCode;
/**
* 有效标志(不在黑名单)(Y-有效N-无效)
*/
@ApiModelProperty("有效标志(不在黑名单)(Y-有效N-无效)")
private String valid;
/**
* 状态(未提交/审批中/已审批/已驳回)
*/
@ApiModelProperty("状态(未提交/审批中/已审批/已驳回)")
private String approCode;
}

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

@ -0,0 +1,291 @@
package com.xjrsoft.module.sales.dto;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
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.LogTable;
import com.pictc.annotations.datalog.ValueDirectionType;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
@LogTable(source="lng_customer",name="客户")
public class UpdateLngCustomerDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@LogField(name="主键",index=0)
@ApiModelProperty("主键")
private Long id;
/**
* 客户编码(不能重复以C开头)
*/
@LogField(name="客户编码(不能重复以C开头)",index=1)
@ApiModelProperty("客户编码(不能重复以C开头)")
private String cuCode;
/**
* 集团编码
*/
@LogField(name="集团编码",index=2)
@ApiModelProperty("集团编码")
private String cuMcode;
/**
* 客户名称(不能与名称、简称重复)
*/
@LogField(name="客户名称(不能与名称、简称重复)",index=3)
@ApiModelProperty("客户名称(不能与名称、简称重复)")
private String cuName;
/**
* 简称(不能与名称、简称重复)
*/
@LogField(name="简称(不能与名称、简称重复)",index=4)
@ApiModelProperty("简称(不能与名称、简称重复)")
private String cuSname;
/**
* 国际/国内(I-国际D-国内)
*/
@LogField(name="国际/国内(I-国际D-国内)",index=5)
@ApiModelProperty("国际/国内(I-国际D-国内)")
private String dI;
/**
* 企业性质(国有企业/非国有企业)
*/
@LogField(name="企业性质(国有企业/非国有企业)",index=6)
@ApiModelProperty("企业性质(国有企业/非国有企业)")
private String natureCode;
/**
* 母公司名称
*/
@LogField(name="母公司名称",index=7)
@ApiModelProperty("母公司名称")
private String parentName;
/**
* 统一社会信用代码(非空时不可重复)
*/
@LogField(name="统一社会信用代码(非空时不可重复)",index=8)
@ApiModelProperty("统一社会信用代码(非空时不可重复)")
private String creditNo;
/**
* 纳税人识别号(非空时不可重复)
*/
@LogField(name="纳税人识别号(非空时不可重复)",index=9)
@ApiModelProperty("纳税人识别号(非空时不可重复)")
private String tiNo;
/**
* 法定代表人
*/
@LogField(name="法定代表人",index=10)
@ApiModelProperty("法定代表人")
private String representative;
/**
* 成立日期
*/
@LogField(name="成立日期",index=11)
@ApiModelProperty("成立日期")
private LocalDateTime dateEstab;
/**
* 准入日期
*/
@LogField(name="准入日期",index=12)
@ApiModelProperty("准入日期")
private LocalDateTime dateEntry;
/**
* 注册资本(万元)
*/
@LogField(name="注册资本(万元)",index=13)
@ApiModelProperty("注册资本(万元)")
private String amtReg;
/**
* 注册地址
*/
@LogField(name="注册地址",index=14)
@ApiModelProperty("注册地址")
private String addrReg;
/**
* 通讯地址
*/
@LogField(name="通讯地址",index=15)
@ApiModelProperty("通讯地址")
private String addrMail;
/**
* 客户分类(一类/二类)
*/
@LogField(name="客户分类(一类/二类)",index=16)
@ApiModelProperty("客户分类(一类/二类)")
private String classCode;
/**
* 客户类别(电厂/工业用户/城燃/贸易商)
*/
@LogField(name="客户类别(电厂/工业用户/城燃/贸易商)",index=17)
@ApiModelProperty("客户类别(电厂/工业用户/城燃/贸易商)")
private String typeCode;
/**
* 统计分类(内部/国电/华电/深能/其他)
*/
@LogField(name="统计分类(内部/国电/华电/深能/其他)",index=18)
@ApiModelProperty("统计分类(内部/国电/华电/深能/其他)")
private String propCode;
/**
* 国有企业持股
*/
@LogField(name="国有企业持股",index=19)
@ApiModelProperty("国有企业持股")
private String stateSign;
/**
* 国企持股比例
*/
@LogField(name="国企持股比例",index=20)
@ApiModelProperty("国企持股比例")
private BigDecimal rateShare;
/**
* 持股第一大股东名称
*/
@LogField(name="持股第一大股东名称",index=21)
@ApiModelProperty("持股第一大股东名称")
private String shareName;
/**
* 集团持股比例
*/
@LogField(name="集团持股比例",index=22)
@ApiModelProperty("集团持股比例")
private BigDecimal rateShareGn;
/**
* 是否校验预付款(Y-是N-否)
*/
@LogField(name="是否校验预付款(Y-是N-否)",index=23)
@ApiModelProperty("是否校验预付款(Y-是N-否)")
private String prepaySign;
/**
* 有无线上(竞拍)(Y-有N-无)
*/
@LogField(name="有无线上(竞拍)(Y-有N-无)",index=24)
@ApiModelProperty("有无线上(竞拍)(Y-有N-无)")
private String onlineSign;
/**
* 自有终端(Y-是N-否)
*/
@LogField(name="自有终端(Y-是N-否)",index=25)
@ApiModelProperty("自有终端(Y-是N-否)")
private String tSign;
/**
* 组织架构编码
*/
@LogField(name="组织架构编码",index=26)
@ApiModelProperty("组织架构编码")
private String orgCode;
/**
* 有效标志(不在黑名单)(Y-有效N-无效)
*/
@LogField(name="有效标志(不在黑名单)(Y-有效N-无效)",index=27)
@ApiModelProperty("有效标志(不在黑名单)(Y-有效N-无效)")
private String valid;
/**
* 状态(未提交/审批中/已审批/已驳回)
*/
@LogField(name="状态(未提交/审批中/已审批/已驳回)",index=28)
@ApiModelProperty("状态(未提交/审批中/已审批/已驳回)")
private String approCode;
/**
* 备注
*/
@LogField(name="备注",index=29)
@ApiModelProperty("备注")
private String note;
/**
* 租户id
*/
@LogField(name="租户id",index=30)
@ApiModelProperty("租户id")
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

@ -0,0 +1,66 @@
package com.xjrsoft.module.sales.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @title: 分页列表出参
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
public class LngCustomerPageVo {
/**
* 主键
*/
@ApiModelProperty("主键")
private String id;
/**
* 客户编码(不能重复以C开头)
*/
@ApiModelProperty("客户编码(不能重复以C开头)")
private String cuCode;
/**
* 集团编码
*/
@ApiModelProperty("集团编码")
private String cuMcode;
/**
* 客户名称(不能与名称、简称重复)
*/
@ApiModelProperty("客户名称(不能与名称、简称重复)")
private String cuName;
/**
* 简称(不能与名称、简称重复)
*/
@ApiModelProperty("简称(不能与名称、简称重复)")
private String cuSname;
/**
* 企业性质(国有企业/非国有企业)
*/
@ApiModelProperty("企业性质(国有企业/非国有企业)")
private String natureCode;
/**
* 客户分类(一类/二类)
*/
@ApiModelProperty("客户分类(一类/二类)")
private String classCode;
/**
* 客户类别(电厂/工业用户/城燃/贸易商)
*/
@ApiModelProperty("客户类别(电厂/工业用户/城燃/贸易商)")
private String typeCode;
/**
* 有效标志(不在黑名单)(Y-有效N-无效)
*/
@ApiModelProperty("有效标志(不在黑名单)(Y-有效N-无效)")
private String valid;
/**
* 状态(未提交/审批中/已审批/已驳回)
*/
@ApiModelProperty("状态(未提交/审批中/已审批/已驳回)")
private String approCode;
}

View File

@ -0,0 +1,301 @@
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;
/**
* @title: 表单出参
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Data
public class LngCustomerVo {
/**
* 主键
*/
@ApiModelProperty("主键")
private Long id;
/**
* 客户编码(不能重复以C开头)
*/
@ApiModelProperty("客户编码(不能重复以C开头)")
private String cuCode;
/**
* 集团编码
*/
@ApiModelProperty("集团编码")
private String cuMcode;
/**
* 客户名称(不能与名称、简称重复)
*/
@ApiModelProperty("客户名称(不能与名称、简称重复)")
private String cuName;
/**
* 简称(不能与名称、简称重复)
*/
@ApiModelProperty("简称(不能与名称、简称重复)")
private String cuSname;
/**
* 国际/国内(I-国际D-国内)
*/
@ApiModelProperty("国际/国内(I-国际D-国内)")
private String dI;
/**
* 企业性质(国有企业/非国有企业)
*/
@ApiModelProperty("企业性质(国有企业/非国有企业)")
private String natureCode;
/**
* 母公司名称
*/
@ApiModelProperty("母公司名称")
private String parentName;
/**
* 统一社会信用代码(非空时不可重复)
*/
@ApiModelProperty("统一社会信用代码(非空时不可重复)")
private String creditNo;
/**
* 纳税人识别号(非空时不可重复)
*/
@ApiModelProperty("纳税人识别号(非空时不可重复)")
private String tiNo;
/**
* 法定代表人
*/
@ApiModelProperty("法定代表人")
private String representative;
/**
* 成立日期
*/
@ApiModelProperty("成立日期")
private LocalDateTime dateEstab;
/**
* 准入日期
*/
@ApiModelProperty("准入日期")
private LocalDateTime dateEntry;
/**
* 注册资本(万元)
*/
@ApiModelProperty("注册资本(万元)")
private String amtReg;
/**
* 注册地址
*/
@ApiModelProperty("注册地址")
private String addrReg;
/**
* 通讯地址
*/
@ApiModelProperty("通讯地址")
private String addrMail;
/**
* 客户分类(一类/二类)
*/
@ApiModelProperty("客户分类(一类/二类)")
private String classCode;
/**
* 客户类别(电厂/工业用户/城燃/贸易商)
*/
@ApiModelProperty("客户类别(电厂/工业用户/城燃/贸易商)")
private String typeCode;
/**
* 统计分类(内部/国电/华电/深能/其他)
*/
@ApiModelProperty("统计分类(内部/国电/华电/深能/其他)")
private String propCode;
/**
* 国有企业持股
*/
@ApiModelProperty("国有企业持股")
private String stateSign;
/**
* 国企持股比例
*/
@ApiModelProperty("国企持股比例")
private BigDecimal rateShare;
/**
* 持股第一大股东名称
*/
@ApiModelProperty("持股第一大股东名称")
private String shareName;
/**
* 集团持股比例
*/
@ApiModelProperty("集团持股比例")
private BigDecimal rateShareGn;
/**
* 是否校验预付款(Y-是N-否)
*/
@ApiModelProperty("是否校验预付款(Y-是N-否)")
private String prepaySign;
/**
* 有无线上(竞拍)(Y-有N-无)
*/
@ApiModelProperty("有无线上(竞拍)(Y-有N-无)")
private String onlineSign;
/**
* 自有终端(Y-是N-否)
*/
@ApiModelProperty("自有终端(Y-是N-否)")
private String tSign;
/**
* 组织架构编码
*/
@ApiModelProperty("组织架构编码")
private String orgCode;
/**
* 有效标志(不在黑名单)(Y-有效N-无效)
*/
@ApiModelProperty("有效标志(不在黑名单)(Y-有效N-无效)")
private String valid;
/**
* 状态(未提交/审批中/已审批/已驳回)
*/
@ApiModelProperty("状态(未提交/审批中/已审批/已驳回)")
private String approCode;
/**
* 备注
*/
@ApiModelProperty("备注")
private String note;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime modifyDate;
/**
* 租户id
*/
@ApiModelProperty("租户id")
private Long tenantId;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
private Long ruleUserId;
/**
* 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") @GetMapping("/getParentByCode")
@ApiOperation(value = "根据id 查询下级区域") @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 @RequestParam(required = false) String startPCode
) { ) {
return R.ok(countryRegionService.getRegionByParentId(code,excludeType,startPCode)); return R.ok(countryRegionService.getParentByCode(code,excludeType,startPCode));
} }

View File

@ -0,0 +1,127 @@
package com.xjrsoft.module.mdm.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.xjrsoft.common.model.result.R;
import com.xjrsoft.common.page.ConventPage;
import com.xjrsoft.common.page.PageOutput;
import com.xjrsoft.common.utils.VoToColumnUtil;
import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
import com.xjrsoft.module.mdm.dto.LngBPlaceLngUnloadPageDto;
import com.xjrsoft.module.mdm.dto.UpdateLngBPlaceLngUnloadDto;
import com.xjrsoft.module.mdm.entity.LngBPlaceLngUnload;
import com.xjrsoft.module.mdm.service.IPlaceLngUnloadService;
import com.xjrsoft.module.mdm.vo.LngBPlaceLngUnloadPageVo;
import com.xjrsoft.module.mdm.vo.LngBPlaceLngUnloadVo;
import com.xjrsoft.module.system.client.ICodeRuleClient;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
/**
* @title: 卸货地
* @Author 管理员
* @Date: 2025-11-18
* @Version 1.0
*/
@RestController
@RequestMapping("/mdm" + "/placeLngUnload")
@Api(value = "/mdm" + "/placeLngUnload",tags = "卸货地代码")
@AllArgsConstructor
public class PlaceLngUnloadController {
private final IPlaceLngUnloadService placeLngUnloadService;
private final DatalogService dataService;
private final ICodeRuleClient codeRuleClient;
private final String CODE = "placeLngUnloadCode";
@GetMapping(value = "/page")
@ApiOperation(value="LngBPlaceLngUnload列表(分页)")
@SaCheckPermission("placeLngUnload:list")
public R page(@Valid LngBPlaceLngUnloadPageDto dto){
LambdaQueryWrapper<LngBPlaceLngUnload> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper
.like(StrUtil.isNotBlank(dto.getFullName()),LngBPlaceLngUnload::getFullName,dto.getFullName())
.eq(StrUtil.isNotBlank(dto.getValid()),LngBPlaceLngUnload::getValid,dto.getValid())
.orderByAsc(LngBPlaceLngUnload::getSort, LngBPlaceLngUnload::getCode)
.select(LngBPlaceLngUnload.class,x -> VoToColumnUtil.fieldsToColumns(LngBPlaceLngUnloadPageVo.class).contains(x.getProperty()));
IPage<LngBPlaceLngUnload> page = placeLngUnloadService.page(ConventPage.getPage(dto), queryWrapper);
PageOutput<LngBPlaceLngUnloadPageVo> pageOutput = ConventPage.getPageOutput(page, LngBPlaceLngUnloadPageVo.class);
return R.ok(pageOutput);
}
@GetMapping(value = "/info")
@ApiOperation(value="根据id查询LngBPlaceLngUnload信息")
@SaCheckPermission("placeLngUnload:detail")
public R info(@RequestParam Long id){
LngBPlaceLngUnload lngBPlaceLngUnload = placeLngUnloadService.getById(id);
if (lngBPlaceLngUnload == null) {
return R.error("找不到此数据!");
}
return R.ok(BeanUtil.toBean(lngBPlaceLngUnload, LngBPlaceLngUnloadVo.class));
}
@GetMapping(value = "/datalog")
@ApiOperation(value="根据id查询LngBPlaceLngUnload数据详细日志")
@SaCheckPermission("placeLngUnload:datalog")
public R datalog(@RequestParam Long id){
List<DataChangeLogVo> logs = dataService.findLogsByEntityId(UpdateLngBPlaceLngUnloadDto.class,id);
return R.ok(logs);
}
@PostMapping
@ApiOperation(value = "新增LngBPlaceLngUnload")
@SaCheckPermission("placeLngUnload:add")
public R add(@Valid @RequestBody UpdateLngBPlaceLngUnloadDto dto){
dto.setCode(codeRuleClient.genEncode(CODE));
UpdateLngBPlaceLngUnloadDto res = dataService.insert(dto);
codeRuleClient.useEncode(CODE);
return R.ok(res.getId());
}
@PutMapping
@ApiOperation(value = "修改LngBPlaceLngUnload")
@SaCheckPermission("placeLngUnload:edit")
public R update(@Valid @RequestBody UpdateLngBPlaceLngUnloadDto dto){
return R.ok(dataService.updateById(dto));
}
@DeleteMapping
@ApiOperation(value = "删除")
@SaCheckPermission("placeLngUnload:delete")
public R delete(@Valid @RequestBody List<Long> ids){
return R.ok(dataService.deleteByIds(UpdateLngBPlaceLngUnloadDto.class, ids));
}
@PostMapping("/enable")
@ApiOperation(value = "启用LngBPlaceLngUnload")
@SaCheckPermission("placeLngUnload:enable")
public R enable(@Valid @RequestBody List<Long> ids){
return R.ok(dataService.enable(UpdateLngBPlaceLngUnloadDto.class,ids));
}
@PostMapping("/disable")
@ApiOperation(value = "禁用LngBPlaceLngUnload")
@SaCheckPermission("placeLngUnload:disable")
public R disable(@Valid @RequestBody List<Long> ids){
return R.ok(dataService.disable(UpdateLngBPlaceLngUnloadDto.class,ids));
}
}

View File

@ -0,0 +1,152 @@
package com.xjrsoft.module.mdm.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-18
* @Version 1.0
*/
@Data
@TableName("lng_b_place_lng_unload")
@ApiModel(value = "卸货地对象", description = "卸货地")
public class LngBPlaceLngUnload implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@ApiModelProperty("主键")
@TableId
private Long id;
/**
* 助记码(自动生成6位000001……)
*/
@ApiModelProperty("助记码(自动生成6位000001……)")
private String code;
/**
* 名称(不能重复)
*/
@ApiModelProperty("名称(不能重复)")
private String fullName;
/**
* 卸货区域
*/
@ApiModelProperty("卸货区域")
private String regionCode;
/**
* 详细地址
*/
@ApiModelProperty("详细地址")
private String addr;
/**
* 经度
*/
@ApiModelProperty("经度")
private String longitude;
/**
* 纬度
*/
@ApiModelProperty("纬度")
private String latitude;
/**
* 显示顺序
*/
@ApiModelProperty("显示顺序")
private Short sort;
/**
* 有效标志(Y-有效N-无效)
*/
@ApiModelProperty("有效标志(Y-有效N-无效)")
private String valid;
/**
* 备注
*/
@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;
/**
* 逻辑删除
*/
@ApiModelProperty("逻辑删除")
@TableField(fill = FieldFill.INSERT)
@TableLogic
private Integer deleteMark;
/**
* 租户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.mdm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.mdm.entity.LngBPlaceLngUnload;
import org.apache.ibatis.annotations.Mapper;
/**
* @title: mapper
* @Author 管理员
* @Date: 2025-11-18
* @Version 1.0
*/
@Mapper
public interface LngBPlaceLngUnloadMapper extends BaseMapper<LngBPlaceLngUnload> {
}

View File

@ -19,7 +19,7 @@ import com.xjrsoft.module.mdm.vo.LngBRegionVo;
public interface ICountryRegionService extends IService<LngBRegion> { 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); List<LngBRegionVo> child(Long pid,String excludeType, String keyword,String startPCode);

View File

@ -0,0 +1,19 @@
package com.xjrsoft.module.mdm.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github.yulichang.base.MPJBaseService;
import com.github.yulichang.extension.mapping.base.MPJDeepService;
import com.github.yulichang.extension.mapping.base.MPJRelationService;
import com.xjrsoft.module.mdm.entity.LngBPlaceLngUnload;
import lombok.Data;
import java.util.List;
/**
* @title: service
* @Author 管理员
* @Date: 2025-11-18
* @Version 1.0
*/
public interface IPlaceLngUnloadService extends IService<LngBPlaceLngUnload> {
}

View File

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

View File

@ -0,0 +1,25 @@
package com.xjrsoft.module.mdm.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.xjrsoft.module.mdm.entity.LngBPlaceLngUnload;
import com.xjrsoft.module.mdm.mapper.LngBPlaceLngUnloadMapper;
import com.xjrsoft.module.mdm.service.IPlaceLngUnloadService;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
/**
* @title: service
* @Author 管理员
* @Date: 2025-11-18
* @Version 1.0
*/
@Service
@AllArgsConstructor
public class PlaceLngUnloadServiceImpl extends ServiceImpl<LngBPlaceLngUnloadMapper, LngBPlaceLngUnload> implements IPlaceLngUnloadService {
}

View File

@ -0,0 +1,171 @@
package com.xjrsoft.module.sales.controller;
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.xjrsoft.common.model.result.R;
import com.xjrsoft.common.page.ConventPage;
import com.xjrsoft.common.page.PageOutput;
import com.xjrsoft.common.utils.VoToColumnUtil;
import com.xjrsoft.module.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.sales.vo.LngCustomerVo;
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.ApiOperation;
import lombok.AllArgsConstructor;
/**
* @title: 客户
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@RestController
@RequestMapping("/sales/customer")
@Api(value = "/sales" + "/customer",tags = "客户代码")
@AllArgsConstructor
public class CustomerController {
private final ICustomerService customerService;
private final DatalogService dataService;
private final ICodeRuleClient codeRuleClient;
private final String CUSTOMER_CODE = "customerCode";
@GetMapping(value = "/page")
@ApiOperation(value="LngCustomer列表(分页)")
@SaCheckPermission("customer:list")
public R page(@Valid LngCustomerPageDto dto){
LambdaQueryWrapper<LngCustomer> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper
.like(StrUtil.isNotBlank(dto.getCuCode()),LngCustomer::getCuCode,dto.getCuCode())
.like(StrUtil.isNotBlank(dto.getCuName()),LngCustomer::getCuName,dto.getCuName())
.like(StrUtil.isNotBlank(dto.getCuSname()),LngCustomer::getCuSname,dto.getCuSname())
.like(StrUtil.isNotBlank(dto.getCuMcode()),LngCustomer::getCuMcode,dto.getCuMcode())
.like(StrUtil.isNotBlank(dto.getClassCode()),LngCustomer::getClassCode,dto.getClassCode())
.like(StrUtil.isNotBlank(dto.getTypeCode()),LngCustomer::getTypeCode,dto.getTypeCode())
.like(StrUtil.isNotBlank(dto.getNatureCode()),LngCustomer::getNatureCode,dto.getNatureCode())
.like(StrUtil.isNotBlank(dto.getValid()),LngCustomer::getValid,dto.getValid())
.like(StrUtil.isNotBlank(dto.getApproCode()),LngCustomer::getApproCode,dto.getApproCode())
.orderByDesc(LngCustomer::getId)
.select(LngCustomer.class,x -> VoToColumnUtil.fieldsToColumns(LngCustomerPageVo.class).contains(x.getProperty()));
IPage<LngCustomer> page = customerService.page(ConventPage.getPage(dto), queryWrapper);
PageOutput<LngCustomerPageVo> pageOutput = ConventPage.getPageOutput(page, LngCustomerPageVo.class);
return R.ok(pageOutput);
}
@GetMapping(value = "/info")
@ApiOperation(value="根据id查询LngCustomer信息")
@SaCheckPermission("customer:detail")
public R info(@RequestParam Long id){
LngCustomer lngCustomer = customerService.getByIdDeep(id);
if (lngCustomer == null) {
return R.error("找不到此数据!");
}
return R.ok(BeanUtil.toBean(lngCustomer, LngCustomerVo.class));
}
@GetMapping(value = "/datalog")
@ApiOperation(value="根据id查询LngCustomer数据详细日志")
@SaCheckPermission("customer:datalog")
public R datalog(@RequestParam Long id){
List<DataChangeLogVo> logs = dataService.findLogsByEntityId(UpdateLngCustomerDto.class,id);
return R.ok(logs);
}
@PostMapping
@ApiOperation(value = "新增LngCustomer")
@SaCheckPermission("customer:add")
public R add(@Valid @RequestBody UpdateLngCustomerDto dto){
String code = codeRuleClient.genEncode(CUSTOMER_CODE);
dto.setCuCode("C"+code);
customerService.add(dto);
codeRuleClient.useEncode(CUSTOMER_CODE);
return R.ok();
/**
return R.ok(dataService.insert(dto,new DataOperationListener<UpdateLngCustomerDto>() {
@Override
public UpdateLngCustomerDto before(DataOperationContent<UpdateLngCustomerDto> content) {
String code = codeRuleClient.genEncode(CUSTOMER_CODE);
dto.setCuCode("C"+code);
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);
return content.getObj();
}
}));
**/
}
@PutMapping
@ApiOperation(value = "修改LngCustomer")
@SaCheckPermission("customer:edit")
public R update(@Valid @RequestBody UpdateLngCustomerDto dto){
// return R.ok(dataService.updateById(dto));
customerService.update(dto);
return R.ok();
}
@DeleteMapping
@ApiOperation(value = "删除")
@SaCheckPermission("customer:delete")
public R delete(@Valid @RequestBody List<Long> ids){
return R.ok(customerService.delete(ids));
}
@PostMapping("/enable")
@ApiOperation(value = "启用LngCustomer")
@SaCheckPermission("customer:enable")
public R enable(@Valid @RequestBody List<Long> ids){
return R.ok(dataService.enable(UpdateLngCustomerDto.class,ids));
}
@PostMapping("/disable")
@ApiOperation(value = "禁用LngCustomer")
@SaCheckPermission("customer:disable")
public R disable(@Valid @RequestBody List<Long> ids){
return R.ok(dataService.disable(UpdateLngCustomerDto.class,ids));
}
}

View File

@ -0,0 +1,315 @@
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.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.github.yulichang.annotation.EntityMapping;
import com.pictc.annotations.datalog.JoinCaseType;
import com.pictc.annotations.datalog.JoinType;
import com.pictc.annotations.datalog.LogJoin;
import com.pictc.annotations.datalog.LogJoinColumn;
import com.pictc.annotations.datalog.ValueDirectionType;
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")
@ApiModel(value = "客户对象", description = "客户")
public class LngCustomer implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@ApiModelProperty("主键")
@TableId
private Long id;
/**
* 客户编码(不能重复以C开头)
*/
@ApiModelProperty("客户编码(不能重复以C开头)")
private String cuCode;
/**
* 集团编码
*/
@ApiModelProperty("集团编码")
private String cuMcode;
/**
* 客户名称(不能与名称、简称重复)
*/
@ApiModelProperty("客户名称(不能与名称、简称重复)")
private String cuName;
/**
* 简称(不能与名称、简称重复)
*/
@ApiModelProperty("简称(不能与名称、简称重复)")
private String cuSname;
/**
* 国际/国内(I-国际D-国内)
*/
@ApiModelProperty("国际/国内(I-国际D-国内)")
private String dI;
/**
* 企业性质(国有企业/非国有企业)
*/
@ApiModelProperty("企业性质(国有企业/非国有企业)")
private String natureCode;
/**
* 母公司名称
*/
@ApiModelProperty("母公司名称")
private String parentName;
/**
* 统一社会信用代码(非空时不可重复)
*/
@ApiModelProperty("统一社会信用代码(非空时不可重复)")
private String creditNo;
/**
* 纳税人识别号(非空时不可重复)
*/
@ApiModelProperty("纳税人识别号(非空时不可重复)")
private String tiNo;
/**
* 法定代表人
*/
@ApiModelProperty("法定代表人")
private String representative;
/**
* 成立日期
*/
@ApiModelProperty("成立日期")
private LocalDateTime dateEstab;
/**
* 准入日期
*/
@ApiModelProperty("准入日期")
private LocalDateTime dateEntry;
/**
* 注册资本(万元)
*/
@ApiModelProperty("注册资本(万元)")
private String amtReg;
/**
* 注册地址
*/
@ApiModelProperty("注册地址")
private String addrReg;
/**
* 通讯地址
*/
@ApiModelProperty("通讯地址")
private String addrMail;
/**
* 客户分类(一类/二类)
*/
@ApiModelProperty("客户分类(一类/二类)")
private String classCode;
/**
* 客户类别(电厂/工业用户/城燃/贸易商)
*/
@ApiModelProperty("客户类别(电厂/工业用户/城燃/贸易商)")
private String typeCode;
/**
* 统计分类(内部/国电/华电/深能/其他)
*/
@ApiModelProperty("统计分类(内部/国电/华电/深能/其他)")
private String propCode;
/**
* 国有企业持股
*/
@ApiModelProperty("国有企业持股")
private String stateSign;
/**
* 国企持股比例
*/
@ApiModelProperty("国企持股比例")
private BigDecimal rateShare;
/**
* 持股第一大股东名称
*/
@ApiModelProperty("持股第一大股东名称")
private String shareName;
/**
* 集团持股比例
*/
@ApiModelProperty("集团持股比例")
private BigDecimal rateShareGn;
/**
* 是否校验预付款(Y-是N-否)
*/
@ApiModelProperty("是否校验预付款(Y-是N-否)")
private String prepaySign;
/**
* 有无线上(竞拍)(Y-有N-无)
*/
@ApiModelProperty("有无线上(竞拍)(Y-有N-无)")
private String onlineSign;
/**
* 自有终端(Y-是N-否)
*/
@ApiModelProperty("自有终端(Y-是N-否)")
private String tSign;
/**
* 组织架构编码
*/
@ApiModelProperty("组织架构编码")
private String orgCode;
/**
* 有效标志(不在黑名单)(Y-有效N-无效)
*/
@ApiModelProperty("有效标志(不在黑名单)(Y-有效N-无效)")
private String valid;
/**
* 状态(未提交/审批中/已审批/已驳回)
*/
@ApiModelProperty("状态(未提交/审批中/已审批/已驳回)")
private String approCode;
/**
* 备注
*/
@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;
/**
* lngCustomerAttrPower
*/
@ApiModelProperty("lngCustomerAttrPower子表")
@TableField(exist = false)
@EntityMapping(thisField = "cuCode", joinField = "cuCode")
@LogJoin(name = "客户业务信息",
columns = {
@LogJoinColumn(field = "cuCode",relatedField = "cuCode", valueDirection = ValueDirectionType.LEFT)
}, caseType = JoinCaseType.NONE, target = LngCustomerAttrPower.class, type = JoinType.MANY)
private List<LngCustomerAttrPower> lngCustomerAttrPowerList;
/**
* lngCustomerBank
*/
@ApiModelProperty("lngCustomerBank子表")
@TableField(exist = false)
@EntityMapping(thisField = "cuCode", joinField = "cuCode")
@LogJoin(name = "客户银行信息",
columns = {
@LogJoinColumn(field = "cuCode",relatedField = "cuCode", valueDirection = ValueDirectionType.LEFT)
}, caseType = JoinCaseType.NONE, target = LngCustomerBank.class, type = JoinType.MANY)
private List<LngCustomerBank> lngCustomerBankList;
/**
* lngCustomerDoc
*/
@ApiModelProperty("lngCustomerDoc子表")
@TableField(exist = false)
@EntityMapping(thisField = "cuCode", joinField = "cuCode")
@LogJoin(name = "客户证书信息",
columns = {
@LogJoinColumn(field = "cuCode",relatedField = "cuCode", valueDirection = ValueDirectionType.LEFT)
}, caseType = JoinCaseType.NONE, target = LngCustomerDoc.class, type = JoinType.MANY)
private List<LngCustomerDoc> lngCustomerDocList;
/**
* lngCustomerContact
*/
@ApiModelProperty("lngCustomerContact子表")
@TableField(exist = false)
@EntityMapping(thisField = "cuCode", joinField = "cuCode")
@LogJoin(name = "客户联系人信息",
columns = {
@LogJoinColumn(field = "cuCode",relatedField = "cuCode", valueDirection = ValueDirectionType.LEFT)
}, caseType = JoinCaseType.NONE, target = LngCustomerContact.class, type = JoinType.MANY)
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>,BaseMapper<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>,BaseMapper<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>,BaseMapper<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>,BaseMapper<LngCustomerDoc> {
}

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

View File

@ -0,0 +1,45 @@
package com.xjrsoft.module.sales.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github.yulichang.base.MPJBaseService;
import com.github.yulichang.extension.mapping.base.MPJDeepService;
import com.github.yulichang.extension.mapping.base.MPJRelationService;
import com.xjrsoft.module.sales.dto.UpdateLngCustomerDto;
import com.xjrsoft.module.sales.entity.LngCustomer;
import lombok.Data;
import java.util.List;
/**
* @title: service
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
public interface ICustomerService extends MPJBaseService<LngCustomer>, MPJDeepService<LngCustomer>, MPJRelationService<LngCustomer> {
/**
* 新增
*
* @param lngCustomer
* @return
*/
Boolean add(UpdateLngCustomerDto updateLngCustomerDto);
/**
* 更新
*
* @param lngCustomer
* @return
*/
Boolean update(UpdateLngCustomerDto updateLngCustomerDto);
/**
* 删除
*
* @param ids
* @return
*/
Boolean delete(List<Long> ids);
}

View File

@ -0,0 +1,228 @@
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.dto.UpdateLngCustomerAttrPowerDto;
import com.xjrsoft.module.sales.dto.UpdateLngCustomerBankDto;
import com.xjrsoft.module.sales.dto.UpdateLngCustomerContactDto;
import com.xjrsoft.module.sales.dto.UpdateLngCustomerDocDto;
import com.xjrsoft.module.sales.dto.UpdateLngCustomerDto;
import com.xjrsoft.module.sales.entity.LngCustomer;
import com.xjrsoft.module.sales.mapper.LngCustomerMapper;
import com.xjrsoft.module.sales.service.ICustomerService;
import cn.hutool.core.bean.BeanUtil;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
/**
* @title: service
* @Author 管理员
* @Date: 2025-11-19
* @Version 1.0
*/
@Service
@AllArgsConstructor
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(UpdateLngCustomerDto updateLngCustomerDto) {
LngCustomer lngCustomer = new LngCustomer();
BeanUtil.copyProperties(updateLngCustomerDto, lngCustomer);
customerLngCustomerMapper.insert(lngCustomer);
for (UpdateLngCustomerAttrPowerDto updateLngCustomerAttrPowerDto : updateLngCustomerDto.getLngCustomerAttrPowerList()) {
LngCustomerAttrPower lngCustomerAttrPower = new LngCustomerAttrPower();
BeanUtil.copyProperties(updateLngCustomerAttrPowerDto, lngCustomerAttrPower);
lngCustomerAttrPower.setCuCode(lngCustomer.getCuCode());
customerLngCustomerAttrPowerMapper.insert(lngCustomerAttrPower);
}
for (UpdateLngCustomerBankDto updateLngCustomerBankDto : updateLngCustomerDto.getLngCustomerBankList()) {
LngCustomerBank lngCustomerBank = new LngCustomerBank();
BeanUtil.copyProperties(updateLngCustomerBankDto, lngCustomerBank);
lngCustomerBank.setCuCode(lngCustomer.getCuCode());
customerLngCustomerBankMapper.insert(lngCustomerBank);
}
for (UpdateLngCustomerDocDto updateLngCustomerDocDto : updateLngCustomerDto.getLngCustomerDocList()) {
LngCustomerDoc lngCustomerDoc = new LngCustomerDoc();
BeanUtil.copyProperties(updateLngCustomerDocDto, lngCustomerDoc);
lngCustomerDoc.setCuCode(lngCustomer.getCuCode());
customerLngCustomerDocMapper.insert(lngCustomerDoc);
}
for (UpdateLngCustomerContactDto updateLngCustomerContactDto : updateLngCustomerDto.getLngCustomerContactList()) {
LngCustomerContact lngCustomerContact = new LngCustomerContact();
BeanUtil.copyProperties(updateLngCustomerContactDto, lngCustomerContact);
lngCustomerContact.setCuCode(lngCustomer.getCuCode());
customerLngCustomerContactMapper.insert(lngCustomerContact);
}
return true;
}
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean update(UpdateLngCustomerDto updateLngCustomerDto) {
LngCustomer lngCustomer = new LngCustomer();
BeanUtil.copyProperties(updateLngCustomerDto, 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 = updateLngCustomerDto.getLngCustomerAttrPowerList().stream().map(UpdateLngCustomerAttrPowerDto::getId).filter(Objects::nonNull).collect(Collectors.toList());
//找到需要删除的id
List<Long> lngCustomerAttrPowerRemoveIds = lngCustomerAttrPowerIds.stream().filter(item -> !lngCustomerAttrPowerOldIds.contains(item)).collect(Collectors.toList());
for (UpdateLngCustomerAttrPowerDto lngCustomerAttrPowerDto : updateLngCustomerDto.getLngCustomerAttrPowerList()) {
LngCustomerAttrPower lngCustomerAttrPower = new LngCustomerAttrPower();
BeanUtil.copyProperties(lngCustomerAttrPowerDto, lngCustomerAttrPower);
//如果不等于空则修改
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 = updateLngCustomerDto.getLngCustomerBankList().stream().map(UpdateLngCustomerBankDto::getId).filter(Objects::nonNull).collect(Collectors.toList());
//找到需要删除的id
List<Long> lngCustomerBankRemoveIds = lngCustomerBankIds.stream().filter(item -> !lngCustomerBankOldIds.contains(item)).collect(Collectors.toList());
for (UpdateLngCustomerBankDto lngCustomerBankDto : updateLngCustomerDto.getLngCustomerBankList()) {
LngCustomerBank lngCustomerBank = new LngCustomerBank();
BeanUtil.copyProperties(lngCustomerBankDto, lngCustomerBank);
//如果不等于空则修改
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 = updateLngCustomerDto.getLngCustomerDocList().stream().map(UpdateLngCustomerDocDto::getId).filter(Objects::nonNull).collect(Collectors.toList());
//找到需要删除的id
List<Long> lngCustomerDocRemoveIds = lngCustomerDocIds.stream().filter(item -> !lngCustomerDocOldIds.contains(item)).collect(Collectors.toList());
for (UpdateLngCustomerDocDto lngCustomerDocDto : updateLngCustomerDto.getLngCustomerDocList()) {
LngCustomerDoc lngCustomerDoc = new LngCustomerDoc();
BeanUtil.copyProperties(lngCustomerDocDto, lngCustomerDoc);
//如果不等于空则修改
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 = updateLngCustomerDto.getLngCustomerContactList().stream().map(UpdateLngCustomerContactDto::getId).filter(Objects::nonNull).collect(Collectors.toList());
//找到需要删除的id
List<Long> lngCustomerContactRemoveIds = lngCustomerContactIds.stream().filter(item -> !lngCustomerContactOldIds.contains(item)).collect(Collectors.toList());
for (UpdateLngCustomerContactDto lngCustomerContactDto : updateLngCustomerDto.getLngCustomerContactList()) {
LngCustomerContact lngCustomerContact = new LngCustomerContact();
BeanUtil.copyProperties(lngCustomerContactDto, lngCustomerContact);
//如果不等于空则修改
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;
}
}