fanli/src/main/java/com/yeshi/fanli/controller/admin/ExtractAdminController.java
@@ -15,11 +15,12 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import net.sf.json.JSONObject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.yeshi.utils.DateUtil; import org.yeshi.utils.IPUtil; import org.yeshi.utils.JsonUtil; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -34,6 +35,7 @@ import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; import com.yeshi.fanli.entity.taobao.TaoBaoOrder; import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder; import com.yeshi.fanli.exception.ExtractException; import com.yeshi.fanli.exception.NotExistObjectException; import com.yeshi.fanli.exception.ObjectStateException; import com.yeshi.fanli.log.LogHelper; @@ -55,9 +57,7 @@ import com.yeshi.fanli.util.TimeUtil; import com.yeshi.fanli.util.taobao.TaoKeApiUtil; import org.yeshi.utils.DateUtil; import org.yeshi.utils.IPUtil; import org.yeshi.utils.JsonUtil; import net.sf.json.JSONObject; @Controller @RequestMapping("admin/new/api/v1/extract") @@ -328,27 +328,12 @@ */ @RequestMapping(value = "checkExtract", method = RequestMethod.POST) public void checkExtract(String uid, PrintWriter out) { JSONObject data = new JSONObject(); // 已到账的红包 int count = hongBaoService.getCount(HongBao.STATE_YILINGQU); if (count == 0) { data.put("code", "0"); //异常 out.print(data); return; } List<Integer> checked = extractService.checkExtract(uid); if (checked != null && checked.size() > 0) { Integer diversity = checked.get(0); if (diversity == 0) { data.put("code", "0");// 异常 } else { data.put("code", "1"); // 正常 } } else { data.put("code", "1"); //正常 try { extractService.checkExtract(uid); data.put("code", "1"); // 正常 } catch (ExtractException e) { data.put("code", "0");// 异常 } out.print(data); } @@ -1401,26 +1386,12 @@ return; } // 已到账的红包 int count = hongBaoService.getCount(HongBao.STATE_YILINGQU); if (count == 0) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("资金异常")); return; } List<Integer> listChecked = extractService.checkExtract(uid); if (listChecked == null || listChecked.size() == 0) { try { extractService.checkExtract(uid); JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("资金正常")); return; } catch (ExtractException e) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg())); } Integer diversity = listChecked.get(0); if (diversity == 0) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("资金异常")); } else { JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("资金正常")); } } } fanli/src/main/java/com/yeshi/fanli/controller/client/ShareController.java
@@ -117,6 +117,9 @@ if (descText.startsWith("\\r\\n")) descText = descText.substring(0); data.put("descText", descText); // data.put("notifyPicture", ""); data.put("notifyDesc", ""); // 添加分享记录 BigDecimal rate = new BigDecimal(hongBaoManageService.get("hongbao_goods_proportion")); fanli/src/main/java/com/yeshi/fanli/dao/mybatis/hongbao/HongBaoMapper.java
@@ -140,6 +140,15 @@ int getCountByUid(@Param("uid") Long uid); /** * 统计已经到账的订单数量 * * @param uid * @param state * @return */ int getCountByUidAndState(@Param("uid") Long uid, @Param("state") int state); /** * 统计记录 失效订单数 * * @param uid fanli/src/main/java/com/yeshi/fanli/exception/ExtractException.java
New file @@ -0,0 +1,30 @@ package com.yeshi.fanli.exception; public class ExtractException extends Exception { private static final long serialVersionUID = 572112205824229000L; private int code; private String msg; public ExtractException() { } public ExtractException(int code, String msg) { this.code = code; this.msg = msg; } public int getCode() { return code; } public String getMsg() { return msg; } @Override public String getMessage() { return this.msg; } } fanli/src/main/java/com/yeshi/fanli/mapping/hongbao/HongBaoMapper.xml
@@ -438,6 +438,13 @@ COALESCE(count(id),0) FROM `yeshi_ec_hongbao` WHERE uid =#{uid} </select> <select id="getCountByUidAndState" resultType="java.lang.Integer"> SELECT COALESCE(count(id),0) FROM `yeshi_ec_hongbao` WHERE uid =#{uid} and state=#{state} </select> <select id="getCountByUidOrder" resultType="java.lang.Long"> SELECT fanli/src/main/java/com/yeshi/fanli/service/impl/user/ExtractServiceImpl.java
@@ -39,15 +39,18 @@ import com.yeshi.fanli.entity.bus.user.Extract; import com.yeshi.fanli.entity.bus.user.ExtractAuditRecord; import com.yeshi.fanli.entity.bus.user.ExtractRecord; import com.yeshi.fanli.entity.bus.user.HongBao; import com.yeshi.fanli.entity.bus.user.MoneyRecord; import com.yeshi.fanli.entity.bus.user.PayInfo; import com.yeshi.fanli.entity.bus.user.UserInfo; import com.yeshi.fanli.entity.common.AdminUser; import com.yeshi.fanli.exception.ExtractException; import com.yeshi.fanli.exception.NotExistObjectException; import com.yeshi.fanli.exception.ObjectStateException; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.config.ConfigService; import com.yeshi.fanli.service.inter.config.SystemConfigService; import com.yeshi.fanli.service.inter.hongbao.HongBaoService; import com.yeshi.fanli.service.inter.push.PushService; import com.yeshi.fanli.service.inter.user.AccountDetailsService; import com.yeshi.fanli.service.inter.user.AccountMessageService; @@ -132,7 +135,7 @@ private SystemMapper systemMapper; @Resource private HongBaoMapper hongBaoService; private HongBaoMapper hongBaoMapper; @Resource private PushService pushService; @@ -502,8 +505,13 @@ } @Override public List<Integer> checkExtract(String uid) { return extractMapper.checkExtract(uid); public void checkExtract(String uid) throws ExtractException { int count = hongBaoMapper.getCountByUidAndState(Long.parseLong(uid), HongBao.STATE_YILINGQU); if (count == 0) throw new ExtractException(1, "没有已到账的红包"); List<Integer> list = extractMapper.checkExtract(uid); if (list != null && list.size() > 0 && list.get(0) == 0) throw new ExtractException(2, "结算资金异常"); } @Override fanli/src/main/java/com/yeshi/fanli/service/inter/user/ExtractService.java
@@ -1,13 +1,13 @@ package com.yeshi.fanli.service.inter.user; import java.math.BigDecimal; import java.util.List; import java.util.Map; import com.yeshi.fanli.entity.bus.user.AlipayTransferResultInfo; import com.yeshi.fanli.entity.bus.user.Extract; import com.yeshi.fanli.entity.common.AdminUser; import com.yeshi.fanli.exception.AlipayAccountException; import com.yeshi.fanli.exception.AlipayTransferException; import com.yeshi.fanli.exception.ExtractException; import com.yeshi.fanli.exception.NotExistObjectException; import com.yeshi.fanli.exception.ObjectStateException; @@ -62,7 +62,7 @@ * @param uid * @return */ public List<Integer> checkExtract(String uid); public void checkExtract(String uid) throws ExtractException ; public Extract selectByPrimaryKey(Long id);