|
@@ -6,6 +6,7 @@ import com.hz.employmentsite.mapper.PcRecommendMgtMapper;
|
|
|
import com.hz.employmentsite.mapper.cquery.RecommendMgtCQuery;
|
|
|
import com.hz.employmentsite.model.PcRecommendMgt;
|
|
|
import com.hz.employmentsite.model.WxMessagetempsetting;
|
|
|
+import com.hz.employmentsite.model.WxMessagetempsettingField;
|
|
|
import com.hz.employmentsite.services.service.WechatService;
|
|
|
import com.hz.employmentsite.services.service.jobUserManager.RecommendMgtService;
|
|
|
import com.hz.employmentsite.util.StringUtils;
|
|
@@ -113,43 +114,78 @@ public class RecommendMgtServiceImpl implements RecommendMgtService {
|
|
|
}
|
|
|
|
|
|
|
|
|
- public void SendWxMessage() {
|
|
|
+ @Override
|
|
|
+ public void sendWxMessage() {
|
|
|
+ sendUser();
|
|
|
+
|
|
|
+ sendCompany();
|
|
|
+ }
|
|
|
+
|
|
|
+ private void sendUser(){
|
|
|
List<HashMap<String, Object>> toUserList = recommendMgtCQuery.getCompanypostToUsermessageList();
|
|
|
- List<HashMap<String, Object>> toCompanyList = recommendMgtCQuery.getUserhuntpostToCompanymessageList();
|
|
|
|
|
|
WxMessagetempsetting toUserTemp = wechatService.getWxMessagetempsettingList().stream().filter(it -> it.getTemplateNo().equals("toUser")).findFirst().orElse(null);
|
|
|
- WxMessagetempsetting toCompanyTemp = wechatService.getWxMessagetempsettingList().stream().filter(it -> it.getTemplateNo().equals("toUser")).findFirst().orElse(null);
|
|
|
|
|
|
if (toUserTemp != null) {
|
|
|
- toUserList.forEach(item -> {
|
|
|
- try {
|
|
|
- String recommendmgtid = item.get("recommendmgtid").toString();
|
|
|
+ List<WxMessagetempsettingField> fieldList = wechatService.getWxMessagetempFieldList(toUserTemp.getTemplateNo());
|
|
|
+ if (fieldList.size() > 0) {
|
|
|
+ toUserList.forEach(item -> {
|
|
|
+ try {
|
|
|
+ String recommendmgtid = item.get("recommendmgtid").toString();
|
|
|
|
|
|
- PcRecommendMgt pcRecommendMgt = pcRecommendMgtMapper.selectByPrimaryKey(recommendmgtid);
|
|
|
+ PcRecommendMgt pcRecommendMgt = pcRecommendMgtMapper.selectByPrimaryKey(recommendmgtid);
|
|
|
|
|
|
- /*List<String> fields = Arrays.stream(toUserTemp.getFields().split("\\,")).toList();*/
|
|
|
+ Map<String, String> data = new HashMap<>();
|
|
|
+ fieldList.forEach(field -> {
|
|
|
+ data.put(field.getWxFieldName(), item.get(field.getSysFieldName()).toString());
|
|
|
+ });
|
|
|
|
|
|
- /* Map<String, String> data = new HashMap<>();
|
|
|
- fields.forEach(field->{
|
|
|
- data.put(field, item.get("field").toString());
|
|
|
- });*/
|
|
|
|
|
|
+ boolean result = wechatService.sendMsg(item.get("userOpenId").toString(), recommendmgtid, toUserTemp.getUrl(), toUserTemp.getTemplateId(), data);
|
|
|
|
|
|
- /*boolean result = wechatService.sendMsg(item.get("userOpenId").toString(), recommendmgtid, toUserTemp.getUrl(), toUserTemp.getTemplateId(), data);
|
|
|
+ if (result) {
|
|
|
+ pcRecommendMgt.setIsSendUser(true);
|
|
|
+ pcRecommendMgtMapper.updateByPrimaryKey(pcRecommendMgt);
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
|
|
|
- if (result) {
|
|
|
- pcRecommendMgt.setIsSendUser(true);
|
|
|
- pcRecommendMgtMapper.updateByPrimaryKey(pcRecommendMgt);
|
|
|
- }*/
|
|
|
- } catch (Exception e) {
|
|
|
-
|
|
|
- }
|
|
|
- });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
}
|
|
|
+ }
|
|
|
+
|
|
|
+ private void sendCompany(){
|
|
|
+ List<HashMap<String, Object>> toCompanyList = recommendMgtCQuery.getUserhuntpostToCompanymessageList();
|
|
|
+
|
|
|
+ WxMessagetempsetting toCompanyTemp = wechatService.getWxMessagetempsettingList().stream().filter(it -> it.getTemplateNo().equals("toCompany")).findFirst().orElse(null);
|
|
|
|
|
|
if (toCompanyTemp != null) {
|
|
|
+ List<WxMessagetempsettingField> fieldList = wechatService.getWxMessagetempFieldList(toCompanyTemp.getTemplateNo());
|
|
|
+ if (fieldList.size() > 0) {
|
|
|
+ toCompanyList.forEach(item -> {
|
|
|
+ try {
|
|
|
+ String recommendmgtid = item.get("recommendmgtid").toString();
|
|
|
+
|
|
|
+ PcRecommendMgt pcRecommendMgt = pcRecommendMgtMapper.selectByPrimaryKey(recommendmgtid);
|
|
|
+
|
|
|
+ Map<String, String> data = new HashMap<>();
|
|
|
+ fieldList.forEach(field -> {
|
|
|
+ data.put(field.getWxFieldName(), item.get(field.getSysFieldName()).toString());
|
|
|
+ });
|
|
|
|
|
|
- }
|
|
|
|
|
|
+ boolean result = wechatService.sendMsg(item.get("companyOpenId").toString(), recommendmgtid, toCompanyTemp.getUrl(), toCompanyTemp.getTemplateId(), data);
|
|
|
+
|
|
|
+ if (result) {
|
|
|
+ pcRecommendMgt.setIsSendUser(true);
|
|
|
+ pcRecommendMgtMapper.updateByPrimaryKey(pcRecommendMgt);
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
+
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
}
|