From f6e4d1cf756a2a9db441d4d9510215f863679a82 Mon Sep 17 00:00:00 2001
From: 李白 <7387820+wjli_13439841639@user.noreply.gitee.com>
Date: 星期四, 07 五月 2026 09:29:24 +0800
Subject: [PATCH] 客商、销售员、产品、排产计划基础对象数据

---
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/SalesMan.java         |   37 +++++++
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/product.java          |   43 ++++++++
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ProductionPlan.java   |  117 +++++++++++++++++++++++
 platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/BusinessCustomer.java |   96 +++++++++++++++++++
 4 files changed, 293 insertions(+), 0 deletions(-)

diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/BusinessCustomer.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/BusinessCustomer.java
new file mode 100644
index 0000000..cd71ea5
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/BusinessCustomer.java
@@ -0,0 +1,96 @@
+package com.by4cloud.platformx.business.entity;
+
+import com.by4cloud.platformx.common.data.mybatis.BaseModel;
+import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import lombok.Data;
+import org.hibernate.annotations.Table;
+
+/**
+ * @author wjli
+ * @description
+ * @date 2026/4/29 10:51
+ **/
+@Data
+@Entity
+@Table(appliesTo = "business_customer", comment = "瀹㈠晢淇℃伅")
+public class BusinessCustomer extends BaseModel<BusinessCustomer> {
+
+    @Schema(description = "'缁熶竴绀句細淇$敤浠g爜'")
+    @Column(columnDefinition = "VARCHAR(30) comment '缁熶竴绀句細淇$敤浠g爜'")
+    private String creditCode;
+
+    @Schema(description = "浼佷笟鍚嶇О")
+    @Column(columnDefinition = "VARCHAR(100) comment '浼佷笟鍚嶇О'")
+    private String companyName;
+
+    @Schema(description = "鍏徃绫诲瀷")
+    @Column(columnDefinition = "VARCHAR(50) comment '鍏徃绫诲瀷'")
+    private String companyType;
+
+    @Schema(description = "娉曞畾浠h〃浜�")
+    @Column(columnDefinition = "VARCHAR(20) comment '娉曞畾浠h〃浜�'")
+    private String legalPerson;
+
+    @Schema(description = "娉ㄥ唽璧勬湰")
+    @Column(columnDefinition = "VARCHAR(30) comment '娉ㄥ唽璧勬湰'")
+    private String registeredCapital;
+
+    @Schema(description = "鎴愮珛鏃ユ湡")
+    @Column(columnDefinition = "VARCHAR(20) comment '鎴愮珛鏃ユ湡'")
+    private String establishDate;
+
+    @Schema(description = "娉ㄥ唽鍦板潃")
+    @Column(columnDefinition = "VARCHAR(200) comment '娉ㄥ唽鍦板潃'")
+    private String address;
+
+    @Schema(description = "缁忚惀鑼冨洿")
+    @Column(columnDefinition = "TEXT comment '缁忚惀鑼冨洿'")
+    private String businessScope;
+
+    @Schema(description = "鐧昏鏈哄叧")
+    @Column(columnDefinition = "VARCHAR(50) comment '鐧昏鏈哄叧'")
+    private String registerOrg;
+
+    @Schema(description = "绛惧彂鏃ユ湡")
+    @Column(columnDefinition = "VARCHAR(20) comment '绛惧彂鏃ユ湡'")
+    private String issueDate;
+
+    @Schema(description = "鐘舵��")
+    @Column(columnDefinition = "VARCHAR(20) default '姝e父' comment '鐘舵��'")
+    private String status;
+
+    @Schema(description = "琛屼笟Id")
+    @Column(columnDefinition = "VARCHAR(50) comment '琛屼笟'")
+    private String industryId;
+
+    @Schema(description = "琛屼笟")
+    @Column(columnDefinition = "VARCHAR(50) comment '琛屼笟'")
+    private String industry;
+
+    @Schema(description = "鑱旂郴鐢佃瘽")
+    @Column(columnDefinition = "VARCHAR(20) comment '鑱旂郴鐢佃瘽'")
+    private String contactPhone;
+
+    @Schema(description = "閭")
+    @Column(columnDefinition = "VARCHAR(50) comment '閭'")
+    private String email;
+
+    @Schema(description = "鐪�")
+    @Column(columnDefinition = "VARCHAR(50) comment '鐪�'")
+    private String province;
+
+    @Schema(description = "甯�")
+    @Column(columnDefinition = "VARCHAR(50) comment '甯�'")
+    private String city;
+
+    @Schema(description = "鍖�")
+    @Column(columnDefinition = "VARCHAR(50) comment '鍖�'")
+    private String district;
+
+    @Schema(description = "鎵�灞炲尯鍩烮d")
+    @Column(columnDefinition = "bigint comment '鎵�灞炲尯鍩烮d'")
+    private Long areaId;
+
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ProductionPlan.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ProductionPlan.java
new file mode 100644
index 0000000..4259cf4
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ProductionPlan.java
@@ -0,0 +1,117 @@
+package com.by4cloud.platformx.business.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.by4cloud.platformx.common.data.mybatis.BaseModel;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import jakarta.persistence.Transient;
+import lombok.Data;
+import org.hibernate.annotations.Table;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.List;
+
+/**
+ * @author wjli
+ * @description
+ * @date 2026/4/29 10:51
+ **/
+@Data
+@Entity
+@Table(appliesTo = "production_plan", comment = "鎺掍骇璁″垝")
+public class ProductionPlan  extends BaseModel<BusinessCustomer> {
+
+    @Schema(description = "鎵�灞炲悎鍚岀紪鍙�")
+    @Column(columnDefinition = "VARCHAR(64) comment '鍚堝悓缂栧彿'")
+    private String contractNo;
+
+    @Schema(description = "鎵�灞炲悎鍚屽悕绉�")
+    @Column(columnDefinition = "VARCHAR(200) comment '鍚堝悓鍚嶇О'")
+    private String contractName;
+
+    @Schema(description = "鎺掍骇璁″垝缂栧彿")
+    @Column(columnDefinition = "VARCHAR(64) comment '鎺掍骇璁″垝缂栧彿'")
+    private String productionPlanNo;
+
+    @Schema(description = "鎺掍骇璁″垝鍚嶇О")
+    @Column(columnDefinition = "VARCHAR(200) comment '鎺掍骇璁″垝鍚嶇О'")
+    private String productionPlanName;
+
+    @Schema(description = "鐢叉柟id")
+    @Column(columnDefinition = "bigint comment '鐢叉柟id'")
+    private Long partyAId;
+
+    @Schema(description = "鐢叉柟鍚嶇О")
+    @Column(columnDefinition = "VARCHAR(100) comment '鐢叉柟鍚嶇О'")
+    private String partyA;
+
+    @Schema(description = "涔欐柟id")
+    @Column(columnDefinition = "bigint comment '涔欐柟id'")
+    private Long partyBId;
+
+    @Schema(description = "涔欐柟鍚嶇О")
+    @Column(columnDefinition = "VARCHAR(100) comment '涔欐柟鍚嶇О'")
+    private String partyB;
+
+    @Schema(description = "閲戦")
+    @Column(columnDefinition = "double comment '閲戦'")
+    private Double amount;
+
+    @Schema(description = "甯佺锛圕NY/USD绛夛級")
+    @Column(columnDefinition = "VARCHAR(10) default 'CNY' comment '甯佺'")
+    private String currency;
+
+    @Schema(description = "绫诲瀷锛�0-鐢熸垚寮� 1-澶囨寮忥級")
+    @Column(columnDefinition = "tinyint(2) default 0 comment '绫诲瀷'")
+    private Integer contractType;
+
+    @Schema(description = "渚涘簲灞炴�� 0-鎴愬搧 1-澶囦欢 2-澶т慨 3-鍏朵粬")
+    @Column(columnDefinition = "tinyint(2) default 0 comment '渚涘簲灞炴�� 0-鎴愬搧 1-澶囦欢 2-澶т慨 3-鍏朵粬'")
+    private Integer supplyAttribute;
+
+    @Schema(description = "璁″垝鐘舵�侊紙0-鑽夌 1-宸茬敓鏁� 2-宸茬粓姝� 3-宸茶繃鏈燂級")
+    @Column(columnDefinition = "tinyint(2) default 0 comment '璁″垝鐘舵��'")
+    private Integer status;
+
+    @Schema(description = "鏈嶅姟灞炴�э紙0-浜у搧閿�鍞� 1-鏃犲舰鏈嶅姟锛�")
+    @Column(columnDefinition = "tinyint(2) default 0 comment '鏈嶅姟灞炴��'")
+    private Integer attribute;
+
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
+    @Schema(description = "绛剧讲鏃ユ湡")
+    @Column(columnDefinition = "VARCHAR(64) comment '绛剧讲鏃ユ湡'")
+    private String signDate;
+
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
+    @Schema(description = "鐢熸晥鏃ユ湡")
+    @Column(columnDefinition = "VARCHAR(64) comment '鐢熸晥鏃ユ湡'")
+    private String effectiveDate;
+
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
+    @Schema(description = "鍒版湡鏃ユ湡")
+    @Column(columnDefinition = "VARCHAR(64) comment '鍒版湡鏃ユ湡'")
+    private String expirationDate;
+
+    @Schema(description = "澶囨敞")
+    @Column(columnDefinition = "TEXT comment '澶囨敞'")
+    private String remark;
+
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
+    @Schema(description = "瀹℃壒鏃堕棿")
+    @Column(columnDefinition = "datetime comment '瀹℃壒鏃堕棿'")
+    private String approveTime;
+
+    /**
+     * 鏍囩殑鐗�
+     */
+    @Transient
+    @TableField(exist = false)
+    private List<ContractSubjectMatter> contractSubjectMatterList;
+
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/SalesMan.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/SalesMan.java
new file mode 100644
index 0000000..140e423
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/SalesMan.java
@@ -0,0 +1,37 @@
+package com.by4cloud.platformx.business.entity;
+
+import com.by4cloud.platformx.common.data.mybatis.BaseModel;
+import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import lombok.Data;
+import org.hibernate.annotations.Table;
+
+/**
+ * @author wjli
+ * @description
+ * @date 2026/4/29 10:51
+ **/
+@Data
+@Entity
+@Table(appliesTo = "sales_man", comment = "閿�鍞汉鍛�")
+public class SalesMan extends BaseModel<SalesMan> {
+
+    @Schema(description = "鎵�灞炲鍟咺d")
+    @Column(columnDefinition = "bigint comment '鎵�灞炲鍟咺d'")
+    private Long customerId;
+
+    @Schema(description = "鍛樺伐缂栧彿")
+    @Column(columnDefinition = "VARCHAR(50) comment '鍛樺伐缂栧彿'")
+    private String salesNo;
+
+    @Schema(description = "閿�鍞憳濮撳悕")
+    @Column(columnDefinition = "VARCHAR(50) comment '閿�鍞憳濮撳悕'")
+    private String salesName;
+
+    @Schema(description = "鑱旂郴鐢佃瘽")
+    @Column(columnDefinition = "VARCHAR(20) comment '鑱旂郴鐢佃瘽'")
+    private String phone;
+
+
+}
diff --git a/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/product.java b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/product.java
new file mode 100644
index 0000000..23a3d31
--- /dev/null
+++ b/platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/product.java
@@ -0,0 +1,43 @@
+package com.by4cloud.platformx.business.entity;
+
+import com.by4cloud.platformx.common.data.mybatis.BaseModel;
+import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.persistence.Column;
+import jakarta.persistence.Entity;
+import lombok.Data;
+import org.hibernate.annotations.Table;
+
+/**
+ * @author wjli
+ * @description
+ * @date 2026/4/29 10:51
+ **/
+@Data
+@Entity
+@Table(appliesTo = "product", comment = "浜у搧淇℃伅")
+public class product  extends BaseModel<product> {
+    //浜у搧鍚嶇О銆佷骇鍝佺紪鐮侊紙涓绘暟鎹�丒RP锛夈�佷骇鍝佷环鏍笺�佺◣鐐广�佹墍灞炰笂绾�
+    @Schema(description = "浜у搧鍚嶇О")
+    @Column(columnDefinition = "VARCHAR(50) comment '浜у搧鍚嶇О'")
+    private String productName;
+
+    @Schema(description = "浜у搧闆嗗洟缂栫爜")
+    @Column(columnDefinition = "VARCHAR(50) comment '浜у搧闆嗗洟缂栫爜'")
+    private String mainCode;
+
+    @Schema(description = "浜у搧Erp缂栫爜")
+    @Column(columnDefinition = "VARCHAR(50) comment '浜у搧Erp缂栫爜'")
+    private String erpCode;
+
+    @Schema(description = "浜у搧浠锋牸")
+    @Column(columnDefinition = "double comment '浜у搧浠锋牸'")
+    private Double price;
+
+    @Schema(description = "绋庣巼锛堢櫨鍒嗘瘮锛屽13琛ㄧず13%锛�")
+    @Column(columnDefinition = "double default 0.00 comment '绋庣巼'")
+    private Double taxRate;
+
+    @Schema(description = "鍒嗙被ID")
+    @Column(columnDefinition = "bigint comment '鍒嗙被ID'")
+    private Long categoryId;
+}

--
Gitblit v1.9.1