package dto import ( "fmt" "hospital-admin-api/api/model" ) type OrderPrescriptionProductDto struct { PrescriptionProductId string `json:"prescription_product_id"` // 主键id OrderPrescriptionId string `json:"order_prescription_id"` // 订单-处方id;NOT NULL ProductId string `json:"product_id"` // 商品id;NOT NULL UseStatus int `json:"use_status"` // 使用状态(1:已使用 0:未使用) PrescriptionProductNum int `json:"prescription_product_num"` // 商品数量 ProductName string `json:"product_name"` // 商品名称 ProductSpec string `json:"product_spec"` // 商品规格 LicenseNumber string `json:"license_number"` // 批准文号 Manufacturer string `json:"manufacturer"` // 生产厂家 SingleUnit string `json:"single_unit"` // 单次剂量(例:1次1包) SingleUse string `json:"single_use"` // 单次用法(例:口服) PackagingUnit string `json:"packaging_unit"` // 基本包装单位(例:盒/瓶) FrequencyUse string `json:"frequency_use"` // 使用频率(例:1天3次) AvailableDays int `json:"available_days"` // 可用天数(3) CreatedAt model.LocalTime `json:"created_at"` // 创建时间 UpdatedAt model.LocalTime `json:"updated_at"` // 修改时间 } func GetOrderPrescriptionProductDto(m *model.OrderPrescriptionProduct) *OrderPrescriptionProductDto { return &OrderPrescriptionProductDto{ PrescriptionProductId: fmt.Sprintf("%d", m.OrderPrescriptionId), OrderPrescriptionId: fmt.Sprintf("%d", m.OrderPrescriptionId), ProductId: fmt.Sprintf("%d", m.ProductId), UseStatus: m.UseStatus, PrescriptionProductNum: m.PrescriptionProductNum, ProductName: m.ProductName, ProductSpec: m.ProductSpec, LicenseNumber: m.LicenseNumber, Manufacturer: m.Manufacturer, SingleUnit: m.SingleUnit, SingleUse: m.SingleUse, PackagingUnit: m.PackagingUnit, FrequencyUse: m.FrequencyUse, AvailableDays: m.AvailableDays, CreatedAt: m.CreatedAt, UpdatedAt: m.UpdatedAt, } } func GetOrderPrescriptionProductListDto(m []*model.OrderPrescriptionProduct) []*OrderPrescriptionProductDto { // 处理返回值 responses := make([]*OrderPrescriptionProductDto, len(m)) if len(m) > 0 { for i, v := range m { response := &OrderPrescriptionProductDto{ PrescriptionProductId: fmt.Sprintf("%d", v.OrderPrescriptionId), OrderPrescriptionId: fmt.Sprintf("%d", v.OrderPrescriptionId), ProductId: fmt.Sprintf("%d", v.ProductId), UseStatus: v.UseStatus, PrescriptionProductNum: v.PrescriptionProductNum, ProductName: v.ProductName, ProductSpec: v.ProductSpec, LicenseNumber: v.LicenseNumber, Manufacturer: v.Manufacturer, SingleUnit: v.SingleUnit, SingleUse: v.SingleUse, PackagingUnit: v.PackagingUnit, FrequencyUse: v.FrequencyUse, AvailableDays: v.AvailableDays, CreatedAt: v.CreatedAt, UpdatedAt: v.UpdatedAt, } // 将转换后的结构体添加到新切片中 responses[i] = response } } return responses }