1234567891011121314151617181920212223242526272829303132333435363738394041 |
- package manager
- import (
- "reflect"
- "time"
- "zhiyuan/pkg/app"
- orderParam "zhiyuan/pkg/param/order"
- "zhiyuan/pkg/utils"
- "zhiyuan/services/admin"
- "zhiyuan/services/aftersale/order"
- "github.com/gin-gonic/gin"
- )
- func StatisOrder(c *gin.Context) {
- data := map[string]interface{}{}
- orderBaseMap := map[string]interface{}{
- "deleted_at": 0,
- }
- leaderIds, _ := admin.GetAdminByDataAuth(c.GetInt("adminID"))
- if !reflect.DeepEqual(leaderIds, []int{-1}) {
- orderBaseMap["leader in"] = leaderIds
- }
- dayDate := utils.GetZeroTime(time.Now()).Unix()
- data["day_num"], _ = order.Count(utils.MergeMap(map[string]interface{}{"created_at >": dayDate}, orderBaseMap))
- data["confirm"], _ = order.Count(utils.MergeMap(map[string]interface{}{"state": orderParam.State.Allotted.ID}, orderBaseMap))
- data["repairing"], _ = order.Count(utils.MergeMap(map[string]interface{}{"if(state=90,90,if(is_force=0,state,100)) in": []int{
- orderParam.State.Suspending.ID,
- orderParam.State.Repairing.ID,
- orderParam.State.SupConfirmed.ID,
- orderParam.State.Confirmed.ID,
- }}, orderBaseMap))
- data["repaired"], _ = order.Count(utils.MergeMap(map[string]interface{}{"if(state=90,90,if(is_force=0,state,100)) in ": []int{
- orderParam.State.Repaired.ID,
- orderParam.State.Completed.ID,
- orderParam.State.ForceCompleted.ID,
- }}, orderBaseMap))
- data["total"], _ = order.Count(orderBaseMap)
- data["unfinished"] = data["total"].(int64) - data["repaired"].(int64)
- app.Success(c, data)
- }
|