From 2dff570ccfa532f8c012bc13829b302dd3e1b9d3 Mon Sep 17 00:00:00 2001 From: yujian <yujian> Date: 星期六, 29 十二月 2018 15:39:29 +0800 Subject: [PATCH] Merge branch 'master' into div1 --- fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java | 135 ++++++++++++++++++++++++++++++-------------- 1 files changed, 91 insertions(+), 44 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java index a6d3c50..5d17922 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java @@ -40,7 +40,6 @@ import com.yeshi.fanli.entity.bus.user.ExtractRecord; import com.yeshi.fanli.entity.bus.user.HongBao; import com.yeshi.fanli.entity.bus.user.HongBaoExtra; -import com.yeshi.fanli.entity.bus.user.HongBaoMessage; import com.yeshi.fanli.entity.bus.user.LostOrder; import com.yeshi.fanli.entity.bus.user.MoneyRecord; import com.yeshi.fanli.entity.bus.user.OrderItem; @@ -54,12 +53,15 @@ import com.yeshi.fanli.entity.common.AdminUser; import com.yeshi.fanli.entity.common.Config; import com.yeshi.fanli.entity.goods.CollectionGoodsV2; +import com.yeshi.fanli.entity.goods.CommonGoods; +import com.yeshi.fanli.entity.money.UserMoneyDetail; import com.yeshi.fanli.entity.system.System; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBriefExtra; import com.yeshi.fanli.exception.BindingAccountException; import com.yeshi.fanli.exception.ObjectStateException; import com.yeshi.fanli.exception.goods.CollectionGoodsException; +import com.yeshi.fanli.exception.taobao.TaoKeApiException; import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.AdminUserService; @@ -67,14 +69,12 @@ import com.yeshi.fanli.service.inter.config.SystemService; import com.yeshi.fanli.service.inter.goods.CollectionGoodsV2Service; import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService; -import com.yeshi.fanli.service.inter.hongbao.HongBaoMessageService; import com.yeshi.fanli.service.inter.hongbao.HongBaoService; import com.yeshi.fanli.service.inter.hongbao.ThreeSaleExtraInfoSerivce; import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce; import com.yeshi.fanli.service.inter.order.LostOrderService; import com.yeshi.fanli.service.inter.order.OrderItemServcie; import com.yeshi.fanli.service.inter.order.OrderService; -import com.yeshi.fanli.service.inter.user.AccountDetailsService; import com.yeshi.fanli.service.inter.user.AccountMessageService; import com.yeshi.fanli.service.inter.user.BindingAccountService; import com.yeshi.fanli.service.inter.user.ExtractRecordService; @@ -85,6 +85,7 @@ import com.yeshi.fanli.service.inter.user.UserAccountService; import com.yeshi.fanli.service.inter.user.UserActiveLogService; import com.yeshi.fanli.service.inter.user.UserInfoService; +import com.yeshi.fanli.service.inter.user.UserMoneyDetailService; import com.yeshi.fanli.service.inter.user.WxDownService; import com.yeshi.fanli.util.AESUtil; import com.yeshi.fanli.util.Constant; @@ -97,7 +98,9 @@ import com.yeshi.fanli.util.Utils; import com.yeshi.fanli.util.account.UserUtil; import com.yeshi.fanli.util.email.MailSenderUtil; +import com.yeshi.fanli.util.factory.AccountDetailsFactory; import com.yeshi.fanli.util.taobao.TaoBaoUtil; +import com.yeshi.fanli.util.taobao.TaoKeApiUtil; import com.yeshi.fanli.util.wx.WXLoginUtil; import net.sf.json.JSONArray; @@ -135,9 +138,6 @@ private SystemService systemService; @Resource - private HongBaoMessageService hongBaoMessageService; - - @Resource private ShamUserService shamUserService; @Resource @@ -152,8 +152,6 @@ @Resource private OrderItemServcie orderItemServcie; - @Resource - private AccountDetailsService accountDetailsService; @Resource private AccountMessageService accountMessageService; @@ -181,6 +179,9 @@ @Resource private AdminUserService adminUserService; + + @Resource + private UserMoneyDetailService userMoneyDetailService; private static final String PASSWORD_MAX_ERROR = "password_max_error"; private static final String EXTRACT_MIN_MONEY = "extract_min_money"; @@ -704,16 +705,9 @@ JSONObject data = new JSONObject(); data.put("user", user); Gson gson = new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create(); - String maxError = "5"; - maxError = configService.get(PASSWORD_MAX_ERROR); // 褰撴棩杈撻敊瀵嗙爜鏈�澶氭鏁� - PassWordErrorRecord record = passWordErrorRecordService.getRecord(uid); - int max = Integer.parseInt(maxError); - if (record.getCount() >= max) { - data.put("error", "1"); // 杈惧埌鏈�澶氶檺鍒� - } else { - data.put("error", "0"); - } - data.put("maxError", maxError); + + data.put("error", "0"); + data.put("maxError", 1); String minMoney = configService.get(EXTRACT_MIN_MONEY); // 鍗曠瑪鎻愮幇鐨勬渶灏忛噾棰� String maxMoney = configService.get(EXTRACT_MAX_MONEY); // 鍗曠瑪鎻愮幇鐨勬渶澶ч噾棰� int maxDayCount = Integer.parseInt(configService.get("extract_count_day")); @@ -1253,7 +1247,7 @@ json.put("timeStamp", java.lang.System.currentTimeMillis()); json.put("adminId", 4L); String sign = AESUtil.encrypt(json.toString(), Constant.ADMINH5_AESKEY); - String url=""; + String url = ""; try { url = String.format("%s?from=emailh5&sign=%s", Constant.systemCommonConfig.getExtractNotifyUrl(), URLEncoder.encode(sign, "UTF-8")); @@ -1334,14 +1328,6 @@ data.put("hongBao", GsonUtil.toJsonExpose(hbx)); out.print(JsonUtil.loadTrueResult(data)); LogHelper.userInfo("[ip:" + IPUtil.getRemotIP(request) + "] 鎵撳紑绾㈠寘[id=" + hid + "]鎴愬姛锛�"); - } - - @RequestMapping(value = "getHongBaoMessages", method = RequestMethod.POST) - public void getHongBaoMessages(AcceptData acceptData, PrintWriter out) { - List<HongBaoMessage> list = shamUserService.getManyData(); - JSONObject data = new JSONObject(); - data.put("list", list); - out.print(JsonUtil.loadTrueResult(data)); } @RequestMapping("findLostOrder") @@ -1534,20 +1520,66 @@ List<CollectionGoodsV2> collectionGoodsList = collectionGoodsV2Service.getCollectionGoodsList(uid, page + 1, Constant.PAGE_SIZE); - // List<CollectionGoods> coList = - // collectionGoodsService.findCollectionGoods(uid, page + 1); + List<TaoBaoGoodsBriefExtra> list = new ArrayList<TaoBaoGoodsBriefExtra>(); + long count = collectionGoodsV2Service.getCollectionGoodsCount(uid); JSONObject data = new JSONObject(); - BigDecimal proportion = hongBaoManageService.getFanLiRate(); - List<TaoBaoGoodsBriefExtra> list = new ArrayList<TaoBaoGoodsBriefExtra>(); - collectionGoodsList.parallelStream().forEachOrdered(cg -> { - TaoBaoGoodsBrief goodsBrief = TaoBaoUtil.convert(cg.getCommonGoods()); - goodsBrief.setSalesCount(TaoBaoUtil.getSaleCount(goodsBrief.getBiz30day())); - TaoBaoGoodsBriefExtra taoBaoGoodsBriefExtra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(goodsBrief, - proportion.toString(), ""); - taoBaoGoodsBriefExtra.setCreatetime(cg.getCreateTime()); - list.add(taoBaoGoodsBriefExtra); - }); + + List<TaoBaoGoodsBrief> listTaoKeGoods = new ArrayList<TaoBaoGoodsBrief>(); + if (collectionGoodsList != null && collectionGoodsList.size() > 0) { + + BigDecimal proportion = hongBaoManageService.getFanLiRate(); + + List<Long> listGid = new ArrayList<Long>(); + for (CollectionGoodsV2 collectionGoodsV2 : collectionGoodsList) { + CommonGoods commonGoods = collectionGoodsV2.getCommonGoods(); + if (commonGoods == null) { + continue; + } + listGid.add(commonGoods.getGoodsId()); + } + + try { + // API缃戠粶鎺ュ彛楠岃瘉鏄惁鍦ㄥ敭 + listTaoKeGoods = TaoKeApiUtil.getBatchGoodsInfo(listGid); + } catch (TaoKeApiException e) { + e.printStackTrace(); + } catch (TaobaoGoodsDownException e) { + e.printStackTrace(); + } catch (Exception e) { + e.printStackTrace(); + } + + for (CollectionGoodsV2 collectionGoodsV2 : collectionGoodsList) { + CommonGoods commonGoods = collectionGoodsV2.getCommonGoods(); + if (commonGoods == null) { + continue; + } + + if (listTaoKeGoods != null && listTaoKeGoods.size() > 0) { + int state = 1; // 榛樿鍋滃敭 + Long goodsId = commonGoods.getGoodsId(); + for (TaoBaoGoodsBrief taoKeGoods : listTaoKeGoods) { + Long auctionId = taoKeGoods.getAuctionId(); + if (goodsId == auctionId || goodsId.equals(auctionId)) { + state = 0; // 鍦ㄥ敭 + break; + } + } + commonGoods.setState(state); + } + + TaoBaoGoodsBrief goodsBrief = TaoBaoUtil.convert(commonGoods); + goodsBrief.setSalesCount(TaoBaoUtil.getSaleCount(goodsBrief.getBiz30day())); + TaoBaoGoodsBriefExtra taoBaoGoodsBriefExtra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(goodsBrief, + proportion.toString(), ""); + taoBaoGoodsBriefExtra.setCreatetime(collectionGoodsV2.getCreateTime()); + + list.add(taoBaoGoodsBriefExtra); + } + + } + GsonBuilder builder = new GsonBuilder().registerTypeAdapter(Date.class, new JsonSerializer<Date>() { @Override public JsonElement serialize(Date value, Type theType, JsonSerializationContext context) { @@ -1609,8 +1641,11 @@ @RequestMapping("findAccountDetailsList") public void findAccountDetailsList(AcceptData acceptData, long uid, int page, PrintWriter out) { - List<AccountDetails> list = accountDetailsService.findAccountDetailsList(uid, page); - int count = accountDetailsService.getCount(uid); + List<UserMoneyDetail> detailList = userMoneyDetailService.listByUidWithState(uid, page, Constant.PAGE_SIZE); + List<AccountDetails> list = new ArrayList<>(); + for (UserMoneyDetail detail : detailList) + list.add(AccountDetailsFactory.create(detail)); + long count = userMoneyDetailService.countByUidWithState(uid); JSONObject data = new JSONObject(); data.put("list", GsonUtil.toJsonExpose(list)); data.put("count", count); @@ -1618,9 +1653,21 @@ } @RequestMapping("findAccountDetailsListV2") - public void findAccountDetailsListNew(AcceptData acceptData, long uid, int page, PrintWriter out) { - List<AccountDetails> list = accountDetailsService.findAccountDetailsListWithState(uid, page); - long count = accountDetailsService.getCountWithState(uid); + public void findAccountDetailsListNew(AcceptData acceptData, Long uid, int page, PrintWriter out) { + + if (uid == null) { + out.print(JsonUtil.loadFalseResult(1, "UID涓虹┖")); + return; + } + + List<UserMoneyDetail> detailList = userMoneyDetailService.listByUidWithState(uid, page, Constant.PAGE_SIZE); + + List<AccountDetails> list = new ArrayList<>(); + for (UserMoneyDetail detail : detailList) + list.add(AccountDetailsFactory.create(detail)); + + long count = userMoneyDetailService.countByUidWithState(uid); + JSONObject data = new JSONObject(); JSONArray array = new JSONArray(); for (AccountDetails ad : list) { -- Gitblit v1.8.0