123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153 |
- package supply_analysis
- import (
- "eta/eta_api/utils"
- "github.com/beego/beego/v2/client/orm"
- "time"
- )
- // VarietyPlant variety_plant 品种装置表
- type VarietyPlant struct {
- VarietyPlantId int `orm:"column(variety_plant_id);pk"`
- VarietyId int `description:"品种id"`
- Province string `description:"所属省份"`
- City string `description:"所属城市"`
- FactoryName string `description:"工厂名称"`
- PlantName string `description:"装置/产线名称"`
- MaintenanceDate time.Time `description:"检修日期"`
- ResumptionDate time.Time `description:"复产日期"`
- AnnualCapacity float64 `description:"年产能"`
- Coefficient float64 `description:"降负系数"`
- AverageDailyCapacityReduction float64 `description:"日均产量减量"`
- IsStop int `description:"是否停产,0:未停产;1:停产;默认未停产"`
- Sort int `description:"排序字段,越小越靠前"`
- SysUserId int `description:"添加人id"`
- SysUserRealName string `description:"添加人真实姓名"`
- ModifyTime time.Time `description:"最近一次更新时间"`
- CreateTime time.Time `description:"添加时间"`
- }
- // AddVarietyPlant 添加variety_plant装置
- func AddVarietyPlant(item *VarietyPlant) (err error) {
- o := orm.NewOrmUsingDB("data")
- lastId, err := o.Insert(item)
- if err != nil {
- return
- }
- item.VarietyPlantId = int(lastId)
- return
- }
- // MultiAddVarietyPlant 批量添加variety_plant装置
- func MultiAddVarietyPlant(items []*VarietyPlant) (err error) {
- o := orm.NewOrmUsingDB("data")
- _, err = o.InsertMulti(len(items), items)
- if err != nil {
- return
- }
- return
- }
- // Update 更新基础信息
- func (varietyPlant *VarietyPlant) Update(cols []string) (err error) {
- o := orm.NewOrmUsingDB("data")
- _, err = o.Update(varietyPlant, cols...)
- return
- }
- // GetVarietyPlantById 根据品种装置id获取品种装置详情
- func GetVarietyPlantById(id int) (item *VarietyPlant, err error) {
- o := orm.NewOrmUsingDB("data")
- sql := `SELECT * FROM variety_plant WHERE variety_plant_id = ?`
- err = o.Raw(sql, id).QueryRow(&item)
- return
- }
- // GetVarietyPlantByIdList 根据品种装置id列表获取品种装置详情列表
- func GetVarietyPlantByIdList(idList []int) (items []*VarietyPlant, err error) {
- num := len(idList)
- if num <= 0 {
- return
- }
- o := orm.NewOrmUsingDB("data")
- sql := `SELECT * FROM variety_plant WHERE variety_plant_id in (` + utils.GetOrmInReplace(num) + `)`
- _, err = o.Raw(sql, idList).QueryRows(&items)
- return
- }
- // VarietyPlantItem 品种装置数据(展示使用)
- type VarietyPlantItem struct {
- VarietyPlantId int `orm:"column(variety_plant_id);pk"`
- VarietyId int `description:"品种id"`
- Province string `description:"所属省份"`
- City string `description:"所属城市"`
- FactoryName string `description:"工厂名称"`
- PlantName string `description:"装置/产线名称"`
- MaintenanceDate string `description:"检修日期"`
- ResumptionDate string `description:"复产日期"`
- AnnualCapacity float64 `description:"年产能"`
- Coefficient float64 `description:"降负系数"`
- AverageDailyCapacityReduction float64 `description:"日均产量减量"`
- Day int `description:"时长"`
- CapacityReduction float64 `description:"期间减量"`
- IsStop int `description:"是否停产,0:未停产;1:停产;默认未停产"`
- Sort int `description:"排序字段,越小越靠前"`
- SysUserId int `description:"添加人id"`
- SysUserRealName string `description:"添加人真实姓名"`
- ModifyTime string `description:"最近一次更新时间"`
- CreateTime string `description:"添加时间"`
- Button VarietyPlantButton `description:"操作按钮权限"`
- }
- type VarietyPlantButton struct {
- Edit bool `description:"操作权限"`
- Delete bool `description:"删除权限"`
- }
- // GetAllVarietyPlantByVarietyId 根据品种id获取所有的装置
- func GetAllVarietyPlantByVarietyId(varietyId int) (items []*VarietyPlantItem, err error) {
- o := orm.NewOrmUsingDB("data")
- sql := `SELECT * FROM variety_plant a WHERE variety_id = ? ORDER BY sort ASC, variety_plant_id ASC `
- _, err = o.Raw(sql, varietyId).QueryRows(&items)
- return
- }
- // GetCountVarietyPlantByVarietyId 根据品种id获取所有的装置数量
- func GetCountVarietyPlantByVarietyId(varietyId int) (total int, err error) {
- o := orm.NewOrmUsingDB("data")
- sql := `SELECT count(1) total FROM variety_plant a WHERE variety_id = ? `
- err = o.Raw(sql, varietyId).QueryRow(&total)
- return
- }
- // DeleteVarietyPlantById 根据装置id删除
- func DeleteVarietyPlantById(id int) (err error) {
- o := orm.NewOrmUsingDB("data")
- sql := `DELETE FROM variety_plant WHERE variety_plant_id = ?`
- _, err = o.Raw(sql, id).Exec()
- return
- }
- // UpdateEdbInfoSortByPrevId 根据上一层级id更新排序
- func UpdateEdbInfoSortByPrevId(varietyId, prevVarietyId, nowSort int, updateSort string) (err error) {
- o := orm.NewOrmUsingDB("data")
- sql := `UPDATE variety_plant set sort = ` + updateSort + ` WHERE variety_id=? AND `
- if prevVarietyId > 0 {
- sql += ` ( sort > ? or ( sort=? AND variety_plant_id > ?)) `
- }
- _, err = o.Raw(sql, varietyId, nowSort, nowSort, prevVarietyId).Exec()
- return
- }
- // UpdateEdbInfoSortByNextId 根据下一层级id更新排序
- func UpdateEdbInfoSortByNextId(varietyId, prevVarietyId, nowSort int, updateSort string) (err error) {
- o := orm.NewOrmUsingDB("data")
- sql := `UPDATE variety_plant set sort = ` + updateSort + ` WHERE variety_id=? AND `
- if prevVarietyId > 0 {
- sql += ` ( sort < ? or ( sort=? AND variety_plant_id < ? )) `
- }
- _, err = o.Raw(sql, varietyId, nowSort, nowSort, prevVarietyId).Exec()
- return
- }
|