ApiMerchantController.java 3.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. package com.ssj.api.controller;
  2. import java.text.DateFormat;
  3. import java.text.SimpleDateFormat;
  4. import java.util.Date;
  5. import java.util.HashMap;
  6. import java.util.Map;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.web.bind.annotation.RequestBody;
  9. import org.springframework.web.bind.annotation.RequestMapping;
  10. import org.springframework.web.bind.annotation.RestController;
  11. import com.ssj.api.domain.vo.merchant.ServiceVo;
  12. import com.ssj.api.security.annotation.IgnoreSecurity;
  13. import com.ssj.bean.sys.fx.domain.Merchant;
  14. import com.ssj.bean.weixin.libmy.domain.TbLibJoinConsume;
  15. import com.ssj.framework.basic.utils.DateHelper;
  16. import com.ssj.framework.core.common.controller.BaseController;
  17. import com.ssj.framework.core.util.ResponseConstant;
  18. import com.ssj.framework.core.util.ResponseEntity;
  19. import com.ssj.service.sys.fx.service.MerchantService;
  20. import com.ssj.service.weixin.library.service.ILibJoinConsumeService;
  21. import io.swagger.annotations.Api;
  22. import io.swagger.annotations.ApiOperation;
  23. @Api(value = "商户相关的", tags = "商户相关的")
  24. @RestController
  25. @RequestMapping("/open/api/merchant")
  26. public class ApiMerchantController extends BaseController {
  27. @Autowired
  28. private MerchantService merchantService;
  29. @Autowired
  30. private ILibJoinConsumeService libJoinConsumeService;
  31. @IgnoreSecurity
  32. @RequestMapping(value = "/service")
  33. @ApiOperation(value = "获取商户套餐信息接口", notes = "获取商户套餐信息接口")
  34. public ResponseEntity getAccessToken(@RequestBody ServiceVo requestVO) {
  35. ResponseEntity responseEntity = new ResponseEntity();
  36. Map<String,Object> data=new HashMap<String, Object>();
  37. try {
  38. Merchant merchant=merchantService.getMerchantByLibId(requestVO.getLibId());
  39. if(merchant!=null) {
  40. //大于2020-10-09才会结算。
  41. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  42. String dateString="2020-10-09";
  43. if(requestVO.getType()==1
  44. && sdf.parse(dateString).getTime()<=new Date().getTime()) {
  45. merchant.setCurIsSummary(1);
  46. merchant.setCurSummaryTime(new Date());
  47. merchant.setNextSummaryTime(DateHelper.getMonthDate(merchant.getCurSummaryTime(),1));
  48. merchantService.save(merchant);
  49. TbLibJoinConsume consume = new TbLibJoinConsume();
  50. consume.setFromLibId(merchant.getLibId());
  51. consume.setFromMerchantId(merchant.getId());
  52. consume.setLibService(merchant.getLibService());
  53. consume.setPlatformService(0);
  54. consume.setType(2);
  55. consume.setRemarks("消费【新模式用户激活消费】 -来源开放接口");
  56. consume.setCreateTime(new Date());
  57. libJoinConsumeService.save(consume);
  58. }
  59. DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
  60. data.put("id", merchant.getId());
  61. data.put("libId", merchant.getLibId());
  62. data.put("summaryTime", merchant.getCurSummaryTime()!=null ? format.format(merchant.getCurSummaryTime()) : "");
  63. data.put("endSummaryTime", merchant.getCurSummaryTime()!=null ? format.format(DateHelper.getMonthDate(merchant.getCurSummaryTime(),merchant.getLibServiceMonth())) : "");
  64. data.put("signType", merchant.getSignType());
  65. data.put("libService", merchant.getLibService());
  66. responseEntity.success(data, "获取商户套餐信息成功");
  67. }else {
  68. responseEntity.failure(ResponseConstant.CODE_500, "libId未绑定商户");
  69. }
  70. } catch (Exception e) {
  71. logger.error("获取商户套餐信息接口", e);
  72. responseEntity.failure(ResponseConstant.CODE_500, "系统繁忙,请稍后重试");
  73. }
  74. return responseEntity;
  75. }
  76. }