| | |
| | | ProductId: v.ProductId, |
| | | Amount: v.Amount, |
| | | CreateDate: time.Now().Format("2006-01-02 15:04:05"), |
| | | WarehouseId: operation.WarehouseId, |
| | | }); err != nil { |
| | | return err |
| | | } |
| | |
| | | ProductId: v.ProductId, |
| | | Amount: v.Amount, |
| | | CreateDate: time.Now().Format("2006-01-02 15:04:05"), |
| | | WarehouseId: operation.WarehouseId, |
| | | }); err != nil { |
| | | return err |
| | | } |
| | |
| | | } else { |
| | | if locAmount, aok := mapLocAmount[strconv.Itoa(operation.LocationID)+v.ProductId]; aok { |
| | | locAmount.Amount = locAmount.Amount.Add(v.Amount) |
| | | locAmount.ID = uint(locAmount.Id) |
| | | if err := models.NewLocationProductAmountSearch().SetOrm(tx).SetID(int(locAmount.ID)).Save(locAmount); err != nil { |
| | | return err |
| | | } |
| | |
| | | ProductId: v.ProductId, |
| | | Amount: v.Amount, |
| | | CreateDate: time.Now().Format("2006-01-02 15:04:05"), |
| | | WarehouseId: operation.WarehouseId, |
| | | }); err != nil { |
| | | return err |
| | | } |
| | |
| | | if v.IsInternalOutput { |
| | | var inputDetail models.OperationDetails |
| | | mapstructure.Decode(v, &inputDetail) |
| | | inputDetail.Id = 0 |
| | | inputDetail.OperationID = 0 |
| | | internalInputDetails = append(internalInputDetails, &inputDetail) |
| | | } |
| | |
| | | if locAmount.Amount.Equal(v.Amount) { |
| | | continue |
| | | } |
| | | if v.Amount.GreaterThan(locAmount.Amount) { |
| | | if v.Amount.GreaterThan(locAmount.Amount) { //todo 改成stockAmount |
| | | inputDetails = append(inputDetails, &models.OperationDetails{ |
| | | ProductId: v.ProductId, |
| | | Amount: v.Amount.Sub(locAmount.Amount), |