fanli/src/main/java/com/yeshi/fanli/controller/admin/config/PDDAuthAdminController.java
New file @@ -0,0 +1,34 @@ package com.yeshi.fanli.controller.admin.config; import com.yeshi.fanli.entity.accept.AdminAcceptData; import com.yeshi.fanli.service.inter.pdd.PDDAuthService; import com.yeshi.fanli.util.pinduoduo.PinDuoDuoApiUtil; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.yeshi.utils.JsonUtil; import javax.annotation.Resource; import java.io.PrintWriter; @Controller @RequestMapping("admin/new/api/v1/pddauth") public class PDDAuthAdminController { @Resource private PDDAuthService pddAuthService; @RequestMapping("getAuthLink") public void getAuthLink(AdminAcceptData acceptData, Long uid, String callback, PrintWriter out) { if (uid == null) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("用户ID为空")); } try { String link = pddAuthService.createPDDAuthLink(uid, PinDuoDuoApiUtil.PID_FANLI); JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(link)); } catch (Exception e) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMessage())); } } } fanli/src/main/java/com/yeshi/fanli/controller/client/v2/GoodsControllerV2.java
@@ -11,6 +11,7 @@ import com.yeshi.fanli.entity.SystemEnum; import com.yeshi.fanli.entity.SystemFunction; import com.yeshi.fanli.service.inter.pdd.PDDAuthService; import com.yeshi.fanli.service.inter.user.tb.UserExtraTaoBaoInfoService; import com.yeshi.fanli.util.*; import org.json.simple.JSONArray; @@ -209,6 +210,10 @@ @Resource private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService; @Resource private PDDAuthService pddAuthService; private ConfigParamsDTO getParamsDTO(String platform, String version, Long uid, SystemEnum system) { UserLevelEnum level = UserLevelEnum.daRen; @@ -923,7 +928,7 @@ return; } PDDGoodsDetail pddGoods = PinDuoDuoApiUtil.getGoodsDetail(id,PinDuoDuoApiUtil.PID_FANLI,uid+""); PDDGoodsDetail pddGoods = PinDuoDuoApiUtil.getGoodsDetail(id, PinDuoDuoApiUtil.PID_FANLI, pddAuthService.getFanliCustomParams(uid)); if (pddGoods == null) { out.print(JsonUtil.loadFalseResult(2, "商品不存在")); return; @@ -1066,6 +1071,14 @@ if (VersionUtil.greaterThan_2_1_2(acceptData.getPlatform(), acceptData.getVersion())) { getCloudInfo(acceptData, uid, goodsDetail, extraVO); // 云发单文案信息 } if (extraVO.getListCouponUser() == null) { extraVO.setListCouponUser(new ArrayList<>()); } if (extraVO.getListShareUser() == null) { extraVO.setListShareUser(new ArrayList<>()); } // 免单商品 @@ -1214,6 +1227,14 @@ shareInfoVO.setHelpLink(helpLink); extraVO.setShare(shareInfoVO); if (extraVO.getListShareUser() == null) { extraVO.setListShareUser(new ArrayList<>()); } if (extraVO.getListCouponUser() == null) { extraVO.setListCouponUser(new ArrayList<>()); } // 云发单文案信息 getCloudInfo(acceptData, uid, goodsDetail, extraVO); @@ -1347,6 +1368,14 @@ ShareVO shareInfoVO = new ShareVO(); shareInfoVO.setHelpLink(helpLink); extraVO.setShare(shareInfoVO); if (extraVO.getListShareUser() == null) { extraVO.setListShareUser(new ArrayList<>()); } if (extraVO.getListCouponUser() == null) { extraVO.setListCouponUser(new ArrayList<>()); } // 云发单文案信息 getCloudInfo(acceptData, uid, goodsDetail, extraVO); @@ -1782,8 +1811,9 @@ } //TODO 是否需要返回绑定链接 boolean auth = PinDuoDuoApiUtil.isAuth(pid, uid + ""); PDDPromotionUrl convertUrl = PinDuoDuoApiUtil.convert(id, pid + "", uid + "", !auth); String customParams = pddAuthService.getFanliCustomParams(uid); boolean auth = PinDuoDuoApiUtil.isAuth(pid, customParams); PDDPromotionUrl convertUrl = PinDuoDuoApiUtil.convert(id, pid + "", customParams, !auth); JSONObject data = new JSONObject(); data.put("native", true); data.put("jumpLink", convertUrl.getUrl()); fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java
@@ -9,6 +9,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpSession; import com.yeshi.fanli.service.inter.pdd.PDDAuthService; import com.yeshi.fanli.service.inter.user.tb.UserExtraTaoBaoInfoService; import org.springframework.core.task.TaskExecutor; import org.springframework.stereotype.Controller; @@ -139,6 +140,9 @@ @Resource private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService; @Resource private PDDAuthService pddAuthService; /** @@ -978,8 +982,16 @@ int count = 0; JSONObject data = new JSONObject(); JSONArray array = new JSONArray(); String customParams = Constant.PDD_SEARCH_CUSTOMER_PARAMS; PDDGoodsResult result = PinDuoDuoApiUtil.searchGoods(pddfilter,Constant.PDD_SEARCH_CUSTOMER_PARAMS); if (uid != null) { String cp = pddAuthService.getFanliCustomParams(uid); if (PinDuoDuoApiUtil.isAuth(PinDuoDuoApiUtil.PID_FANLI, cp)) { customParams = cp; } } PDDGoodsResult result = PinDuoDuoApiUtil.searchGoods(pddfilter, customParams); if (result != null) { count = result.getTotalCount(); Gson gson = JsonUtil.getApiCommonGson(); fanli/src/main/java/com/yeshi/fanli/controller/h5/H5PDDGoodsController.java
@@ -1,10 +1,14 @@ package com.yeshi.fanli.controller.h5; import java.io.PrintWriter; import java.util.Arrays; import java.util.List; import javax.annotation.Resource; import com.yeshi.fanli.dto.pdd.PDDGoodsDetail; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.pinduoduo.PinDuoDuoApiUtil; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @@ -34,8 +38,12 @@ out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult("请上传商品ID"))); return; } List<String> list = pddGoodsService.getDetailImageList(id); out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(list))); PDDGoodsDetail pddGoods = PinDuoDuoApiUtil.getGoodsDetail(id, PinDuoDuoApiUtil.PID_FANLI, Constant.PDD_SEARCH_CUSTOMER_PARAMS); if (pddGoods != null) { out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(Arrays.asList(pddGoods.getGoodsGalleryUrls())))); } } } fanli/src/main/java/com/yeshi/fanli/dao/pdd/UserPDDAuthRecordDao.java
New file @@ -0,0 +1,97 @@ package com.yeshi.fanli.dao.pdd; import com.yeshi.common.MongodbBaseDao; import com.yeshi.fanli.entity.pdd.UserPDDAuthRecord; import org.springframework.data.domain.Sort; import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Query; import org.springframework.data.mongodb.core.query.Update; import org.springframework.stereotype.Repository; import java.util.ArrayList; import java.util.Date; import java.util.List; @Repository public class UserPDDAuthRecordDao extends MongodbBaseDao<UserPDDAuthRecord> { private Criteria[] getWheres(DaoQuery daoQuery) { List<Criteria> whereList = new ArrayList<>(); if (daoQuery.success != null) { whereList.add(Criteria.where("success").is(daoQuery.success)); } if (daoQuery.minCreateTime != null) { whereList.add(Criteria.where("createTime").gte(daoQuery.minCreateTime)); } if (daoQuery.uid != null) { whereList.add(Criteria.where("uid").is(daoQuery.uid)); } Criteria[] wheres = new Criteria[whereList.size()]; whereList.toArray(wheres); return wheres; } public List<UserPDDAuthRecord> list(DaoQuery daoQuery) { Query query = new Query(); query.addCriteria(new Criteria().andOperator(getWheres(daoQuery))); query.skip(daoQuery.start); query.limit(daoQuery.count); if (daoQuery.sortList != null && daoQuery.sortList.size() > 0) query.with(new Sort(daoQuery.sortList)); return findList(query); } public long count(DaoQuery daoQuery) { Query query = new Query(); query.addCriteria(new Criteria().andOperator(getWheres(daoQuery))); return count(query); } public void updateSelectiveByPrimaryKey(UserPDDAuthRecord record) { Query query = new Query(); query.addCriteria(Criteria.where("id").is(record.getId())); Update update = new Update(); if (record.getSuccess() != null) { update.set("success", record.getSuccess()); } if (record.getCustomParams() != null) { update.set("customParams", record.getCustomParams()); } if (record.getPid() != null) { update.set("pid", record.getPid()); } if (record.getSuccessTime() != null) { update.set("successTime", record.getSuccessTime()); } if (record.getUid() != null) { update.set("uid", record.getUid()); } update(query, update); } public UserPDDAuthRecord selectByPidAndCustomParams(String pid, String customParams) { Query query = new Query(); query.addCriteria(Criteria.where("pid").is(pid).and("customParams").is(customParams)); return findOne(query); } public static class DaoQuery { public Boolean success; public Date minCreateTime; public int start; public int count; public Long uid; public List<Sort.Order> sortList; } } fanli/src/main/java/com/yeshi/fanli/dao/user/UserGoodsChannelConfigDao.java
@@ -20,6 +20,9 @@ if (config.getPddFanliCustomerParams() != null) { update.set("pddFanliCustomerParams", config.getPddFanliCustomerParams()); } if (config.getPddFanliPid() != null) { update.set("pddFanliPid", config.getPddFanliPid()); } config.setUpdateTime(new Date()); update(query, update); } fanli/src/main/java/com/yeshi/fanli/entity/goods/UserGoodsChannelConfig.java
@@ -17,6 +17,9 @@ //拼多多自购的CustomerParams private String pddFanliCustomerParams; //拼多多返利PID private String pddFanliPid; private Date createTime; private Date updateTime; @@ -53,4 +56,12 @@ public void setUpdateTime(Date updateTime) { this.updateTime = updateTime; } public String getPddFanliPid() { return pddFanliPid; } public void setPddFanliPid(String pddFanliPid) { this.pddFanliPid = pddFanliPid; } } fanli/src/main/java/com/yeshi/fanli/entity/pdd/UserPDDAuthRecord.java
New file @@ -0,0 +1,97 @@ package com.yeshi.fanli.entity.pdd; import org.springframework.data.mongodb.core.mapping.Document; import java.util.Date; @Document(collection = "userPDDAuthRecord") public class UserPDDAuthRecord { private String id; private Long uid; private String pid; private String customParams; //是否成功 private Boolean success; //成功时间 private Date successTime; //创建时间 private Date createTime; //更新时间 private Date updateTime; public static String createId(String pid, String customParams) { return pid + "#" + customParams; } public String getId() { return id; } public void setId(String id) { this.id = id; } public Long getUid() { return uid; } public void setUid(Long uid) { this.uid = uid; } public String getPid() { return pid; } public void setPid(String pid) { this.pid = pid; } public String getCustomParams() { return customParams; } public void setCustomParams(String customParams) { this.customParams = customParams; } public Boolean getSuccess() { return success; } public void setSuccess(Boolean success) { this.success = success; } public Date getSuccessTime() { return successTime; } public void setSuccessTime(Date successTime) { this.successTime = successTime; } public Date getCreateTime() { return createTime; } public void setCreateTime(Date createTime) { this.createTime = createTime; } public Date getUpdateTime() { return updateTime; } public void setUpdateTime(Date updateTime) { this.updateTime = updateTime; } } fanli/src/main/java/com/yeshi/fanli/job/PDDAuthValidJob.java
New file @@ -0,0 +1,66 @@ package com.yeshi.fanli.job; import com.xxl.job.core.biz.model.ReturnT; import com.xxl.job.core.handler.annotation.XxlJob; import com.yeshi.fanli.entity.AppVersionInfo; import com.yeshi.fanli.entity.SystemEnum; import com.yeshi.fanli.entity.common.Config; import com.yeshi.fanli.entity.pdd.UserPDDAuthRecord; import com.yeshi.fanli.entity.system.ConfigKeyEnum; import com.yeshi.fanli.service.inter.config.AppVersionService; import com.yeshi.fanli.service.inter.config.ConfigService; import com.yeshi.fanli.service.inter.pdd.PDDAuthService; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.pinduoduo.PinDuoDuoApiUtil; import org.springframework.stereotype.Component; import org.yeshi.utils.AppMarketUtil; import javax.annotation.Resource; import java.util.Date; import java.util.List; /** * 拼多多授权验证 */ @Component public class PDDAuthValidJob { @Resource private PDDAuthService pddAuthService; @Resource private ConfigService configService; @XxlJob("pdd-validAuthResult") public ReturnT<String> validAuthResult(String param) throws Exception { Date minCreateTime = new Date(System.currentTimeMillis() - 1000 * 60 * 60L * 24); Long uid = null; if (!StringUtil.isNullOrEmpty(param)) { uid = Long.parseLong(param); } if (uid != null) { UserPDDAuthRecord record = pddAuthService.getLatestRecordByUid(uid); if (record != null && !record.getSuccess()) { boolean auth = PinDuoDuoApiUtil.isAuth(record.getPid(), record.getCustomParams()); if (auth) { pddAuthService.authSuccess(record.getId()); } } } else { List<UserPDDAuthRecord> list = pddAuthService.listNeedValidRecord(minCreateTime, 1, 100); if (list != null) { for (UserPDDAuthRecord record : list) { boolean auth = PinDuoDuoApiUtil.isAuth(record.getPid(), record.getCustomParams()); if (auth) { pddAuthService.authSuccess(record.getId()); } } } } return ReturnT.SUCCESS; } } fanli/src/main/java/com/yeshi/fanli/service/impl/order/HongBaoV2ServiceImpl.java
@@ -252,8 +252,8 @@ HongBaoV2 oldHongBao = hongBaoV2Mapper.selectByPrimaryKeyForUpdate(hongBaoOrder.getHongBaoV2().getId()); if (oldHongBao == null) throw new HongBaoException(10, "红包对象不存在"); // 已经失效,已经领取,新老状态一致的红包不做处理 if (oldHongBao.getState() == HongBaoV2.STATE_SHIXIAO || oldHongBao.getState() == HongBaoV2.STATE_YILINGQU) // 已经失效,已经领取,领取中,新老状态一致的红包不做处理 if (oldHongBao.getState() == HongBaoV2.STATE_SHIXIAO || oldHongBao.getState() == HongBaoV2.STATE_YILINGQU|| oldHongBao.getState() == HongBaoV2.STATE_LINGQUING) return false; SystemEnum system = userInfoService.getUserSystem(commonOrder.getUserInfo().getId()); @@ -342,7 +342,7 @@ List<HongBaoV2> children = hongBaoV2Mapper.listChildrenById(hongBao.getId()); if (children != null && children.size() > 0) for (HongBaoV2 child : children) { if (child.getState() == HongBaoV2.STATE_YILINGQU) if (child.getState() == HongBaoV2.STATE_YILINGQU||child.getState() == HongBaoV2.STATE_LINGQUING) continue; HongBaoV2 childUpdate = new HongBaoV2(child.getId()); @@ -567,7 +567,7 @@ List<HongBaoV2> children = hongBaoV2Mapper.listChildrenById(hongBao.getId()); if (children != null) for (HongBaoV2 child : children) { if (child.getState() == HongBaoV2.STATE_YILINGQU) if (child.getState() == HongBaoV2.STATE_YILINGQU||child.getState() == HongBaoV2.STATE_LINGQUING) continue; HongBaoV2 childUpdate = new HongBaoV2(child.getId()); fanli/src/main/java/com/yeshi/fanli/service/impl/pdd/PDDAuthServiceImpl.java
New file @@ -0,0 +1,123 @@ package com.yeshi.fanli.service.impl.pdd; import com.yeshi.fanli.dao.pdd.UserPDDAuthRecordDao; import com.yeshi.fanli.dao.user.UserGoodsChannelConfigDao; import com.yeshi.fanli.entity.goods.UserGoodsChannelConfig; import com.yeshi.fanli.entity.pdd.UserPDDAuthRecord; import com.yeshi.fanli.service.inter.pdd.PDDAuthService; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.pinduoduo.PinDuoDuoApiUtil; import com.yeshi.fanli.util.pinduoduo.PinDuoDuoUtil; import org.springframework.data.domain.Sort; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.ArrayList; import java.util.Date; import java.util.List; @Service public class PDDAuthServiceImpl implements PDDAuthService { @Resource private UserPDDAuthRecordDao userPDDAuthRecordDao; @Resource private UserGoodsChannelConfigDao userGoodsChannelConfigDao; @Override public String createPDDAuthLink(Long uid, String pid) throws Exception { String customParams = PinDuoDuoUtil.getCustomParams(uid); String link = PinDuoDuoApiUtil.getAuthLink(pid, customParams); if (StringUtil.isNullOrEmpty(link)) { throw new Exception("生成授权链接失败"); } UserPDDAuthRecord record = new UserPDDAuthRecord(); record.setUid(uid); record.setCreateTime(new Date()); record.setPid(pid); record.setCustomParams(customParams); record.setId(UserPDDAuthRecord.createId(pid, customParams)); record.setSuccess(false); if (userPDDAuthRecordDao.get(record.getId()) == null) { userPDDAuthRecordDao.save(record); } return link; } @Override public UserPDDAuthRecord selectByPidAndCustomParams(String pid, String customParams) { return userPDDAuthRecordDao.selectByPidAndCustomParams(pid, customParams); } @Override public List<UserPDDAuthRecord> listNeedValidRecord(Date minCreateTime, int page, int pageSize) { UserPDDAuthRecordDao.DaoQuery query = new UserPDDAuthRecordDao.DaoQuery(); query.success = false; query.minCreateTime = new Date(System.currentTimeMillis() - 1000 * 60 * 60L * 24 * 1); query.start = (page - 1) * pageSize; query.count = pageSize; return userPDDAuthRecordDao.list(query); } @Override public long countNeedValidRecord(Date minCreateTime) { UserPDDAuthRecordDao.DaoQuery query = new UserPDDAuthRecordDao.DaoQuery(); query.success = false; query.minCreateTime = new Date(System.currentTimeMillis() - 1000 * 60 * 60L * 24 * 1); return userPDDAuthRecordDao.count(query); } @Override public void authSuccess(String id) { UserPDDAuthRecord record = userPDDAuthRecordDao.get(id); if (record == null) { return; } UserPDDAuthRecord update = new UserPDDAuthRecord(); update.setId(record.getId()); update.setSuccess(true); update.setSuccessTime(new Date()); userPDDAuthRecordDao.updateSelectiveByPrimaryKey(update); UserGoodsChannelConfig config = userGoodsChannelConfigDao.get(record.getUid()); if (config == null) { config = new UserGoodsChannelConfig(); config.setUid(record.getUid()); config.setPddFanliCustomerParams(record.getCustomParams()); config.setPddFanliPid(record.getPid()); config.setCreateTime(new Date()); userGoodsChannelConfigDao.save(config); } else { UserGoodsChannelConfig updateConfig = new UserGoodsChannelConfig(); updateConfig.setUid(record.getUid()); updateConfig.setPddFanliCustomerParams(record.getCustomParams()); updateConfig.setPddFanliPid(record.getPid()); userGoodsChannelConfigDao.updateSelective(updateConfig); } } @Override public String getFanliCustomParams(Long uid) { UserGoodsChannelConfig config = userGoodsChannelConfigDao.get(uid); if (config == null || StringUtil.isNullOrEmpty(config.getPddFanliCustomerParams())) { return uid + ""; } return config.getPddFanliCustomerParams(); } @Override public UserPDDAuthRecord getLatestRecordByUid(Long uid) { UserPDDAuthRecordDao.DaoQuery query = new UserPDDAuthRecordDao.DaoQuery(); query.uid = uid; List<Sort.Order> orderList = new ArrayList<>(); orderList.add(new Sort.Order(Sort.Direction.DESC, "createTime")); query.sortList = orderList; query.count = 1; List<UserPDDAuthRecord> list = userPDDAuthRecordDao.list(query); return list != null && list.size() > 0 ? list.get(0) : null; } } fanli/src/main/java/com/yeshi/fanli/service/inter/pdd/PDDAuthService.java
New file @@ -0,0 +1,51 @@ package com.yeshi.fanli.service.inter.pdd; import com.yeshi.fanli.entity.pdd.UserPDDAuthRecord; import java.util.Date; import java.util.List; public interface PDDAuthService { /** * 生成拼多多授权链接 * * @param uid * @return */ public String createPDDAuthLink(Long uid, String pid) throws Exception; /** * 查询 * * @param pid * @param customParams * @return */ public UserPDDAuthRecord selectByPidAndCustomParams(String pid, String customParams); /** * 查询需要验证的记录 * * @param page * @param pageSize * @return */ public List<UserPDDAuthRecord> listNeedValidRecord(Date minCreateTime, int page, int pageSize); public long countNeedValidRecord(Date minCreateTime); /** * 验证成功 * * @param id */ public void authSuccess(String id); public String getFanliCustomParams(Long uid); public UserPDDAuthRecord getLatestRecordByUid(Long uid); } fanli/src/main/java/com/yeshi/fanli/service/manger/goods/ConvertLinkManager.java
@@ -11,6 +11,7 @@ import javax.annotation.Resource; import com.yeshi.fanli.service.inter.pdd.PDDAuthService; import org.springframework.stereotype.Component; import org.yeshi.utils.StringUtil; @@ -53,6 +54,9 @@ @Resource private TaoBaoTokenAuctionIdMapManager taoBaoTokenAuctionIdMapManager; @Resource private PDDAuthService pddAuthService; /** * @Title: convertJDLinkFromText @Description:转链文本中的京东短链 @param text @param @@ -102,13 +106,14 @@ List<String> pddShortLink = PinDuoDuoUtil.getPDDShortLinksFromText(text); Set<String> linkSet = new HashSet<>(); Map<String, String> linkMap = new HashMap<>(); if (pddShortLink != null && pddShortLink.size() > 0) { linkSet.addAll(pddShortLink); for (String shortLink : linkSet) { String goodsId = PinDuoDuoUtil.getPDDGoodsId(shortLink); if (!StringUtil.isNullOrEmpty(goodsId)) { PDDPromotionUrl pddUrl = PinDuoDuoApiUtil.convert(Long.parseLong(goodsId), share ? PinDuoDuoApiUtil.PID_SHARE : PinDuoDuoApiUtil.PID_FANLI, uid + "", false); share ? PinDuoDuoApiUtil.PID_SHARE : PinDuoDuoApiUtil.PID_FANLI, pddAuthService.getFanliCustomParams(uid), false); if (pddUrl != null) { linkMap.put(shortLink, pddUrl.getShortUrl()); } fanli/src/main/java/com/yeshi/fanli/service/manger/order/HongBaoV2AddManager.java
@@ -286,7 +286,7 @@ throw new HongBaoException(201, "用户等级为空"); // 已经失效,已经领取,新老状态一致的红包不做处理 if (oldHongBao.getState() == HongBaoV2.STATE_SHIXIAO || oldHongBao.getState() == HongBaoV2.STATE_YILINGQU) if (oldHongBao.getState() == HongBaoV2.STATE_SHIXIAO || oldHongBao.getState() == HongBaoV2.STATE_YILINGQU|| oldHongBao.getState() == HongBaoV2.STATE_LINGQUING) return false; if (type == HongBaoV2.TYPE_ZIGOU) {// 获取自购的返利比例 @@ -352,7 +352,7 @@ List<UserTeamLevel> bossList = getBossList(children); for (HongBaoV2 child : children) { if (child.getState() == HongBaoV2.STATE_YILINGQU) if (child.getState() == HongBaoV2.STATE_YILINGQU||child.getState() == HongBaoV2.STATE_LINGQUING) continue; if (child.getType() == HongBaoV2.TYPE_YIJI) { @@ -457,7 +457,7 @@ if (children != null && children.size() > 0) { List<UserTeamLevel> bossList = getBossList(children); for (HongBaoV2 child : children) { if (child.getState() == HongBaoV2.STATE_YILINGQU) if (child.getState() == HongBaoV2.STATE_YILINGQU||child.getState() == HongBaoV2.STATE_LINGQUING) continue; if (child.getType() == HongBaoV2.TYPE_SHARE_YIJI) { fanli/src/main/java/com/yeshi/fanli/util/pinduoduo/PinDuoDuoUtil.java
@@ -147,7 +147,11 @@ JSONArray array = json.optJSONObject("store").optJSONObject("initDataObj") .optJSONObject("goods").optJSONArray("detailGallery"); for (int j = 0; j < array.size(); j++) { imgList.add("http:" + array.optJSONObject(j).optString("url")); String u = array.optJSONObject(j).optString("url"); if (!u.startsWith("http")) imgList.add("http:" + u); else imgList.add(u); } } } catch (Exception e) { @@ -642,8 +646,8 @@ return urlList; } public static String getCustomParams(String uid) { return uid + "_" + TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyyMMddHH"); public static String getCustomParams(Long uid) { return uid + "_" + TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyyMMdd"); } public static String getUidFromCustomParams(String params) { fanli/src/main/resource/log4j.properties
@@ -5,6 +5,7 @@ ### log4j.appender.stdout = org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target = System.out log4j.appender.stdout.Threshold = DEBUG log4j.appender.stdout.layout = org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n