hospital-admin-api/api/dto/OrderPrescriptionProduct.go

80 lines
3.6 KiB
Go
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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
}