|
@@ -276,6 +276,9 @@ public class OwnCompanyRelController extends BaseController
|
|
|
sysCompanySpare.setScpId(scpId);
|
|
|
//查询邀请次数
|
|
|
SysCompanySpare spare = iSysCompanySpareService.getById(scpId);
|
|
|
+ String companyId = spare.getScpCompanyId();
|
|
|
+ String scrContarct = spare.getScpContarct();
|
|
|
+ SysCompany launchCompany = iSysCompanyService.getById(companyId);
|
|
|
//邀请次数
|
|
|
String invite = spare.getScpInvite();
|
|
|
//邀请企业名称
|
|
@@ -297,18 +300,25 @@ public class OwnCompanyRelController extends BaseController
|
|
|
// }
|
|
|
// }
|
|
|
//获取url
|
|
|
- String url = configService.selectConfigByKey("zc_spare");
|
|
|
- Map msgMap = new HashMap();
|
|
|
- msgMap.put("companyName",scyName);
|
|
|
- msgMap.put("url",url);
|
|
|
+// String url = configService.selectConfigByKey("zc_spare");
|
|
|
+// Map msgMap = new HashMap();
|
|
|
+// msgMap.put("companyName",scyName);
|
|
|
+// msgMap.put("url",url);
|
|
|
//发送短信
|
|
|
// iMessageUtilsService.sendMessageCode(scrContarctPhone, templateCode, msgMap,null);
|
|
|
-
|
|
|
BigDecimal one = new BigDecimal("1");
|
|
|
//邀请后的邀请次数
|
|
|
String result = String.valueOf(bigDecimal.add(one));
|
|
|
sysCompanySpare.setScpInvite(result);
|
|
|
iSysCompanySpareService.updateById(sysCompanySpare);
|
|
|
+ //平台邀请待办
|
|
|
+ if (CommonUtil.isNotEmpty(scrContarct) && CommonUtil.isNotEmpty(scrContarctPhone)) {
|
|
|
+ String name = launchCompany.getScyName();
|
|
|
+ String title = "【企业邀请】:" + name + "邀请" + scyName + "非平台用户,请联系" + scrContarct + scrContarctPhone + "跟进";
|
|
|
+ remoteSystemService.sendNotice(/*企业id*/"000000", /*表主键*/scpId, /*标题*/title,/*待办*/"00",
|
|
|
+ /*消息类型*/null,/*待办类型*/"07",/*是否发送短信*/"0", /*收到信息用户id*/"1",
|
|
|
+ null, "00", null);
|
|
|
+ }
|
|
|
return R.ok();
|
|
|
}
|
|
|
|
|
@@ -548,36 +558,163 @@ public class OwnCompanyRelController extends BaseController
|
|
|
remoteSystemService.sendNotice(scyId, scrId,title,"01","03",null,"0",use.toString(),null,null,null);
|
|
|
}
|
|
|
} else {
|
|
|
- //查询企业名称或企业名称是否已经存在
|
|
|
- LambdaQueryWrapper<SysCompany> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ addCompanySpare(map);
|
|
|
+ }
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 新增链属(未认证)
|
|
|
+ */
|
|
|
+ @Log(title = "新增链属信息(未认证)", businessType = BusinessType.INSERT)
|
|
|
+ private R addCompanySpare(@RequestBody Map<String,Object> map) throws Exception {
|
|
|
+ //获取当前操作员
|
|
|
+ LoginUser user = tokenService.getLoginUser();
|
|
|
+ String companyId = user.getSysUser().getCompanyId();
|
|
|
+ SysCompany launchCompany = iSysCompanyService.getById(companyId);
|
|
|
+ String userId = String.valueOf(user.getSysUser().getUserId());
|
|
|
+
|
|
|
+ //链属关系(00:供应商 01:核心企业)
|
|
|
+ String scrReceiveType = CommonUtil.objToString(map.get("scrReceiveType"));
|
|
|
+ //链属企业名称
|
|
|
+ String scyName = CommonUtil.objToString(map.get("scyName"));
|
|
|
+ //统一社会信用代码
|
|
|
+ String scySocialCode = CommonUtil.objToString(map.get("scySocialCode"));
|
|
|
+ //链属联系人
|
|
|
+ String scrContarct = CommonUtil.objToString(map.get("scrContarct"));
|
|
|
+ //链属联系人手机号
|
|
|
+ String scrContarctPhone = CommonUtil.objToString(map.get("scrContarctPhone"));
|
|
|
+ //链属联系人邮箱
|
|
|
+ String scrContarctEmail = CommonUtil.objToString(map.get("scrContarctEmail"));
|
|
|
+
|
|
|
+ //创建主键
|
|
|
+ String scrId = IdUtils.fastSimpleUUID();
|
|
|
+ String scpId = IdUtils.fastSimpleUUID();
|
|
|
+ //链属企业Id
|
|
|
+ String scyId = "";
|
|
|
+
|
|
|
+ //查询企业名称或企业名称是否已经存在
|
|
|
+ LambdaQueryWrapper<SysCompany> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ //企业统一代码
|
|
|
+ queryWrapper.eq(SysCompany::getScySocialCode, scySocialCode);
|
|
|
+ //除删除状态
|
|
|
+ queryWrapper.ne(SysCompany::getScyStatus, "99");
|
|
|
+ List<SysCompany> list = iSysCompanyService.findSysCompanys(queryWrapper);
|
|
|
+ if (list.size() > 0) {
|
|
|
+ LambdaQueryWrapper<SysCompanySpare> spareLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ spareLambdaQueryWrapper.eq(SysCompanySpare::getScpCompanyId, companyId);
|
|
|
+ spareLambdaQueryWrapper.ne(SysCompanySpare::getScpStatus, "99");
|
|
|
+ spareLambdaQueryWrapper.eq(SysCompanySpare::getScpSocialCode, scySocialCode);
|
|
|
+ List<SysCompanySpare> spareList = iSysCompanySpareService.findSysCompanySpares(spareLambdaQueryWrapper);
|
|
|
+ if (spareList.size() > 0) {
|
|
|
+ String invite = spareList.get(0).getScpInvite();
|
|
|
+ BigDecimal bigDecimal = new BigDecimal(invite);
|
|
|
+ BigDecimal tow = new BigDecimal("1");
|
|
|
+ if (bigDecimal.compareTo(tow) > -1) {
|
|
|
+ throw new Exception("该企业已邀请");
|
|
|
+ }
|
|
|
+ String status = spareList.get(0).getScpStatus();
|
|
|
+ if ("01".equals(status)) {
|
|
|
+ throw new Exception("与该企业已是链属关系");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //获取链属企业Id
|
|
|
+ scyId = list.get(0).getScyId();
|
|
|
+ String scyType = list.get(0).getScyType();
|
|
|
+ SysCompanyRel sysCompanyRel = new SysCompanyRel();
|
|
|
+ sysCompanyRel.setScrId(scrId);
|
|
|
+ sysCompanyRel.setScrLaunchCompanyId(companyId);
|
|
|
+ sysCompanyRel.setScrReceiveCompanyId(scyId);
|
|
|
+ //链属关系为供应商
|
|
|
+ if (NORMAL_STATE.equals(scrReceiveType)) {
|
|
|
+ //发起方为核心企业01
|
|
|
+ sysCompanyRel.setScrLaunchType(CONFIRM_STATE);
|
|
|
+ //接收方为供应商00
|
|
|
+ sysCompanyRel.setScrReceiveType(NORMAL_STATE);
|
|
|
+ } else if (CONFIRM_STATE.equals(scrReceiveType)) {
|
|
|
+ //发起方为供应商00
|
|
|
+ sysCompanyRel.setScrLaunchType(NORMAL_STATE);
|
|
|
+ //接收方为核心企业01
|
|
|
+ sysCompanyRel.setScrReceiveType(CONFIRM_STATE);
|
|
|
+ }
|
|
|
+ //如果接收方为核心企业,为待链属;接收方为供应商,为正常
|
|
|
+ if(CONFIRM_STATE.equals(scyType)){
|
|
|
+ //状态 00:待链属
|
|
|
+ sysCompanyRel.setScrStatus(NORMAL_STATE);
|
|
|
+ }else if(REFUSE_STATE.equals(scyType)){
|
|
|
+ //状态 01:正常
|
|
|
+ sysCompanyRel.setScrStatus(CONFIRM_STATE);
|
|
|
+ }
|
|
|
+ sysCompanyRel.setScrContarct(scrContarct);
|
|
|
+ sysCompanyRel.setScrContarctPhone(scrContarctPhone);
|
|
|
+ sysCompanyRel.setScrContarctEmail(scrContarctEmail);
|
|
|
+ sysCompanyRel.setCreateBy(userId);
|
|
|
+ sysCompanyRel.setCreateTime(DateUtils.getNowDate());
|
|
|
+ iSysCompanyRelService.createSysCompanyRel(sysCompanyRel);
|
|
|
+ //新增链属公司信息
|
|
|
+ SysCompanySpare sysCompanySpare = new SysCompanySpare();
|
|
|
+ sysCompanySpare.setScpId(scpId);
|
|
|
+ sysCompanySpare.setScpCompanyId(companyId);
|
|
|
+ sysCompanySpare.setScpRelId(scrId);
|
|
|
//企业名称
|
|
|
- queryWrapper.and(f->f.eq(SysCompany::getScyName, scyName).or().eq(SysCompany::getScySocialCode, scySocialCode));
|
|
|
- //除删除状态
|
|
|
- queryWrapper.ne(SysCompany::getScyStatus,"99");
|
|
|
- List<SysCompany> list = iSysCompanyService.findSysCompanys(queryWrapper);
|
|
|
- if(list.size() > 0){
|
|
|
- throw new Exception("企业名称与统一代码不匹配,不可关联此企业");
|
|
|
+ sysCompanySpare.setScpName(scyName);
|
|
|
+ //统一社会信用代码
|
|
|
+ sysCompanySpare.setScpSocialCode(scySocialCode);
|
|
|
+ //联系人
|
|
|
+ sysCompanySpare.setScpContarct(scrContarct);
|
|
|
+ //联系电话
|
|
|
+ sysCompanySpare.setScpContarctPhone(scrContarctPhone);
|
|
|
+ //邮箱
|
|
|
+ sysCompanySpare.setScpContarctEmail(scrContarctEmail);
|
|
|
+ //企业类型 00:供应商,01:核心企业
|
|
|
+ sysCompanySpare.setScpType(scrReceiveType);
|
|
|
+ //状态 00:正常
|
|
|
+ sysCompanySpare.setScpStatus(NORMAL_STATE);
|
|
|
+ //创建人
|
|
|
+ sysCompanySpare.setCreateBy(userId);
|
|
|
+ //创建时间
|
|
|
+ sysCompanySpare.setCreateTime(DateUtils.getNowDate());
|
|
|
+ iSysCompanySpareService.createSysCompanySpare(sysCompanySpare);
|
|
|
+ if (CommonUtil.isNotEmpty(scrContarct) && CommonUtil.isNotEmpty(scrContarctPhone)) {
|
|
|
+ String name = launchCompany.getScyName();
|
|
|
+ String title = "【企业邀请】:" + name + "邀请" + scyName + "非平台用户,请联系" + scrContarct + scrContarctPhone + "跟进";
|
|
|
+ remoteSystemService.sendNotice(/*企业id*/"000000", /*表主键*/scpId, /*标题*/title,/*待办*/"00",
|
|
|
+ /*消息类型*/null,/*待办类型*/"07",/*是否发送短信*/"0", /*收到信息用户id*/"1",
|
|
|
+ null, "00", null);
|
|
|
+ //邀请次数赋值
|
|
|
+ SysCompanySpare spare = iSysCompanySpareService.getById(scpId);
|
|
|
+ spare.setScpInvite("1");
|
|
|
+ iSysCompanySpareService.updateById(spare);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ //判重
|
|
|
+ LambdaQueryWrapper<SysCompany> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ lambdaQueryWrapper.and(f -> f.eq(SysCompany::getScyName, scyName).or().eq(SysCompany::getScySocialCode, scySocialCode));
|
|
|
+ lambdaQueryWrapper.ne(SysCompany::getScyStatus, "99");
|
|
|
+ List<SysCompany> sysCompanyList = iSysCompanyService.findSysCompanys(lambdaQueryWrapper);
|
|
|
+ if (sysCompanyList.size() > 0) {
|
|
|
+ throw new Exception("企业名称与统一代码不匹配,不可链属此企业");
|
|
|
}
|
|
|
LambdaQueryWrapper<SysCompanySpare> spareLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
- spareLambdaQueryWrapper.eq(SysCompanySpare::getScpCompanyId,companyId);
|
|
|
- spareLambdaQueryWrapper.ne(SysCompanySpare::getScpStatus,"99");
|
|
|
+ spareLambdaQueryWrapper.eq(SysCompanySpare::getScpCompanyId, companyId);
|
|
|
+ spareLambdaQueryWrapper.ne(SysCompanySpare::getScpStatus, "99");
|
|
|
spareLambdaQueryWrapper.eq(SysCompanySpare::getScpSocialCode, scySocialCode);
|
|
|
List<SysCompanySpare> spareList = iSysCompanySpareService.findSysCompanySpares(spareLambdaQueryWrapper);
|
|
|
- if(spareList.size() > 0){
|
|
|
+ if (spareList.size() > 0) {
|
|
|
String invite = spareList.get(0).getScpInvite();
|
|
|
BigDecimal bigDecimal = new BigDecimal(invite);
|
|
|
BigDecimal tow = new BigDecimal("1");
|
|
|
- if(bigDecimal.compareTo(tow) > -1){
|
|
|
+ if (bigDecimal.compareTo(tow) > -1) {
|
|
|
throw new Exception("该企业已邀请");
|
|
|
}
|
|
|
String status = spareList.get(0).getScpStatus();
|
|
|
- if("01".equals(status)){
|
|
|
+ if ("01".equals(status)) {
|
|
|
throw new Exception("与该企业已是链属关系");
|
|
|
}
|
|
|
}
|
|
|
//新增链属公司信息
|
|
|
SysCompanySpare sysCompanySpare = new SysCompanySpare();
|
|
|
- sysCompanySpare.setScpId(scrId);
|
|
|
+ sysCompanySpare.setScpId(scpId);
|
|
|
sysCompanySpare.setScpCompanyId(companyId);
|
|
|
//企业名称
|
|
|
sysCompanySpare.setScpName(scyName);
|
|
@@ -598,32 +735,32 @@ public class OwnCompanyRelController extends BaseController
|
|
|
//创建时间
|
|
|
sysCompanySpare.setCreateTime(DateUtils.getNowDate());
|
|
|
iSysCompanySpareService.createSysCompanySpare(sysCompanySpare);
|
|
|
- //获取字典的阿里短信模板
|
|
|
+ }
|
|
|
+ //获取字典的阿里短信模板
|
|
|
// String templateCode = "SMS_222871823";
|
|
|
- if(CommonUtil.isNotEmpty(scrContarct) && CommonUtil.isNotEmpty(scrContarctPhone)) {
|
|
|
- String name = launchCompany.getScyName();
|
|
|
- String title = "【企业邀请】:"+ name +"邀请"+ scyName +"非平台用户,请联系"+ scrContarct + scrContarctPhone +"跟进";
|
|
|
- remoteSystemService.sendNotice(/*企业id*/"000000", /*表主键*/scrId, /*标题*/title,/*待办*/"00",
|
|
|
- /*消息类型*/null,/*待办类型*/"03",/*是否发送短信*/"0", /*收到信息用户id*/"1",
|
|
|
- null, null, null);
|
|
|
+ if (CommonUtil.isNotEmpty(scrContarct) && CommonUtil.isNotEmpty(scrContarctPhone)) {
|
|
|
+ String name = launchCompany.getScyName();
|
|
|
+ String title = "【企业邀请】:" + name + "邀请" + scyName + "非平台用户,请联系" + scrContarct + scrContarctPhone + "跟进";
|
|
|
+ remoteSystemService.sendNotice(/*企业id*/"000000", /*表主键*/scpId, /*标题*/title,/*待办*/"00",
|
|
|
+ /*消息类型*/null,/*待办类型*/"03",/*是否发送短信*/"0", /*收到信息用户id*/"1",
|
|
|
+ null, "00", null);
|
|
|
// List<SysDictData> state = RedisUtils.getDictCache("aliyun_message_code");
|
|
|
// for (SysDictData sysDictData :state){
|
|
|
// if("yaoqing".equals(sysDictData.getDictLabel())) {
|
|
|
// templateCode = sysDictData.getDictValue();
|
|
|
// }
|
|
|
// }
|
|
|
- //获取url
|
|
|
+ //获取url
|
|
|
// String url = configService.selectConfigByKey("zc_spare");
|
|
|
// Map msgMap = new HashMap();
|
|
|
// msgMap.put("companyName", scyName);
|
|
|
// msgMap.put("url", url);
|
|
|
- //发送短信
|
|
|
+ //发送短信
|
|
|
// iMessageUtilsService.sendMessageCode(scrContarctPhone, templateCode, msgMap,null);
|
|
|
- //邀请次数赋值
|
|
|
- SysCompanySpare spare = iSysCompanySpareService.getById(scrId);
|
|
|
- spare.setScpInvite("1");
|
|
|
- iSysCompanySpareService.updateById(spare);
|
|
|
- }
|
|
|
+ //邀请次数赋值
|
|
|
+ SysCompanySpare spare = iSysCompanySpareService.getById(scpId);
|
|
|
+ spare.setScpInvite("1");
|
|
|
+ iSysCompanySpareService.updateById(spare);
|
|
|
}
|
|
|
return R.ok();
|
|
|
}
|
|
@@ -666,6 +803,58 @@ public class OwnCompanyRelController extends BaseController
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * 重邀拒绝的链属
|
|
|
+ * @param map
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @PreAuthorize(hasPermi = "service:rel:again")
|
|
|
+ @Log(title = "拒绝与同意链属关系", businessType = BusinessType.UPDATE)
|
|
|
+ @PutMapping("/againRel")
|
|
|
+ public R againRel(@RequestBody Map<String,Object> map) throws Exception
|
|
|
+ {
|
|
|
+ String scrId = CommonUtil.objToString(map.get("launchScrId"));
|
|
|
+ if(CommonUtil.isEmpty(scrId)){
|
|
|
+ throw new Exception("要执行信息的主键为空");
|
|
|
+ }
|
|
|
+ String state = CommonUtil.objToString(map.get("state"));
|
|
|
+ if(CommonUtil.isEmpty(state)){
|
|
|
+ throw new Exception("要执行信息的状态为空");
|
|
|
+ }
|
|
|
+ SysCompanyRel sysCompanyRel = new SysCompanyRel();
|
|
|
+ //主键
|
|
|
+ sysCompanyRel.setScrId(scrId);
|
|
|
+ //状态01:同意 02:拒绝链属
|
|
|
+ sysCompanyRel.setScrStatus(state);
|
|
|
+ iSysCompanyRelService.updateById(sysCompanyRel);
|
|
|
+
|
|
|
+ SysCompanyRel companyRel = iSysCompanyRelService.getById(scrId);
|
|
|
+ String companyId = companyRel.getScrLaunchCompanyId();
|
|
|
+ SysCompany launchCompany = iSysCompanyService.getById(companyId);
|
|
|
+
|
|
|
+ String scyId = companyRel.getScrReceiveCompanyId();
|
|
|
+ SysCompany sysCompany = iSysCompanyService.getById(scyId);
|
|
|
+ String scyType = sysCompany.getScyType();
|
|
|
+ //查询链属企业绑定用户
|
|
|
+ LambdaQueryWrapper<SysUserCompanyRel> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ lambdaQueryWrapper.eq(SysUserCompanyRel::getSucrCompanyId, scyId);
|
|
|
+ lambdaQueryWrapper.eq(SysUserCompanyRel::getSucrHandler, "1");
|
|
|
+ List<SysUserCompanyRel> list = iSysUserCompanyRelService.findSysUserCompanyRels(lambdaQueryWrapper);
|
|
|
+ Long use = list.get(0).getSucrUserId();
|
|
|
+ //接收方为核心企业时,发送待办
|
|
|
+ if (CONFIRM_STATE.equals(scyType)) {
|
|
|
+ String title = launchCompany.getScyName() + "邀请您成为链属企业,请及时处理";
|
|
|
+ remoteSystemService.sendNotice(scyId, scrId, title, "00", null, "09", "0", use.toString(), null, "00", null);
|
|
|
+ }
|
|
|
+ //接收方为供应商时,发送消息
|
|
|
+ if (REFUSE_STATE.equals(scyType)) {
|
|
|
+ String title = launchCompany.getScyName() + "与您成为了链属企业";
|
|
|
+ remoteSystemService.sendNotice(scyId, scrId, title, "01", "03", null, "0", use.toString(), null, null, null);
|
|
|
+ }
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
* 删除链属
|
|
|
* @param launchScrId
|
|
|
* @return
|