admin
2025-02-25 30d8e227e8d823b6c38c3b9c90ac2df03b63befe
fanli/src/main/java/com/yeshi/fanli/controller/admin/ExtractAdminController.java
@@ -7,17 +7,17 @@
import java.net.URLEncoder;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.yeshi.fanli.entity.SystemEnum;
import com.yeshi.fanli.entity.accept.AdminAcceptData;
import com.yeshi.fanli.entity.order.CommonOrder;
import com.yeshi.fanli.service.inter.order.CommonOrderService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@@ -85,6 +85,12 @@
    @Resource
    private CommonOrderCountService commonOrderCountService;
    @Resource
    private CommonOrderService commonOrderService;
    @Resource
    private UserInfoService userInfoService;
    /**
     * 方法说明: 通过提现请求 可jsonP方式
     *
@@ -94,7 +100,7 @@
     * @param request
     */
    @RequestMapping(value = "passExtractJP")
    public void passExtractJP(AdminAcceptData acceptData,String callback, Long id, String code, PrintWriter out, HttpServletRequest request) {
    public void passExtractJP(AdminAcceptData acceptData, String callback, Long id, String code, PrintWriter out, HttpServletRequest request) {
        /* 检验是否登陆 */
        AdminUser admin = (AdminUser) request.getSession().getAttribute(Constant.SESSION_ADMIN);
@@ -140,7 +146,7 @@
     * @author mawurui createTime 2018年3月14日 下午3:15:55
     */
    @RequestMapping(value = "rejectExtractJP")
    public void rejectExtractJP(AdminAcceptData acceptData,String callback, Long id, String code, String reason, PrintWriter out,
    public void rejectExtractJP(AdminAcceptData acceptData, String callback, Long id, String code, String reason, PrintWriter out,
                                HttpServletRequest request) {
        /* 检验是否登陆 */
        AdminUser admin = (AdminUser) request.getSession().getAttribute(Constant.SESSION_ADMIN);
@@ -237,7 +243,7 @@
     * @param out
     */
    @RequestMapping(value = "getFinishRecordList")
    public void getFinishRecordList(AdminAcceptData acceptData,String callback, Integer pageIndex, String key, String startTime, String endTime,
    public void getFinishRecordList(AdminAcceptData acceptData, String callback, Integer pageIndex, String key, String startTime, String endTime,
                                    PrintWriter out) {
        try {
@@ -320,7 +326,7 @@
     * @param request
     */
    @RequestMapping(value = "getMyAuditedList")
    public void getMyAuditedList(AdminAcceptData acceptData,String callback, Integer pageIndex, String key, String timeSlot, Integer state,
    public void getMyAuditedList(AdminAcceptData acceptData, String callback, Integer pageIndex, String key, String timeSlot, Integer state,
                                 PrintWriter out, HttpServletRequest request) {
        try {
@@ -470,15 +476,54 @@
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("请登录"));
            return;
        }
        SystemEnum system = userInfoService.getUserSystem(uid);
        acceptData.setSystem(system);
        // 查询同店铺商品,同商品订单超过一定数量的
        List<Integer> typeList = new ArrayList<>();
        typeList.add(HongBaoV2.TYPE_ZIGOU);
        long sameGoodsOrderCount = commonOrderCountService.countSameGoodsOrderByUidAndHongBaoType(typeList, uid,
        List<Long> goodsIds = commonOrderCountService.listSameGoodsIdByUidAndHongBaoType(typeList, uid,
                Integer.parseInt(configService.getValue(ConfigKeyEnum.adminMinSameGoodsOrderCount.getKey(), acceptData.getSystem())));
        int sameGoodsDangerCount = 0;
        if (goodsIds.size() > 0) {
            for (int i = 0; i < goodsIds.size(); i++) {
                long goodsId = goodsIds.get(i);
                Date minDate = new Date(System.currentTimeMillis() - 1000 * 60 * 60L * 24 * 365L);
                List<CommonOrder> commonOrdersList = commonOrderService.listByGoodsIdAndUidAndMinThirdCreateTime(goodsId, uid, minDate);
                Map<String, Date> cmap = new HashMap<>();
                if (commonOrdersList != null)
                    for (CommonOrder co : commonOrdersList) {
                        if (co.getState() == CommonOrder.STATE_FK || co.getState() == CommonOrder.STATE_JS || co.getState() == CommonOrder.STATE_WQ)
                            cmap.put(co.getOrderNo(), co.getThirdCreateTime());
                    }
                List<Date> dateList = new ArrayList<>();
                for (Iterator<String> its = cmap.keySet().iterator(); its.hasNext(); ) {
                    String orderNo = its.next();
                    dateList.add(cmap.get(orderNo));
                }
                Collections.sort(dateList);
                Date lastDate = null;
                for (Date date : dateList) {
                    if (lastDate != null) {
                        if (Math.abs(date.getTime() - lastDate.getTime()) < 1000 * 60 * 60 * 24L * 15) {
                            sameGoodsDangerCount++;
                            break;
                        }
                    } else {
                        lastDate = date;
                    }
                }
            }
        }
        long sameShopOrderCount = commonOrderCountService.countSameShopOrderByUidAndHongBaoType(typeList, uid,
                Integer.parseInt(configService.getValue(ConfigKeyEnum.adminMinSameShopOrderCount.getKey(), acceptData.getSystem())));
        if (sameGoodsOrderCount > 0 || sameShopOrderCount > 0) {
            String text = (String.format("同店铺:%s 同商品:%s", sameShopOrderCount, sameGoodsOrderCount));
        if (sameGoodsDangerCount>0 || sameShopOrderCount > 0) {
            String text = (String.format("同店铺:%s 同商品:%s", sameShopOrderCount, sameGoodsDangerCount));
            JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(text));
            return;
        }
@@ -491,7 +536,7 @@
     * @param out
     */
    @RequestMapping(value = "getMyAuditedCount")
    public void getMyAuditedCount(AdminAcceptData acceptData,String callback, HttpServletRequest request, PrintWriter out) {
    public void getMyAuditedCount(AdminAcceptData acceptData, String callback, HttpServletRequest request, PrintWriter out) {
        AdminUser admin = (AdminUser) request.getSession().getAttribute(Constant.SESSION_ADMIN);
@@ -531,7 +576,7 @@
     * @param out
     */
    @RequestMapping(value = "getIaskInfo")
    public void getIaskInfo(AdminAcceptData acceptData,String callback, Long extractId, HttpServletRequest request, PrintWriter out) {
    public void getIaskInfo(AdminAcceptData acceptData, String callback, Long extractId, HttpServletRequest request, PrintWriter out) {
        try {
            String surplusTime = "";
@@ -704,7 +749,7 @@
     * @param out
     */
    @RequestMapping(value = "getByUidList")
    public void getByUidList(AdminAcceptData acceptData,String callback, Integer pageIndex, Long uid, HttpServletRequest request,
    public void getByUidList(AdminAcceptData acceptData, String callback, Integer pageIndex, Long uid, HttpServletRequest request,
                             PrintWriter out) {
        try {
            if (uid == null) {
@@ -765,7 +810,7 @@
     * @param out
     */
    @RequestMapping(value = "countByUid")
    public void countByUid(AdminAcceptData acceptData,String callback, Long uid, HttpServletRequest request, PrintWriter out) {
    public void countByUid(AdminAcceptData acceptData, String callback, Long uid, HttpServletRequest request, PrintWriter out) {
        try {
@@ -805,7 +850,7 @@
     * @param out
     */
    @RequestMapping(value = "checkMoney")
    public void checkMoney(AdminAcceptData acceptData,String callback, String uid, PrintWriter out) {
    public void checkMoney(AdminAcceptData acceptData, String callback, String uid, PrintWriter out) {
        if (StringUtil.isNullOrEmpty(uid)) {
            JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("UID不能为空"));
@@ -829,7 +874,7 @@
     * @param out
     */
    @RequestMapping(value = "downAutoExtractTxt")
    public void downAutoExtractTxt(AdminAcceptData acceptData,String callback, HttpServletResponse response, PrintWriter out) {
    public void downAutoExtractTxt(AdminAcceptData acceptData, String callback, HttpServletResponse response, PrintWriter out) {
        try {
            List<String> list = extractService.getAutoExtractOpenIds();
            if (list == null || list.size() <= 1) {
@@ -872,7 +917,7 @@
     * @param out
     */
    @RequestMapping(value = "uploadExcel", method = RequestMethod.POST)
    public void uploadExcel(AdminAcceptData acceptData,@RequestParam("file") CommonsMultipartFile file, PrintWriter out) {
    public void uploadExcel(AdminAcceptData acceptData, @RequestParam("file") CommonsMultipartFile file, PrintWriter out) {
        if (file == null) {
            out.print(JsonUtil.loadFalseResult("上传文件不能为空!"));
            return;
@@ -907,7 +952,7 @@
     * @param out
     */
    @RequestMapping(value = "preAutoUser")
    public void preAutoUser(AdminAcceptData acceptData,String callback, Integer pageIndex, PrintWriter out) {
    public void preAutoUser(AdminAcceptData acceptData, String callback, Integer pageIndex, PrintWriter out) {
        try {
            List<UserInfo> list = extractService.preAutoUser();
            if (list == null || list.isEmpty()) {