Files
iotlcm/server/internal/model/t_order.go
T
2026-10-29 14:36:49 +08:00

373 lines
25 KiB
Go

// Package genin
// @Link https://github.com/xiujiecn/xiu-admin
// @Copyright Copyright (c) 2026 LiXiujie
// @Author Lxj <xxx@example.com>
// @License https://github.com/xiujiecn/xiu-admin/blob/master/LICENSE
// @AutoGenerate Version
package model
import (
"context"
"git.5iot.com/iotlcm-public/iotlcm-admin-svr/internal/library/xgorm/hook"
"git.5iot.com/iotlcm-public/iotlcm-admin-svr/internal/model/entity"
"git.5iot.com/iotlcm-public/iotlcm-admin-svr/internal/model/request"
"github.com/gogf/gf/v2/os/gtime"
)
// TOrderUpdateFields 修改订单主表字段过滤
type TOrderUpdateFields struct {
OrderSn string `json:"orderSn" dc:"订单编号"`
ParentOrderId int64 `json:"parentOrderId" dc:"父订单ID"`
ParentOrderSn string `json:"parentOrderSn" dc:"父订单编号"`
CustomerType int `json:"customerType" dc:"客户类型 枚举"`
CustomerAgentId int64 `json:"customerAgentId" dc:"渠道编号(购买方)"`
EndUserId int64 `json:"endUserId" dc:"终端客户编号"`
AgentId int64 `json:"agentId" dc:"渠道编号(销售方)"`
OrderType int `json:"orderType" dc:"订单类型 枚举"`
OrderStatus int `json:"orderStatus" dc:"订单状态 枚举"`
ShippingStatus int `json:"shippingStatus" dc:"配送状态 枚举"`
ReturnStatus int `json:"returnStatus" dc:"退货状态 枚举"`
Consignee string `json:"consignee" dc:"收货人姓名"`
Mobile string `json:"mobile" dc:"收货人手机"`
Email string `json:"email" dc:"收货人邮箱"`
Address string `json:"address" dc:"详细地址"`
AreaCode string `json:"areaCode" dc:"行政区域代码"`
BuyerNote string `json:"buyerNote" dc:"买家备注"`
AdminNote string `json:"adminNote" dc:"商家备注"`
Remark string `json:"remark" dc:"系统备注"`
ShippingMethod int `json:"shippingMethod" dc:"发货方式 枚举"`
LogisticsId int64 `json:"logisticsId" dc:"快递公司ID"`
LogisticsName string `json:"logisticsName" dc:"物流公司名称"`
ShippingTypeId int64 `json:"shippingTypeId" dc:"配送类型ID"`
ShippingTypeName string `json:"shippingTypeName" dc:"配送类型名称"`
TrackingNo string `json:"trackingNo" dc:"物流单号"`
ShippingTime *gtime.Time `json:"shippingTime" dc:"发货时间"`
ReceivedTime *gtime.Time `json:"receivedTime" dc:"收货时间"`
PayType int `json:"payType" dc:"支付类型 枚举"`
PayStatus int `json:"payStatus" dc:"支付状态 枚举"`
PayOrderSn string `json:"payOrderSn" dc:"支付订单编号"`
PayTime *gtime.Time `json:"payTime" dc:"支付时间"`
TotalAmount float64 `json:"totalAmount" dc:"订单总金额"`
ProductAmount float64 `json:"productAmount" dc:"商品总金额"`
ShippingFee float64 `json:"shippingFee" dc:"运费金额"`
ServiceFee float64 `json:"serviceFee" dc:"服务费金额"`
InvoiceFee float64 `json:"invoiceFee" dc:"发票费金额"`
CouponAmount float64 `json:"couponAmount" dc:"优惠券抵扣金额"`
DiscountAmount float64 `json:"discountAmount" dc:"活动优惠金额"`
Balance float64 `json:"balance" dc:"余额抵扣金额"`
PaidAmount float64 `json:"paidAmount" dc:"已支付总金额"`
OnlinePaidAmount float64 `json:"onlinePaidAmount" dc:"线上支付金额"`
OfflinePaidAmount float64 `json:"offlinePaidAmount" dc:"线下支付金额"`
UnpaidAmount float64 `json:"unpaidAmount" dc:"未支付金额"`
UnrefundAmount float64 `json:"unrefundAmount" dc:"未退款金额"`
IsNeedCommission int `json:"isNeedCommission" dc:"是否需要分佣 枚举:yesno_enum"`
DistributionStatus int `json:"distributionStatus" dc:"分销分成状态 枚举"`
TenantId string `json:"tenantId" dc:"租户ID"`
UpdatedBy int64 `json:"updatedBy" dc:"更新者ID"`
UpdatedAt *gtime.Time `json:"updatedAt" dc:"更新时间"`
}
// TOrderInsertFields 新增订单主表字段过滤
type TOrderInsertFields struct {
OrderSn string `json:"orderSn" dc:"订单编号"`
ParentOrderId int64 `json:"parentOrderId" dc:"父订单ID"`
ParentOrderSn string `json:"parentOrderSn" dc:"父订单编号"`
CustomerType int `json:"customerType" dc:"客户类型 枚举"`
CustomerAgentId int64 `json:"customerAgentId" dc:"渠道编号(购买方)"`
EndUserId int64 `json:"endUserId" dc:"终端客户编号"`
AgentId int64 `json:"agentId" dc:"渠道编号(销售方)"`
OrderType int `json:"orderType" dc:"订单类型 枚举"`
OrderStatus int `json:"orderStatus" dc:"订单状态 枚举"`
ShippingStatus int `json:"shippingStatus" dc:"配送状态 枚举"`
ReturnStatus int `json:"returnStatus" dc:"退货状态 枚举"`
Consignee string `json:"consignee" dc:"收货人姓名"`
Mobile string `json:"mobile" dc:"收货人手机"`
Email string `json:"email" dc:"收货人邮箱"`
Address string `json:"address" dc:"详细地址"`
AreaCode string `json:"areaCode" dc:"行政区域代码"`
BuyerNote string `json:"buyerNote" dc:"买家备注"`
AdminNote string `json:"adminNote" dc:"商家备注"`
Remark string `json:"remark" dc:"系统备注"`
ShippingMethod int `json:"shippingMethod" dc:"发货方式 枚举"`
LogisticsId int64 `json:"logisticsId" dc:"快递公司ID"`
LogisticsName string `json:"logisticsName" dc:"物流公司名称"`
ShippingTypeId int64 `json:"shippingTypeId" dc:"配送类型ID"`
ShippingTypeName string `json:"shippingTypeName" dc:"配送类型名称"`
TrackingNo string `json:"trackingNo" dc:"物流单号"`
ShippingTime *gtime.Time `json:"shippingTime" dc:"发货时间"`
ReceivedTime *gtime.Time `json:"receivedTime" dc:"收货时间"`
PayType int `json:"payType" dc:"支付类型 枚举"`
PayStatus int `json:"payStatus" dc:"支付状态 枚举"`
PayOrderSn string `json:"payOrderSn" dc:"支付订单编号"`
PayTime *gtime.Time `json:"payTime" dc:"支付时间"`
TotalAmount float64 `json:"totalAmount" dc:"订单总金额"`
ProductAmount float64 `json:"productAmount" dc:"商品总金额"`
ShippingFee float64 `json:"shippingFee" dc:"运费金额"`
ServiceFee float64 `json:"serviceFee" dc:"服务费金额"`
InvoiceFee float64 `json:"invoiceFee" dc:"发票费金额"`
CouponAmount float64 `json:"couponAmount" dc:"优惠券抵扣金额"`
DiscountAmount float64 `json:"discountAmount" dc:"活动优惠金额"`
Balance float64 `json:"balance" dc:"余额抵扣金额"`
PaidAmount float64 `json:"paidAmount" dc:"已支付总金额"`
OnlinePaidAmount float64 `json:"onlinePaidAmount" dc:"线上支付金额"`
OfflinePaidAmount float64 `json:"offlinePaidAmount" dc:"线下支付金额"`
UnpaidAmount float64 `json:"unpaidAmount" dc:"未支付金额"`
UnrefundAmount float64 `json:"unrefundAmount" dc:"未退款金额"`
IsNeedCommission int `json:"isNeedCommission" dc:"是否需要分佣 枚举:yesno_enum"`
DistributionStatus int `json:"distributionStatus" dc:"分销分成状态 枚举"`
TenantId string `json:"tenantId" dc:"租户ID"`
CreatedDept int64 `json:"createdDept" dc:"创建部门ID"`
CreatedBy int64 `json:"createdBy" dc:"创建者ID"`
CreatedAt *gtime.Time `json:"createdAt" dc:"创建时间"`
}
// TOrderEditParam 修改/新增订单主表
type TOrderEditParam struct {
//entity.TOrder
Id int64 `json:"id" dc:"主键ID"`
OrderSn *string `json:"orderSn" dc:"订单编号"`
ParentOrderId *int64 `json:"parentOrderId" dc:"父订单ID"`
ParentOrderSn *string `json:"parentOrderSn" dc:"父订单编号"`
CustomerType *int `json:"customerType" dc:"客户类型 枚举"`
CustomerAgentId *int64 `json:"customerAgentId" dc:"渠道编号(购买方)"`
EndUserId *int64 `json:"endUserId" dc:"终端客户编号"`
AgentId *int64 `json:"agentId" dc:"渠道编号(销售方)"`
OrderType *int `json:"orderType" dc:"订单类型 枚举"`
OrderStatus *int `json:"orderStatus" dc:"订单状态 枚举"`
ShippingStatus *int `json:"shippingStatus" dc:"配送状态 枚举"`
ReturnStatus *int `json:"returnStatus" dc:"退货状态 枚举"`
Consignee *string `json:"consignee" dc:"收货人姓名"`
Mobile *string `json:"mobile" dc:"收货人手机"`
Email *string `json:"email" dc:"收货人邮箱"`
Address *string `json:"address" dc:"详细地址"`
AreaCode *string `json:"areaCode" dc:"行政区域代码"`
BuyerNote *string `json:"buyerNote" dc:"买家备注"`
AdminNote *string `json:"adminNote" dc:"商家备注"`
Remark *string `json:"remark" dc:"系统备注"`
ShippingMethod *int `json:"shippingMethod" dc:"发货方式 枚举"`
LogisticsId *int64 `json:"logisticsId" dc:"快递公司ID"`
LogisticsName *string `json:"logisticsName" dc:"物流公司名称"`
ShippingTypeId *int64 `json:"shippingTypeId" dc:"配送类型ID"`
ShippingTypeName *string `json:"shippingTypeName" dc:"配送类型名称"`
TrackingNo *string `json:"trackingNo" dc:"物流单号"`
ShippingTime *gtime.Time `json:"shippingTime" dc:"发货时间"`
ReceivedTime *gtime.Time `json:"receivedTime" dc:"收货时间"`
PayType *int `json:"payType" dc:"支付类型 枚举"`
PayStatus *int `json:"payStatus" dc:"支付状态 枚举"`
PayOrderSn *string `json:"payOrderSn" dc:"支付订单编号"`
PayTime *gtime.Time `json:"payTime" dc:"支付时间"`
TotalAmount *float64 `json:"totalAmount" dc:"订单总金额"`
ProductAmount *float64 `json:"productAmount" dc:"商品总金额"`
ShippingFee *float64 `json:"shippingFee" dc:"运费金额"`
ServiceFee *float64 `json:"serviceFee" dc:"服务费金额"`
InvoiceFee *float64 `json:"invoiceFee" dc:"发票费金额"`
CouponAmount *float64 `json:"couponAmount" dc:"优惠券抵扣金额"`
DiscountAmount *float64 `json:"discountAmount" dc:"活动优惠金额"`
Balance *float64 `json:"balance" dc:"余额抵扣金额"`
PaidAmount *float64 `json:"paidAmount" dc:"已支付总金额"`
OnlinePaidAmount *float64 `json:"onlinePaidAmount" dc:"线上支付金额"`
OfflinePaidAmount *float64 `json:"offlinePaidAmount" dc:"线下支付金额"`
UnpaidAmount *float64 `json:"unpaidAmount" dc:"未支付金额"`
UnrefundAmount *float64 `json:"unrefundAmount" dc:"未退款金额"`
IsNeedCommission *int `json:"isNeedCommission" dc:"是否需要分佣 枚举:yesno_enum"`
DistributionStatus *int `json:"distributionStatus" dc:"分销分成状态 枚举"`
TenantId *string `json:"tenantId" dc:"租户ID"`
CreatedDept *int64 `json:"createdDept" dc:"创建部门ID"`
CreatedBy *int64 `json:"createdBy" dc:"创建者ID"`
CreatedAt *gtime.Time `json:"createdAt" dc:"创建时间"`
UpdatedBy *int64 `json:"updatedBy" dc:"更新者ID"`
UpdatedAt *gtime.Time `json:"updatedAt" dc:"更新时间"`
}
func (in *TOrderEditParam) Filter(ctx context.Context) (err error) {
return
}
type TOrderEditModel struct{}
// TOrderDeleteParam 删除订单主表
type TOrderDeleteParam struct {
Id interface{} `json:"id" v:"required#主键ID不能为空" dc:"主键ID"`
}
func (in *TOrderDeleteParam) Filter(ctx context.Context) (err error) {
return
}
type TOrderDeleteModel struct{}
// TOrderViewParam 获取指定订单主表信息
type TOrderViewParam struct {
Id int64 `json:"id" v:"required#主键ID不能为空" dc:"主键ID"`
}
func (in *TOrderViewParam) Filter(ctx context.Context) (err error) {
return
}
type TOrderViewModel struct {
entity.TOrder
CustomerName string `json:"customerName"`
AgentName string `json:"agentName"`
Items []*TOrderItemViewModel `json:"items"`
CreatedBySumma *hook.MemberSumma `json:"createdBySumma" dc:"创建者ID摘要信息"`
UpdatedBySumma *hook.MemberSumma `json:"updatedBySumma" dc:"更新者ID摘要信息"`
}
type TOrderItemViewModel struct {
ItemId int64 `json:"itemId"`
Price float64 `json:"price"`
Quantity uint `json:"quantity"`
ProductName string `json:"productName"`
ProductSn string `json:"productSn"`
ServiceBeginTime *gtime.Time `json:"serviceBeginTime"`
ServiceEndTime *gtime.Time `json:"serviceEndTime"`
BusinessBatchNo string `json:"businessBatchNo"`
SourceBatchNo string `json:"sourceBatchNo"`
EffectiveMode string `json:"effectiveMode"`
DurationValue int `json:"durationValue"`
DurationUnit string `json:"durationUnit"`
}
// TOrderListParam 获取订单主表列表
type TOrderListParam struct {
request.PageInfo
Perspective string `json:"perspective" dc:"订单视角:purchase购买方、sell销售方"`
OrderType *int `json:"orderType"`
PayType *int `json:"payType"`
Id int64 `json:"id" dc:"主键ID"`
OrderSn string `json:"orderSn" dc:"订单编号"`
OrderStatus *int `json:"orderStatus" dc:"订单状态 枚举"`
ShippingStatus *int `json:"shippingStatus" dc:"配送状态 枚举"`
ReturnStatus *int `json:"returnStatus" dc:"退货状态 枚举"`
PayStatus *int `json:"payStatus" dc:"支付状态 枚举"`
DistributionStatus *int `json:"distributionStatus" dc:"分销分成状态 枚举"`
CreatedAt []*gtime.Time `json:"createdAt" dc:"创建时间"`
}
func (in *TOrderListParam) Filter(ctx context.Context) (err error) {
return
}
type TOrderListModel struct {
ProductName string `json:"productName"`
ProductSn string `json:"productSn"`
Quantity uint `json:"quantity"`
UnitPrice float64 `json:"unitPrice"`
ServiceBeginTime *gtime.Time `json:"serviceBeginTime"`
ServiceEndTime *gtime.Time `json:"serviceEndTime"`
BusinessBatchNo string `json:"businessBatchNo"`
Id int64 `json:"id" dc:"主键ID"`
OrderSn string `json:"orderSn" dc:"订单编号"`
ParentOrderId int64 `json:"parentOrderId" dc:"父订单ID"`
ParentOrderSn string `json:"parentOrderSn" dc:"父订单编号"`
CustomerType int `json:"customerType" dc:"客户类型 枚举"`
CustomerAgentId int64 `json:"customerAgentId" dc:"渠道编号(购买方)"`
CustomerName string `json:"customerName" dc:"购买方名称"`
EndUserId int64 `json:"endUserId" dc:"终端客户编号"`
AgentId int64 `json:"agentId" dc:"渠道编号(销售方)"`
AgentName string `json:"agentName" dc:"销售方名称"`
OrderType int `json:"orderType" dc:"订单类型 枚举"`
OrderStatus int `json:"orderStatus" dc:"订单状态 枚举"`
ShippingStatus int `json:"shippingStatus" dc:"配送状态 枚举"`
ReturnStatus int `json:"returnStatus" dc:"退货状态 枚举"`
Consignee string `json:"consignee" dc:"收货人姓名"`
Mobile string `json:"mobile" dc:"收货人手机"`
Email string `json:"email" dc:"收货人邮箱"`
AreaCode string `json:"areaCode" dc:"行政区域代码"`
BuyerNote string `json:"buyerNote" dc:"买家备注"`
AdminNote string `json:"adminNote" dc:"商家备注"`
ShippingMethod int `json:"shippingMethod" dc:"发货方式 枚举"`
LogisticsId int64 `json:"logisticsId" dc:"快递公司ID"`
LogisticsName string `json:"logisticsName" dc:"物流公司名称"`
ShippingTypeId int64 `json:"shippingTypeId" dc:"配送类型ID"`
ShippingTypeName string `json:"shippingTypeName" dc:"配送类型名称"`
TrackingNo string `json:"trackingNo" dc:"物流单号"`
ShippingTime *gtime.Time `json:"shippingTime" dc:"发货时间"`
ReceivedTime *gtime.Time `json:"receivedTime" dc:"收货时间"`
PayType int `json:"payType" dc:"支付类型 枚举"`
PayStatus int `json:"payStatus" dc:"支付状态 枚举"`
PayOrderSn string `json:"payOrderSn" dc:"支付订单编号"`
PayTime *gtime.Time `json:"payTime" dc:"支付时间"`
TotalAmount float64 `json:"totalAmount" dc:"订单总金额"`
ProductAmount float64 `json:"productAmount" dc:"商品总金额"`
ShippingFee float64 `json:"shippingFee" dc:"运费金额"`
ServiceFee float64 `json:"serviceFee" dc:"服务费金额"`
InvoiceFee float64 `json:"invoiceFee" dc:"发票费金额"`
CouponAmount float64 `json:"couponAmount" dc:"优惠券抵扣金额"`
DiscountAmount float64 `json:"discountAmount" dc:"活动优惠金额"`
Balance float64 `json:"balance" dc:"余额抵扣金额"`
PaidAmount float64 `json:"paidAmount" dc:"已支付总金额"`
OnlinePaidAmount float64 `json:"onlinePaidAmount" dc:"线上支付金额"`
OfflinePaidAmount float64 `json:"offlinePaidAmount" dc:"线下支付金额"`
UnpaidAmount float64 `json:"unpaidAmount" dc:"未支付金额"`
UnrefundAmount float64 `json:"unrefundAmount" dc:"未退款金额"`
IsNeedCommission int `json:"isNeedCommission" dc:"是否需要分佣 枚举:yesno_enum"`
DistributionStatus int `json:"distributionStatus" dc:"分销分成状态 枚举"`
TenantId string `json:"tenantId" dc:"租户ID"`
CreatedDept int64 `json:"createdDept" dc:"创建部门ID"`
CreatedBy int64 `json:"createdBy" dc:"创建者ID"`
CreatedBySumma *hook.MemberSumma `json:"createdBySumma" dc:"创建者ID摘要信息"`
CreatedAt *gtime.Time `json:"createdAt" dc:"创建时间"`
UpdatedBy int64 `json:"updatedBy" dc:"更新者ID"`
UpdatedBySumma *hook.MemberSumma `json:"updatedBySumma" dc:"更新者ID摘要信息"`
UpdatedAt *gtime.Time `json:"updatedAt" dc:"更新时间"`
}
// TOrderExportModel 导出订单主表
type TOrderExportModel struct {
Id int64 `json:"id" dc:"主键ID"`
OrderSn string `json:"orderSn" dc:"订单编号"`
ParentOrderId int64 `json:"parentOrderId" dc:"父订单ID"`
ParentOrderSn string `json:"parentOrderSn" dc:"父订单编号"`
CustomerType int `json:"customerType" dc:"客户类型 枚举"`
CustomerAgentId int64 `json:"customerAgentId" dc:"渠道编号(购买方)"`
EndUserId int64 `json:"endUserId" dc:"终端客户编号"`
AgentId int64 `json:"agentId" dc:"渠道编号(销售方)"`
OrderType int `json:"orderType" dc:"订单类型 枚举"`
OrderStatus int `json:"orderStatus" dc:"订单状态 枚举"`
ShippingStatus int `json:"shippingStatus" dc:"配送状态 枚举"`
ReturnStatus int `json:"returnStatus" dc:"退货状态 枚举"`
Consignee string `json:"consignee" dc:"收货人姓名"`
Mobile string `json:"mobile" dc:"收货人手机"`
Email string `json:"email" dc:"收货人邮箱"`
AreaCode string `json:"areaCode" dc:"行政区域代码"`
BuyerNote string `json:"buyerNote" dc:"买家备注"`
AdminNote string `json:"adminNote" dc:"商家备注"`
ShippingMethod int `json:"shippingMethod" dc:"发货方式 枚举"`
LogisticsId int64 `json:"logisticsId" dc:"快递公司ID"`
LogisticsName string `json:"logisticsName" dc:"物流公司名称"`
ShippingTypeId int64 `json:"shippingTypeId" dc:"配送类型ID"`
ShippingTypeName string `json:"shippingTypeName" dc:"配送类型名称"`
TrackingNo string `json:"trackingNo" dc:"物流单号"`
ShippingTime *gtime.Time `json:"shippingTime" dc:"发货时间"`
ReceivedTime *gtime.Time `json:"receivedTime" dc:"收货时间"`
PayType int `json:"payType" dc:"支付类型 枚举"`
PayStatus int `json:"payStatus" dc:"支付状态 枚举"`
PayOrderSn string `json:"payOrderSn" dc:"支付订单编号"`
PayTime *gtime.Time `json:"payTime" dc:"支付时间"`
TotalAmount float64 `json:"totalAmount" dc:"订单总金额"`
ProductAmount float64 `json:"productAmount" dc:"商品总金额"`
ShippingFee float64 `json:"shippingFee" dc:"运费金额"`
ServiceFee float64 `json:"serviceFee" dc:"服务费金额"`
InvoiceFee float64 `json:"invoiceFee" dc:"发票费金额"`
CouponAmount float64 `json:"couponAmount" dc:"优惠券抵扣金额"`
DiscountAmount float64 `json:"discountAmount" dc:"活动优惠金额"`
Balance float64 `json:"balance" dc:"余额抵扣金额"`
PaidAmount float64 `json:"paidAmount" dc:"已支付总金额"`
OnlinePaidAmount float64 `json:"onlinePaidAmount" dc:"线上支付金额"`
OfflinePaidAmount float64 `json:"offlinePaidAmount" dc:"线下支付金额"`
UnpaidAmount float64 `json:"unpaidAmount" dc:"未支付金额"`
UnrefundAmount float64 `json:"unrefundAmount" dc:"未退款金额"`
IsNeedCommission int `json:"isNeedCommission" dc:"是否需要分佣 枚举:yesno_enum"`
DistributionStatus int `json:"distributionStatus" dc:"分销分成状态 枚举"`
TenantId string `json:"tenantId" dc:"租户ID"`
CreatedDept int64 `json:"createdDept" dc:"创建部门ID"`
CreatedBy int64 `json:"createdBy" dc:"创建者ID"`
CreatedAt *gtime.Time `json:"createdAt" dc:"创建时间"`
UpdatedBy int64 `json:"updatedBy" dc:"更新者ID"`
UpdatedAt *gtime.Time `json:"updatedAt" dc:"更新时间"`
}