diff --git a/mallinkService/src/main/java/com/iformall/service/WxTemplateMsgService.java b/mallinkService/src/main/java/com/iformall/service/WxTemplateMsgService.java index 33e8cb40a..d3028376c 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxTemplateMsgService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxTemplateMsgService.java @@ -9,8 +9,8 @@ public interface WxTemplateMsgService { * 根据实体查询分页列表 * * @param record - * @param offset - * @param limit + * @param pageIndex + * @param pageSize * @return */ PageInfo listAsPage(WxTemplateMsg record, Integer pageIndex, Integer pageSize); @@ -22,6 +22,14 @@ public interface WxTemplateMsgService { * @return */ WxTemplateMsg getById(Long id); + + /** + * 根据Obj获得实体 + * + * @param record + * @return + */ + WxTemplateMsg getByObj(WxTemplateMsg record); /** * 保存或更新实体 diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxTemplateMsgServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxTemplateMsgServiceImpl.java index c3e0746f2..0376b3bd7 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxTemplateMsgServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxTemplateMsgServiceImpl.java @@ -11,6 +11,8 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.iformall.common.IdWorker; +import java.util.Date; + @Service public class WxTemplateMsgServiceImpl implements WxTemplateMsgService { private final Logger logger = LoggerFactory.getLogger(this.getClass()); @@ -29,14 +31,23 @@ public class WxTemplateMsgServiceImpl implements WxTemplateMsgService { return wxTemplateMsgMapper.selectByPrimaryKey(id); } + @Override + public WxTemplateMsg getByObj(WxTemplateMsg record) { + return wxTemplateMsgMapper.selectOne(record); + } + @Override public void saveOrUpdate(WxTemplateMsg record) { + Date curDate = new Date(); if (record.getId() == null) { //record.setId(UUID.randomUUID().toString().replaceAll("-", "")); final IdWorker idWorker = IdWorker.get(); record.setId(idWorker.nextId()); + record.setCreateDate(curDate); + record.setUpdateDate(curDate); wxTemplateMsgMapper.insertSelective(record); } else { + record.setUpdateDate(curDate); wxTemplateMsgMapper.updateByPrimaryKeySelective(record); } } diff --git a/mallinkWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java b/mallinkWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java index 8c1a5bb7d..5228d1a37 100644 --- a/mallinkWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java +++ b/mallinkWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java @@ -12,16 +12,11 @@ import com.google.gson.reflect.TypeToken; import com.iformall.common.ErrorCode; import com.iformall.common.Result; import com.iformall.common.ResultData; -import com.iformall.domain.po.WxWeappBasicSet; -import com.iformall.domain.po.WxWeappCodeStatus; -import com.iformall.domain.po.WxWeappExtSet; -import com.iformall.domain.po.WxWeappInfo; +import com.iformall.domain.po.*; import com.iformall.enums.EnumAppType; import com.iformall.enums.EnumAuditStatus; -import com.iformall.service.WxWeappBasicSetService; -import com.iformall.service.WxWeappCodeStatusService; -import com.iformall.service.WxWeappExtSetService; -import com.iformall.service.WxWeappInfoService; +import com.iformall.enums.EnumTemplateType; +import com.iformall.service.*; import com.iformall.service.wechat.WxOpenService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; @@ -71,6 +66,12 @@ public class WxWeappInfoController extends BaseController { @Autowired private WxOpenService openService; + @Autowired + private WxAppinfoService appinfoService; + + @Autowired + private WxTemplateMsgService templateMsgService; + @ApiOperation("分页列表接口") @GetMapping("list") @@ -158,6 +159,7 @@ public class WxWeappInfoController extends BaseController { // 设置微信模板 if(weappBasicSet.getType().equals(EnumAppType.C.getCode())) { + WxAppinfo appinfo = appinfoService.getByAppId(appId); try { WxMaService maService = openService.getWxOpenComponentService().getWxMaServiceByAppid(appId); // 核销成功消息 @@ -165,13 +167,39 @@ public class WxWeappInfoController extends BaseController { JSONArray keyidlist = verify_success.getJSONArray("keyword_id_list"); List keyArr = getIdList(keyidlist); WxMaTemplateAddResult ret = maService.getTemplateService().addTemplate(verify_success.getString("id"), keyArr); - // TODO update wx_template_msg + if(appinfo != null) { + // wx_template_msg + WxTemplateMsg templateMsgQ = new WxTemplateMsg(); + templateMsgQ.setTenantId(appinfo.getTenantId()); + templateMsgQ.setType(EnumTemplateType.VERIFY_SUCCESS.getCode()); + WxTemplateMsg templateMsg = templateMsgService.getByObj(templateMsgQ); + if(templateMsg != null) { + templateMsg.setTemplateId(ret.getTemplateId()); + templateMsgService.saveOrUpdate(templateMsg); + } else { + templateMsgQ.setTemplateId(ret.getTemplateId()); + templateMsgService.saveOrUpdate(templateMsgQ); + } + } // 核销失败消息 JSONObject verify_fail = templeObj.getJSONObject("verify_fail"); keyidlist = verify_fail.getJSONArray("keyword_id_list"); List keyArr1 = getIdList(keyidlist); ret = maService.getTemplateService().addTemplate(verify_fail.getString("id"), keyArr1); - // TODO update wx_template_msg + if(appinfo != null) { + // wx_template_msg + WxTemplateMsg templateMsgQ = new WxTemplateMsg(); + templateMsgQ.setTenantId(appinfo.getTenantId()); + templateMsgQ.setType(EnumTemplateType.VERIFY_FAIL.getCode()); + WxTemplateMsg templateMsg = templateMsgService.getByObj(templateMsgQ); + if(templateMsg != null) { + templateMsg.setTemplateId(ret.getTemplateId()); + templateMsgService.saveOrUpdate(templateMsg); + } else { + templateMsgQ.setTemplateId(ret.getTemplateId()); + templateMsgService.saveOrUpdate(templateMsgQ); + } + } } catch (WxErrorException e) { logger.error(e.getMessage()); return new ResultData(Result.ERROR, e.getMessage());