|
|
@@ -4,6 +4,8 @@ import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.uas.account.entity.PartnershipRecord;
|
|
|
import com.uas.account.util.AccountUtils;
|
|
|
+import com.uas.message.sms.service.SmsService;
|
|
|
+import com.uas.platform.b2b.core.util.ThreadUtils;
|
|
|
import com.uas.platform.b2b.dao.CommonDao;
|
|
|
import com.uas.platform.b2b.dao.InvitationRecordDao;
|
|
|
import com.uas.platform.b2b.model.Enterprise;
|
|
|
@@ -29,7 +31,9 @@ import org.springframework.ui.ModelMap;
|
|
|
import org.springframework.util.CollectionUtils;
|
|
|
import org.springframework.util.StringUtils;
|
|
|
|
|
|
-import java.util.*;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Date;
|
|
|
+import java.util.List;
|
|
|
|
|
|
/**
|
|
|
* Created by hejq on 2018-03-22.
|
|
|
@@ -55,6 +59,14 @@ public class InviteRecordServiceImpl implements InviteRecordService {
|
|
|
@Autowired
|
|
|
private MessageConf messageConf;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private SmsService smsService;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 短信接口
|
|
|
+ */
|
|
|
+ final String messageUrl = "http://message.ubtob.com/sms/send";
|
|
|
+
|
|
|
/**
|
|
|
* 通过填写的名称检验企业是否已注册
|
|
|
*
|
|
|
@@ -68,6 +80,11 @@ public class InviteRecordServiceImpl implements InviteRecordService {
|
|
|
if (!CollectionUtils.isEmpty(enterprises)) {
|
|
|
for (Enterprise e : enterprises) {
|
|
|
EnterpriseBaseInfo baseInfo = new EnterpriseBaseInfo(e);
|
|
|
+ User user = userService.findUserByUserUU(e.getEnAdminuu());
|
|
|
+ if (null != user) {
|
|
|
+ baseInfo.setAdminName(user.getUserName());
|
|
|
+ baseInfo.setEnTel(user.getUserTel());
|
|
|
+ }
|
|
|
List<InvitationRecord> records = invitationRecordService.findbyVendName(e.getEnName());
|
|
|
if (!CollectionUtils.isEmpty(records)) {
|
|
|
Enterprise enterprise = enterpriseService.findByEnUU(records.get(0).getEnuu());
|
|
|
@@ -167,28 +184,52 @@ public class InviteRecordServiceImpl implements InviteRecordService {
|
|
|
}
|
|
|
record.setVendName(v.getEnName());
|
|
|
record.setVendUID(v.getEnBussinessCode());
|
|
|
- if (null != v.getAdmin()) {
|
|
|
- record.setVendUserCode(String.valueOf(v.getAdmin().getUserUU()));
|
|
|
- record.setVendUserEmail(v.getAdmin().getUserEmail());
|
|
|
- record.setVendUserName(v.getAdmin().getUserName());
|
|
|
- record.setVendUserTel(v.getAdmin().getUserTel());
|
|
|
+ String adnimTel = null;
|
|
|
+ User user = new User();
|
|
|
+ if (null != v.getEnAdminuu()) {
|
|
|
+ user = userService.findUserByUserUU(v.getEnAdminuu());
|
|
|
+ if (null != user) {
|
|
|
+ record.setVendUserCode(String.valueOf(user.getUserUU()));
|
|
|
+ record.setVendUserEmail(user.getUserEmail());
|
|
|
+ record.setVendUserName(user.getUserName());
|
|
|
+ record.setVendUserTel(user.getUserTel());
|
|
|
+ adnimTel = user.getUserTel();
|
|
|
+ }
|
|
|
}
|
|
|
Enterprise c = enterpriseService.findByEnUU(enUU);
|
|
|
record.setAppId(app);
|
|
|
record.setCustName(c.getEnName());
|
|
|
record.setCustUID(c.getEnBussinessCode());
|
|
|
record.setCustUserCode(String.valueOf(userUU));
|
|
|
- User cu = userService.findUserByUserTel(inviteUserTel);
|
|
|
- record.setCustUserEmail(cu.getUserEmail());
|
|
|
- record.setCustUserName(cu.getUserName());
|
|
|
- record.setCustUserTel(cu.getUserTel());
|
|
|
+ User cu = userService.findUserByUserUU(userUU);
|
|
|
+ if (null != cu) {
|
|
|
+ record.setCustUserEmail(cu.getUserEmail());
|
|
|
+ record.setCustUserName(cu.getUserName());
|
|
|
+ record.setCustUserTel(cu.getUserTel());
|
|
|
+ }
|
|
|
+ String contactTel = null;
|
|
|
+ User vu = new User();
|
|
|
if (!StringUtils.isEmpty(inviteUserTel)) {
|
|
|
- User vu = userService.findUserByUserTel(inviteUserTel);
|
|
|
- record.setVendUserCode(String.valueOf(vu.getUserUU()));
|
|
|
- record.setVendUserEmail(vu.getUserEmail());
|
|
|
- String userName = StringUtils.isEmpty(inviteUserName) ? vu.getUserName() : inviteUserName;
|
|
|
- record.setVendUserName(userName);
|
|
|
- record.setVendUserTel(vu.getUserTel());
|
|
|
+ vu = userService.findUserByUserTel(inviteUserTel);
|
|
|
+ if (null != vu) {
|
|
|
+ record.setVendUserCode(String.valueOf(vu.getUserUU()));
|
|
|
+ record.setVendUserEmail(vu.getUserEmail());
|
|
|
+ String userName = StringUtils.isEmpty(inviteUserName) ? vu.getUserName() : inviteUserName;
|
|
|
+ record.setVendUserName(userName);
|
|
|
+ record.setVendUserTel(vu.getUserTel());
|
|
|
+ contactTel = vu.getUserTel();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 发送短信通知
|
|
|
+ if (adnimTel.equals(contactTel)) {// 相同的人调用通知接口
|
|
|
+ try {
|
|
|
+ smsService.send(messageConf.getMsgAddPartForB2B(), adnimTel,
|
|
|
+ new Object[] { user.getUserName(), c.getEnName(), v.getEnName() });
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ } else { // 针对不同的人调用不同的接口
|
|
|
+
|
|
|
}
|
|
|
String result = AccountUtils.addNewRecord(record);
|
|
|
JSONObject object = JSON.parseObject(result);
|
|
|
@@ -197,11 +238,6 @@ public class InviteRecordServiceImpl implements InviteRecordService {
|
|
|
return map;
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
- * 短信接口
|
|
|
- */
|
|
|
- final String messageUrl = "http://message.ubtob.com/sms/send";
|
|
|
-
|
|
|
/**
|
|
|
* 增加注册记录
|
|
|
*
|
|
|
@@ -227,7 +263,6 @@ public class InviteRecordServiceImpl implements InviteRecordService {
|
|
|
map.put("error", "该企业已注册!");
|
|
|
return map;
|
|
|
}
|
|
|
- Map<String, Object> model = new HashMap<String, Object>();
|
|
|
// 先判断记录
|
|
|
InvitationRecord oldrecord = invitationRecordDao.findByUseruuAndVendname(record.getUseruu(), record.getVendname());
|
|
|
if (record.getId() != null) { // 如果是已存在的,直接替换
|
|
|
@@ -287,19 +322,24 @@ public class InviteRecordServiceImpl implements InviteRecordService {
|
|
|
* @param custUser 当前用户
|
|
|
* @param custEn 当前企业
|
|
|
*/
|
|
|
- private void sendMsg(InvitationRecord record, User custUser, Enterprise custEn) {
|
|
|
- try {
|
|
|
- SmsMessage sms = new SmsMessage();
|
|
|
- List<Object> obj = new ArrayList<Object>();
|
|
|
- obj.add(record.getVendusername());
|
|
|
- obj.add(record.getVendname());
|
|
|
- obj.add(custUser.getUserName() + "(" + custEn.getEnName() + ")");
|
|
|
- sms.setParams(obj);
|
|
|
- sms.setReceiver(record.getVendusertel());
|
|
|
- sms.setTemplateId(messageConf.getMsgInvitationForB2B());
|
|
|
- HttpUtil.sendPost(messageUrl, FlexJsonUtils.toJsonDeep(sms));
|
|
|
- } catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
- }
|
|
|
+ private void sendMsg(final InvitationRecord record, final User custUser, final Enterprise custEn) {
|
|
|
+ ThreadUtils.task(new Runnable() {
|
|
|
+ @Override
|
|
|
+ public void run() {
|
|
|
+ try {
|
|
|
+ SmsMessage sms = new SmsMessage();
|
|
|
+ List<Object> obj = new ArrayList<Object>();
|
|
|
+ obj.add(record.getVendusername());
|
|
|
+ obj.add(record.getVendname());
|
|
|
+ obj.add(custUser.getUserName() + "(" + custEn.getEnName() + ")");
|
|
|
+ sms.setParams(obj);
|
|
|
+ sms.setReceiver(record.getVendusertel());
|
|
|
+ sms.setTemplateId(messageConf.getMsgInvitationForB2B());
|
|
|
+ HttpUtil.sendPost(messageUrl, FlexJsonUtils.toJsonDeep(sms));
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }).run();
|
|
|
}
|
|
|
}
|