Commit 78a5f92f by jianan

AGMS生成合同后短信通知,合同编号由程序生成

parent 4bd01a7a
......@@ -8,9 +8,11 @@ public interface PractitionerHiringContractService {
String generatePractitionerContract(String practitionerNO, String contractNo, Long hiringBasicInfoId) throws Exception;
Map<String, String> initHiringBasicInfoData(Long hiringBasicInfoId);
Map<String, String> initHiringBasicInfoData(Long hiringBasicInfoId, String contractNo);
Map<String, String> initHiringImageInfoData(Long hiringBasicInfoId);
String generatePractitionerPDF(String practitionerNO,Map<String, String> initDatas,Map<String, String> initImages);
String getNextContractNo();
}
\ No newline at end of file
package com.yd.api.practitioner.service.impl;
import com.yd.api.practitioner.service.PractitionerHiringContractService;
import com.yd.api.practitioner.vo.hiring.GeneratePDFRequestVO;
import com.yd.dal.entity.customer.*;
import com.yd.dal.mapper.customer.*;
import com.yd.dal.mapper.practitioner.PractitionerHiringMapper;
......@@ -15,7 +14,6 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.io.*;
import java.text.SimpleDateFormat;
import java.util.*;
@Service("PractitionerHiringContractService")
......@@ -33,8 +31,6 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
@Autowired
private AclPractitionerHiringWorkingExperienceMapper workingExperienceMapper;
@Autowired
private AclPractitionerSubordinateSystemMapper systemMapper;
@Autowired
private AclPractitionerHiringApproveRecordsMapper recordsMapper;
@Autowired
private AclPractitionerHiringPersonalStatementsMapper statementsMapper;
......@@ -51,7 +47,7 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
//1、从DB中按照hiringBasicInfoId,获取经纪人的文字信息
Map<String, String> initDatas = new HashMap<String, String>();
initDatas = initHiringBasicInfoData(hiringBasicInfoId);
initDatas = initHiringBasicInfoData(hiringBasicInfoId, contractNo);
//2、从DB中按照hiringBasicInfoId,从oss上获取经纪人上传的图片信息,需存本地临时文件
Map<String, String> initImages = new HashMap<String, String>();
......@@ -156,7 +152,7 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
* @return
*/
@Override
public Map<String, String> initHiringBasicInfoData(Long hiringBasicInfoId) {
public Map<String, String> initHiringBasicInfoData(Long hiringBasicInfoId, String contractNo) {
AclPractitionerHiringBasicInfo basicInfo = basicInfoMapper.selectByPrimaryKey(hiringBasicInfoId);
AclPractitionerHiringMembership memberShip = membershipMapper.selectByHiringBasicInfoId(hiringBasicInfoId);
......@@ -185,7 +181,7 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
//PDF模板中定义的文字key,和值的集合
Map<String, String> data = new HashMap<String, String>();
//1页
data.put("contactNo", second.getContractNo());
data.put("contactNo", contractNo);
data.put("practitionerNo", second.getPractitionerCode());
data.put("subsystem", memberShip.getSubsystem());
data.put("practitioner", basicInfo.getName());
......@@ -615,4 +611,10 @@ public class PractitionerHiringContractServiceImpl implements PractitionerHiring
return signResultPDF;
}
@Override
public String getNextContractNo() {
String contractNo = practitionerHiringMapper.getNextContractNo();
return "YDLBC-0" + contractNo;
}
}
......@@ -701,21 +701,27 @@ public class PractitionerHiringServiceImpl implements PractitionerHiringService
String practitionerCode = practitioner == null ? null : practitioner.getPractitionerCode();
String contractNo = practitioner == null ? null : practitioner.getContractNo();
if (StringUtils.isEmpty(practitionerCode) || StringUtils.isEmpty(contractNo)) {
resp.setCommonResult(new CommonResult(true, "内部编号和员工合同编号不能为空,请注意保存"));
resp.setCommonResult(new CommonResult(true, "内部编号不能为空,请注意保存"));
return resp;
}
// if (contractNo != null) {
// resp.setCommonResult(new CommonResult(true, "合同已存在"));
// return resp;
// }
contractNo = hiringContractService.getNextContractNo();
String contractOssPath = hiringContractService.generatePractitionerContract(practitionerCode, contractNo, hiringBasicInfoId);
//4、经纪人表生成经纪人记录ag_acl_practitioner,ag_acl_practitioner.contract_oss_path
// 经纪人经纪人类型级别定义表ag_acl_practitioner_setting
AclPractitioner updateObj = new AclPractitioner();
updateObj.setId(practitionerId);
updateObj.setContractNo(contractNo);
updateObj.setContractOssPath(contractOssPath);
aclPractitionerMapper.updateByPrimaryKeySelective(updateObj);
//合同生成后,发短信通知报聘人,辅导人,团队长
// this.sendMsgAfterPDF(hiringBasicInfoId);
this.sendMsgAfterPDF(hiringBasicInfoId);
resp.setCommonResult(new CommonResult(true, ZHBErrorConfig.getErrorInfo("800000")));
resp.setContractOssPath(contractOssPath);
......@@ -744,17 +750,28 @@ public class PractitionerHiringServiceImpl implements PractitionerHiringService
mobileNoArr[2] = system.getMobileNo();
}
// orderNo = item.getOrderNo();
// times = CommonUtil.dateParseString(overdueDate,"HH:mm");
// customer = customerMap.get(item.getCustomerId());
// name = customer.getName();
// mobileNo = customer.getMobileNo();
// email = customer.getEmail();
// /* 短信提醒 */
// String content = "{\"name\":\""+name+"\",\"code\":\""+item.getOrderNo()+"\",\"time\":\""+times+"\",\"orderNo\":\""+orderNo+"\"}";
// sendService.sendEmailOrSMS("sms", mobileNo, "2", content, templateCode, null, null, "订单未支付提醒", 1, item.getId());
String name = basicInfo.getName();
String system = memberShip.getSubsystem();
String mobileNo;
String templateCode;
String content;
// S2的短信模板
if ("30".equals(memberShip.getMdDropOptionId())) {
/* 短信提醒 */
templateCode = systemConfigService.getSingleConfigValue("ALI_SMS_CONTRACT_S2");
content = "{\"name\":\""+name+"\"}";
} else {
/* 短信提醒 */
templateCode = systemConfigService.getSingleConfigValue("ALI_SMS_CONTRACT");
content = "{\"system\":\""+system+"\",\"name\":\""+name+"\"}";
}
for (int i = 0; i < mobileNoArr.length; i++) {
mobileNo = mobileNoArr[i];
sendService.sendEmailOrSMS("sms", mobileNo, "2", content, templateCode, null, null, "电子报聘合同生成提醒", 99, hiringBasicInfoId);
}
}
@Override
......
......@@ -66,4 +66,6 @@ public interface PractitionerHiringMapper {
List<HiringListInfo> queryMentorUnhandledList(Long practitionerId);
List<HiringListInfo> querySystemOwnerUnhandledList(Long practitionerId);
String getNextContractNo();
}
......@@ -262,4 +262,8 @@
from ag_md_drop_master
where scenario_code = 'practitioner_level'))
</select>
<select id="getNextContractNo" resultType="java.lang.String" statementType="CALLABLE">
select f_getNextContractNo()
</select>
</mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment