| | |
| | | import java.util.List;
|
| | |
|
| | | import javax.annotation.Resource;
|
| | | import javax.servlet.http.HttpServletRequest;
|
| | | import javax.servlet.http.HttpServletResponse;
|
| | |
|
| | | import org.springframework.stereotype.Controller;
|
| | |
| | | import com.yeshi.fanli.dto.aitaoker.QrcodeLoginDTO;
|
| | | import com.yeshi.fanli.entity.accept.AcceptData;
|
| | | import com.yeshi.fanli.entity.bus.user.UserInfo;
|
| | | import com.yeshi.fanli.entity.bus.user.cloud.CloudOrderMenuEnum;
|
| | | import com.yeshi.fanli.entity.bus.user.cloud.UserCloud;
|
| | | import com.yeshi.fanli.entity.bus.user.cloud.UserCloudGoods;
|
| | | import com.yeshi.fanli.entity.bus.user.cloud.UserCloudGroup;
|
| | |
| | | import com.yeshi.fanli.service.inter.user.cloud.UserCloudService;
|
| | | import com.yeshi.fanli.service.manger.alipay.UserCloudAlipayManager;
|
| | | import com.yeshi.fanli.util.Constant;
|
| | | import com.yeshi.fanli.util.RedisKeyEnum;
|
| | | import com.yeshi.fanli.util.RedisManager;
|
| | | import com.yeshi.fanli.util.StringUtil;
|
| | | import com.yeshi.fanli.util.TimeUtil;
|
| | | import com.yeshi.fanli.util.aitaoker.AitaokerApiUtil;
|
| | |
| | | import com.yeshi.fanli.util.suning.SuningUtil;
|
| | | import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
|
| | | import com.yeshi.fanli.vo.goods.GoodsDetailVO;
|
| | | import com.yeshi.fanli.vo.user.cloud.CloudOrderMenuVO;
|
| | | import com.yeshi.fanli.vo.user.cloud.UserCloudInfoVO;
|
| | |
|
| | | import net.sf.json.JSONArray;
|
| | |
| | |
|
| | | @Resource
|
| | | private ConfigService configService;
|
| | | |
| | | @Resource
|
| | | private RedisManager redisManager;
|
| | | |
| | |
|
| | | /**
|
| | | * 查询开通记录
|
| | |
| | | return;
|
| | | }
|
| | |
|
| | | List<CloudOrderMenuVO> listMenu = new ArrayList<>();
|
| | | CloudOrderMenuEnum[] menus = CloudOrderMenuEnum.values();
|
| | | for (CloudOrderMenuEnum menuEnum: menus) {
|
| | | CloudOrderMenuVO menuVO = new CloudOrderMenuVO();
|
| | | menuVO.setMoney(BigDecimal.valueOf(menuEnum.getMoney()) );
|
| | | menuVO.setType(menuEnum.name());
|
| | | menuVO.setDesc(menuEnum.getDescShow());
|
| | | listMenu.add(menuVO);
|
| | | }
|
| | | |
| | | |
| | | UserCloudInfoVO cloudInfoVO = new UserCloudInfoVO();
|
| | | cloudInfoVO.setNickName(userInfo.getNickName());
|
| | | cloudInfoVO.setPortrait(userInfo.getPortrait());
|
| | | cloudInfoVO.setOpenState(0); // 未开通
|
| | |
|
| | | cloudInfoVO.setListMenu(listMenu);
|
| | | |
| | | |
| | | // 是否开通
|
| | | UserCloud userCloud = userCloudService.getLastByUid(uid);
|
| | | if (userCloud == null) {
|
| | |
| | | * @param out
|
| | | */
|
| | | @RequestMapping(value = "pay")
|
| | | public void pay(String callback, AcceptData acceptData, Long uid, String type, HttpServletResponse response,
|
| | | PrintWriter out) {
|
| | | public void pay(String callback, AcceptData acceptData, Long uid, String type, PrintWriter out) {
|
| | | try {
|
| | | if (uid == null) {
|
| | | JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(1, "用户未登录"));
|
| | |
| | | // 创建支付信息
|
| | | String alipayForm = userCloudAlipayManager.getAlipayForm(uid, type);
|
| | |
|
| | | // 返回信息
|
| | | response.setContentType("text/html;charset=utf-8");
|
| | | PrintWriter print = response.getWriter();
|
| | | // 返回信息 - 缓存到session
|
| | | StringBuilder builder = new StringBuilder();
|
| | | builder.append("<html><head><title>alipay</title></head>");
|
| | | builder.append("<body>" + alipayForm + "</body></html>");
|
| | | JsonUtil.printMode(print, callback, builder.toString());
|
| | | print.close();
|
| | | |
| | | // 缓存到redis- 一分钟
|
| | | String key = RedisKeyEnum.cloudAlipayLink.getKey() + uid + "_" + type;
|
| | | key = StringUtil.Md5(key);
|
| | | redisManager.cacheCommonString(key , builder.toString() , 60*10);
|
| | | |
| | | System.out.println(builder.toString());
|
| | | |
| | | String link = "http://192.168.1.200:8008/fanli/client/v1/cloud/callback/payUrl?key=%s";
|
| | | JSONObject dataObject = new JSONObject();
|
| | | dataObject.put("link", String.format(link, key));
|
| | | JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(dataObject));
|
| | | } catch (Exception e) {
|
| | | JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(1, "创建支付信息失败"));
|
| | | LogHelper.errorDetailInfo(e);
|
| | | }
|
| | | }
|
| | |
|
| | | /**
|
| | | * 支付完成
|
| | | * |
| | | * @param callback
|
| | | * @param acceptData
|
| | | * @param id
|
| | | * @param out
|
| | | */
|
| | | @RequestMapping(value = "payEnd")
|
| | | public void payEnd(String callback, AcceptData acceptData, Long id, PrintWriter out) {
|
| | | if (id == null) {
|
| | | JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(1, "参数信息缺失"));
|
| | | return;
|
| | | }
|
| | | try {
|
| | | userCloudAlipayManager.tradeQueryByOrderId(id);
|
| | | } catch (Exception e) {
|
| | | JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(1, "检测失败"));
|
| | | LogHelper.errorDetailInfo(e);
|
| | | }
|
| | | }
|
| | | |
| | |
|
| | | /**
|
| | | * 动态一键发单
|