|
@@ -1,5 +1,6 @@
|
|
|
package com.ssj.service.sys.fx.service.impl;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.Calendar;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
@@ -108,8 +109,8 @@ public class MerchantSignServiceImpl extends BaseServiceImpl<MerchantSign, Strin
|
|
|
consume.setFromMerchantId(merchant.getId());
|
|
|
consume.setLibService(merchantSign.getLibService());
|
|
|
consume.setPlatformService(0);
|
|
|
- consume.setType(10);
|
|
|
- consume.setComputeNum(merchant.getCurIsSummary());
|
|
|
+ consume.setType(11);
|
|
|
+ consume.setComputeNum(merchantSign.getNum());
|
|
|
consume.setSignType(merchant.getSignType());
|
|
|
consume.setRemarks("加油包失效【加油包过期】");
|
|
|
consume.setCreateTime(new Date());
|
|
@@ -128,6 +129,32 @@ public class MerchantSignServiceImpl extends BaseServiceImpl<MerchantSign, Strin
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ //1.1:处理加油包激活的数据
|
|
|
+ List<MerchantSign> merchantStartSigns=dao.findMerchantSignByStartTime();
|
|
|
+ for (MerchantSign merchantSign : merchantStartSigns) {
|
|
|
+ try {
|
|
|
+ Merchant merchant = merchantService.getById(merchantSign.getMerchantId());
|
|
|
+ merchant.setLibService(merchant.getLibService()+merchantSign.getLibService());
|
|
|
+ merchantService.save(merchant);
|
|
|
+
|
|
|
+ //记录加油包记录
|
|
|
+ TbLibJoinConsume consume=new TbLibJoinConsume();
|
|
|
+ consume.setFromLibId(merchant.getLibId());
|
|
|
+ consume.setFromMerchantId(merchant.getId());
|
|
|
+ consume.setLibService(merchantSign.getLibService());
|
|
|
+ consume.setPlatformService(0);
|
|
|
+ consume.setType(10);
|
|
|
+ consume.setComputeNum(merchantSign.getNum());
|
|
|
+ consume.setSignType(merchant.getSignType());
|
|
|
+ consume.setRemarks("加油包激活【加油包激活】");
|
|
|
+ consume.setCreateTime(new Date());
|
|
|
+ libJoinConsumeService.save(consume);
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ logger.error("1:处理加油包激活数据,异常:"+e.getMessage());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
//2:处理激活日期的数据,生成一条0的激活数据,设置下一个结算日,CurIsSummary=0,免费结算
|
|
|
//注:如果在激活日期之前的时间,也会生成一条0的激活数据,设置下一个结算日,CurIsSummary=0,免费结算
|
|
@@ -333,56 +360,79 @@ public class MerchantSignServiceImpl extends BaseServiceImpl<MerchantSign, Strin
|
|
|
@Override
|
|
|
public void insertMerchantSignAndSync(String merchantId, Integer signType,Integer num) {
|
|
|
Merchant merchant = merchantService.getById(merchantId);
|
|
|
- MerchantSign merchantSign=new MerchantSign();
|
|
|
- merchantSign.setMerchantId(merchantId);
|
|
|
- merchantSign.setSignType(signType);
|
|
|
- merchantSign.setNum(num);
|
|
|
- merchantSign.setStatus(0);
|
|
|
- merchantSign.setCreateTime(new Date());
|
|
|
+ List<MerchantSign> merchantSigns=new ArrayList<MerchantSign>();
|
|
|
|
|
|
Date computeTime=merchant.getComputeTime();
|
|
|
if(computeTime.getTime()<new Date().getTime()) {
|
|
|
computeTime=new Date();
|
|
|
}
|
|
|
+
|
|
|
String remarks="加油包开通【新模式】";
|
|
|
Calendar cal = Calendar.getInstance();
|
|
|
cal.setTime(computeTime);
|
|
|
switch (signType) {
|
|
|
case 4:
|
|
|
remarks="加油包开通【新模式月包】";
|
|
|
- cal.add(Calendar.MONTH, num);
|
|
|
-
|
|
|
- merchantSign.setLibService(10);
|
|
|
- merchantSign.setSignTime(merchant.getComputeTime());
|
|
|
- merchantSign.setEndSignTime(cal.getTime());
|
|
|
+ for (int i = 1; i <=num; i++) {
|
|
|
+ MerchantSign merchantSign=new MerchantSign();
|
|
|
+ merchantSign.setMerchantId(merchantId);
|
|
|
+ merchantSign.setSignType(signType);
|
|
|
+ merchantSign.setNum(1);
|
|
|
+ merchantSign.setStatus(0);
|
|
|
+ merchantSign.setCreateTime(new Date());
|
|
|
+ merchantSign.setLibService(10);
|
|
|
+
|
|
|
+ merchantSign.setSignTime(cal.getTime());
|
|
|
+ cal.add(Calendar.MONTH, 1);
|
|
|
+ merchantSign.setEndSignTime(cal.getTime());
|
|
|
+ merchantSigns.add(merchantSign);
|
|
|
+ }
|
|
|
break;
|
|
|
case 5:
|
|
|
remarks="加油包开通【新模式量包】";
|
|
|
- cal.add(Calendar.MONTH, 1);
|
|
|
+ MerchantSign merchantSign=new MerchantSign();
|
|
|
+ merchantSign.setMerchantId(merchantId);
|
|
|
+ merchantSign.setSignType(signType);
|
|
|
+ merchantSign.setNum(num);
|
|
|
+ merchantSign.setStatus(0);
|
|
|
+ merchantSign.setCreateTime(new Date());
|
|
|
+ merchantSign.setLibService(10);
|
|
|
|
|
|
merchantSign.setLibService(10*num);
|
|
|
- merchantSign.setSignTime(merchant.getComputeTime());
|
|
|
+ merchantSign.setSignTime(cal.getTime());
|
|
|
+ cal.add(Calendar.MONTH, 1);
|
|
|
merchantSign.setEndSignTime(cal.getTime());
|
|
|
+ merchantSigns.add(merchantSign);
|
|
|
+
|
|
|
break;
|
|
|
default:
|
|
|
break;
|
|
|
}
|
|
|
//保存加油包的记录
|
|
|
- this.save(merchantSign);
|
|
|
-
|
|
|
- //增量商户表的人数
|
|
|
- merchant.setLibService(merchant.getLibService()+merchantSign.getLibService());
|
|
|
- merchantService.save(merchant);
|
|
|
-
|
|
|
- //同步商户表与机构表
|
|
|
- this.syncMerchantByLibJoin(merchant);
|
|
|
-
|
|
|
+ this.save(merchantSigns);
|
|
|
+
|
|
|
//记录加油包记录
|
|
|
- for (int i = 1; i <=num; i++) {
|
|
|
+ switch (signType) {
|
|
|
+ case 4:
|
|
|
+ for (int i = 1; i <=num; i++) {
|
|
|
+ TbLibJoinConsume consume=new TbLibJoinConsume();
|
|
|
+ consume.setToLibId(merchant.getLibId());
|
|
|
+ consume.setToMerchantId(merchant.getId());
|
|
|
+ consume.setLibService(10);
|
|
|
+ consume.setPlatformService(0);
|
|
|
+ consume.setType(9);
|
|
|
+ consume.setComputeNum(0);
|
|
|
+ consume.setSignType(merchant.getSignType());
|
|
|
+ consume.setRemarks(remarks);
|
|
|
+ consume.setCreateTime(new Date());
|
|
|
+ libJoinConsumeService.save(consume);
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 5:
|
|
|
TbLibJoinConsume consume=new TbLibJoinConsume();
|
|
|
consume.setToLibId(merchant.getLibId());
|
|
|
consume.setToMerchantId(merchant.getId());
|
|
|
- consume.setLibService(10);
|
|
|
+ consume.setLibService(10*num);
|
|
|
consume.setPlatformService(0);
|
|
|
consume.setType(9);
|
|
|
consume.setComputeNum(0);
|
|
@@ -390,15 +440,67 @@ public class MerchantSignServiceImpl extends BaseServiceImpl<MerchantSign, Strin
|
|
|
consume.setRemarks(remarks);
|
|
|
consume.setCreateTime(new Date());
|
|
|
libJoinConsumeService.save(consume);
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ break;
|
|
|
}
|
|
|
|
|
|
- //调用openApi接口
|
|
|
- libVipServiceService.openApiServiceCRM(
|
|
|
- 1,
|
|
|
- merchant.getLibId(),
|
|
|
- merchant.getSignType(),
|
|
|
- merchant.getLibService(),
|
|
|
- null);
|
|
|
+ if(merchant.getComputeTime().getTime()<new Date().getTime()) {
|
|
|
+ TbLibJoinConsume consume=null;
|
|
|
+ switch (signType) {
|
|
|
+ case 4:
|
|
|
+ consume=new TbLibJoinConsume();
|
|
|
+ consume.setFromLibId(merchant.getLibId());
|
|
|
+ consume.setFromMerchantId(merchant.getId());
|
|
|
+ consume.setLibService(10);
|
|
|
+ consume.setPlatformService(0);
|
|
|
+ consume.setType(10);
|
|
|
+ consume.setComputeNum(1);
|
|
|
+ consume.setSignType(merchant.getSignType());
|
|
|
+ consume.setRemarks("加油包激活【新模式月包】");
|
|
|
+ consume.setCreateTime(new Date());
|
|
|
+ libJoinConsumeService.save(consume);
|
|
|
+
|
|
|
+ break;
|
|
|
+ case 5:
|
|
|
+ consume=new TbLibJoinConsume();
|
|
|
+ consume.setFromLibId(merchant.getLibId());
|
|
|
+ consume.setFromMerchantId(merchant.getId());
|
|
|
+ consume.setLibService(10*num);
|
|
|
+ consume.setPlatformService(0);
|
|
|
+ consume.setType(10);
|
|
|
+ consume.setComputeNum(num);
|
|
|
+ consume.setSignType(merchant.getSignType());
|
|
|
+ consume.setRemarks("加油包激活【新模式量包】");
|
|
|
+ consume.setCreateTime(new Date());
|
|
|
+ libJoinConsumeService.save(consume);
|
|
|
+
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ if(consume!=null) {
|
|
|
+
|
|
|
+ libJoinConsumeService.save(consume);
|
|
|
+
|
|
|
+ //增量商户表的人数
|
|
|
+ merchant.setLibService(merchant.getLibService()+consume.getLibService());
|
|
|
+ merchantService.save(merchant);
|
|
|
+ //同步商户表与机构表
|
|
|
+ this.syncMerchantByLibJoin(merchant);
|
|
|
+
|
|
|
+ //调用openApi接口
|
|
|
+ libVipServiceService.openApiServiceCRM(
|
|
|
+ 1,
|
|
|
+ merchant.getLibId(),
|
|
|
+ merchant.getSignType(),
|
|
|
+ merchant.getLibService(),
|
|
|
+ null);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
|
|
|
|