- refactor.

This commit is contained in:
gazebo
2018-07-12 16:19:47 +08:00
parent 6386f1b6f5
commit 1c6ba2e43a
3 changed files with 20 additions and 27 deletions

View File

@@ -56,8 +56,8 @@ func (w *WaybillController) onWaybillNew(bill *model.Waybill) (err error) {
bill.Status = WaybillStatusNew
bill.WaybillFinishedAt = DefaultTimeValue
bill.ID = 0
created, _, err := db.ReadOrCreate(bill, "VendorWaybillID", "WaybillVendorID")
if err == nil {
created, _, err2 := db.ReadOrCreate(bill, "VendorWaybillID", "WaybillVendorID")
if err = err2; err == nil {
w.WaybillMap.Store(ComposeUniversalOrderID(bill.VendorWaybillID, bill.WaybillVendorID), bill.ID)
if !created {
bill.DuplicatedCount++
@@ -80,10 +80,9 @@ func (w *WaybillController) OnWaybillStatusChanged(bill *model.Waybill) (err err
} else {
db := orm.NewOrm()
isDuplicated, err2 := w.addWaybillStatus(bill, db)
if err2 == nil && !isDuplicated {
err2 = OrderManager.OnWaybillStatusChanged(bill, db)
if err = err2; err == nil && !isDuplicated {
err = OrderManager.OnWaybillStatusChanged(bill, db)
}
err = err2
}
return err
}
@@ -93,8 +92,7 @@ func (w *WaybillController) onWaybillAccepted(bill *model.Waybill) (err error) {
bill.Status = WaybillStatusAccepted
isDuplicated, err := w.addWaybillStatus(bill, db)
if !isDuplicated {
err = w.updateWaybillPKID(bill, db)
if err == nil {
if err = w.updateWaybillPKID(bill, db); err == nil {
utils.CallFuncLogError(func() error {
_, err = db.Update(bill, "CourierName", "CourierMobile")
return err
@@ -119,11 +117,11 @@ func (w *WaybillController) addWaybillStatus(bill *model.Waybill, db orm.Ormer)
bill.VendorStatus = waybillStatus.VendorStatus
utils.CallFuncLogError(func() error {
columns := []string{"Status", "VendorStatus"}
if waybillStatus.Status >= OrderStatusDelivered {
if waybillStatus.Status >= OrderStatusEndBegin {
bill.WaybillFinishedAt = waybillStatus.StatusTime
columns = append(columns, "WaybillFinishedAt")
}
_, err := db.Update(bill, columns...)
_, err = db.Update(bill, columns...)
return err
}, "update waybill")
}
@@ -144,8 +142,7 @@ func (w *WaybillController) waybill2Status(bill *model.Waybill) (retVal *model.O
}
func (w *WaybillController) updateWaybillPKID(bill *model.Waybill, db orm.Ormer) (err error) {
value, ok := w.WaybillMap.Load(ComposeUniversalOrderID(bill.VendorWaybillID, bill.WaybillVendorID))
if !ok {
if value, ok := w.WaybillMap.Load(ComposeUniversalOrderID(bill.VendorWaybillID, bill.WaybillVendorID)); !ok {
err = db.Read(bill, "VendorWaybillID", "WaybillVendorID")
// todo 这里应该要报警,但测试阶段先去掉
// utils.CallFuncLogError(func() error {