|
@@ -21,7 +21,10 @@ import org.springframework.data.repository.PagingAndSortingRepository;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
+import com.ssj.bean.common.framework.core.domain.Response;
|
|
|
import com.ssj.bean.sys.fx.domain.Merchant;
|
|
|
+import com.ssj.bean.sys.fx.domain.MerchantArea;
|
|
|
+import com.ssj.bean.sys.fx.domain.MerchantSign;
|
|
|
import com.ssj.bean.sys.organization.domain.Organization;
|
|
|
import com.ssj.bean.sys.role.domain.Admin;
|
|
|
import com.ssj.bean.weixin.libmy.domain.LibVip;
|
|
@@ -40,13 +43,17 @@ import com.ssj.framework.core.rabbitmq.TopicRabbitConfig;
|
|
|
import com.ssj.framework.core.rabbitmq.producer.BaseRabbitSend;
|
|
|
import com.ssj.framework.core.util.RedisUtil;
|
|
|
import com.ssj.framework.core.util.SystemResourceLocator;
|
|
|
+import com.ssj.service.sys.fx.service.MerchantAreaService;
|
|
|
import com.ssj.service.sys.fx.service.MerchantService;
|
|
|
+import com.ssj.service.sys.fx.service.MerchantSignService;
|
|
|
import com.ssj.service.sys.organization.service.OrganizationService;
|
|
|
import com.ssj.service.sys.role.service.AdminService;
|
|
|
+import com.ssj.service.sys.role.service.RoleService;
|
|
|
import com.ssj.service.task.SyncRecordByMerchant;
|
|
|
import com.ssj.service.weixin.library.service.ILibJoinConsumeService;
|
|
|
import com.ssj.service.weixin.library.service.ILibJoinService;
|
|
|
import com.ssj.service.weixin.library.service.ILibVipService;
|
|
|
+import com.ssj.service.weixin.problem.service.CnAreaService;
|
|
|
import com.ssj.service.weixin.push.service.PushTemplateService;
|
|
|
import com.ssj.service.weixin.sales.service.LibVipServiceService;
|
|
|
import com.ssj.taskthread.ThreadPool;
|
|
@@ -85,6 +92,18 @@ public class MerchantServiceImpl extends BaseServiceImpl<Merchant, String> imple
|
|
|
@Autowired
|
|
|
private PushTemplateService pushTemplateService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private MerchantAreaService merchantAreaService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private CnAreaService cnAreaService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private MerchantSignService merchantSignService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private RoleService roleService;
|
|
|
+
|
|
|
@Autowired
|
|
|
private RedisUtil redisUtil;
|
|
|
|
|
@@ -117,7 +136,6 @@ public class MerchantServiceImpl extends BaseServiceImpl<Merchant, String> imple
|
|
|
if(oldMerchant==null){
|
|
|
|
|
|
//添加组织架构
|
|
|
- String jxcode="SSJ-JX";
|
|
|
String fxcode="SSJ-FX";
|
|
|
|
|
|
String code="";
|
|
@@ -683,20 +701,7 @@ public class MerchantServiceImpl extends BaseServiceImpl<Merchant, String> imple
|
|
|
|
|
|
}
|
|
|
|
|
|
- //是否大于当前时间
|
|
|
- private static boolean reckonGTCurTime(Date date) {
|
|
|
- if(date==null) {
|
|
|
- return false;
|
|
|
- }
|
|
|
- Calendar cal = Calendar.getInstance();
|
|
|
- cal.setTime(date);//设置起时间
|
|
|
-
|
|
|
- if(cal.getTime().getTime()>=new Date().getTime()) {
|
|
|
- return true;
|
|
|
- }
|
|
|
- return false;
|
|
|
- }
|
|
|
-
|
|
|
+
|
|
|
//日期加上月份,是否小于当前时间
|
|
|
private static boolean reckonGTMonth(Date date,Integer monthNum) {
|
|
|
if(date==null) {
|
|
@@ -1212,6 +1217,433 @@ public class MerchantServiceImpl extends BaseServiceImpl<Merchant, String> imple
|
|
|
public List<Merchant> findMerchantSignBySummaryTime() {
|
|
|
return dao.findMerchantSignBySummaryTime();
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Response saveMerchantByUsed(
|
|
|
+ Merchant merchant,
|
|
|
+ String startTime,String endTime,String password,String province,String city,String area,String schoollist,String location,
|
|
|
+ Admin curadmin) {
|
|
|
+
|
|
|
+ Response response=new Response();
|
|
|
+
|
|
|
+ if(StringUtils.isNotEmpty(merchant.getId())){
|
|
|
+
|
|
|
+ Merchant oldmerchant =this.getById(merchant.getId());
|
|
|
+
|
|
|
+ if(StringUtils.isNotEmpty(merchant.getLibId())) {
|
|
|
+ Merchant libMerchant=this.getMerchantByLibId(merchant.getLibId());
|
|
|
+ if(libMerchant!=null && !libMerchant.getId().equals(merchant.getId())) {
|
|
|
+ response.failure("您选择的机构已绑定其它商户,不可重复绑定。");
|
|
|
+ return response;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ oldmerchant.setDeputyName(merchant.getDeputyName());
|
|
|
+ oldmerchant.setDeputyPhone(merchant.getDeputyPhone());
|
|
|
+ oldmerchant.setLegalPerson(merchant.getLegalPerson());
|
|
|
+ oldmerchant.setLevel(merchant.getLevel());
|
|
|
+ oldmerchant.setPhone(merchant.getPhone());
|
|
|
+ oldmerchant.setPrice(merchant.getPrice());
|
|
|
+ oldmerchant.setOutPrice(merchant.getOutPrice());
|
|
|
+ oldmerchant.setStatus(merchant.getStatus());
|
|
|
+ oldmerchant.setRemarks(merchant.getRemarks());
|
|
|
+ oldmerchant.setUnitName(merchant.getUnitName());
|
|
|
+ oldmerchant.setSignService(merchant.getSignService());
|
|
|
+ oldmerchant.setType(merchant.getType());
|
|
|
+ oldmerchant.setHardwareService(merchant.getHardwareService());
|
|
|
+ oldmerchant.setHardwarePrice(merchant.getHardwarePrice());
|
|
|
+ oldmerchant.setAddress(merchant.getAddress());
|
|
|
+ oldmerchant.setLibServiceMonth(0);
|
|
|
+ oldmerchant.setLocation(location);
|
|
|
+
|
|
|
+ //删除所有关联的学校
|
|
|
+ List<MerchantArea> merchantAreas=merchantAreaService.findSchoolByMerchantList(merchant.getId());
|
|
|
+ for (MerchantArea merchantArea : merchantAreas) {
|
|
|
+ merchantAreaService.delete(merchantArea);
|
|
|
+ }
|
|
|
+ //重新关联学校
|
|
|
+ if(StringUtils.isNotEmpty(schoollist)) {
|
|
|
+ merchantAreas=new ArrayList<MerchantArea>();
|
|
|
+ String[] areaIds=schoollist.split(";");
|
|
|
+ for (String areaId : areaIds) {
|
|
|
+ MerchantArea merchantArea=new MerchantArea();
|
|
|
+ merchantArea.setCnAreaId(areaId);
|
|
|
+ merchantArea.setCreateTime(new Date());
|
|
|
+ merchantArea.setMerchantId(merchant.getId());
|
|
|
+ merchantArea.setSchoolName(cnAreaService.getById(areaId).getName());
|
|
|
+ merchantAreas.add(merchantArea);
|
|
|
+ }
|
|
|
+ merchantAreaService.save(merchantAreas);
|
|
|
+ }
|
|
|
+
|
|
|
+ //是旧模式兼容,修改了签约的时间,重新计算结算时间
|
|
|
+ if(oldmerchant.getSignTime()==null || DateHelper.parseDate(startTime, "yyyy-MM-dd").getTime()!=oldmerchant.getSignTime().getTime()) {
|
|
|
+ oldmerchant.setSignTime(DateHelper.parseDate(startTime, "yyyy-MM-dd"));
|
|
|
+ oldmerchant.setEndSignTime(DateHelper.parseDate(endTime, "yyyy-MM-dd"));
|
|
|
+ //如果是总部直签的商户,才会更新结算日期,同时更新所有下级的结算日期
|
|
|
+ if("ssj001".equals(oldmerchant.getParentPosCode())) {
|
|
|
+ oldmerchant.setCurSummaryTime(oldmerchant.getSignTime());
|
|
|
+ oldmerchant.setNextSummaryTime(DateHelper.getMonthDate(oldmerchant.getCurSummaryTime(),3));
|
|
|
+ //计算结算日期。
|
|
|
+ this.updateSubMerchantSummaryTime(oldmerchant);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ //商户同步学币/人数 到机构 / 时间
|
|
|
+ if(StringUtils.isNotEmpty(merchant.getLibId())) {
|
|
|
+ oldmerchant.setLibId(merchant.getLibId());
|
|
|
+ TbLibJoin libJoin= libJoinService.getById(oldmerchant.getLibId());
|
|
|
+ if(libJoin!=null) {
|
|
|
+ libJoin.setLibService(oldmerchant.getLibService());
|
|
|
+ libJoin.setPlatformService(oldmerchant.getPlatformService());
|
|
|
+
|
|
|
+ libJoin.setSignType(oldmerchant.getSignType());
|
|
|
+ libJoin.setSignTime(oldmerchant.getSignTime());
|
|
|
+ libJoin.setEndSignTime(oldmerchant.getEndSignTime());
|
|
|
+ libJoinService.save(libJoin);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ this.save(oldmerchant);
|
|
|
+ this.syncRecordByMerchant(curadmin.getLoginName(), oldmerchant.getId(),"", "修改签约商户");
|
|
|
+
|
|
|
+ }else{
|
|
|
+ Merchant posMerchant =this.getMerchantByPosCode(merchant.getPosCode());
|
|
|
+ if(posMerchant!=null) {
|
|
|
+ response.failure("商户账号不得包含已经创建的商户账号,请重新填写账号。");
|
|
|
+ return response;
|
|
|
+ }
|
|
|
+ List<Merchant> posCodeMerchants=this.getMerchantByLikePosCode(merchant.getPosCode());
|
|
|
+ if(posCodeMerchants!=null && posCodeMerchants.size()>0){
|
|
|
+ response.failure("商户账号不得包含已经创建的商户账号,请重新填写账号。");
|
|
|
+ return response;
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotEmpty(merchant.getLibId())) {
|
|
|
+ Merchant libMerchant=this.getMerchantByLibId(merchant.getLibId());
|
|
|
+ if(libMerchant!=null) {
|
|
|
+ response.failure("您选择的机构已绑定其它商户,不可重复绑定。");
|
|
|
+ return response;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ Admin admin=adminService.getByLoginName(merchant.getPosCode());
|
|
|
+ if(admin!=null){
|
|
|
+ response.failure("商户账号已存在");
|
|
|
+ return response;
|
|
|
+ }
|
|
|
+ merchant.setLocation(location);
|
|
|
+ merchant.setPortNum(0);
|
|
|
+ merchant.setLibService(0);
|
|
|
+ merchant.setPlatformService(0);
|
|
|
+ merchant.setHardwareService(0);
|
|
|
+ merchant.setHardwarePrice((double)0);
|
|
|
+ merchant.setLibServiceMonth(0);
|
|
|
+ merchant.setSignTime(startTime!=null ? DateHelper.parseDate(startTime, "yyyy-MM-dd"): null);
|
|
|
+ merchant.setEndSignTime(endTime!=null ? DateHelper.parseDate(endTime, "yyyy-MM-dd"): null);
|
|
|
+ merchant.setCreateTime(new Date());
|
|
|
+ merchant.setSaleLoginName(curadmin.getLoginName());
|
|
|
+ merchant.setCurIsSummary(0);
|
|
|
+ String code="SSJ-FX";
|
|
|
+ if(StringUtils.isNotEmpty(merchant.getParentPosCode())){
|
|
|
+ Merchant pMerchant =this.getMerchantByPosCode(merchant.getParentPosCode());
|
|
|
+ code=pMerchant.getOrgCode()+"-"+merchant.getPosCode();
|
|
|
+ }else{
|
|
|
+ code=code+"-"+merchant.getPosCode();
|
|
|
+ }
|
|
|
+ merchant.setOrgCode(code);
|
|
|
+
|
|
|
+ //添加admin用户信息
|
|
|
+ admin=new Admin();
|
|
|
+ admin.setLoginName(merchant.getPosCode());
|
|
|
+ admin.setNickName(merchant.getPosCode());
|
|
|
+ admin.setCreateTime(new Date());
|
|
|
+ admin.setPassword(MD5.getMD5(password.getBytes()));
|
|
|
+ admin.setStatus(1);
|
|
|
+ adminService.save(admin);
|
|
|
+
|
|
|
+ //添加商户的权限
|
|
|
+ roleService.saveAdminRole(admin.getId(), "eadc6389-6a29-4864-bce6-a18b30e0a998");
|
|
|
+
|
|
|
+ //保存商户信息
|
|
|
+ this.save(merchant);
|
|
|
+
|
|
|
+ if(StringUtils.isNotEmpty(schoollist)) {
|
|
|
+ List<MerchantArea> merchantAreas=new ArrayList<MerchantArea>();
|
|
|
+ String[] areaIds=schoollist.split(";");
|
|
|
+ for (String areaId : areaIds) {
|
|
|
+ MerchantArea merchantArea=new MerchantArea();
|
|
|
+ merchantArea.setCnAreaId(areaId);
|
|
|
+ merchantArea.setCreateTime(new Date());
|
|
|
+ merchantArea.setMerchantId(merchant.getId());
|
|
|
+ merchantAreas.add(merchantArea);
|
|
|
+ }
|
|
|
+ merchantAreaService.save(merchantAreas);
|
|
|
+ }
|
|
|
+
|
|
|
+ //商户同步学币/人数 到机构 / 时间
|
|
|
+ if(StringUtils.isNotEmpty(merchant.getLibId())) {
|
|
|
+ TbLibJoin libJoin= libJoinService.getById(merchant.getLibId());
|
|
|
+ if(libJoin!=null) {
|
|
|
+ libJoin.setLibService(merchant.getLibService());
|
|
|
+ libJoin.setPlatformService(merchant.getPlatformService());
|
|
|
+
|
|
|
+ libJoin.setSignType(merchant.getSignType());
|
|
|
+ libJoin.setSignTime(merchant.getSignTime());
|
|
|
+ libJoin.setEndSignTime(merchant.getEndSignTime());
|
|
|
+
|
|
|
+ libJoinService.save(libJoin);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //判断的是否是旧模式兼容,修改了签约的时间,重新计算结算时间
|
|
|
+ this.computeMerchantSummaryTime(merchant);
|
|
|
+ this.syncRecordByMerchant(curadmin.getLoginName(), merchant.getId(),"", "新增签约商户");
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ response.success();
|
|
|
+ return response;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Response saveMerchantByNew(
|
|
|
+ Merchant merchant,
|
|
|
+ String startTime,String endTime,String summaryTime,String password,String province,String city,String area,String schoollist,String location,
|
|
|
+ Admin curadmin) {
|
|
|
+ Response response=new Response();
|
|
|
+
|
|
|
+ if(StringUtils.isNotEmpty(merchant.getId())){
|
|
|
+
|
|
|
+ Merchant oldmerchant =this.getById(merchant.getId());
|
|
|
+
|
|
|
+ if(StringUtils.isNotEmpty(merchant.getLibId())) {
|
|
|
+ Merchant libMerchant=this.getMerchantByLibId(merchant.getLibId());
|
|
|
+ if(libMerchant!=null && !libMerchant.getId().equals(merchant.getId())) {
|
|
|
+ response.failure("您选择的机构已绑定其它商户,不可重复绑定。");
|
|
|
+ return response;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ oldmerchant.setDeputyName(merchant.getDeputyName());
|
|
|
+ oldmerchant.setDeputyPhone(merchant.getDeputyPhone());
|
|
|
+ oldmerchant.setLegalPerson(merchant.getLegalPerson());
|
|
|
+ oldmerchant.setLevel(merchant.getLevel());
|
|
|
+ oldmerchant.setPhone(merchant.getPhone());
|
|
|
+ oldmerchant.setPrice(merchant.getPrice());
|
|
|
+ oldmerchant.setOutPrice(merchant.getOutPrice());
|
|
|
+ oldmerchant.setStatus(merchant.getStatus());
|
|
|
+ oldmerchant.setRemarks(merchant.getRemarks());
|
|
|
+ oldmerchant.setUnitName(merchant.getUnitName());
|
|
|
+ oldmerchant.setSignService(merchant.getSignService());
|
|
|
+ oldmerchant.setType(merchant.getType());
|
|
|
+ oldmerchant.setHardwareService(merchant.getHardwareService());
|
|
|
+ oldmerchant.setHardwarePrice(merchant.getHardwarePrice());
|
|
|
+ oldmerchant.setAddress(merchant.getAddress());
|
|
|
+ oldmerchant.setLibServiceMonth(merchant.getLibServiceMonth());
|
|
|
+ oldmerchant.setNextSummaryTime(summaryTime!=null ? DateHelper.parseDate(summaryTime, "yyyy-MM-dd"): null);
|
|
|
+ oldmerchant.setLocation(location);
|
|
|
+ oldmerchant.setSignTime(startTime!=null ? DateHelper.parseDate(startTime, "yyyy-MM-dd"): null);
|
|
|
+ oldmerchant.setEndSignTime(endTime!=null ? DateHelper.parseDate(endTime, "yyyy-MM-dd"): null);
|
|
|
+
|
|
|
+ //删除所有关联的学校
|
|
|
+ List<MerchantArea> merchantAreas=merchantAreaService.findSchoolByMerchantList(merchant.getId());
|
|
|
+ for (MerchantArea merchantArea : merchantAreas) {
|
|
|
+ merchantAreaService.delete(merchantArea);
|
|
|
+ }
|
|
|
+ //重新关联学校
|
|
|
+ if(StringUtils.isNotEmpty(schoollist)) {
|
|
|
+ merchantAreas=new ArrayList<MerchantArea>();
|
|
|
+ String[] areaIds=schoollist.split(";");
|
|
|
+ for (String areaId : areaIds) {
|
|
|
+ MerchantArea merchantArea=new MerchantArea();
|
|
|
+ merchantArea.setCnAreaId(areaId);
|
|
|
+ merchantArea.setCreateTime(new Date());
|
|
|
+ merchantArea.setMerchantId(merchant.getId());
|
|
|
+ merchantArea.setSchoolName(cnAreaService.getById(areaId).getName());
|
|
|
+ merchantAreas.add(merchantArea);
|
|
|
+ }
|
|
|
+ merchantAreaService.save(merchantAreas);
|
|
|
+ }
|
|
|
+
|
|
|
+ //如果修改了套餐的模式,就重新处理数据 加油包
|
|
|
+ if(!oldmerchant.getSignType().equals(merchant.getSignType())) {
|
|
|
+ oldmerchant.setSignType(merchant.getSignType());
|
|
|
+ List<MerchantSign> merchantSigns=merchantSignService.findMerchantSignByMerchantId(merchant.getId(),0);
|
|
|
+ Integer signNum=0;
|
|
|
+ for (MerchantSign merchantSign : merchantSigns) {
|
|
|
+ signNum=signNum+merchantSign.getLibService();
|
|
|
+ }
|
|
|
+ switch (merchant.getSignType()) {
|
|
|
+ case 1:
|
|
|
+ oldmerchant.setLibService(30+signNum);
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ oldmerchant.setLibService(50+signNum);
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ oldmerchant.setLibService(100+signNum);
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ oldmerchant.setLibService(0);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+
|
|
|
+ //记录套餐更改记录
|
|
|
+ TbLibJoinConsume consume=new TbLibJoinConsume();
|
|
|
+ consume.setToLibId(merchant.getLibId());
|
|
|
+ consume.setToMerchantId(merchant.getId());
|
|
|
+ consume.setLibService(oldmerchant.getLibService());
|
|
|
+ consume.setPlatformService(0);
|
|
|
+ consume.setType(1);
|
|
|
+ consume.setRemarks("充值【套餐模式更改】");
|
|
|
+ consume.setCreateTime(new Date());
|
|
|
+ libJoinConsumeService.save(consume);
|
|
|
+ }
|
|
|
+
|
|
|
+ this.save(oldmerchant);
|
|
|
+
|
|
|
+ //商户同步学币/人数 到机构 / 时间
|
|
|
+ if(StringUtils.isNotEmpty(merchant.getLibId())) {
|
|
|
+ oldmerchant.setLibId(merchant.getLibId());
|
|
|
+ TbLibJoin libJoin= libJoinService.getById(oldmerchant.getLibId());
|
|
|
+ if(libJoin!=null) {
|
|
|
+ libJoin.setLibService(oldmerchant.getLibService());
|
|
|
+ libJoin.setPlatformService(oldmerchant.getPlatformService());
|
|
|
+
|
|
|
+ libJoin.setSignType(oldmerchant.getSignType());
|
|
|
+ libJoin.setSignTime(oldmerchant.getSignTime());
|
|
|
+ libJoin.setEndSignTime(oldmerchant.getEndSignTime());
|
|
|
+ libJoinService.save(libJoin);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ this.syncRecordByMerchant(curadmin.getLoginName(), oldmerchant.getId(),"", "修改套餐商户");
|
|
|
+
|
|
|
+ }else{
|
|
|
+ Merchant posMerchant =this.getMerchantByPosCode(merchant.getPosCode());
|
|
|
+ if(posMerchant!=null) {
|
|
|
+ response.failure("商户账号不得包含已经创建的商户账号,请重新填写账号。");
|
|
|
+ return response;
|
|
|
+ }
|
|
|
+ List<Merchant> posCodeMerchants=this.getMerchantByLikePosCode(merchant.getPosCode());
|
|
|
+ if(posCodeMerchants!=null && posCodeMerchants.size()>0){
|
|
|
+ response.failure("商户账号不得包含已经创建的商户账号,请重新填写账号。");
|
|
|
+ return response;
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotEmpty(merchant.getLibId())) {
|
|
|
+ Merchant libMerchant=this.getMerchantByLibId(merchant.getLibId());
|
|
|
+ if(libMerchant!=null) {
|
|
|
+ response.failure("您选择的机构已绑定其它商户,不可重复绑定。");
|
|
|
+ return response;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ Admin admin=adminService.getByLoginName(merchant.getPosCode());
|
|
|
+ if(admin!=null){
|
|
|
+ response.failure("商户账号已存在");
|
|
|
+ return response;
|
|
|
+ }
|
|
|
+
|
|
|
+ merchant.setLocation(location);
|
|
|
+ merchant.setPortNum(0);
|
|
|
+ merchant.setLibService(0);
|
|
|
+ merchant.setPlatformService(0);
|
|
|
+ merchant.setHardwareService(0);
|
|
|
+ merchant.setHardwarePrice((double)0);
|
|
|
+ merchant.setCreateTime(new Date());
|
|
|
+ merchant.setSaleLoginName(curadmin.getLoginName());
|
|
|
+ merchant.setCurIsSummary(0);
|
|
|
+ merchant.setNextSummaryTime(summaryTime!=null ? DateHelper.parseDate(summaryTime, "yyyy-MM-dd"): null);
|
|
|
+ merchant.setSignTime(startTime!=null ? DateHelper.parseDate(startTime, "yyyy-MM-dd"):null);
|
|
|
+ merchant.setEndSignTime(endTime!=null ? DateHelper.parseDate(endTime, "yyyy-MM-dd"): null);
|
|
|
+ String code="SSJ-FX";
|
|
|
+ if(StringUtils.isNotEmpty(merchant.getParentPosCode())){
|
|
|
+ Merchant pMerchant =this.getMerchantByPosCode(merchant.getParentPosCode());
|
|
|
+ code=pMerchant.getOrgCode()+"-"+merchant.getPosCode();
|
|
|
+ }else{
|
|
|
+ code=code+"-"+merchant.getPosCode();
|
|
|
+ }
|
|
|
+ merchant.setOrgCode(code);
|
|
|
+ switch (merchant.getSignType()) {
|
|
|
+ case 1:
|
|
|
+ merchant.setLibService(30);
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ merchant.setLibService(50);
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ merchant.setLibService(100);
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ merchant.setLibService(0);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+
|
|
|
+ //添加admin用户信息
|
|
|
+ admin=new Admin();
|
|
|
+ admin.setLoginName(merchant.getPosCode());
|
|
|
+ admin.setNickName(merchant.getPosCode());
|
|
|
+ admin.setCreateTime(new Date());
|
|
|
+ admin.setPassword(MD5.getMD5(password.getBytes()));
|
|
|
+ admin.setStatus(1);
|
|
|
+ adminService.save(admin);
|
|
|
+
|
|
|
+ //添加商户的权限
|
|
|
+ roleService.saveAdminRole(admin.getId(), "eadc6389-6a29-4864-bce6-a18b30e0a998");
|
|
|
+
|
|
|
+ //保存商户信息
|
|
|
+ this.save(merchant);
|
|
|
+
|
|
|
+ if(StringUtils.isNotEmpty(schoollist)) {
|
|
|
+ List<MerchantArea> merchantAreas=new ArrayList<MerchantArea>();
|
|
|
+ String[] areaIds=schoollist.split(";");
|
|
|
+ for (String areaId : areaIds) {
|
|
|
+ MerchantArea merchantArea=new MerchantArea();
|
|
|
+ merchantArea.setCnAreaId(areaId);
|
|
|
+ merchantArea.setCreateTime(new Date());
|
|
|
+ merchantArea.setMerchantId(merchant.getId());
|
|
|
+ merchantAreas.add(merchantArea);
|
|
|
+ }
|
|
|
+ merchantAreaService.save(merchantAreas);
|
|
|
+ }
|
|
|
+
|
|
|
+ //商户同步学币/人数 到机构 / 时间
|
|
|
+ if(StringUtils.isNotEmpty(merchant.getLibId())) {
|
|
|
+ TbLibJoin libJoin= libJoinService.getById(merchant.getLibId());
|
|
|
+ if(libJoin!=null) {
|
|
|
+ libJoin.setLibService(merchant.getLibService());
|
|
|
+ libJoin.setPlatformService(merchant.getPlatformService());
|
|
|
+
|
|
|
+ libJoin.setSignType(merchant.getSignType());
|
|
|
+ libJoin.setSignTime(merchant.getSignTime());
|
|
|
+ libJoin.setEndSignTime(merchant.getEndSignTime());
|
|
|
+
|
|
|
+ libJoinService.save(libJoin);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ //记录开通商户记录
|
|
|
+ TbLibJoinConsume consume=new TbLibJoinConsume();
|
|
|
+ consume.setToLibId(merchant.getLibId());
|
|
|
+ consume.setToMerchantId(merchant.getId());
|
|
|
+ consume.setLibService(merchant.getLibService());
|
|
|
+ consume.setPlatformService(0);
|
|
|
+ consume.setType(1);
|
|
|
+ consume.setRemarks("充值【套餐模式开通】");
|
|
|
+ consume.setCreateTime(new Date());
|
|
|
+ libJoinConsumeService.save(consume);
|
|
|
+
|
|
|
+ this.syncRecordByMerchant(curadmin.getLoginName(), merchant.getId(),"", "新增套餐商户");
|
|
|
+ }
|
|
|
+
|
|
|
+ response.success();
|
|
|
+ return response;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<Merchant> findMerchantSignByAll() {
|
|
|
+ return dao.findMerchantSignByAll();
|
|
|
+ }
|
|
|
|
|
|
|
|
|
}
|