|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+package tables
|
|
|
2
|
+
|
|
|
3
|
+import (
|
|
|
4
|
+ "time"
|
|
|
5
|
+
|
|
|
6
|
+ "git.x2erp.com/qdy/go-db/sqldef"
|
|
|
7
|
+)
|
|
|
8
|
+
|
|
|
9
|
+func init() {
|
|
|
10
|
+ sqldef.AddRegistration(func(r *sqldef.Registry) {
|
|
|
11
|
+ tb := sqldef.NewTable("bill_presale_settlement", "预售核销单据表").
|
|
|
12
|
+ ID("id", 50).NotNull().Comment("主键ID").End().
|
|
|
13
|
+ String("tenant_id", 50).NotNull().Comment("租户ID").End().
|
|
|
14
|
+ String("bill_id", 50).NotNull().Comment("单据编号").End().
|
|
|
15
|
+ String("bill_type", 20).NotNull().Comment("单据类型").End().
|
|
|
16
|
+ String("bill_status", 20).NotNull().Comment("单据状态 (DRAFT草稿/SUBMITTED已提交/APPROVED已审核/COMPLETED已完成/CANCELLED已取消)").End().
|
|
|
17
|
+ String("pre_sale_bill_id", 50).NotNull().Comment("原预售单据编号").End().
|
|
|
18
|
+ String("store_id", 50).NotNull().Comment("店铺ID").End().
|
|
|
19
|
+ String("company_id", 50).Comment("所属公司ID").End().
|
|
|
20
|
+ String("business_type_id", 50).Comment("业务类型ID").End().
|
|
|
21
|
+ String("business_type_name", 100).Comment("业务类型名称").End().
|
|
|
22
|
+ String("price_type_id", 50).Comment("价格类型ID").End().
|
|
|
23
|
+ String("price_type_name", 100).Comment("价格类型名称").End().
|
|
|
24
|
+ String("finance_type_id", 50).Comment("财务类型ID").End().
|
|
|
25
|
+ String("finance_type_name", 100).Comment("财务类型名称").End().
|
|
|
26
|
+ Int("sure_status").NotNull().Default("0").Comment("登账标识 (0:草稿, 1:已登账)").End().
|
|
|
27
|
+ Date("sure_date").Comment("登账日期").End().
|
|
|
28
|
+ String("verifier", 32).Comment("核销人").End().
|
|
|
29
|
+ String("product_id", 50).NotNull().Comment("商品ID").End().
|
|
|
30
|
+ String("product_code", 50).NotNull().Comment("商品编码").End().
|
|
|
31
|
+ String("product_name", 200).NotNull().Comment("商品名称").End().
|
|
|
32
|
+ String("size_code", 10).Comment("尺码代码").End().
|
|
|
33
|
+ String("color_code", 10).Comment("颜色代码").End().
|
|
|
34
|
+ Decimal("settlement_qty", 12, 4).NotNull().Default("0").Comment("结算数量").End().
|
|
|
35
|
+ Decimal("discount_rate", 5, 4).NotNull().Default("0").Comment("折扣率").End().
|
|
|
36
|
+ Decimal("settlement_price", 12, 2).NotNull().Default("0").Comment("结算单价").End().
|
|
|
37
|
+ Decimal("settlement_amount", 12, 2).NotNull().Default("0").Comment("结算金额").End().
|
|
|
38
|
+ String("customer_id", 50).Comment("客户ID").End().
|
|
|
39
|
+ String("customer_name", 200).Comment("客户姓名").End().
|
|
|
40
|
+ String("customer_phone", 20).Comment("客户电话").End().
|
|
|
41
|
+ String("remark", 500).Comment("备注").End().
|
|
|
42
|
+ String("creator", 32).NotNull().Comment("创建人").End().
|
|
|
43
|
+ DateTime("created_at").NotNull().Default("CURRENT_TIMESTAMP").Comment("创建时间").End().
|
|
|
44
|
+ DateTime("updated_at").NotNull().Default("CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP").Comment("更新时间").End()
|
|
|
45
|
+
|
|
|
46
|
+ tb.AddUniqueIndex("idx_bill_id_product", "bill_id", "product_id", "size_code", "color_code")
|
|
|
47
|
+ tb.AddIndex("idx_tenant_id", "tenant_id")
|
|
|
48
|
+ tb.AddIndex("idx_bill_type", "bill_type")
|
|
|
49
|
+ tb.AddIndex("idx_bill_status", "bill_status")
|
|
|
50
|
+ tb.AddIndex("idx_pre_sale_bill_id", "pre_sale_bill_id")
|
|
|
51
|
+ tb.AddIndex("idx_store_id", "store_id")
|
|
|
52
|
+ tb.AddIndex("idx_customer_id", "customer_id")
|
|
|
53
|
+ tb.AddIndex("idx_product_id", "product_id")
|
|
|
54
|
+ tb.AddIndex("idx_company_id", "company_id")
|
|
|
55
|
+ tb.AddIndex("idx_sure_status", "sure_status")
|
|
|
56
|
+
|
|
|
57
|
+ r.RegisterTable(tb.Build())
|
|
|
58
|
+ })
|
|
|
59
|
+}
|
|
|
60
|
+
|
|
|
61
|
+type BillPresaleSettlement struct {
|
|
|
62
|
+ ID string `gorm:"column:id;type:varchar(50);not null;primaryKey;comment:主键ID"`
|
|
|
63
|
+ TenantID string `gorm:"column:tenant_id;type:varchar(50);not null;comment:租户ID"`
|
|
|
64
|
+ BillID string `gorm:"column:bill_id;type:varchar(50);not null;comment:单据编号"`
|
|
|
65
|
+ BillType string `gorm:"column:bill_type;type:varchar(20);not null;comment:单据类型"`
|
|
|
66
|
+ BillStatus string `gorm:"column:bill_status;type:varchar(20);not null;comment:单据状态 (DRAFT草稿/SUBMITTED已提交/APPROVED已审核/COMPLETED已完成/CANCELLED已取消)"`
|
|
|
67
|
+ PreSaleBillID string `gorm:"column:pre_sale_bill_id;type:varchar(50);not null;comment:原预售单据编号"`
|
|
|
68
|
+ StoreID string `gorm:"column:store_id;type:varchar(50);not null;comment:店铺ID"`
|
|
|
69
|
+ CompanyID string `gorm:"column:company_id;type:varchar(50);comment:所属公司ID"`
|
|
|
70
|
+ BusinessTypeID string `gorm:"column:business_type_id;type:varchar(50);comment:业务类型ID"`
|
|
|
71
|
+ BusinessTypeName string `gorm:"column:business_type_name;type:varchar(100);comment:业务类型名称"`
|
|
|
72
|
+ PriceTypeID string `gorm:"column:price_type_id;type:varchar(50);comment:价格类型ID"`
|
|
|
73
|
+ PriceTypeName string `gorm:"column:price_type_name;type:varchar(100);comment:价格类型名称"`
|
|
|
74
|
+ FinanceTypeID string `gorm:"column:finance_type_id;type:varchar(50);comment:财务类型ID"`
|
|
|
75
|
+ FinanceTypeName string `gorm:"column:finance_type_name;type:varchar(100);comment:财务类型名称"`
|
|
|
76
|
+ SureStatus int32 `gorm:"column:sure_status;type:int;not null;default:0;comment:登账标识 (0:草稿, 1:已登账)"`
|
|
|
77
|
+ SureDate *time.Time `gorm:"column:sure_date;comment:登账日期"`
|
|
|
78
|
+ Verifier string `gorm:"column:verifier;type:varchar(32);comment:核销人"`
|
|
|
79
|
+ ProductID string `gorm:"column:product_id;type:varchar(50);not null;comment:商品ID"`
|
|
|
80
|
+ ProductCode string `gorm:"column:product_code;type:varchar(50);not null;comment:商品编码"`
|
|
|
81
|
+ ProductName string `gorm:"column:product_name;type:varchar(200);not null;comment:商品名称"`
|
|
|
82
|
+ SizeCode string `gorm:"column:size_code;type:varchar(10);comment:尺码代码"`
|
|
|
83
|
+ ColorCode string `gorm:"column:color_code;type:varchar(10);comment:颜色代码"`
|
|
|
84
|
+ SettlementQty float64 `gorm:"column:settlement_qty;type:decimal(12,4);not null;default:0;comment:结算数量"`
|
|
|
85
|
+ DiscountRate float64 `gorm:"column:discount_rate;type:decimal(5,4);not null;default:0;comment:折扣率"`
|
|
|
86
|
+ SettlementPrice float64 `gorm:"column:settlement_price;type:decimal(12,2);not null;default:0;comment:结算单价"`
|
|
|
87
|
+ SettlementAmount float64 `gorm:"column:settlement_amount;type:decimal(12,2);not null;default:0;comment:结算金额"`
|
|
|
88
|
+ CustomerID string `gorm:"column:customer_id;type:varchar(50);comment:客户ID"`
|
|
|
89
|
+ CustomerName string `gorm:"column:customer_name;type:varchar(200);comment:客户姓名"`
|
|
|
90
|
+ CustomerPhone string `gorm:"column:customer_phone;type:varchar(20);comment:客户电话"`
|
|
|
91
|
+ Remark string `gorm:"column:remark;type:varchar(500);comment:备注"`
|
|
|
92
|
+ Creator string `gorm:"column:creator;type:varchar(32);not null;comment:创建人"`
|
|
|
93
|
+ CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP;comment:创建时间"`
|
|
|
94
|
+ UpdatedAt time.Time `gorm:"column:updated_at;not null;default:CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;comment:更新时间"`
|
|
|
95
|
+}
|
|
|
96
|
+
|
|
|
97
|
+type BillPresaleSettlementDB struct {
|
|
|
98
|
+ ID string `db:"id" json:"id"`
|
|
|
99
|
+ TenantID string `db:"tenant_id" json:"tenantID"`
|
|
|
100
|
+ BillID string `db:"bill_id" json:"billID"`
|
|
|
101
|
+ BillType string `db:"bill_type" json:"billType"`
|
|
|
102
|
+ BillStatus string `db:"bill_status" json:"billStatus"`
|
|
|
103
|
+ PreSaleBillID string `db:"pre_sale_bill_id" json:"preSaleBillID"`
|
|
|
104
|
+ StoreID string `db:"store_id" json:"storeID"`
|
|
|
105
|
+ CompanyID string `db:"company_id" json:"companyID"`
|
|
|
106
|
+ BusinessTypeID string `db:"business_type_id" json:"businessTypeID"`
|
|
|
107
|
+ BusinessTypeName string `db:"business_type_name" json:"businessTypeName"`
|
|
|
108
|
+ PriceTypeID string `db:"price_type_id" json:"priceTypeID"`
|
|
|
109
|
+ PriceTypeName string `db:"price_type_name" json:"priceTypeName"`
|
|
|
110
|
+ FinanceTypeID string `db:"finance_type_id" json:"financeTypeID"`
|
|
|
111
|
+ FinanceTypeName string `db:"finance_type_name" json:"financeTypeName"`
|
|
|
112
|
+ SureStatus int32 `db:"sure_status" json:"sureStatus"`
|
|
|
113
|
+ SureDate *time.Time `db:"sure_date" json:"sureDate"`
|
|
|
114
|
+ Verifier string `db:"verifier" json:"verifier"`
|
|
|
115
|
+ ProductID string `db:"product_id" json:"productID"`
|
|
|
116
|
+ ProductCode string `db:"product_code" json:"productCode"`
|
|
|
117
|
+ ProductName string `db:"product_name" json:"productName"`
|
|
|
118
|
+ SizeCode string `db:"size_code" json:"sizeCode"`
|
|
|
119
|
+ ColorCode string `db:"color_code" json:"colorCode"`
|
|
|
120
|
+ SettlementQty float64 `db:"settlement_qty" json:"settlementQty"`
|
|
|
121
|
+ DiscountRate float64 `db:"discount_rate" json:"discountRate"`
|
|
|
122
|
+ SettlementPrice float64 `db:"settlement_price" json:"settlementPrice"`
|
|
|
123
|
+ SettlementAmount float64 `db:"settlement_amount" json:"settlementAmount"`
|
|
|
124
|
+ CustomerID string `db:"customer_id" json:"customerID"`
|
|
|
125
|
+ CustomerName string `db:"customer_name" json:"customerName"`
|
|
|
126
|
+ CustomerPhone string `db:"customer_phone" json:"customerPhone"`
|
|
|
127
|
+ Remark string `db:"remark" json:"remark"`
|
|
|
128
|
+ Creator string `db:"creator" json:"creator"`
|
|
|
129
|
+ CreatedAt time.Time `db:"created_at" json:"createdAt"`
|
|
|
130
|
+ UpdatedAt time.Time `db:"updated_at" json:"updatedAt"`
|
|
|
131
|
+}
|
|
|
132
|
+
|
|
|
133
|
+func (BillPresaleSettlement) TableName() string {
|
|
|
134
|
+ return "bill_presale_settlement"
|
|
|
135
|
+}
|