| | |
| | | var details []*models.OperationDetails |
| | | for k, v := range listDetails { |
| | | listDetails[k].Product.Amount = listDetails[k].Product.Amount.Add(v.Amount) |
| | | listDetails[k].Product.MoreUnitList = AddMoreUnit(listDetails[k].Product.MoreUnitList, v.MoreUnitList) |
| | | listDetails[k].Product.StockMoreUnitList = AddMoreUnit(listDetails[k].Product.StockMoreUnitList, v.MoreUnitList) |
| | | if err := tx.Save(&listDetails[k].Product).Error; err != nil { |
| | | return err |
| | | } |
| | |
| | | return errors.New(fmt.Sprintf("产品:%v, 多单位数量不够,无法完成出库操作", v.Product.Name)) |
| | | } |
| | | listDetails[k].Product.Amount = listDetails[k].Product.Amount.Sub(v.Amount) |
| | | listDetails[k].Product.StockMoreUnitList = SubMoreUnit(listDetails[k].Product.StockMoreUnitList, v.MoreUnitList) |
| | | if err := models.NewMaterialSearch().SetOrm(tx).Save(&listDetails[k].Product); err != nil { |
| | | return err |
| | | } |