12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- package model
- import pasturePb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/cow"
- type Drugs struct {
- Id int64 `json:"id"`
- Name string `json:"name"`
- CategoryId pasturePb.DrugCategory_Kind `json:"category_id"`
- Producer string `json:"producer"`
- BatchNumber string `json:"batch_number"`
- ProductionAt int64 `json:"production_at"`
- ExpirationAt int64 `json:"expiration_at"`
- Unit pasturePb.Unit_Kind `json:"unit"`
- Specs string `json:"specs"`
- Inventory int32 `json:"inventory"`
- UsageMethod pasturePb.DrugUsage_Kind `json:"usage_method"`
- Price int32 `json:"price"`
- MilkExpiredDays int32 `json:"milk_expired_days"`
- MeatExpiredDays int32 `json:"meat_expired_days"`
- Remarks string `json:"remarks"`
- OperationId int32 `json:"operation_id"`
- OperationName string `json:"operation_name"`
- CreatedAt int64 `json:"created_at"`
- UpdatedAt int64 `json:"updated_at"`
- }
- func (d *Drugs) TableName() string {
- return "drugs"
- }
- func NewDrugs(req *pasturePb.SearchDrugsList, currentUser *SystemUser) *Drugs {
- return &Drugs{
- Name: req.Name,
- CategoryId: req.CategoryId,
- Producer: req.Producer,
- BatchNumber: req.BatchNumber,
- ProductionAt: int64(req.ProductionAt),
- ExpirationAt: int64(req.ExpirationAt),
- Unit: req.Unit,
- Specs: req.Specs,
- Inventory: req.Inventory,
- UsageMethod: req.Usage,
- Price: int32(req.Price * 100),
- Remarks: req.Remarks,
- OperationId: int32(currentUser.Id),
- OperationName: currentUser.Name,
- }
- }
- type DrugsSlice []*Drugs
- func (d DrugsSlice) ToPB(drugsCategoryMap map[pasturePb.DrugCategory_Kind]string,
- unitMap map[pasturePb.Unit_Kind]string, drugUsageMap map[pasturePb.DrugUsage_Kind]string) []*pasturePb.SearchDrugsList {
- res := make([]*pasturePb.SearchDrugsList, len(d))
- for i, v := range d {
- res[i] = &pasturePb.SearchDrugsList{
- Id: int32(v.Id),
- Name: v.Name,
- CategoryId: v.CategoryId,
- CategoryName: drugsCategoryMap[v.CategoryId],
- Producer: v.Producer,
- BatchNumber: v.BatchNumber,
- ProductionAt: int32(v.ProductionAt),
- ExpirationAt: int32(v.ExpirationAt),
- Unit: v.Unit,
- UnitName: unitMap[v.Unit],
- Specs: v.Specs,
- Inventory: v.Inventory,
- Usage: v.UsageMethod,
- UsageName: drugUsageMap[v.UsageMethod],
- Price: float32(v.Price) / 100,
- MeatExpiredDays: v.MeatExpiredDays,
- MilkExpiredDays: v.MilkExpiredDays,
- Remarks: v.Remarks,
- OperationId: v.OperationId,
- OperationName: v.OperationName,
- CreatedAt: int32(v.CreatedAt),
- UpdatedAt: int32(v.UpdatedAt),
- }
- }
- return res
- }
|