test_data/model/report.list.go
2024-08-30 16:27:39 +08:00

307 lines
19 KiB
Go

package model
import (
"gorm.io/gorm"
"time"
)
type WaferList struct {
ID int64 `json:"id" gorm:"primaryKey"`
Status string `json:"status"` // 状态
OrderDate string `json:"order_date"` // 下单日期
PBI string `json:"pbi"` // 订单号
Product string `json:"product"` // 晶圆型号
Factory string `json:"factory"` // 晶圆厂
WaferSize string `json:"wafer_size"` // 晶圆尺寸
Quantity float64 `json:"quantity"` // 投片数量
OnlineQuantity float64 `json:"online_quantity"` // 在线数量
ReturnQuantity float64 `json:"return_quantity"` // 回货数量
DieQuantity float64 `json:"die_quantity"` // Die数量
WaferStock []WaferStock `json:"wafer_stock" gorm:"foreignKey:WaferListID;references:ID"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"-"`
DeletedAt gorm.DeletedAt `json:"-" gorm:"index"`
}
type WaferStock struct {
ID int64 `json:"id" gorm:"primaryKey"`
WaferListID int64 `json:"wafer_list_id"`
PBI string `json:"pbi"` // 订单号
Product string `json:"product"` // 晶圆型号
Specification string `json:"specification"` // 规格
ReturnDate string `json:"return_date"` // 回货日期
Lot string `json:"lot"` // 批次
WaferID string `json:"wafer_id"` // 片号
ReturnQuantity float64 `json:"return_quantity"` // 回货数量
DieQuantity float64 `json:"die_quantity"` // DIE数量
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"-"`
DeletedAt gorm.DeletedAt `json:"-" gorm:"index"`
}
type ABList struct {
ID int64 `json:"id" gorm:"primaryKey"`
Status string `json:"status"` // 是否已完成
OrderDate string `json:"order_date"` // 下单日期
PBI string `json:"pbi"` // 订单号
OutsourcingPBI string `json:"outsourcing_pbi"` // 委外工单号
Product string `json:"product"` // 成品型号
WaferProduct string `json:"wafer_product"` // 晶圆型号
Package string `json:"package"` // 封装
Factory string `json:"factory"` // 封装厂
Lot string `json:"lot"` // 批号
Seal string `json:"seal"` // 丝印
WaferID string `json:"wafer_id"` // 片号
Quantity float64 `json:"quantity"` // 订单数量
OnlineQuantity float64 `json:"online_quantity"` // 在线数量
PassProbability string `json:"pass_probability"` // 良率
StockOutQuantity float64 `json:"stock_out_quantity"` // 出库数
StockInQuantity float64 `json:"stock_in_quantity"` // 入库数
PassQuantity float64 `json:"pass_quantity"` // 封装良品
FailQuantity float64 `json:"fail_quantity"` // 封装不良品
ABListStock []ABListStock `json:"ab_list_stock" gorm:"foreignKey:ABListID;references:ID"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"-"`
DeletedAt gorm.DeletedAt `json:"-" gorm:"index"`
}
type ABListStock struct {
ID int64 `json:"id" gorm:"primaryKey"`
ABListID int64 `json:"ab_list_id"`
ReturnDate string `json:"return_date"`
PassQuantity float64 `json:"pass_quantity"`
FailQuantity float64 `json:"fail_quantity"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"-"`
DeletedAt gorm.DeletedAt `json:"-" gorm:"index"`
}
type ABWaferList struct {
Material string `json:"material"` // 料号
Product string `json:"product"` // 品名
Specification string `json:"specification"` // 规格
Lot string `json:"lot"` // 批号
WaferID string `json:"wafer_id"` // 片号
}
type BPList struct {
ID int64 `json:"id" gorm:"primaryKey"`
Status string `json:"status"` // 状态
OrderDate string `json:"order_date"` // 下单日期
PBI string `json:"pbi"` // 订单号
OutsourcingPBI string `json:"outsourcing_pbi"` // 委外工单号
Product string `json:"product"` // 晶圆型号
Package string `json:"package"` // 封装
Factory string `json:"factory"` // CP测试厂
Lot string `json:"lot"` // 批号
WaferID string `json:"wafer_id"` // 片号
Quantity float64 `json:"quantity"` // 订单数量
OnlineQuantity float64 `json:"online_quantity"` // 在线数量
ReturnQuantity float64 `json:"return_quantity"` // 回货数量
DieQuantity float64 `json:"die_quantity"` // Die数量
BPListStock []BPListStock `gorm:"foreignKey:BPListID;references:ID"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"-"`
DeletedAt gorm.DeletedAt `json:"-" gorm:"index"`
}
type BPListStock struct {
ID int64 `json:"id" gorm:"primaryKey"`
BPListID int64 `json:"bp_list_id"`
ReturnDate string `json:"return_date"`
Quantity float64 `json:"quantity"`
DieQuantity float64 `json:"die_quantity"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"-"`
DeletedAt gorm.DeletedAt `json:"-" gorm:"index"`
}
type CPList struct {
ID int64 `json:"id" gorm:"primaryKey"`
Status string `json:"status"`
OrderDate string `json:"order_date"` // 下单日期(订单日期)
PBI string `json:"pbi"` // PBI(订单号)
OutsourcingPBI string `json:"outsourcing_pbi"` // 委外工单号
Product string `json:"product"` // 晶圆型号
Package string `json:"package"` // 封装(规格)
Factory string `json:"factory"` // CP测试厂
Lot string `json:"lot"` // 批号
WaferID string `json:"wafer_id"` // 片号
TestProgram string `json:"test_program"` // 测试程序
TestProgramVersion string `json:"test_program_version"` // 测试程序版本
Quantity float64 `json:"quantity"` // 订单数量
OnlineQuantity float64 `json:"online_quantity"` // 未交数量
ReturnQuantity float64 `json:"return_quantity"` // 回货数量
DieQuantity float64 `json:"die_quantity"` // Die数量
CPListStock []CPListStock `gorm:"foreignKey:CPListID;references:ID"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"-"`
DeletedAt gorm.DeletedAt `json:"-" gorm:"index"`
}
type CPListStock struct {
ID int64 `json:"id" gorm:"primaryKey"`
CPListID int64 `json:"cp_list_id"`
ReturnDate string `json:"return_date"`
Quantity float64 `json:"quantity"`
DieQuantity float64 `json:"die_quantity"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"-"`
DeletedAt gorm.DeletedAt `json:"-" gorm:"index"`
}
type CPShowList struct {
Status string `json:"status"`
OrderDate string `json:"order_date"` // 下单日期(订单日期)
PBI string `json:"pbi"` // PBI(订单号)
OutsourcingPBI string `json:"outsourcing_pbi"` // 委外工单号
Product string `json:"product"` // 晶圆型号
Package string `json:"package"` // 封装(规格)
Factory string `json:"factory"` // CP测试厂
Lot string `json:"lot"` // 批号
WaferID string `json:"wafer_id"` // 片号
TestProgram string `json:"test_program"` // 测试程序
TestProgramVersion string `json:"test_program_version"` // 测试程序版本
Quantity float64 `json:"quantity"` // 订单数量
OnlineQuantity float64 `json:"online_quantity"` // 未交数量
ReturnQuantity float64 `json:"return_quantity"` // 回货数量
DieQuantity float64 `json:"die_quantity"` // Die数量
CPListStock []CPListStock `gorm:"foreignKey:CPListID;references:ID"`
TestMachine string `json:"test_machine"` // 测试机台
TestQuantity string `json:"test_quantity"` // 测试数量
FirstPassQuantity string `json:"first_pass_quantity"` // 初测良品数量
FirstPassProbability string `json:"first_pass_probability"` // 初测良率
PassQuantity string `json:"pass_quantity"` // 良品数量(包括回收数据)
PassProbability string `json:"pass_probability"` // 良率(包括回收数据)
ReportTestQuantity string `json:"report_test_quantity"` // 报表测试数量
ReportPassQuantity string `json:"report_pass_quantity"` // 报表良品数量
ReportPassProbability string `json:"report_pass_probability"` // 报表良率
TestTime string `json:"test_time"` // 测试时间
TestQuantityDiff string `json:"test_quantity_diff"` // 测试数量差异
TestQuantityDiffLabel bool `json:"test_quantity_diff_label"`
PassQuantityDiff string `json:"pass_quantity_diff"` // 良品数量差异
PassQuantityDiffLabel bool `json:"pass_quantity_diff_label"`
ReturnProbability string `json:"return_probability"` // 回收率
ReturnProbabilityLabel bool `json:"return_probability_label"`
StackingMaterials bool `json:"stacking_materials"` // 是否叠料
SoftBinFailMap map[string]float64 `json:"soft_bin_fail_map"` // 软件Bin的不良数量
HardBinFailMap map[string]float64 `json:"hard_bin_fail_map"` // 硬件Bin的不良数量
SoftBinFail []*ReportBinFail `json:"soft_bin_fail"` // 软件Bin的不良数量
HardBinFail []*ReportBinFail `json:"hard_bin_fail"` // 硬件Bin的不良数量
Site []*ReportListSites `json:"site"` // Site测试情况
WaferDetails []ReportList `json:"wafer_details"` // 片号细节
}
type FTList struct {
ID int64 `json:"id" gorm:"primaryKey"`
Status string `json:"status"`
OrderDate string `json:"order_date"` // 下单日期(订单日期)
PBI string `json:"pbi"` // PBI(订单号)
OutsourcingPBI string `json:"outsourcing_pbi"` // 委外工单号
Product string `json:"product"` // 成品型号
WaferProduct string `json:"wafer_product"` // 晶圆型号
Package string `json:"package"` // 封装(规格)
Factory string `json:"factory"` // FT测试厂
Lot string `json:"lot"` // 批号
Seal string `json:"seal"` // 丝印
TestProgram string `json:"test_program"` // FT测试程序
TestProgramVersion string `json:"test_program_version"` // 测试程序版本
Quantity float64 `json:"quantity"` // 订单数量
OnlineQuantity float64 `json:"online_quantity"` // 未交数量
ReturnQuantity float64 `json:"return_quantity"` // 回货数量
PassQuantity float64 `json:"pass_quantity"` // FT良品
FailQuantity float64 `json:"fail_quantity"` // FT不良品
FTListStock []FTListStock `gorm:"foreignKey:FTListID;references:ID"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"-"`
DeletedAt gorm.DeletedAt `json:"-" gorm:"index"`
}
type FTListStock struct {
ID int64 `json:"id" gorm:"primaryKey"`
FTListID int64 `json:"cp_list_id"`
ReturnDate string `json:"return_date"`
PassQuantity float64 `json:"pass_quantity"`
FailQuantity float64 `json:"fail_quantity"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"-"`
DeletedAt gorm.DeletedAt `json:"-" gorm:"index"`
}
type FTShowList struct {
Status string `json:"status"`
OrderDate string `json:"order_date"` // 下单日期(订单日期)
PBI string `json:"pbi"` // PBI(订单号)
OutsourcingPBI string `json:"outsourcing_pbi"` // 委外工单号
Product string `json:"product"` // 成品型号
WaferProduct string `json:"wafer_product"` // 晶圆型号
Package string `json:"package"` // 封装(规格)
Factory string `json:"factory"` // CP测试厂
Lot string `json:"lot"` // 批号
Seal string `json:"seal"` // 丝印
TestProgram string `json:"test_program"` // 测试程序
TestProgramVersion string `json:"test_program_version"` // 测试程序版本
Quantity float64 `json:"quantity"` // 订单数量
OnlineQuantity float64 `json:"online_quantity"` // 未交数量
ReturnQuantity float64 `json:"return_quantity"` // 回货数量
FTPassQuantity float64 `json:"ft_pass_quantity"` // FT良品
FTFailQuantity float64 `json:"ft_fail_quantity"` // FT不良品
FTListStock []FTListStock `gorm:"foreignKey:FTListID;references:ID"`
TestMachine string `json:"test_machine"` // 测试机台
TestQuantity string `json:"test_quantity"` // 测试数量
FirstPassQuantity string `json:"first_pass_quantity"` // 初测良品数量
FirstPassProbability string `json:"first_pass_probability"` // 初测良率
PassQuantity string `json:"pass_quantity"` // 良品数量(包括回收数据)
PassProbability string `json:"pass_probability"` // 良率(包括回收数据)
ReportTestQuantity string `json:"report_test_quantity"` // 报表测试数量
ReportPassQuantity string `json:"report_pass_quantity"` // 报表良品数量
ReportPassProbability string `json:"report_pass_probability"` // 报表良率
TestTime string `json:"test_time"` // 测试时间
TestQuantityDiff string `json:"test_quantity_diff"` // 测试数量差异
TestQuantityDiffLabel bool `json:"test_quantity_diff_label"`
PassQuantityDiff string `json:"pass_quantity_diff"` // 良品数量差异
PassQuantityDiffLabel bool `json:"pass_quantity_diff_label"`
ReturnProbability string `json:"return_probability"` // 回收率
ReturnProbabilityLabel bool `json:"return_probability_label"`
StackingMaterials bool `json:"stacking_materials"` // 是否叠料
SoftBinFailMap map[string]float64 `json:"soft_bin_fail_map"` // 软件Bin的不良数量
HardBinFailMap map[string]float64 `json:"hard_bin_fail_map"` // 硬件Bin的不良数量
SoftBinFail []*ReportBinFail `json:"soft_bin_fail"` // 软件Bin的不良数量
HardBinFail []*ReportBinFail `json:"hard_bin_fail"` // 硬件Bin的不良数量
Site []*ReportListSites `json:"site"` // Site测试情况
SubBatchDetails []ReportList `json:"sub_batch_details"` // 子批号细节
}
type TRList struct {
ID int64 `json:"id" gorm:"primaryKey"`
Status string `json:"status"` // 是否已完成
OrderDate string `json:"order_date"` // 下单日期
PBI string `json:"pbi"` // 订单号
OutsourcingPBI string `json:"outsourcing_pbi"` // 委外工单号
Product string `json:"product"` // 成品型号
WaferProduct string `json:"wafer_product"` // 晶圆型号
Package string `json:"package"` // 封装
Factory string `json:"factory"` // FT测试厂
Lot string `json:"lot"` // 批号
Seal string `json:"seal"` // 丝印
Quantity float64 `json:"quantity"` // 订单数量
OnlineQuantity float64 `json:"online_quantity"` // 在线数量
PassQuantity float64 `json:"pass_quantity"` // FT良品
FailQuantity float64 `json:"fail_quantity"` // FT不良品
TRListStock []TRListStock `gorm:"foreignKey:TRListID;references:ID"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"-"`
DeletedAt gorm.DeletedAt `json:"-" gorm:"index"`
}
type TRListStock struct {
ID int64 `json:"id" gorm:"primaryKey"`
TRListID int64 `json:"tr_list_id"`
ReturnDate string `json:"return_date"`
PassQuantity float64 `json:"pass_quantity"`
FailQuantity float64 `json:"fail_quantity"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"-"`
DeletedAt gorm.DeletedAt `json:"-" gorm:"index"`
}