diff --git a/dao/sim_dao.go b/dao/sim_dao.go index 05057b0..a79c9db 100644 --- a/dao/sim_dao.go +++ b/dao/sim_dao.go @@ -122,11 +122,11 @@ func GetChargeInfo(db *sqlx.DB, appID int, printNo string, iccID, beginDate, end sqlOhter := ` FROM pay_order a JOIN apps b ON b.user_id = a.user_id AND b.id = ? AND b.deleted_at = ? - LEFT JOIN printer c ON c.icc_id = a.thing_id AND c.deleted_at = ? - LEFT JOIN sim_flow_income d ON d.order_id = a.order_id + JOIN printer c ON c.icc_id = a.thing_id AND c.deleted_at = ? + JOIN sim_flow_income d ON d.order_id = a.order_id AND d.income_type = ? WHERE 1 = 1 ` - sqlParams := []interface{}{appID, utils.DefaultTimeValue, utils.DefaultTimeValue} + sqlParams := []interface{}{appID, utils.DefaultTimeValue, utils.DefaultTimeValue, model.FlowIncomeTypeUser} if printNo != "" { sqlOhter += " AND c.print_no = ?" sqlParams = append(sqlParams, printNo) diff --git a/services/order.go b/services/order.go index 4fc6b05..05fde2b 100644 --- a/services/order.go +++ b/services/order.go @@ -89,7 +89,7 @@ var ( } } } - err = FlowIncome(db, iccID, flow, unit, model.FlowIncomeTypeUser) + err = FlowIncome(db, iccID, flow, unit, model.FlowIncomeTypeUser, order.OrderID) //冲进去之后重新计算流量超标 sumIncome, _ := dao.GetSimFlowIncomeSum(db, iccID, monthBegin, monthEnd) sumExpend, _ := dao.GetSimFlowExpendSum(db, iccID, monthBegin, monthEnd) diff --git a/services/sim.go b/services/sim.go index 15ccee7..0e9811a 100644 --- a/services/sim.go +++ b/services/sim.go @@ -95,7 +95,7 @@ func SimFlowMonthSettle() { printers, _ := dao.GetPrinters(db, 0, "", 0, 0, 0) for _, v := range printers { if v.IccID != "" { - if err := FlowIncome(db, v.IccID, 30, "MB", model.FlowIncomeTypeJX); err == nil { + if err := FlowIncome(db, v.IccID, 30, "MB", model.FlowIncomeTypeJX, ""); err == nil { //划转后,每个月月初打印机都应该是不缺流量的状态 v.FlowFlag = 0 dao.Update(db, v, "flow_flag") @@ -104,7 +104,7 @@ func SimFlowMonthSettle() { } } -func FlowIncome(db *sqlx.DB, iccID string, flow float64, unit string, incomeType int) (err error) { +func FlowIncome(db *sqlx.DB, iccID string, flow float64, unit string, incomeType int, orderID string) (err error) { var ( now = time.Now() ) @@ -116,6 +116,7 @@ func FlowIncome(db *sqlx.DB, iccID string, flow float64, unit string, incomeType Flow: flow, FlowUnit: unit, IncomeType: incomeType, + OrderID: orderID, } err = dao.Insert(db, flowIncome) return err