feat:兼容Sqlite3,去除Find_in_set函数,将数据拆分读取

This commit is contained in:
henry
2021-11-22 16:48:29 +08:00
parent 405213c376
commit f825e8d1f6
5 changed files with 41 additions and 40 deletions

View File

@ -43,20 +43,21 @@ func (c *Supplier) List(name, mobile string, kind model2.ManageSupplierKind, pag
Order: model2.NewOrder("id", model2.OrderModeToDesc),
}}
if c.TenantID > 0 {
// TODO因不支持此写法故删除此写法
// 根据单位由下往上查看信息
tenantInfo, err := model.NewSysTenant().Parent(c.TenantID)
if err != nil {
return nil, err
}
tenantIDs := make([]uint64, 0)
for _, v := range tenantInfo {
tenantIDs = append(tenantIDs, v.ID)
}
where = append(where, &model2.ModelWhereOrder{
Where: model2.NewWhereIn("tenant_id", tenantIDs),
})
//tenantInfo, err := model.NewSysTenant().Parent(c.TenantID)
//
//if err != nil {
// return nil, err
//}
//tenantIDs := make([]uint64, 0)
//
//for _, v := range tenantInfo {
// tenantIDs = append(tenantIDs, v.ID)
//}
//where = append(where, &model2.ModelWhereOrder{
// Where: model2.NewWhereIn("tenant_id", tenantIDs),
//})
}
if name != "" {
where = append(where, &model2.ModelWhereOrder{

View File

@ -104,7 +104,7 @@ func (c *Instance) material(tx *gorm.DB, material []*InstanceLaunchParamsForMate
workMaterials := make([]*model2.WorkMaterial, 0)
for _, v := range material {
if v.ID <= 0 || v.SupplierID <= 0 || v.Number <= 0 {
if v.ID <= 0 || v.SupplierID <= 0 {
return errors.New("操作错误,器材参数不完全")
}
workMaterials = append(workMaterials, &model2.WorkMaterial{
@ -120,13 +120,15 @@ func (c *Instance) material(tx *gorm.DB, material []*InstanceLaunchParamsForMate
for _, v := range workMaterials {
v.WorkID = workID
if err := model2.UpdatesWhere(mManageMaterialSupplier.ManageMaterialSupplier, map[string]interface{}{
"frozen_stock": gorm.Expr("frozen_stock + ?", v.MaterialNumber), "updated_at": now,
}, []*model2.ModelWhere{
model2.NewWhere("material_id", v.MaterialID),
model2.NewWhere("supplier_id", v.MaterialSupplierID),
}, tx); err != nil {
return err
if v.MaterialNumber > 0 {
if err := model2.UpdatesWhere(mManageMaterialSupplier.ManageMaterialSupplier, map[string]interface{}{
"frozen_stock": gorm.Expr("frozen_stock + ?", v.MaterialNumber), "updated_at": now,
}, []*model2.ModelWhere{
model2.NewWhere("material_id", v.MaterialID),
model2.NewWhere("supplier_id", v.MaterialSupplierID),
}, tx); err != nil {
return err
}
}
}
mWorkMaterial := model.NewWorkMaterial()