package dao import ( "time" "git.rosy.net.cn/jx-callback/business/model" ) func GetStoreOrderAfterTime(db *DaoDB, storeID int, orderTime time.Time, lastOrderSeqID int64) (orderList []*model.GoodsOrderExt, err error) { sql := ` SELECT t1.*, t2.status waybill_status, t2.courier_name, t2.courier_mobile, t2.actual_fee, t2.desired_fee, t2.waybill_created_at, t2.waybill_finished_at FROM goods_order t1 LEFT JOIN waybill t2 ON t1.vendor_waybill_id = t2.vendor_waybill_id AND t1.waybill_vendor_id = t2.waybill_vendor_id WHERE IF(t1.jx_store_id <> 0, t1.jx_store_id, t1.store_id) = ? AND t1.order_created_at >= ? AND t1.id > ? AND t1.status < ? ORDER BY t1.order_created_at DESC, t1.id DESC; ` sqlParams := []interface{}{ storeID, orderTime, lastOrderSeqID, model.OrderStatusEndBegin, } return orderList, GetRows(db, &orderList, sql, sqlParams...) } func SetOrderPrintFlag(db *DaoDB, userName string, vendorOrderID string, vendorID int, isPrinted bool) (err error) { if isPrinted { err = SetOrderFlag(db, userName, vendorOrderID, vendorID, model.OrderFlagMaskPrinted) } else { err = SetOrderFlag(db, userName, vendorOrderID, vendorID, ^int8(model.OrderFlagMaskPrinted)) } return err } func SetOrderFlag(db *DaoDB, userName string, vendorOrderID string, vendorID int, flag int8) (err error) { _, err = ExecuteSQL(db, ` UPDATE goods_order SET flag = flag | ? WHERE vendor_order_id = ? AND vendor_id = ? `, flag, vendorOrderID, vendorID) return err } func ClearOrderFlag(db *DaoDB, userName string, vendorOrderID string, vendorID int, flag int8) (err error) { _, err = ExecuteSQL(db, ` UPDATE goods_order SET flag = flag & ? WHERE vendor_order_id = ? AND vendor_id = ? `, flag, vendorOrderID, vendorID) return err }