Browse Source

重新激活订阅按钮操作

dev
sunyuchao 5 years ago
parent
commit
1f40553f96
  1. 32
      epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/ActivationSubscribeFormDTO.java
  2. 14
      epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java
  3. 9
      epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpTemplateMsgSubscribeStatusDao.java
  4. 7
      epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMessageService.java
  5. 25
      epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java
  6. 15
      epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpTemplateMsgSubscribeStatusDao.xml

32
epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/ActivationSubscribeFormDTO.java

@ -0,0 +1,32 @@
package com.epmet.dto.form;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @Description 居民端工作端-重新激活授权页-接口入参
* @author sun
*/
@Data
public class ActivationSubscribeFormDTO {
@NotBlank(message = "客户id不能为空", groups = { UpdateWxSubscribeInfoGroup.class })
private String customerId;
@NotBlank(message = "客户端类型不能为空", groups = { UpdateWxSubscribeInfoGroup.class })
private String clientType;
@NotBlank(message = "模板ID不能为空", groups = { UpdateWxSubscribeInfoGroup.class })
private String templateId;
@NotBlank(message = "'是否总是允许'选项不能为空", groups = { UpdateWxSubscribeInfoGroup.class })
private String alwaysVisit;
/**
* token中用户Id
*/
private String userId;
/**
* 用户对应的openId(居民端一对一工作端一对多)
*/
private String openId;
public interface UpdateWxSubscribeInfoGroup {}
}

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

@ -21,6 +21,7 @@ import com.epmet.commons.tools.exception.ExceptionUtils;
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.ActivationSubscribeFormDTO;
import com.epmet.dto.form.GetTemplateListFormDTO;
import com.epmet.dto.form.WxMsgAuthInfoFormDTO;
import com.epmet.dto.form.WxSubscribeMessageFormDTO;
@ -145,4 +146,17 @@ public class WxmpMessageController {
return new Result();
}
/**
* @return
* @Description 居民端工作端-重新激活授权页
* @author sun
*/
@PostMapping("activationsubscribe")
public Result activationSubscribe(@RequestBody ActivationSubscribeFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, ActivationSubscribeFormDTO.UpdateWxSubscribeInfoGroup.class);
formDTO.setUserId(loginUserUtil.getLoginUserId());
wxmpMessageService.activationSubscribe(formDTO);
return new Result();
}
}

9
epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpTemplateMsgSubscribeStatusDao.java

@ -18,6 +18,7 @@
package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.form.ActivationSubscribeFormDTO;
import com.epmet.dto.result.WxMsgAuthInfoResultDTO;
import com.epmet.entity.WxmpTemplateMsgSubscribeStatusEntity;
import org.apache.ibatis.annotations.Mapper;
@ -43,4 +44,12 @@ public interface WxmpTemplateMsgSubscribeStatusDao extends BaseDao<WxmpTemplateM
@Param("clientType") String clientType,
@Param("templateId") String templateId,
@Param("openId") String openId);
/**
* @return
* @Description 更新用户授权信息
*
* @author sun
*/
int updateUserSubscribe(ActivationSubscribeFormDTO formDTO);
}

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

@ -17,6 +17,7 @@
package com.epmet.service;
import com.epmet.dto.form.ActivationSubscribeFormDTO;
import com.epmet.dto.form.GetTemplateListFormDTO;
import com.epmet.dto.form.WxSubscribeMessageFormDTO;
import com.epmet.dto.result.GetTemplateListResultDTO;
@ -55,4 +56,10 @@ public interface WxmpMessageService {
*/
List<GetTemplateListResultDTO> templateList(GetTemplateListFormDTO formDTO);
/**
* @return
* @Description 居民端工作端-重新激活授权页
* @author sun
*/
void activationSubscribe(ActivationSubscribeFormDTO formDTO);
}

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

@ -619,4 +619,29 @@ public class WxmpMessageServiceImpl implements WxmpMessageService {
return staffBasicInfo.getOpenId();
}
/**
* @return
* @Description 居民端工作端-重新激活授权页
* @author sun
*/
@Override
public void activationSubscribe(ActivationSubscribeFormDTO formDTO) {
//1.根据所属端和用户Id查询对应的openId
String openId = "";
if (AppClientConstant.APP_GOV.equals(formDTO.getClientType())) {
// 工作端
openId = getWorkOpenId(formDTO.getUserId());
} else {
//居民端
openId = getResiOpenId(formDTO.getUserId());
}
formDTO.setOpenId(openId);
//2.更新我们自己授权页用户授权状态
if(msgSubscribeStatusDao.updateUserSubscribe(formDTO)<NumConstant.ONE){
throw new RenException("重新激活订阅操作失败");
}
}
}

15
epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpTemplateMsgSubscribeStatusDao.xml

@ -50,4 +50,19 @@
and TEMPLATE_ID = #{templateId}
and WX_OPEN_ID = #{openId}
</select>
<update id="updateUserSubscribe">
UPDATE wxmp_template_msg_subscribe_status
SET ALWAYS_VISIT = #{alwaysVisit},
UPDATED_BY = #{userId},
UPDATED_TIME = NOW()
WHERE
del_flag = '0'
AND customer_id = #{customerId}
AND client_type = #{clientType}
AND user_id = #{userId}
AND wx_open_id = #{openId}
AND template_id = #{templateId}
</update>
</mapper>
Loading…
Cancel
Save