yujian
2019-05-29 6c224068b1ea8c3f92453bef5175e629deaf780f
Merge remote-tracking branch 'origin/master'
6个文件已添加
28个文件已修改
424 ■■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/aspect/ErrorAspect.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/aspect/H5SignValidateAspect.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/aspect/RedisCacheAspect.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/aspect/RequestSerializableAspect.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/aspect/SignValidateAspect.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/AuthCallBackController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/ClientJspController.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/ConfigController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserMsgController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/entity/config/ConstantConfig.java 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/job/UpdateCommonOrderJob.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/job/UpdateDaTaoKeJob.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/job/UpdateOrderJob.java 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/job/UpdateRelationAndSpecialOrderJob.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/job/UpdateTaoBaoGoodsJob.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/log/LogHelper.java 25 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/hongbao/HongBaoV2ServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/monitor/BusinessEmergent110ServiceImpl.java 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/msg/UserOrderMsgNotificationServiceImpl.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/push/XMPushServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoPunishOrderServiceImpl.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserNotificationServiceImpl.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/monitor/BusinessEmergent110Service.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/user/UserNotificationService.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/Constant.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/EmergencyUtil.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/push/PushUtils.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeBaseUtil.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/resource/env-dev/constant.properties 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/resource/env-pro-by/constant.properties 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/resource/env-pro-job/constant.properties 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/resource/env-pro/constant.properties 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/aspect/ErrorAspect.java
@@ -31,11 +31,9 @@
        try {
            obj = joinPoint.proceed(args);
        } catch (Throwable e) {
            try {
                LogHelper.errorDetailInfo(e, getHttpServletParams(request), request.getRequestURI().toString());
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        }
        return obj;
fanli/src/main/java/com/yeshi/fanli/aspect/H5SignValidateAspect.java
@@ -62,12 +62,7 @@
            try {
                return joinPoint.proceed(args);
            } catch (Throwable e) {
                e.printStackTrace();
                try {
                    LogHelper.errorDetailInfo(e, getHttpServletParams(request), request.getRequestURI().toString());
                } catch (Exception e1) {
                    e1.printStackTrace();
                }
            }
        }
fanli/src/main/java/com/yeshi/fanli/aspect/RedisCacheAspect.java
@@ -107,12 +107,8 @@
        try {
            return joinPoint.proceed();
        } catch (Throwable e) {
            e.printStackTrace();
            try {
                LogHelper.errorDetailInfo(e);
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        } finally {
            if (!StringUtil.isNullOrEmpty(cacheKey)) {
                Cache cache = cacheManager.getCache("rsCache");
fanli/src/main/java/com/yeshi/fanli/aspect/RequestSerializableAspect.java
@@ -113,11 +113,8 @@
            return joinPoint.proceed();
        } catch (Throwable e) {
            e.printStackTrace();
            try {
                LogHelper.errorDetailInfo(e);
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        } finally {
            if (!StringUtil.isNullOrEmpty(cacheKey)) {
                Cache cache = cacheManager.getCache("rsCache");
fanli/src/main/java/com/yeshi/fanli/aspect/SignValidateAspect.java
@@ -124,11 +124,7 @@
                }
            } catch (Throwable e) {
                try {
                    LogHelper.errorDetailInfo(e, getHttpServletParams(request), request.getRequestURI().toString());
                } catch (Exception e1) {
                    e1.printStackTrace();
                }
                out.print(JsonUtil.loadFalseResult(90009, "服务器内部错误"));
            }
            return obj;
fanli/src/main/java/com/yeshi/fanli/controller/AuthCallBackController.java
@@ -215,11 +215,7 @@
        } catch (Exception e) {
            errCode = 4;
            try {
                LogHelper.errorDetailInfo(e);
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        }
        try {
fanli/src/main/java/com/yeshi/fanli/controller/ClientJspController.java
@@ -248,10 +248,11 @@
        if ("2".equalsIgnoreCase(ios)) {
            down = DOWNURL;
        }
        if (!state.equals(wxState)) {// 不是微信返回的!
        if (state == null || !state.equals(wxState)) {// 不是微信返回的!
            // request.setAttribute("error", "1");
            return "redirect:" + down;
        }
        if (code == null) {// 用户取消了登陆!
            return "redirect:" + down;
        }
@@ -525,14 +526,10 @@
                }
                out.print(JsonUtil.loadTrueResult(data));
            } catch (Exception e) {
                try {
                    JSONObject rdata = new JSONObject();
                    rdata.put("uid", uid);
                    rdata.put("id", id);
                    LogHelper.errorDetailInfo(e, rdata.toString(), request.getRequestURI());
                } catch (Exception e2) {
                    e2.printStackTrace();
                }
                out.print(JsonUtil.loadFalseResult(1001, "未知错误"));
            }
@@ -540,20 +537,10 @@
            JSONObject data = new JSONObject();
            data.put("uid", uid);
            data.put("id", id);
            try {
                LogHelper.errorDetailInfo(e1, data.toString(), request.getRequestURI());
            } catch (Exception e) {
                e.printStackTrace();
            }
            out.print(JsonUtil.loadFalseResult(e1.getCode(), e1.getMsg()));
        } catch (Exception e) {
            try {
                LogHelper.errorDetailInfo(e);
            } catch (Exception e2) {
                e2.printStackTrace();
            }
        }
    }
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/ConfigController.java
@@ -157,7 +157,7 @@
    @RequestMapping(value = "getWebConfig", method = RequestMethod.POST)
    public void getWebConfig(AcceptData acceptData, String url, PrintWriter out) {
        JSONObject data = new JSONObject();
        if (url != null && (url.contains("s.click") || url.contains("taobao.com") || url.contains("tmall.com"))) {
        if (url != null && (url.contains("s.click") || url.contains("taobao.com") || url.contains("tmall.com")|| url.contains("m.tb.cn"))) {
            data.put("baichuan", true);// 采用阿里百川的方式加载webview
            data.put("goodsDetail", true);// 需要拦截商品详情
        } else {
fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserMsgController.java
@@ -600,7 +600,7 @@
        // 官宣任务
        if (uid != null) {
            MsgCommonDTO guanXuanMsg = msgConfigService.getGuanXuanMsg();
            if (guanXuanMsg != null) {
            if (guanXuanMsg != null&&guanXuanMsg.getShow()==true) {
                boolean read = false;
                UserMsgUnReadNum num = userMsgReadStateService.getReadStateByUid(uid);
                if (num != null && (num.getGuanXuanReadTime() != null
@@ -619,7 +619,7 @@
        // 返利券小助手
        MsgCommonDTO zhuShouMsg = msgConfigService.getZhuShouMsg();
        if (zhuShouMsg != null) {
        if (zhuShouMsg != null&&zhuShouMsg.getShow()==true) {
            boolean read = false;
fanli/src/main/java/com/yeshi/fanli/entity/config/ConstantConfig.java
New file
@@ -0,0 +1,43 @@
package com.yeshi.fanli.entity.config;
import org.yeshi.utils.annotation.Map;
/**
 * 常规配置
 *
 * @author Administrator
 *
 */
public class ConstantConfig {
    @Map("test")
    private String test;
    @Map("task")
    private String task;
    @Map("outnetwork")
    private String outNetWork;
    public String getTest() {
        return test;
    }
    public void setTest(String test) {
        this.test = test;
    }
    public String getTask() {
        return task;
    }
    public void setTask(String task) {
        this.task = task;
    }
    public String getOutNetWork() {
        return outNetWork;
    }
    public void setOutNetWork(String outNetWork) {
        this.outNetWork = outNetWork;
    }
}
fanli/src/main/java/com/yeshi/fanli/job/UpdateCommonOrderJob.java
@@ -117,11 +117,7 @@
        try {
            taoBaoOrderService.addTaoBaoOrderList(orderList);
        } catch (Exception e) {
            try {
                LogHelper.errorDetailInfo(e);
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        }
        if (orderList != null)
@@ -175,11 +171,7 @@
                }
            }
        } catch (Exception e) {
            try {
                LogHelper.errorDetailInfo(e);
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        }
    }
fanli/src/main/java/com/yeshi/fanli/job/UpdateDaTaoKeJob.java
@@ -55,11 +55,7 @@
            qualityFactoryService.autoInsertOrUpadateStorage(autoRule, listgoods, null, null);
        } catch (Exception e) {
            try {
                LogHelper.errorDetailInfo(e);
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        }
    }
@@ -79,11 +75,7 @@
            }).start();
        } catch (Exception e) {
            try {
                LogHelper.errorDetailInfo(e);
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        }
    }
fanli/src/main/java/com/yeshi/fanli/job/UpdateOrderJob.java
@@ -293,11 +293,8 @@
        try {
            taoBaoOrderService.addTaoBaoOrderList(orderList);
        } catch (Exception e) {
            try {
                LogHelper.errorDetailInfo(e);
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        }
        try {
@@ -329,11 +326,7 @@
                }
            }
        } catch (Exception e) {
            try {
                LogHelper.errorDetailInfo(e);
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        }
    }
fanli/src/main/java/com/yeshi/fanli/job/UpdateRelationAndSpecialOrderJob.java
@@ -1,8 +1,5 @@
package com.yeshi.fanli.job;
import java.util.Calendar;
import java.util.Collections;
import java.util.Comparator;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
@@ -19,7 +16,6 @@
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.TimeUtil;
import com.yeshi.fanli.util.taobao.TaoBaoOrderUtil;
import com.yeshi.fanli.util.taobao.TaoKeOrderApiUtil;
@@ -64,11 +60,7 @@
        try {
            taoBaoOrderService.addTaoBaoOrderList(orderList);
        } catch (Exception e) {
            try {
                LogHelper.errorDetailInfo(e);
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        }
        try {
@@ -100,11 +92,7 @@
                }
            }
        } catch (Exception e) {
            try {
                LogHelper.errorDetailInfo(e);
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        }
    }
fanli/src/main/java/com/yeshi/fanli/job/UpdateTaoBaoGoodsJob.java
@@ -47,7 +47,6 @@
    @Resource
    private QualityFlashSaleService qualityFlashSaleService;
    
    // 动态商品更新 ,1个小时更新
    @Scheduled(cron = "0 0 */1 * * ?")
    public void updateActivityGoodsJob() {
@@ -89,11 +88,7 @@
            qualityFactoryService.updateWeight(10, 3);
        } catch (Exception e) {
            try {
                LogHelper.errorDetailInfo(e);
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        }
    }
@@ -122,16 +117,11 @@
                try {
                    CMQManager.getInstance().addNeedUpdateTaoBaoGoodsId(id);
                } catch (Exception e) {
                    try {
                        LogHelper.errorDetailInfo(e);
                    } catch (Exception e1) {
                        e1.printStackTrace();
                    }
                }
            }
        }
    }
    
    /**
     * 定时清理超过6个小时未更新的限时抢购商品
@@ -150,16 +140,11 @@
                if (list == null || list.size() == 0) {
                    break;
                } 
                qualityFlashSaleService.deleteBatchByPrimaryKey(list);
            }
            
        } catch (Exception e) {
            try {
                LogHelper.errorDetailInfo(e);
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        }
    }
fanli/src/main/java/com/yeshi/fanli/log/LogHelper.java
@@ -2,6 +2,7 @@
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintStream;
import java.util.ArrayList;
@@ -92,7 +93,7 @@
        loginLogger.info(obj);
    }
    public static void errorDetailInfo(Throwable e) throws Exception {
    public static void errorDetailInfo(Throwable e) {
        e.printStackTrace();
        String date = TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy_MM_dd");
        String os = System.getProperty("os.name");
@@ -102,20 +103,28 @@
        } else
            filePath = String.format("/usr/local/tomcat8/logs/error_detail_%s.txt", date);
        OutputStream out = new FileOutputStream(new File(filePath), true);
        OutputStream out = null;
        try {
            out = new FileOutputStream(new File(filePath), true);
            PrintStream ps = new PrintStream(out);
            ps.print(TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
            ps.print("\n");
            e.printStackTrace(ps);
            ps.flush();
            ps.close();
        } catch (Exception ee) {
        } finally {
            try {
            out.close();
            } catch (IOException e1) {
                e1.printStackTrace();
            }
        }
    }
    public static void errorDetailInfo(Throwable e, String params, String url) throws Exception {
    public static void errorDetailInfo(Throwable e, String params, String url) {
        e.printStackTrace();
        String date = TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy_MM_dd");
        String os = System.getProperty("os.name");
@@ -124,9 +133,9 @@
            filePath = String.format("C:/logs/error_detail_%s.txt", date);
        } else
            filePath = String.format("/usr/local/tomcat8/logs/error_detail_%s.txt", date);
        OutputStream out = new FileOutputStream(new File(filePath), true);
        OutputStream out = null;
        try {
            out = new FileOutputStream(new File(filePath), true);
            PrintStream ps = new PrintStream(out);
            ps.print(TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
            ps.print("\n");
@@ -137,8 +146,14 @@
            e.printStackTrace(ps);
            ps.flush();
            ps.close();
        } catch (Exception e1) {
        } finally {
            try {
            out.close();
            } catch (IOException e1) {
                e1.printStackTrace();
            }
        }
    }
fanli/src/main/java/com/yeshi/fanli/service/impl/hongbao/HongBaoV2ServiceImpl.java
@@ -183,8 +183,6 @@
                    BigDecimal money = notify.getMoney();
                    switch (t) {
                    case HongBaoV2.TYPE_ZIGOU:
                        userNotificationService.orderFanliStatisticed(uid, orderId, goodsCount, MsgOrderDetail.STATE_FK,
                                null, money);
                        userOrderMsgNotificationService.orderFanLiStatistic(uid, orderId, commonOrder.getPayment(),
                                money, goodsCount, state);
                        break;
fanli/src/main/java/com/yeshi/fanli/service/impl/monitor/BusinessEmergent110ServiceImpl.java
@@ -9,11 +9,9 @@
import org.springframework.stereotype.Service;
import com.yeshi.fanli.exception.SMSException;
import com.yeshi.fanli.service.inter.config.ConfigService;
import com.yeshi.fanli.service.inter.monitor.BusinessEmergent110Service;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.TencentSMSUtil;
import com.yeshi.fanli.util.EmergencyUtil;
@Service
public class BusinessEmergent110ServiceImpl implements BusinessEmergent110Service {
@@ -51,7 +49,8 @@
        if (!exist)
            stList.add(identifyCode);
        if (stList.size() >= limitCount) {// 触发报警
            baoJin(key, "返利券【分享赚】");
            if ("1".equalsIgnoreCase(configService.get("can_send_emergency_msg")))
                EmergencyUtil.baoJin(key, "返利券【分享赚】", phones);
        }
    }
@@ -80,26 +79,38 @@
        if (!exist)
            stList.add(identifyCode);
        if (stList.size() >= limitCount) {// 触发报警
            baoJin(key, "返利券【领券返利】");
        }
    }
    static Map<String, Long> emergentTimeMap = new HashMap<>();
    private void baoJin(String key, String name) {
        if (emergentTimeMap.get(key) == null || System.currentTimeMillis() - emergentTimeMap.get(key) > 1000 * 60 * 2)// 2分钟报警一次
        {
            emergentTimeMap.put(key, System.currentTimeMillis());
            // 发送短信
            if ("1".equalsIgnoreCase(configService.get("can_send_emergency_msg")))
                for (String phone : phones) {
                    try {
                        TencentSMSUtil.sendSingleMsg(phone, Constant.smsConfig.getServiceEmergency()
                                .replace("[签名]", Constant.smsConfig.getSmsSign()).replace("[服务名字]", name));
                    } catch (SMSException e) {
                        e.printStackTrace();
                EmergencyUtil.baoJin(key, "返利券【领券返利】", phones);
                    }
                }
    @Override
    public void taoBaoAPPKeyLimitError(String appKey, String identifyCode) {
        // 2分钟内错误 3次触发报警
        String key = "monitor-error-tb-app-limit-" + appKey;
        int timeM = 2;
        int limitCount = 3;
        // 5分钟内错误 5次触发报警
        List<String> stList = map.get(key);
        if (stList == null) {
            stList = new ArrayList<>();
            map.put(key, stList);
        }
        if (System.currentTimeMillis() - shareTime > 1000 * 60 * timeM) {
            stList.clear();
            shareTime = System.currentTimeMillis();
        }
        boolean exist = false;
        for (String code : stList)
            if (identifyCode.equalsIgnoreCase(code)) {
                exist = true;
                break;
            }
        if (!exist)
            stList.add(identifyCode);
        if (stList.size() >= limitCount) {// 触发报警
            if ("1".equalsIgnoreCase(configService.get("can_send_emergency_msg")))
                EmergencyUtil.baoJin(key, "淘宝APPKey请求限制【" + appKey + "】", phones);
        }
    }
fanli/src/main/java/com/yeshi/fanli/service/impl/msg/UserOrderMsgNotificationServiceImpl.java
@@ -8,9 +8,12 @@
import org.springframework.stereotype.Service;
import com.yeshi.fanli.entity.bus.msg.MsgOrderDetail;
import com.yeshi.fanli.exception.PushException;
import com.yeshi.fanli.exception.msg.MsgOrderDetailException;
import com.yeshi.fanli.service.inter.msg.MsgOrderDetailService;
import com.yeshi.fanli.service.inter.msg.UserOrderMsgNotificationService;
import com.yeshi.fanli.service.inter.push.PushService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.factory.msg.MsgOrderDetailFactory;
@Service
@@ -19,18 +22,27 @@
    @Resource
    private MsgOrderDetailService msgOrderDetailService;
    @Resource
    private PushService pushService;
    @Override
    public void orderFanLiStatistic(Long uid, String orderId, BigDecimal payMoney, BigDecimal money, int goodsCount,
            int orderState) {
        MsgOrderDetail detail = MsgOrderDetailFactory.createFanLiOrder(uid, orderId, goodsCount, orderState, payMoney,
                money, null);
        try {
            msgOrderDetailService.addMsgOrderDetail(detail,
                    (payMoney == null || payMoney.compareTo(new BigDecimal(0)) <= 0) ? false : true);
        } catch (MsgOrderDetailException e) {
            e.printStackTrace();
        }
        try {
            pushService.pushZNX(uid, Constant.znxConfig.getFanliOrderStatisticedTitle(),
                    Constant.znxConfig.getFanliOrderStatisticedMsg().replace("[订单号]", orderId), null, null);
        } catch (PushException e) {
            e.printStackTrace();
        }
    }
    @Override
fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java
@@ -123,7 +123,7 @@
    private HongBaoV2Service hongBaoV2Service;
    @Override
    public void processOrder(Map<String, List<TaoBaoOrder>> orders) {
    public synchronized void processOrder(Map<String, List<TaoBaoOrder>> orders) {
        List<TaoBaoUnionConfig> configList = taoBaoUnionConfigService.getConfigByTypeCache(PidUser.TYPE_FANLI_ANDROID);
        // 分离出返利订单与分享赚订单
fanli/src/main/java/com/yeshi/fanli/service/impl/push/XMPushServiceImpl.java
@@ -124,7 +124,7 @@
            JSONObject json = new JSONObject();
            json.put("type", "ZNX");
            json.put("content", contentJson);
            json.put("miPushUrl", String.format("%s.ui.mine.AppMailDetailActivity",
            json.put("miPushUrl", String.format("%s.ui.main.MainActivity",
                    Constant.systemCommonConfig.getAndroidBaseactivityName()));
            // 版本推送
@@ -158,7 +158,7 @@
            JSONObject json = new JSONObject();
            json.put("type", "ZNX");
            json.put("content", contentJson);
            json.put("miPushUrl", String.format("%s.ui.mine.AppMailDetailActivity",
            json.put("miPushUrl", String.format("%s.ui.main.MainActivity",
                    Constant.systemCommonConfig.getAndroidBaseactivityName()));
            // 版本推送
fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoPunishOrderServiceImpl.java
@@ -104,15 +104,15 @@
        Set<String> specialIdSets = new HashSet<>();
        Set<Long> uidSets = new HashSet<>();
        for (TaoBaoPunishOrder order : orderList) {
            if (!StringUtil.isNullOrEmpty(order.getRelationId()))
                relationIdSets.add(order.getRelationId());
            if (!StringUtil.isNullOrEmpty(order.getSpecialId()))
                specialIdSets.add(order.getSpecialId());
            doPunishOrder(order, uidSets);
        }
//        for (TaoBaoPunishOrder order : orderList) {
//            if (!StringUtil.isNullOrEmpty(order.getRelationId()))
//                relationIdSets.add(order.getRelationId());
//
//            if (!StringUtil.isNullOrEmpty(order.getSpecialId()))
//                specialIdSets.add(order.getSpecialId());
//
//            doPunishOrder(order, uidSets);
//        }
        for (Iterator<String> its = relationIdSets.iterator(); its.hasNext();) {
            String relationId = its.next();
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserNotificationServiceImpl.java
@@ -70,19 +70,6 @@
    }
    @Override
    public void orderFanliStatisticed(Long uid, String orderId, int goodsCount, int orderState, BigDecimal payMoney,
            BigDecimal money) {
        if (Constant.IS_TEST)
            return;
        try {
            pushService.pushZNX(uid, Constant.znxConfig.getFanliOrderStatisticedTitle(),
                    Constant.znxConfig.getFanliOrderStatisticedMsg().replace("[订单号]", orderId), null, null);
        } catch (PushException e) {
            e.printStackTrace();
        }
    }
    @Override
    public void tiChengStatisticed(Long uid, String orderId, BigDecimal money) {
        if (Constant.IS_TEST)
            return;
fanli/src/main/java/com/yeshi/fanli/service/inter/monitor/BusinessEmergent110Service.java
@@ -23,4 +23,12 @@
     */
    public void buyTaoBaoGoodsError(String identifyCode);
    /**
     * 淘宝客API请求被限制
     *
     * @param appKey
     * @param identifyCode
     */
    public void taoBaoAPPKeyLimitError(String appKey, String identifyCode);
}
fanli/src/main/java/com/yeshi/fanli/service/inter/user/UserNotificationService.java
@@ -65,18 +65,6 @@
     */
    public void tiChengShareRecieved(Long uid, int orderCount, int goodsCount, BigDecimal balance, BigDecimal money);
    /**
     * 订单被统计
     *
     * @param uid
     * @param orderId
     * @param goodsCount-商品数
     * @param orderState-订单状态
     * @param payMoney-付款金额
     * @param money-佣金
     */
    public void orderFanliStatisticed(Long uid, String orderId, int goodsCount, int orderState, BigDecimal payMoney,
            BigDecimal money);
    /**
     * 提成订单被统计
fanli/src/main/java/com/yeshi/fanli/util/Constant.java
@@ -3,6 +3,7 @@
import java.util.Properties;
import com.yeshi.fanli.entity.config.AlipayConfig;
import com.yeshi.fanli.entity.config.ConstantConfig;
import com.yeshi.fanli.entity.config.SMSConfig;
import com.yeshi.fanli.entity.config.SystemCommonConfig;
import com.yeshi.fanli.entity.config.WXGZConfig;
@@ -13,9 +14,9 @@
public class Constant {
    public static boolean IS_TASK = false;
    // 外网环境
    public static boolean IS_OUTNET = false;
    public static boolean IS_OUTNET = true;
    public static boolean IS_TEST = true;
    public static boolean IS_TEST = false;
    public static int PAGE_SIZE = 20;
    
@@ -106,6 +107,8 @@
    public static ZNXConfig znxConfig;
    public static ConstantConfig constantConfig;
    /**
     * 淘宝商品红包
     */
@@ -195,6 +198,19 @@
            znxConfig = (ZNXConfig) MapUtil.parseMap(ZNXConfig.class, ps);
        }
        if (constantConfig == null) {
            Properties ps = org.yeshi.utils.PropertiesUtil
                    .getProperties(TaoBaoUtil.class.getClassLoader().getResourceAsStream("constant.properties"));
            constantConfig = (ConstantConfig) MapUtil.parseMap(ConstantConfig.class, ps);
            IS_OUTNET = Boolean.parseBoolean(constantConfig.getOutNetWork());
            IS_TASK = Boolean.parseBoolean(constantConfig.getTask());
            IS_TEST = Boolean.parseBoolean(constantConfig.getTest());
            System.out.println("IS_OUTNET:"+IS_OUTNET);
            System.out.println("IS_TASK:"+IS_TASK);
            System.out.println("IS_TEST:"+IS_TEST);
        }
        Extract_Activty = String.format("%s.ui.mine.MyRedPacketsActivity",
                Constant.systemCommonConfig.getAndroidBaseactivityName());
        HB_Activity = String.format("%s.ui.main.MainActivity",
fanli/src/main/java/com/yeshi/fanli/util/EmergencyUtil.java
New file
@@ -0,0 +1,34 @@
package com.yeshi.fanli.util;
import java.util.HashMap;
import java.util.Map;
import com.yeshi.fanli.exception.SMSException;
/**
 * 紧急告警
 *
 * @author Administrator
 *
 */
public class EmergencyUtil {
    static Map<String, Long> emergentTimeMap = new HashMap<>();
    public static void baoJin(String key, String name, String[] phones) {
        if (emergentTimeMap.get(key) == null || System.currentTimeMillis() - emergentTimeMap.get(key) > 1000 * 60 * 2)// 2分钟报警一次
        {
            emergentTimeMap.put(key, System.currentTimeMillis());
            // 发送短信
            for (String phone : phones) {
                try {
                    TencentSMSUtil.sendSingleMsg(phone, Constant.smsConfig.getServiceEmergency()
                            .replace("[签名]", Constant.smsConfig.getSmsSign()).replace("[服务名字]", name));
                } catch (SMSException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}
fanli/src/main/java/com/yeshi/fanli/util/push/PushUtils.java
@@ -33,7 +33,6 @@
        if(Constant.IS_TEST)
            return 1;
        JSONObject mapXm = JSONObject.fromObject(json);
        String android = XiaoMiPushUtil.allPushAndroidForXM(info, mapXm);
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java
@@ -1953,6 +1953,56 @@
        }
        
    }
    //淘礼金创建
    public static void getLiJin()
    {
        Map<String, String> map = new HashMap<>();
        map.put("method", "taobao.tbk.dg.vegas.tlj.create");
        map.put("adzone_id", TaoBaoConstant.TAOBAO_RELATION_PID_DEFAULT.split("_")[3]);
        map.put("item_id", "538982295340");
        map.put("total_num", "1");
        map.put("name", "返利券新人淘礼金红包");
        map.put("user_total_win_num_limit", "1");
        map.put("security_switch", "false");
        map.put("per_face", "1.00");
        map.put("send_start_time", "2019-05-27 00:00:00");
        map.put("send_end_time", "2019-06-01 00:00:00");
        map.put("use_end_time", "1");
        map.put("use_end_time_mode", "1");
        map.put("use_start_time", "2019-05-27 00:00:00");
        TaoKeAppInfo app = new TaoKeAppInfo();
        app.setAppKey( TaoBaoConstant.TAOBAO_AUTH_APPKEY);
        app.setAppSecret( TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
        try {
            JSONObject json = TaoKeBaseUtil.baseRequest(map,app);
            System.out.println(json);
        } catch (TaoKeApiException e) {
            e.printStackTrace();
        }
    }
    //lCj1Alo8b9L4Ed6yJLq6iqJ7%2BkHL3AEW
    public static void getLiJinXG()
    {
        Map<String, String> map = new HashMap<>();
        map.put("method", "taobao.tbk.dg.vegas.tlj.instance.report");
        map.put("rights_id", "ZrIIvF%2Fnd7SlL5Bg59eTK6J7%2BkHL3AEW");
        TaoKeAppInfo app = new TaoKeAppInfo();
        app.setAppKey( TaoBaoConstant.TAOBAO_AUTH_APPKEY);
        app.setAppSecret( TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
        try {
            JSONObject json = TaoKeBaseUtil.baseRequest(map,app);
            System.out.println(json);
        } catch (TaoKeApiException e) {
            e.printStackTrace();
        }
    }
}
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeBaseUtil.java
@@ -10,6 +10,7 @@
import com.yeshi.fanli.exception.taobao.TaoKeApiException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.log.TaoKeLogHelper;
import com.yeshi.fanli.util.EmergencyUtil;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.TaoBaoHttpUtil;
import com.yeshi.fanli.util.TimeUtil;
@@ -121,6 +122,13 @@
                TaoKeLogHelper.error(e.getParams(), e.getMsg());
                if (e.getCode() == TaoKeApiException.CODE_API_ERROR) {
                    result = e.getMsg();
                } else if (e.getCode() == TaoKeApiException.CODE_APPKEY_LIMIT) {
                    try {
                        EmergencyUtil.baoJin("monitor-error-tb-app-limit-" + params.get("app_key"),
                                "淘宝APPKey请求限制【" + params.get("app_key") + "】", new String[] { "18581318252" });
                    } catch (Exception e1) {
                    }
                }
            }
        }
fanli/src/main/resource/env-dev/constant.properties
New file
@@ -0,0 +1,3 @@
task =false
outnetwork =false
test =true
fanli/src/main/resource/env-pro-by/constant.properties
New file
@@ -0,0 +1,3 @@
task =false
outnetwork =true
test =false
fanli/src/main/resource/env-pro-job/constant.properties
New file
@@ -0,0 +1,3 @@
task =true
outnetwork =true
test false
fanli/src/main/resource/env-pro/constant.properties
New file
@@ -0,0 +1,3 @@
task =false
outnetwork =true
test =false