2021-11-04 11:10:51 +08:00
|
|
|
package model
|
|
|
|
|
|
|
|
import (
|
|
|
|
"ArmedPolice/app/common/model"
|
|
|
|
"ArmedPolice/serve/orm"
|
|
|
|
"fmt"
|
|
|
|
)
|
|
|
|
|
|
|
|
type ManageEquipmentMaterial struct {
|
|
|
|
*model.ManageEquipmentMaterial
|
|
|
|
}
|
|
|
|
|
|
|
|
// Materials 器材信息
|
2021-11-17 11:11:39 +08:00
|
|
|
func (m *ManageEquipmentMaterial) Materials(equipmentID uint64) ([]*ManageMaterialBasic, error) {
|
2021-11-04 11:10:51 +08:00
|
|
|
db := orm.GetDB().Table(m.TableName()+" AS e").
|
2021-11-18 18:28:34 +08:00
|
|
|
Select("e.id", "e.material_id", "m.code", "m.title", "m.price", "m.unit", "s.name AS manufacturer_name").
|
2021-11-04 11:10:51 +08:00
|
|
|
Joins(fmt.Sprintf("LEFT JOIN %s AS m ON e.material_id = m.id", model.NewManageMaterial().TableName())).
|
2021-11-09 14:08:02 +08:00
|
|
|
Joins(fmt.Sprintf("LEFT JOIN %s AS s ON m.manufacturer_id = s.id", model.NewManageSupplier().TableName())).
|
2021-11-04 11:10:51 +08:00
|
|
|
Where("e.equipment_id = ? AND e.is_deleted = ?", equipmentID, model.DeleteStatusForNot)
|
|
|
|
|
2021-11-17 11:11:39 +08:00
|
|
|
out := make([]*ManageMaterialBasic, 0)
|
2021-11-04 11:10:51 +08:00
|
|
|
|
|
|
|
err := db.Scan(&out).Error
|
|
|
|
|
|
|
|
return out, err
|
|
|
|
}
|
|
|
|
|
|
|
|
func NewManageEquipmentMaterial() *ManageEquipmentMaterial {
|
|
|
|
return &ManageEquipmentMaterial{model.NewManageEquipmentMaterial()}
|
|
|
|
}
|