| | |
| | | import com.taoke.autopay.exception.ChannelAgentException; |
| | | import com.taoke.autopay.factory.AgentFactory; |
| | | import com.taoke.autopay.factory.OrderFactory; |
| | | import com.taoke.autopay.manager.ChannelAgentManager; |
| | | import com.taoke.autopay.service.ClientInfoService; |
| | | import com.taoke.autopay.service.KeyOrderService; |
| | | import com.taoke.autopay.service.SystemConfigService; |
| | |
| | | } |
| | | |
| | | |
| | | @Resource |
| | | private ChannelAgentManager channelAgentManager; |
| | | |
| | | @ResponseBody |
| | | @RequestMapping("add") |
| | | public String addAgent(AdminChannelAgentVO vo) { |
| | | // 创建代理 |
| | | ChannelAgent agent = ChannelAgent.builder() |
| | | .name(vo.getName()) |
| | | .account(vo.getAccount()) |
| | | .pwd(StringUtil.Md5(vo.getPwd())) |
| | | .alipayAccount(StringUtil.isNullOrEmpty(vo.getAlipayAccount()) ? null : vo.getAlipayAccount()) |
| | | .alipayName(StringUtil.isNullOrEmpty(vo.getAlipayName()) ? null : vo.getAlipayName()) |
| | | .status(ChannelAgent.STATUS_NOMAL) |
| | | .build(); |
| | | |
| | | try { |
| | | agent = channelAgentService.addChannelAgent(agent); |
| | | // 添加设置 |
| | | ChannelAgentSettings settings = ChannelAgentSettings.builder() |
| | | .id(agent.getId()) |
| | | .startSubmitTime(StringUtil.isNullOrEmpty(vo.getStartSubmitTime()) ? null : vo.getStartSubmitTime()) |
| | | .endSubmitTime(StringUtil.isNullOrEmpty(vo.getEndSubmitTime()) ? null : vo.getEndSubmitTime()) |
| | | .maxKeyCountPerDay(StringUtil.isNullOrEmpty(vo.getMaxKeyCountPerDay()) ? null : Long.parseLong(vo.getMaxKeyCountPerDay())) |
| | | .maxPayMoneyPerDay(StringUtil.isNullOrEmpty(vo.getMaxPayMoneyPerDay()) ? null : new BigDecimal(vo.getMaxPayMoneyPerDay())) |
| | | .build(); |
| | | channelAgentSettingService.add(settings); |
| | | // 添加分成比例设置 |
| | | if (!StringUtil.isNullOrEmpty(vo.getShareRatioInfos())) { |
| | | JSONObject shareRatioData = JSONObject.fromObject(vo.getShareRatioInfos()); |
| | | for (Object key : shareRatioData.keySet()) { |
| | | String value = shareRatioData.optString(key.toString()); |
| | | OrderChannelEnum channel = OrderChannelEnum.valueOf(key.toString()); |
| | | if (!StringUtil.isNullOrEmpty(value)) { |
| | | channelAgentSharingRatioService.setShareRatio(ChannelAgentSharingRatio.builder().agengId(agent.getId()).orderChannel(channel).shareType(ChannelAgentSharingRatio.SHARE_TYPE_MONEY).shareValue(new BigDecimal(value)).build()); |
| | | } |
| | | } |
| | | } |
| | | ChannelAgent agent= channelAgentManager.addAgent(vo); |
| | | return JsonUtil.loadTrueResult(agent); |
| | | } catch (ChannelAgentException e) { |
| | | return JsonUtil.loadFalseResult(e.getMessage()); |
| | |
| | | .pwd(StringUtil.isNullOrEmpty(vo.getPwd()) ? null :StringUtil.Md5(vo.getPwd())) |
| | | .alipayAccount(StringUtil.isNullOrEmpty(vo.getAlipayAccount()) ? null : vo.getAlipayAccount()) |
| | | .alipayName(StringUtil.isNullOrEmpty(vo.getAlipayName()) ? null : vo.getAlipayName()) |
| | | .shieldedAreas(vo.getShieldedAreas()) |
| | | .build(); |
| | | channelAgentService.updateSelective(agent); |
| | | // 添加设置 |
| | | ChannelAgentSettings settings = ChannelAgentSettings.builder() |
| | | .id(agent.getId()) |
| | | .startSubmitTime(StringUtil.isNullOrEmpty(vo.getStartSubmitTime()) ? null : vo.getStartSubmitTime()) |
| | | .endSubmitTime(StringUtil.isNullOrEmpty(vo.getEndSubmitTime()) ? null : vo.getEndSubmitTime()) |
| | | .maxKeyCountPerDay(StringUtil.isNullOrEmpty(vo.getMaxKeyCountPerDay()) ? null : Long.parseLong(vo.getMaxKeyCountPerDay())) |
| | | .maxPayMoneyPerDay(StringUtil.isNullOrEmpty(vo.getMaxPayMoneyPerDay()) ? null : new BigDecimal(vo.getMaxPayMoneyPerDay())) |
| | | .build(); |
| | | channelAgentSettingService.add(settings); |
| | | // 添加分成比例设置 |
| | | if (!StringUtil.isNullOrEmpty(vo.getShareRatioInfos())) { |
| | | JSONObject shareRatioData = JSONObject.fromObject(vo.getShareRatioInfos()); |
| | | for (Object key : shareRatioData.keySet()) { |
| | | String value = shareRatioData.optString(key.toString()); |
| | | OrderChannelEnum channel = OrderChannelEnum.valueOf(key.toString()); |
| | | if (!StringUtil.isNullOrEmpty(value)) { |
| | | channelAgentSharingRatioService.setShareRatio(ChannelAgentSharingRatio.builder().agengId(agent.getId()).orderChannel(channel).shareType(ChannelAgentSharingRatio.SHARE_TYPE_MONEY).shareValue(new BigDecimal(value)).build()); |
| | | } |
| | | channelAgentService.updateSelective(agent); |
| | | // 添加设置 |
| | | ChannelAgentSettings settings = ChannelAgentSettings.builder() |
| | | .id(agent.getId()) |
| | | .startSubmitTime(StringUtil.isNullOrEmpty(vo.getStartSubmitTime()) ? null : vo.getStartSubmitTime()) |
| | | .endSubmitTime(StringUtil.isNullOrEmpty(vo.getEndSubmitTime()) ? null : vo.getEndSubmitTime()) |
| | | .maxKeyCountPerDay(StringUtil.isNullOrEmpty(vo.getMaxKeyCountPerDay()) ? null : Long.parseLong(vo.getMaxKeyCountPerDay())) |
| | | .maxPayMoneyPerDay(StringUtil.isNullOrEmpty(vo.getMaxPayMoneyPerDay()) ? null : new BigDecimal(vo.getMaxPayMoneyPerDay())) |
| | | .creditEnable(vo.getCreditEnable() != null && vo.getCreditEnable() > 0) |
| | | .build(); |
| | | channelAgentSettingService.add(settings); |
| | | // 添加分成比例设置 |
| | | if (!StringUtil.isNullOrEmpty(vo.getShareRatioInfos())) { |
| | | JSONObject shareRatioData = JSONObject.fromObject(vo.getShareRatioInfos()); |
| | | for (Object key : shareRatioData.keySet()) { |
| | | String value = shareRatioData.optString(key.toString()); |
| | | OrderChannelEnum channel = OrderChannelEnum.valueOf(key.toString()); |
| | | if (!StringUtil.isNullOrEmpty(value)) { |
| | | channelAgentSharingRatioService.setShareRatio(ChannelAgentSharingRatio.builder().agengId(agent.getId()).orderChannel(channel).shareType(ChannelAgentSharingRatio.SHARE_TYPE_MONEY).shareValue(new BigDecimal(value)).build()); |
| | | } |
| | | } |
| | | return JsonUtil.loadTrueResult(agent); |
| | | } |
| | | return JsonUtil.loadTrueResult(agent); |
| | | } |
| | | |
| | | |