yujian
2019-01-12 42b206d89cf0a6f4c2bb2567d867d7c479d6edf1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
package com.yeshi.fanli.controller.admin;
 
import java.io.PrintWriter;
import java.math.BigDecimal;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.UUID;
 
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
 
import net.sf.json.JSONObject;
 
import org.springframework.stereotype.Controller;
import org.springframework.util.Base64Utils;
import org.springframework.web.bind.annotation.RequestMapping;
 
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.yeshi.fanli.entity.admin.ReslutOrder;
import com.yeshi.fanli.entity.bus.user.HongBao;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
import com.yeshi.fanli.service.inter.count.TaoBaoOrderCountService;
import com.yeshi.fanli.service.inter.hongbao.HongBaoService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.tag.PageEntity;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import com.yeshi.fanli.vo.order.TaoBaoOrderVO;
 
import org.yeshi.utils.JsonUtil;
 
@Controller
@RequestMapping("admin/new/api/v1/taoBaoOrder")
public class TaoBaoOrderAdminController {
 
    @Resource
    private TaoBaoOrderService taoBaoOrderService;
 
    @Resource
    private TaoBaoOrderCountService taoBaoOrderCountService;
 
    @Resource
    private HongBaoService hongBaoService;
 
    @Resource
    private RedisManager redisManager;
    @Resource
    private UserInfoService userInfoService;
 
    @RequestMapping(value = "query")
    public void query(String callback, Integer pageIndex, Integer pageSize, Integer keyType,
            String key, String startTime, String endTime, Integer state, PrintWriter out) {
        try {
 
            if (pageSize == null || pageSize < 1)
                pageSize = Constant.PAGE_SIZE;
 
            if (pageIndex == null || pageIndex < 1)
                pageIndex = 1;
 
            List<TaoBaoOrderVO> listQuery = taoBaoOrderService.listQuery((pageIndex - 1) * pageSize, pageSize, keyType, key, startTime, endTime, state);
            if (listQuery == null || listQuery.size() == 0) {
                JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("暂无数据"));
                return;
            }
            
            long count= taoBaoOrderService.countQuery(keyType, key, startTime, endTime, state);
            
            int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
            PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
 
            GsonBuilder gsonBuilder = new GsonBuilder();
            gsonBuilder.serializeNulls(); // 重点
            Gson gson = gsonBuilder.setDateFormat("yyyy/MM/dd HH:mm:ss").create();
 
            JSONObject data = new JSONObject();
            data.put("pe", pe);
            data.put("result_list", gson.toJson(listQuery));
            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
            
        } catch (Exception e) {
            e.printStackTrace();
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("操作异常"));
        }
    }
 
    
    
    @RequestMapping(value = "countByType")
    public void countByType(String callback, HttpServletRequest request, PrintWriter out) {
 
        try {
            Map<String, Object> countByOdrerType = taoBaoOrderCountService.countByOdrerType();
 
            JSONObject data = new JSONObject();
            data.put("countType", countByOdrerType);
 
            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
 
        } catch (Exception e) {
            // TODO Auto-generated catch block
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("统计失败"));
            e.printStackTrace();
        }
    }
 
    @RequestMapping(value = "countByDays")
    public void countByDays(String callback, HttpServletRequest request, PrintWriter out) {
 
        try {
            // 统计今日 未失效订单数量 相同订单号合并为一单
            int countToday = taoBaoOrderCountService.countToday();
            // 统计昨日 未失效订单数量 相同订单号合并为一单
            int countYesterday = taoBaoOrderCountService.countYesterday();
 
            JSONObject data = new JSONObject();
            data.put("countToday", countToday);
            data.put("countYesterday", countYesterday);
 
            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
 
        } catch (Exception e) {
            // TODO Auto-generated catch block
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("统计失败"));
            e.printStackTrace();
        }
    }
 
    
}