| | |
| | | import java.util.ArrayList;
|
| | | import java.util.Arrays;
|
| | | import java.util.List;
|
| | | import java.util.Map;
|
| | | import java.util.UUID;
|
| | |
|
| | | 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.HttpUtil;
|
| | | import org.yeshi.utils.IPUtil;
|
| | | import org.yeshi.utils.JsonUtil;
|
| | | import org.yeshi.utils.tencentcloud.COSManager;
|
| | |
|
| | | import com.yeshi.fanli.entity.accept.AcceptData;
|
| | | import com.yeshi.fanli.entity.bus.user.CollectionGoods;
|
| | | import com.yeshi.fanli.entity.bus.user.UserInfo;
|
| | | import com.yeshi.fanli.entity.bus.user.WeiXinUser;
|
| | | import com.yeshi.fanli.entity.system.System;
|
| | | import com.yeshi.fanli.entity.goods.CollectionGoodsV2;
|
| | | import com.yeshi.fanli.entity.system.BusinessSystem;
|
| | | import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
|
| | | import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBriefExtra;
|
| | | import com.yeshi.fanli.exception.goods.CollectionGoodsException;
|
| | | import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
|
| | | import com.yeshi.fanli.log.LogHelper;
|
| | | import com.yeshi.fanli.service.inter.config.ConfigService;
|
| | | import com.yeshi.fanli.service.inter.goods.CollectionGoodsService;
|
| | | 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.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.ExtractService;
|
| | | import com.yeshi.fanli.service.inter.user.MoneyRecordService;
|
| | | import com.yeshi.fanli.service.inter.user.PassWordErrorRecordService;
|
| | | import com.yeshi.fanli.service.inter.user.ShamUserService;
|
| | | import com.yeshi.fanli.service.inter.user.UserInfoService;
|
| | | import com.yeshi.fanli.service.inter.user.WxDownService;
|
| | | import com.yeshi.fanli.util.Constant;
|
| | | import com.yeshi.fanli.util.GsonUtil;
|
| | | import com.yeshi.fanli.util.RedisManager;
|
| | | import com.yeshi.fanli.util.StringUtil;
|
| | | import com.yeshi.fanli.util.ThreadUtil;
|
| | | import com.yeshi.fanli.util.taobao.TaoBaoUtil;
|
| | | import com.yeshi.fanli.util.wx.WXLoginUtil;
|
| | | import org.yeshi.utils.HttpUtil;
|
| | | import org.yeshi.utils.IPUtil;
|
| | | import org.yeshi.utils.JsonUtil;
|
| | | import org.yeshi.utils.tencentcloud.COSManager;
|
| | |
|
| | | import net.sf.json.JSONObject;
|
| | |
|
| | | @Controller
|
| | | @RequestMapping("api/xcx/v1/XcxCustomer")
|
| | |
| | |
|
| | | @Resource
|
| | | private OrderService orderService;
|
| | |
|
| | | @Resource
|
| | | private HongBaoService hongBaoService;
|
| | |
|
| | | @Resource
|
| | | private MoneyRecordService moneyRecordService;
|
| | |
|
| | | @Resource
|
| | | private BindingAccountService bindingAccountService;
|
| | |
|
| | | @Resource
|
| | | private ExtractService extractService;
|
| | |
| | | private XcxMiniControllerUtil xcxMiniControllerUtil;
|
| | |
|
| | | @Resource
|
| | | private HongBaoMessageService hongBaoMessageService;
|
| | |
|
| | | @Resource
|
| | | private ShamUserService shamUserService;
|
| | |
|
| | | @Resource
|
| | |
| | |
|
| | | @Resource
|
| | | private LostOrderService lostOrderService;
|
| | |
|
| | | @Resource
|
| | | private OrderItemServcie orderItemServcie;
|
| | |
|
| | | @Resource
|
| | | private AccountDetailsService accountDetailsService;
|
| | |
|
| | | |
| | | @Resource
|
| | | private AccountMessageService accountMessageService;
|
| | |
|
| | | @Resource
|
| | | private CollectionGoodsService collectionGoodsService;
|
| | | private CollectionGoodsV2Service collectionGoodsV2Service;
|
| | | @Resource
|
| | | private HongBaoManageService hongBaoManageService;
|
| | |
|
| | | @Resource
|
| | | private WxDownService wxDownService;
|
| | |
|
| | | @Resource
|
| | | private RedisManager redisManager;
|
| | |
|
| | | /**
|
| | | * 获取用户信息
|
| | |
| | | }
|
| | | }
|
| | | // 不是用ID的登陆的事就多了
|
| | | System system = xcxMiniControllerUtil.getSystem(acceptData);
|
| | | BusinessSystem system = xcxMiniControllerUtil.getSystem(acceptData);
|
| | | if (system == null) {
|
| | | out.print(JsonUtil.loadFalseResult(XcxMiniControllerUtil.NOSYSTEM));
|
| | | return;
|
| | |
| | | // 查询到的用户信息为空,那么需要填充一些用户信息
|
| | | if (loginType == Constant.WEIXIN) {
|
| | | form.setPortrait(weiXinUser.getHeadimgurl());
|
| | | String wxHeadImg = COSManager.getInstance().uploadFile(
|
| | | HttpUtil.getAsInputStream(weiXinUser.getHeadimgurl()),
|
| | | Constant.WXHEADURL + UUID.randomUUID().toString()).getUrl();
|
| | | String wxHeadImg = COSManager.getInstance()
|
| | | .uploadFile(HttpUtil.getAsInputStream(weiXinUser.getHeadimgurl()),
|
| | | Constant.WXHEADURL + UUID.randomUUID().toString())
|
| | | .getUrl();
|
| | | form.setWxPic(wxHeadImg);
|
| | | form.setNickName(weiXinUser.getNickname());
|
| | | form.setWxName(weiXinUser.getNickname());
|
| | |
| | | form.setPortrait(xinUser.getHeadimgurl());
|
| | | form.setNickName(xinUser.getNickname());
|
| | | form.setWxName(xinUser.getNickname());
|
| | | String wxHeadImg = COSManager.getInstance().uploadFile(
|
| | | HttpUtil.getAsInputStream(xinUser.getHeadimgurl()),
|
| | | Constant.WXHEADURL + UUID.randomUUID().toString()).getUrl();
|
| | | String wxHeadImg = COSManager.getInstance()
|
| | | .uploadFile(HttpUtil.getAsInputStream(xinUser.getHeadimgurl()),
|
| | | Constant.WXHEADURL + UUID.randomUUID().toString())
|
| | | .getUrl();
|
| | | form.setWxPic(wxHeadImg);
|
| | | } else if (formLoginType == Constant.TAOBAO) {
|
| | | form.setTbName(form.getNickName());
|
| | |
| | | }
|
| | |
|
| | | private void outUserInfo(PrintWriter out, String remotIP, UserInfo user, String device) {
|
| | | BigDecimal totalmoney = hongBaoService.getTotalHongBaoByUid(user.getId());
|
| | | BigDecimal totalmoney = new BigDecimal(0);
|
| | | user.setTotalHongBao(totalmoney);
|
| | | BigDecimal unOpenmoney = hongBaoService.getUnOpenHongBaoByUid(user.getId());
|
| | | BigDecimal canOpenMoney = hongBaoService.getCanOpenHongBaoByUid(user.getId());
|
| | | BigDecimal unOpenmoney = new BigDecimal(0);
|
| | | BigDecimal canOpenMoney = new BigDecimal(0);
|
| | | user.setNoOpenHongBao(unOpenmoney);
|
| | | user.setCanOpenHongBao(canOpenMoney);
|
| | | JSONObject data = new JSONObject();
|
| | |
| | | */
|
| | | @RequestMapping("collectionGoods")
|
| | | public void collectionGoods(long uid, long auctionId, int type, PrintWriter out) {
|
| | | CollectionGoods find = collectionGoodsService.findByUidAndAuctionId(uid, auctionId);
|
| | | CollectionGoodsV2 find = collectionGoodsV2Service.findByUidAndAuctionId(uid, auctionId);
|
| | | if (type == 1) {
|
| | | if (find != null) {
|
| | | out.print(JsonUtil.loadFalseResult("您已收藏"));
|
| | | out.print(JsonUtil.loadFalseResult(""));
|
| | | return;
|
| | | }
|
| | | CollectionGoods cg = TaoBaoUtil.getCollectionGoods(auctionId, new UserInfo(uid));
|
| | | collectionGoodsService.save(cg);
|
| | | out.print(JsonUtil.loadTrueResult("收藏成功"));
|
| | | return;
|
| | | try {
|
| | | TaoBaoGoodsBrief taoBaoGoodsBrief = redisManager.getTaoBaoGoodsBrief(auctionId);
|
| | | collectionGoodsV2Service.addCollection(uid, taoBaoGoodsBrief);
|
| | | out.print(JsonUtil.loadTrueResult("收藏成功"));
|
| | | } catch (TaobaoGoodsDownException e) {
|
| | | out.print(JsonUtil.loadFalseResult(1, "商品已下架"));
|
| | | } catch (CollectionGoodsException e1) {
|
| | | out.print(JsonUtil.loadFalseResult(e1.getCode(), e1.getMsg()));
|
| | | }
|
| | | } else {
|
| | | if (find == null) {
|
| | | out.print(JsonUtil.loadTrueResult("取消收藏成功"));
|
| | | return;
|
| | | } else {
|
| | | collectionGoodsService.delete(find);
|
| | | out.print(JsonUtil.loadTrueResult("取消收藏成功"));
|
| | | return;
|
| | | try {
|
| | | collectionGoodsV2Service.cancelCollectionByAuctionId(uid, auctionId);
|
| | | out.print(JsonUtil.loadTrueResult("取消收藏成功"));
|
| | | } catch (CollectionGoodsException e) {
|
| | | out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg()));
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | |
| | | */
|
| | | @RequestMapping("collectionGoodsList")
|
| | | public void collectionGoodsList(long uid, int page, int pageSize, PrintWriter out) {
|
| | | List<CollectionGoods> coList = collectionGoodsService.findCollectionGoods(uid, page);
|
| | | int count = collectionGoodsService.getCount(uid);
|
| | | List<CollectionGoodsV2> coList = collectionGoodsV2Service.getCollectionGoodsList(uid, page, pageSize);
|
| | | long count = collectionGoodsV2Service.getCollectionGoodsCount(uid);
|
| | | JSONObject data = new JSONObject();
|
| | | Map<String, String> map = hongBaoManageService.convertMap();
|
| | | String proportion = map.get("hongbao_goods_proportion");
|
| | | String fcRate = map.get("hongbao_fc_ratio");
|
| | | BigDecimal proportion = hongBaoManageService.getFanLiRate();
|
| | | List<TaoBaoGoodsBriefExtra> list = new ArrayList<TaoBaoGoodsBriefExtra>();
|
| | | coList.parallelStream().forEachOrdered(cg -> {
|
| | | TaoBaoGoodsBrief goodsBrief = TaoBaoUtil.getTaoBaoGoodsBrief(cg);
|
| | | TaoBaoGoodsBriefExtra taoBaoGoodsBriefExtra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(goodsBrief, proportion,
|
| | | fcRate,"");
|
| | | TaoBaoGoodsBrief goodsBrief = TaoBaoUtil.convert(cg.getCommonGoods());
|
| | | TaoBaoGoodsBriefExtra taoBaoGoodsBriefExtra = TaoBaoUtil.getTaoBaoGoodsBriefExtra(goodsBrief,
|
| | | proportion.toString(), "");
|
| | | list.add(taoBaoGoodsBriefExtra);
|
| | | });
|
| | | int totalPage = count % pageSize == 0 ? count / pageSize : count / pageSize + 1;
|
| | | int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
|
| | | data.put("totalPage", totalPage);
|
| | | data.put("list", GsonUtil.toJsonExpose(list));
|
| | | data.put("count", count);
|
| | |
| | | public void deleteCollectionGoods(String ids, long uid, PrintWriter out) {
|
| | | if (ids != null) {
|
| | | Arrays.asList(ids.split(",")).parallelStream().forEach(auctionIdStr -> {
|
| | | collectionGoodsService.delete(Long.parseLong(auctionIdStr), uid);
|
| | | try {
|
| | | collectionGoodsV2Service.cancelCollection(uid, Long.parseLong(auctionIdStr));
|
| | | } catch (Exception e) {
|
| | | e.printStackTrace();
|
| | | }
|
| | | });
|
| | |
|
| | | }
|
| | |
| | | */
|
| | | @RequestMapping("clearConllectionGoods")
|
| | | public void clearConllectionGoods(long uid, PrintWriter out) {
|
| | | collectionGoodsService.clear(uid);
|
| | | try {
|
| | | collectionGoodsV2Service.cancelCollectionByUid(uid);
|
| | | } catch (CollectionGoodsException e) {
|
| | | e.printStackTrace();
|
| | | }
|
| | | out.print(JsonUtil.loadTrueResult("删除成功"));
|
| | | }
|
| | |
|