Browse Source

查询小程序消息模板列表接口

dev_shibei_match
sunyuchao 5 years ago
parent
commit
9459b5517e
  1. 31
      epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/TemplateListFormDTO.java
  2. 6
      epmet-module/epmet-message/epmet-message-server/pom.xml
  3. 19
      epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java
  4. 9
      epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMessageService.java
  5. 31
      epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java
  6. 31
      epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/GetTemplateListFormDTO.java
  7. 25
      epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/result/GetTemplateListResultDTO.java
  8. 37
      epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/PersonalTemplateController.java
  9. 9
      epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/PersonalTemplateDao.java
  10. 9
      epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/PersonalTemplateService.java
  11. 13
      epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/PersonalTemplateServiceImpl.java
  12. 13
      epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/PersonalTemplateDao.xml

31
epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/TemplateListFormDTO.java

@ -0,0 +1,31 @@
package com.epmet.dto.form;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* @Description 获取客户小程序模板列表-接口入参
* @Author sun
*/
@Data
public class TemplateListFormDTO implements Serializable {
/**
* 客户Id
*/
@NotBlank(message="客户Id不能为空", groups = {TemplateListFormDTO.AddUserInternalGroup.class})
private String customerId;
/**
* 小程序Id
*/
@NotBlank(message="小程序appId不能为空", groups = {TemplateListFormDTO.AddUserInternalGroup.class})
private String appId;
/**
* 模板类型(站内信提醒)
*/
private String templateType;
public interface AddUserInternalGroup {}
}

6
epmet-module/epmet-message/epmet-message-server/pom.xml

@ -101,6 +101,12 @@
<artifactId>epmet-user-client</artifactId>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>com.epmet</groupId>
<artifactId>epmet-third-client</artifactId>
<version>2.0.0</version>
<scope>compile</scope>
</dependency>
</dependencies>
<build>

19
epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java

@ -20,11 +20,16 @@ package com.epmet.controller;
import com.epmet.commons.tools.security.user.LoginUserUtil;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dto.form.GetTemplateListFormDTO;
import com.epmet.dto.form.WxMsgAuthInfoFormDTO;
import com.epmet.dto.form.WxSubscribeMessageFormDTO;
import com.epmet.dto.result.GetTemplateListResultDTO;
import com.epmet.service.WxmpMessageService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@ -72,4 +77,16 @@ public class WxmpMessageController {
wxmpMessageService.sendWxSubscribeMessage(msgList);
return new Result();
}
/**
* @return
* @Description 居民端工作端-获取客户小程序模板列表
* @author sun
*/
@PostMapping("templatelist")
public Result<List<GetTemplateListResultDTO>> templateList(@RequestBody GetTemplateListFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, GetTemplateListFormDTO.AddUserInternalGroup.class);
return new Result<List<GetTemplateListResultDTO>>().ok(wxmpMessageService.templateList(formDTO));
}
}

9
epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMessageService.java

@ -17,7 +17,9 @@
package com.epmet.service;
import com.epmet.dto.form.GetTemplateListFormDTO;
import com.epmet.dto.form.WxSubscribeMessageFormDTO;
import com.epmet.dto.result.GetTemplateListResultDTO;
import java.util.List;
@ -39,4 +41,11 @@ public interface WxmpMessageService {
* @Date 2020/10/21 15:34
*/
void sendWxSubscribeMessage(List<WxSubscribeMessageFormDTO> msgList);
/**
* @return
* @Description 居民端工作端-获取客户小程序模板列表
* @author sun
*/
List<GetTemplateListResultDTO> templateList(GetTemplateListFormDTO formDTO);
}

31
epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java

@ -21,16 +21,21 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.enums.EnvEnum;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.exception.ValidateException;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.HttpClientManager;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.constant.WxmpMessageConstant;
import com.epmet.dao.WxmpResiUserSubscribeDao;
import com.epmet.dao.WxmpTemplateMsgSubscribeStatusDao;
import com.epmet.dao.WxmpWorkUserSubscribeDao;
import com.epmet.dto.form.GetTemplateListFormDTO;
import com.epmet.dto.form.StaffBasicInfoFormDTO;
import com.epmet.dto.form.UserBasicInfoFormDTO;
import com.epmet.dto.form.WxSubscribeMessageFormDTO;
import com.epmet.dto.result.GetTemplateListResultDTO;
import com.epmet.entity.WxmpMsgSendRecordEntity;
import com.epmet.entity.WxmpTemplateMsgSubscribeStatusEntity;
import com.epmet.exception.WxSubscribeException;
@ -288,4 +293,30 @@ public class WxmpMessageServiceImpl implements WxmpMessageService {
wxmpMsgSendRecordEntity.setResult(status);
return wxmpMsgSendRecordEntity;
}
/**
* @return
* @Description 居民端工作端-获取客户小程序模板列表
* @author sun
*/
@Override
public List<GetTemplateListResultDTO> templateList(GetTemplateListFormDTO formDTO) {
GetTemplateListFormDTO dto = ConvertUtils.sourceToTarget(formDTO, GetTemplateListFormDTO.class);
String url = "https://epmet-cloud.elinkservice.cn/api/third/personaltemplate/templatelist";
//String url = "http://localhost:8080/api/third/personaltemplate/templatelist";
String data = HttpClientManager.getInstance().sendPostByJSON(url, JSON.toJSONString(dto)).getData();
logger.info("ThirdLoginServiceImpl.getUserWeChat:httpclient->url:"+url+",结果->"+data);
JSONObject toResult = JSON.parseObject(data);
Result mapToResult = ConvertUtils.mapToEntity(toResult, Result.class);
if (null != toResult.get("code")) {
mapToResult.setCode(((Integer) toResult.get("code")).intValue());
}
if (!mapToResult.success()) {
logger.error("调用epmet_third服务获取小程序消息订阅模板数据失败");
throw new RenException(mapToResult.getCode());
}
List<GetTemplateListResultDTO> resultList = (List<GetTemplateListResultDTO>) mapToResult.getData();
return resultList;
}
}

31
epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/GetTemplateListFormDTO.java

@ -0,0 +1,31 @@
package com.epmet.dto.form;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* @Description 获取客户小程序模板列表-接口入参
* @Author sun
*/
@Data
public class GetTemplateListFormDTO implements Serializable {
/**
* 客户Id
*/
@NotBlank(message="客户Id不能为空", groups = {AddUserInternalGroup.class})
private String customerId;
/**
* 小程序Id
*/
@NotBlank(message="小程序appId不能为空", groups = {AddUserInternalGroup.class})
private String appId;
/**
* 模板类型(站内信提醒)
*/
private String templateType;
public interface AddUserInternalGroup {}
}

25
epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/result/GetTemplateListResultDTO.java

@ -0,0 +1,25 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Description 获取客户小程序模板列表-接口返参
* @Author sun
*/
@Data
public class GetTemplateListResultDTO implements Serializable {
private static final long serialVersionUID = 6856602932571839314L;
/**
* 模板Id
*/
private String templateId;
/**
* 模板类型站内信提醒
*/
private String templateType;
}

37
epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/PersonalTemplateController.java

@ -0,0 +1,37 @@
package com.epmet.controller;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.form.GetTemplateListFormDTO;
import com.epmet.dto.result.GetTemplateListResultDTO;
import com.epmet.service.PersonalTemplateService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-09
*/
@RestController
@RequestMapping("personaltemplate")
public class PersonalTemplateController {
@Autowired
private PersonalTemplateService personalTemplateService;
/**
* @return
* @Description 居民端工作端-获取客户小程序模板列表
* @author sun
*/
@PostMapping("templatelist")
public Result<List<GetTemplateListResultDTO>> templateList(@RequestBody GetTemplateListFormDTO formDTO) {
return new Result<List<GetTemplateListResultDTO>>().ok(personalTemplateService.templateList(formDTO));
}
}

9
epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/PersonalTemplateDao.java

@ -19,7 +19,9 @@ package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.PersonalTemplateDTO;
import com.epmet.dto.form.GetTemplateListFormDTO;
import com.epmet.dto.result.CustomerTempResultDTO;
import com.epmet.dto.result.GetTemplateListResultDTO;
import com.epmet.dto.result.TemplateDTO;
import com.epmet.entity.PersonalTemplateEntity;
import org.apache.ibatis.annotations.Mapper;
@ -76,4 +78,11 @@ public interface PersonalTemplateDao extends BaseDao<PersonalTemplateEntity> {
*/
List<TemplateDTO> selectListByCustomerId(@Param("appId") String appId, @Param("customerId") String customerId,
@Param("clientType") String clientType);
/**
* @return
* @Description 居民端工作端-获取客户小程序模板列表
* @author sun
*/
List<GetTemplateListResultDTO> selectTemplateList(GetTemplateListFormDTO formDTO);
}

9
epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/PersonalTemplateService.java

@ -20,6 +20,8 @@ package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.PersonalTemplateDTO;
import com.epmet.dto.form.GetTemplateListFormDTO;
import com.epmet.dto.result.GetTemplateListResultDTO;
import com.epmet.dto.result.TemplateDTO;
import com.epmet.entity.PersonalTemplateEntity;
@ -123,4 +125,11 @@ public interface PersonalTemplateService extends BaseService<PersonalTemplateEnt
* @date 2020/9/11 14:43
*/
List<TemplateDTO> getListByCustomer(String appId, String customerId, String clientType);
/**
* @return
* @Description 居民端工作端-获取客户小程序模板列表
* @author sun
*/
List<GetTemplateListResultDTO> templateList(GetTemplateListFormDTO formDTO);
}

13
epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/PersonalTemplateServiceImpl.java

@ -25,6 +25,8 @@ import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.dao.PersonalTemplateDao;
import com.epmet.dto.PersonalTemplateDTO;
import com.epmet.dto.form.GetTemplateListFormDTO;
import com.epmet.dto.result.GetTemplateListResultDTO;
import com.epmet.dto.result.TemplateDTO;
import com.epmet.entity.PersonalTemplateEntity;
import com.epmet.service.PersonalTemplateService;
@ -116,4 +118,15 @@ public class PersonalTemplateServiceImpl extends BaseServiceImpl<PersonalTemplat
return baseDao.selectListByCustomerId(appId, customerId, clientType);
}
/**
* @return
* @Description 居民端工作端-获取客户小程序模板列表
* @author sun
*/
@Override
public List<GetTemplateListResultDTO> templateList(GetTemplateListFormDTO formDTO) {
//根据客户Id、appId、模板类型查询小程序订阅消息模板列表
return baseDao.selectTemplateList(formDTO);
}
}

13
epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/PersonalTemplateDao.xml

@ -75,5 +75,18 @@
ON t1.PRI_TMPL_ID = t2.PID
</select>
<select id="selectTemplateList" resultType="com.epmet.dto.result.GetTemplateListResultDTO">
SELECT
title AS "templateType",
pri_tmpl_id AS "templateId"
FROM
personal_template
WHERE
del_flag = '0'
AND customer_id = #{customerId}
AND app_id = #{appId}
AND title = #{templateType}
ORDER BY CREATED_TIME DESC
</select>
</mapper>
Loading…
Cancel
Save