diff --git a/epmet-auth/deploy/docker-compose-prod.yml b/epmet-auth/deploy/docker-compose-prod.yml index a73bb97f30..8c5773f2d5 100644 --- a/epmet-auth/deploy/docker-compose-prod.yml +++ b/epmet-auth/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: epmet-auth-server: container_name: epmet-auth-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-auth:0.3.66 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-auth:0.3.68 ports: - "8081:8081" network_mode: host # 使用现有网络 diff --git a/epmet-gateway/deploy/docker-compose-prod.yml b/epmet-gateway/deploy/docker-compose-prod.yml index 44d4d7b7b6..6b8419721d 100644 --- a/epmet-gateway/deploy/docker-compose-prod.yml +++ b/epmet-gateway/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: epmet-gateway-server: container_name: epmet-gateway-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-gateway:0.3.26 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-gateway:0.3.30 ports: - "8080:8080" network_mode: host # 使用现有网络 diff --git a/epmet-module/epmet-common-service/common-service-server/deploy/docker-compose-prod.yml b/epmet-module/epmet-common-service/common-service-server/deploy/docker-compose-prod.yml index 548d86d6f9..5f9878a727 100644 --- a/epmet-module/epmet-common-service/common-service-server/deploy/docker-compose-prod.yml +++ b/epmet-module/epmet-common-service/common-service-server/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: common-service-server: container_name: common-service-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/common-service-server:0.3.5 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/common-service-server:0.3.9 ports: - "8103:8103" network_mode: host # 使用现有网络 diff --git a/epmet-module/epmet-job/epmet-job-server/deploy/docker-compose-prod.yml b/epmet-module/epmet-job/epmet-job-server/deploy/docker-compose-prod.yml index 6b4899de0d..4816a4cd30 100644 --- a/epmet-module/epmet-job/epmet-job-server/deploy/docker-compose-prod.yml +++ b/epmet-module/epmet-job/epmet-job-server/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: epmet-job-server: container_name: epmet-job-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-job-server:0.3.22 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-job-server:0.3.25 ports: - "8084:8084" network_mode: host # 使用现有网络 diff --git a/epmet-module/epmet-message/epmet-message-server/deploy/docker-compose-prod.yml b/epmet-module/epmet-message/epmet-message-server/deploy/docker-compose-prod.yml index b270804c81..360d07d79e 100644 --- a/epmet-module/epmet-message/epmet-message-server/deploy/docker-compose-prod.yml +++ b/epmet-module/epmet-message/epmet-message-server/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: epmet-message-server: container_name: epmet-message-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-message-server:0.3.25 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-message-server:0.3.28 ports: - "8085:8085" network_mode: host # 使用现有网络 diff --git a/epmet-module/epmet-oss/epmet-oss-server/deploy/docker-compose-prod.yml b/epmet-module/epmet-oss/epmet-oss-server/deploy/docker-compose-prod.yml index 0042119b7d..dbb2282e8e 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/deploy/docker-compose-prod.yml +++ b/epmet-module/epmet-oss/epmet-oss-server/deploy/docker-compose-prod.yml @@ -3,7 +3,7 @@ services: epmet-oss-server: container_name: epmet-oss-server-prod # image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-test/epmet-oss-server:0.3.2 - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-oss-server:0.3.22 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-oss-server:0.3.25 ports: - "8083:8083" network_mode: host # 使用现有网络 diff --git a/epmet-module/epmet-point/epmet-point-server/deploy/docker-compose-prod.yml b/epmet-module/epmet-point/epmet-point-server/deploy/docker-compose-prod.yml index 0edc524aed..8fff39478d 100644 --- a/epmet-module/epmet-point/epmet-point-server/deploy/docker-compose-prod.yml +++ b/epmet-module/epmet-point/epmet-point-server/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: epmet-point-server: container_name: epmet-point-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-point-server:0.0.1 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-point-server:0.0.40 ports: - "8112:8112" network_mode: host # 使用现有网络 diff --git a/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/ModifyDomainFormDTO.java b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/ModifyDomainFormDTO.java new file mode 100644 index 0000000000..d8b78838e4 --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/ModifyDomainFormDTO.java @@ -0,0 +1,41 @@ +package com.epmet.dto.form; + +import com.google.gson.annotations.SerializedName; +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/8/20 13:44 + */ +@Data +public class ModifyDomainFormDTO implements Serializable { + private static final long serialVersionUID = -1995778975498383130L; + /** + * 客户ID + */ + private String customerId; + /** + * 客户端类型 + */ + private String clientType; + /** + * request 合法域名 + */ + private List requestDomain; + /** + * socket 合法域名 + */ + private List wsRequestDomain; + /** + * uploadFile 合法域名 + */ + private List uploadDomain; + /** + * downloadFile 合法域名 + */ + private List downloadDomain; +} diff --git a/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/WebviewDomainFormDTO.java b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/WebviewDomainFormDTO.java new file mode 100644 index 0000000000..dc951e1b7b --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/WebviewDomainFormDTO.java @@ -0,0 +1,28 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/8/19 17:46 + */ +@Data +public class WebviewDomainFormDTO implements Serializable { + private static final long serialVersionUID = 8022056850984848597L; + /** + * 客户ID + */ + private String customerId; + /** + * 客户端类型 + */ + private String clientType; + /** + * 业务域名 + */ + private List webViewDomain; +} diff --git a/epmet-module/epmet-third/epmet-third-server/deploy/docker-compose-dev.yml b/epmet-module/epmet-third/epmet-third-server/deploy/docker-compose-dev.yml index f745b5cfd0..c0110e464b 100644 --- a/epmet-module/epmet-third/epmet-third-server/deploy/docker-compose-dev.yml +++ b/epmet-module/epmet-third/epmet-third-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: epmet-third-server: container_name: epmet-third-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/epmet-third-server:0.0.131 + image: 192.168.1.130:10080/epmet-cloud-dev/epmet-third-server:0.0.132 ports: - "8110:8110" network_mode: host # 使用现有网络 diff --git a/epmet-module/epmet-third/epmet-third-server/deploy/docker-compose-prod.yml b/epmet-module/epmet-third/epmet-third-server/deploy/docker-compose-prod.yml index 75dee17ae1..d10eea3729 100644 --- a/epmet-module/epmet-third/epmet-third-server/deploy/docker-compose-prod.yml +++ b/epmet-module/epmet-third/epmet-third-server/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: epmet-third-server: container_name: epmet-third-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-third-server:0.0.75 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-third-server:0.0.131 ports: - "8110:8110" network_mode: host # 使用现有网络 diff --git a/epmet-module/epmet-third/epmet-third-server/pom.xml b/epmet-module/epmet-third/epmet-third-server/pom.xml index c0586fac7e..6c703dd85f 100644 --- a/epmet-module/epmet-third/epmet-third-server/pom.xml +++ b/epmet-module/epmet-third/epmet-third-server/pom.xml @@ -2,7 +2,7 @@ 4.0.0 - 0.0.131 + 0.0.132 com.epmet diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/SettingController.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/SettingController.java new file mode 100644 index 0000000000..c7457466e2 --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/SettingController.java @@ -0,0 +1,51 @@ +package com.epmet.controller; + +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.ModifyDomainFormDTO; +import com.epmet.dto.form.WebviewDomainFormDTO; +import com.epmet.service.SettingService; +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; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/8/20 13:50 + */ +@RestController +@RequestMapping("setting") +public class SettingController { + @Autowired + private SettingService settingService; + + /** + * 设置服务器域名 + * + * @param formDTO + * @return com.epmet.commons.tools.utils.Result + * @author zhaoqifeng + * @date 2020/8/20 13:51 + */ + @PostMapping("modifydomain") + public Result modifyDomain(@RequestBody ModifyDomainFormDTO formDTO) { + settingService.modifyDomain(formDTO); + return new Result<>(); + } + + /** + * 设置业务域名 + * + * @param formDTO + * @return com.epmet.commons.tools.utils.Result + * @author zhaoqifeng + * @date 2020/8/20 13:51 + */ + @PostMapping("setwebviewdomain") + public Result setWebviewDomain(@RequestBody WebviewDomainFormDTO formDTO) { + settingService.setWebviewDomain(formDTO); + return new Result<>(); + } +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/SettingService.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/SettingService.java new file mode 100644 index 0000000000..011b82fa1e --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/SettingService.java @@ -0,0 +1,31 @@ +package com.epmet.service; + +import com.epmet.dto.form.ModifyDomainFormDTO; +import com.epmet.dto.form.WebviewDomainFormDTO; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/8/20 11:11 + */ +public interface SettingService { + /** + * 设置服务器域名 + * + * @param formDTO + * @return void + * @author zhaoqifeng + * @date 2020/8/20 13:46 + */ + void modifyDomain(ModifyDomainFormDTO formDTO); + + /** + * 设置业务域名 + * + * @param formDTO + * @return void + * @author zhaoqifeng + * @date 2020/8/19 17:49 + */ + void setWebviewDomain(WebviewDomainFormDTO formDTO); +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/SettingServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/SettingServiceImpl.java new file mode 100644 index 0000000000..134ab97c06 --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/SettingServiceImpl.java @@ -0,0 +1,63 @@ +package com.epmet.service.impl; + +import com.epmet.commons.tools.exception.RenException; +import com.epmet.dao.AuthorizationInfoDao; +import com.epmet.dto.AuthorizationInfoDTO; +import com.epmet.dto.form.ModifyDomainFormDTO; +import com.epmet.dto.form.WebviewDomainFormDTO; +import com.epmet.service.SettingService; +import com.epmet.wxapi.param.WxMaModifyDomainReq; +import com.epmet.wxapi.param.WxMaSetWebviewDomainReq; +import com.epmet.wxapi.result.WxResult; +import com.epmet.wxapi.service.WxMaSettingService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/8/20 11:11 + */ +@Service +public class SettingServiceImpl implements SettingService { + @Autowired + private AuthorizationInfoDao authorizationInfoDao; + @Autowired + private WxMaSettingService wxMaSettingService; + + @Override + public void modifyDomain(ModifyDomainFormDTO formDTO) { + //获取小程序调用令牌 + AuthorizationInfoDTO authInfo = authorizationInfoDao.getAuthInfoByCustomer(formDTO.getCustomerId(), formDTO.getClientType()); + if (null == authInfo) { + throw new RenException("未授权"); + } + WxMaModifyDomainReq request = new WxMaModifyDomainReq(); + request.setDownloadDomain(formDTO.getDownloadDomain()); + request.setRequestDomain(formDTO.getRequestDomain()); + request.setWsRequestDomain(formDTO.getWsRequestDomain()); + request.setUploadDomain(formDTO.getUploadDomain()); + //设置业务域名 + WxResult setDomain = wxMaSettingService.modifyDomain(authInfo.getAuthorizerAccessToken(), request); + if (!setDomain.success()) { + throw new RenException(setDomain.getErrorCode(), setDomain.getErrorMsg()); + } + } + + @Override + public void setWebviewDomain(WebviewDomainFormDTO formDTO) { + //获取小程序调用令牌 + AuthorizationInfoDTO authInfo = authorizationInfoDao.getAuthInfoByCustomer(formDTO.getCustomerId(), formDTO.getClientType()); + if (null == authInfo) { + throw new RenException("未授权"); + } + WxMaSetWebviewDomainReq request = new WxMaSetWebviewDomainReq(); + request.setAction("set"); + request.setWebViewDomain(formDTO.getWebViewDomain()); + //设置业务域名 + WxResult setWebviewDomain = wxMaSettingService.setWebviewDomain(authInfo.getAuthorizerAccessToken(), request); + if (!setWebviewDomain.success()) { + throw new RenException(setWebviewDomain.getErrorCode(), setWebviewDomain.getErrorMsg()); + } + } +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/constant/WxMaSettingConstant.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/constant/WxMaSettingConstant.java new file mode 100644 index 0000000000..488474387f --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/constant/WxMaSettingConstant.java @@ -0,0 +1,63 @@ +package com.epmet.wxapi.constant; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/8/18 13:59 + */ +public interface WxMaSettingConstant { + /** + * 设置服务器域名 + */ + String MODIFY_DOMAIN_URL = "https://api.weixin.qq.com/wxa/modify_domain"; + + /** + * 设置业务域名 + */ + String SET_WEBVIEW_DOMAIN_URL = "https://api.weixin.qq.com/wxa/setwebviewdomain"; + + /** + * 设置名称 + */ + String SET_NICK_NAME_URL = "https://api.weixin.qq.com/wxa/setnickname"; + + /** + * 获取可以设置的所有类目 + */ + String GET_ALL_CATEGORIES_URL = "https://api.weixin.qq.com/cgi-bin/wxopen/getallcategories"; + + /** + * 获取已设置的所有类目 + */ + String GET_CATEGORY_URL = "https://api.weixin.qq.com/cgi-bin/wxopen/getcategory"; + + /** + * 添加类目 + */ + String ADD_CATEGORY_URL = "https://api.weixin.qq.com/cgi-bin/wxopen/addcategory"; + + /** + * 删除类目 + */ + String DELETE_CATEGORY_URL = "https://api.weixin.qq.com/cgi-bin/wxopen/deletecategory"; + + /** + * 修改类目资质信息 + */ + String MODIFY_CATEGORY_URL = "https://api.weixin.qq.com/cgi-bin/wxopen/modifycategory"; + + /** + * 绑定微信用户为体验者 + */ + String BIND_TESTER_URL = "https://api.weixin.qq.com/wxa/bind_tester"; + + /** + * 解除绑定体验者 + */ + String UNBIND_TESTER_URL = "https://api.weixin.qq.com/wxa/unbind_tester"; + + /** + * 获取体验者列表 + */ + String MEMBER_AUTH_URL = "https://api.weixin.qq.com/wxa/memberauth"; +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/param/WxAddCategoryReq.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/param/WxAddCategoryReq.java new file mode 100644 index 0000000000..b0c124ead7 --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/param/WxAddCategoryReq.java @@ -0,0 +1,42 @@ +package com.epmet.wxapi.param; + +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/8/18 15:14 + */ +@NoArgsConstructor +@Data +public class WxAddCategoryReq implements Serializable { + + private static final long serialVersionUID = -3659216114599054052L; + + private List categories; + + @NoArgsConstructor + @Data + public static class CategoriesBean { + /** + * + */ + private int first; + private int second; + private List certicates; + + @NoArgsConstructor + @Data + public static class CerticatesBean { + /** + * + */ + private String key; + private String value; + } + } +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/param/WxBindTesterReq.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/param/WxBindTesterReq.java new file mode 100644 index 0000000000..19fffa0854 --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/param/WxBindTesterReq.java @@ -0,0 +1,18 @@ +package com.epmet.wxapi.param; + +import com.google.gson.annotations.SerializedName; +import lombok.Data; + +import java.io.Serializable; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/8/18 15:43 + */ +@Data +public class WxBindTesterReq implements Serializable { + private static final long serialVersionUID = -6509988898376682232L; + @SerializedName("wechatid") + private String weChatId; +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/param/WxDelCategoryReq.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/param/WxDelCategoryReq.java new file mode 100644 index 0000000000..ed640b9405 --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/param/WxDelCategoryReq.java @@ -0,0 +1,19 @@ +package com.epmet.wxapi.param; + +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/8/18 15:22 + */ +@NoArgsConstructor +@Data +public class WxDelCategoryReq implements Serializable { + private static final long serialVersionUID = 7179297618235954140L; + private Integer first; + private Integer second; +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/param/WxModifyCategoryReq.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/param/WxModifyCategoryReq.java new file mode 100644 index 0000000000..02e395164b --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/param/WxModifyCategoryReq.java @@ -0,0 +1,41 @@ +package com.epmet.wxapi.param; + +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/8/18 15:26 + */ +@NoArgsConstructor +@Data +public class WxModifyCategoryReq implements Serializable { + + private static final long serialVersionUID = -428387175986769380L; + /** + * 一级类目 ID + */ + private int first; + /** + * 二级类目 ID + */ + private int second; + /** + * [资质信息]列表 + */ + private List certicates; + + @NoArgsConstructor + @Data + public static class CerticatesBean { + /** + * 资质图片 + */ + private String key; + private String value; + } +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/result/WxGetAllCategoriesResult.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/result/WxGetAllCategoriesResult.java new file mode 100644 index 0000000000..455ea42f91 --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/result/WxGetAllCategoriesResult.java @@ -0,0 +1,61 @@ +package com.epmet.wxapi.result; + +import com.google.gson.annotations.SerializedName; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/8/18 14:53 + */ +@NoArgsConstructor +@Data +public class WxGetAllCategoriesResult implements Serializable { + + private static final long serialVersionUID = 4419968653961864521L; + /** + * errcode : 0 + */ + @SerializedName("errcode") + private Integer errCode; + @SerializedName("errmsg") + private String errMsg; + @SerializedName("categories_list") + private CategoriesListBean categoriesList; + @NoArgsConstructor + @Data + public static class CategoriesListBean { + private List categories; + + @NoArgsConstructor + @Data + public static class CategoriesBean { + /** + * id : 0 + */ + private int id; + private QualifyBean qualify; + private String name; + private int level; + private int father; + @SerializedName("sensitive_type") + private int sensitiveType; + private List children; + + @NoArgsConstructor + @Data + public static class QualifyBean { + /** + * exter_list : [] + */ + private String remark; + @SerializedName("exter_list") + private List exterList; + } + } + } +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/WxMaSettingService.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/WxMaSettingService.java new file mode 100644 index 0000000000..f0088e5136 --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/WxMaSettingService.java @@ -0,0 +1,134 @@ +package com.epmet.wxapi.service; + +import com.epmet.wxapi.param.*; +import com.epmet.wxapi.result.*; + +import java.util.List; + +/** + * 小程序修改服务器地址、类目管理、成员管理 API(大部分只能是第三方平台调用) + * + * @author zhaoqifeng + * @date 2020/8/18 13:50 + */ +public interface WxMaSettingService { + /** + * 设置服务器域名 + * + * @param accessToken + * @param action + * @return com.epmet.wxapi.result.WxResult + * @author zhaoqifeng + * @date 2020/7/16 17:21 + */ + WxResult modifyDomain(String accessToken, String action); + + /** + * 设置服务器域名 + * + * @param accessToken + * @param request + * @return com.epmet.wxapi.result.WxResult + * @author zhaoqifeng + * @date 2020/7/16 17:21 + */ + WxResult modifyDomain(String accessToken, WxMaModifyDomainReq request); + + /** + * 设置业务域名 + * + * @param accessToken + * @param action + * @return com.epmet.wxapi.result.WxResult + * @author zhaoqifeng + * @date 2020/7/16 17:22 + */ + WxResult setWebviewDomain(String accessToken, String action); + + /** + * 设置业务域名 + * + * @param accessToken + * @param request + * @return com.epmet.wxapi.result.WxResult + * @author zhaoqifeng + * @date 2020/8/19 17:52 + */ + WxResult setWebviewDomain(String accessToken, WxMaSetWebviewDomainReq request); + + /** + * 获取可以设置的所有类目 + * + * @param accessToken + * @return com.epmet.wxapi.result.WxResult + * @author zhaoqifeng + * @date 2020/8/18 15:06 + */ + WxResult getAllCategories(String accessToken); + + /** + * 获取已设置的所有类目 + * + * @param accessToken + * @return com.epmet.wxapi.result.WxResult + * @author zhaoqifeng + * @date 2020/8/6 10:47 + */ + WxResult getCategory(String accessToken); + + /** + * 添加类目 + * + * @param accessToken + * @param request + * @return com.epmet.wxapi.result.WxResult + * @author zhaoqifeng + * @date 2020/8/18 15:20 + */ + WxResult addCategory(String accessToken, WxAddCategoryReq request); + + /** + * 删除类目 + * + * @param accessToken + * @param request + * @return com.epmet.wxapi.result.WxResult + * @author zhaoqifeng + * @date 2020/8/18 15:20 + */ + WxResult delCategory(String accessToken, WxDelCategoryReq request); + + /** + * 修改类目资质信息 + * + * @param accessToken + * @param request + * @return com.epmet.wxapi.result.WxResult + * @author zhaoqifeng + * @date 2020/8/18 15:20 + */ + WxResult modifyCategory(String accessToken, WxModifyCategoryReq request); + + /** + * 绑定微信用户为体验者 + * + * @param accessToken + * @param request + * @return com.epmet.wxapi.result.WxResult + * @author zhaoqifeng + * @date 2020/8/18 15:45 + */ + WxResult bindTester(String accessToken, WxBindTesterReq request); + + /** + * 解除绑定体验者 + * + * @param accessToken + * @param request + * @return com.epmet.wxapi.result.WxResult + * @author zhaoqifeng + * @date 2020/8/18 15:45 + */ + WxResult unBindTester(String accessToken, WxBindTesterReq request); + +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/impl/WxMaSettingServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/impl/WxMaSettingServiceImpl.java new file mode 100644 index 0000000000..fc3719ac1e --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/impl/WxMaSettingServiceImpl.java @@ -0,0 +1,244 @@ +package com.epmet.wxapi.service.impl; + +import com.alibaba.fastjson.JSONObject; +import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.utils.HttpClientManager; +import com.epmet.commons.tools.utils.Result; +import com.epmet.wxapi.constant.WxMaCodeConstant; +import com.epmet.wxapi.constant.WxMaSettingConstant; +import com.epmet.wxapi.enums.WxMaErrorMsgEnum; +import com.epmet.wxapi.param.*; +import com.epmet.wxapi.result.*; +import com.epmet.wxapi.service.WxMaSettingService; +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/8/18 13:57 + */ +@Service +public class WxMaSettingServiceImpl implements WxMaSettingService { + private static final String ERR_CODE = "errcode"; + private static final String ERR_MSG = "errmsg"; + + @Autowired + private WxMaDomainDTO wxMaDomainDTO; + + @Override + public WxResult modifyDomain(String accessToken, String action) { + WxResult result = new WxResult<>(); + String url = WxMaSettingConstant.MODIFY_DOMAIN_URL + "?" + "access_token=" + accessToken; + WxMaModifyDomainReq request = new WxMaModifyDomainReq(); + request.setAction(action); + request.setRequestDomain(wxMaDomainDTO.getRequestDomain()); + request.setUploadDomain(wxMaDomainDTO.getUploadDomain()); + request.setWsRequestDomain(wxMaDomainDTO.getWsRequestDomain()); + request.setDownloadDomain(wxMaDomainDTO.getDownloadDomain()); + Result modifyResult = HttpClientManager.getInstance().sendPostByJSON(url, toJson(request)); + if (!modifyResult.success()) { + result.setErrorCode(modifyResult.getCode()); + result.setErrorMsg(modifyResult.getMsg()); + return result; + } + Gson gson = new Gson(); + WxMaModifyDomainResult domainResult = gson.fromJson(modifyResult.getData(), WxMaModifyDomainResult.class); + result.setErrorCode(domainResult.getErrcode()); + result.setErrorMsg(WxMaErrorMsgEnum.findMsgByCode(domainResult.getErrcode())); + result.setData(domainResult); + return result; + } + + @Override + public WxResult modifyDomain(String accessToken, WxMaModifyDomainReq request) { + WxResult result = new WxResult<>(); + String url = WxMaCodeConstant.MODIFY_DOMAIN_URL + "?" + "access_token=" + accessToken; + Result modifyResult = HttpClientManager.getInstance().sendPostByJSON(url, toJson(request)); + if (!modifyResult.success()) { + result.setErrorCode(modifyResult.getCode()); + result.setErrorMsg(modifyResult.getMsg()); + return result; + } + Gson gson = new Gson(); + WxMaModifyDomainResult domainResult = gson.fromJson(modifyResult.getData(), WxMaModifyDomainResult.class); + result.setErrorCode(domainResult.getErrcode()); + result.setErrorMsg(WxMaErrorMsgEnum.findMsgByCode(domainResult.getErrcode())); + return result; + } + + @Override + public WxResult setWebviewDomain(String accessToken, String action) { + WxResult result = new WxResult<>(); + String url = WxMaSettingConstant.SET_WEBVIEW_DOMAIN_URL + "?" + "access_token=" + accessToken; + WxMaSetWebviewDomainReq request = new WxMaSetWebviewDomainReq(); + request.setAction(action); + request.setWebViewDomain(wxMaDomainDTO.getWebviewDomain()); + Result modifyResult = HttpClientManager.getInstance().sendPostByJSON(url, toJson(request)); + if (!modifyResult.success()) { + result.setErrorCode(modifyResult.getCode()); + result.setErrorMsg(modifyResult.getMsg()); + return result; + } + Gson gson = new Gson(); + WxMaSetWebviewDomainResult domainResult = gson.fromJson(modifyResult.getData(), WxMaSetWebviewDomainResult.class); + result.setErrorCode(domainResult.getErrcode()); + result.setErrorMsg(WxMaErrorMsgEnum.findMsgByCode(domainResult.getErrcode())); + result.setData(domainResult); + return result; + } + + @Override + public WxResult setWebviewDomain(String accessToken, WxMaSetWebviewDomainReq request) { + WxResult result = new WxResult<>(); + String url = WxMaCodeConstant.SET_WEBVIEW_DOMAIN_URL + "?" + "access_token=" + accessToken; + Result modifyResult = HttpClientManager.getInstance().sendPostByJSON(url, toJson(request)); + if (!modifyResult.success()) { + result.setErrorCode(modifyResult.getCode()); + result.setErrorMsg(modifyResult.getMsg()); + return result; + } + Gson gson = new Gson(); + WxMaSetWebviewDomainResult domainResult = gson.fromJson(modifyResult.getData(), WxMaSetWebviewDomainResult.class); + result.setErrorCode(domainResult.getErrcode()); + result.setErrorMsg(WxMaErrorMsgEnum.findMsgByCode(domainResult.getErrcode())); + return result; + } + + @Override + public WxResult getAllCategories(String accessToken) { + WxResult result = new WxResult<>(); + String url = WxMaSettingConstant.GET_ALL_CATEGORIES_URL + "?" + "access_token=" + accessToken; + Result modifyResult = HttpClientManager.getInstance().sendGet(url, null); + if (!modifyResult.success()) { + result.setErrorCode(modifyResult.getCode()); + result.setErrorMsg(modifyResult.getMsg()); + return result; + } + Gson gson = new Gson(); + WxGetAllCategoriesResult categoryResult = gson.fromJson(modifyResult.getData(), WxGetAllCategoriesResult.class); + if (categoryResult.getErrCode() != NumConstant.ZERO) { + result.setErrorCode(categoryResult.getErrCode()); + result.setErrorMsg(WxMaErrorMsgEnum.findMsgByCode(categoryResult.getErrCode())); + return result; + } + result.setErrorCode(categoryResult.getErrCode()); + result.setErrorMsg(WxMaErrorMsgEnum.findMsgByCode(categoryResult.getErrCode())); + result.setData(categoryResult); + return result; + } + + @Override + public WxResult getCategory(String accessToken) { + WxResult result = new WxResult<>(); + String url = WxMaSettingConstant.GET_CATEGORY_URL + "?" + "access_token=" + accessToken; + Result statusResult = HttpClientManager.getInstance().sendGet(url, null); + if (!statusResult.success()) { + result.setErrorCode(statusResult.getCode()); + result.setErrorMsg(statusResult.getMsg()); + return result; + } + Gson gson = new Gson(); + WxOpenGetCategoryResult categoryResult = gson.fromJson(statusResult.getData(), WxOpenGetCategoryResult.class); + if (categoryResult.getErrcode() != NumConstant.ZERO) { + result.setErrorCode(categoryResult.getErrcode()); + result.setErrorMsg(WxMaErrorMsgEnum.findMsgByCode(categoryResult.getErrcode())); + return result; + } + result.ok(categoryResult); + return result; + } + + @Override + public WxResult addCategory(String accessToken, WxAddCategoryReq request) { + WxResult result = new WxResult(); + String url = WxMaSettingConstant.ADD_CATEGORY_URL + "?" + "access_token=" + accessToken; + Result categoryResult = HttpClientManager.getInstance().sendPostByJSON(url, toJson(request)); + if (!categoryResult.success()) { + result.setErrorCode(categoryResult.getCode()); + result.setErrorMsg(categoryResult.getMsg()); + return result; + } + JSONObject jsonObject = JSONObject.parseObject(categoryResult.getData()); + result.setErrorCode(jsonObject.getInteger(ERR_CODE)); + result.setErrorMsg(WxMaErrorMsgEnum.findMsgByCode(jsonObject.getInteger(ERR_CODE))); + return result; + } + + @Override + public WxResult delCategory(String accessToken, WxDelCategoryReq request) { + WxResult result = new WxResult(); + String url = WxMaSettingConstant.DELETE_CATEGORY_URL + "?" + "access_token=" + accessToken; + Result categoryResult = HttpClientManager.getInstance().sendPostByJSON(url, toJson(request)); + if (!categoryResult.success()) { + result.setErrorCode(categoryResult.getCode()); + result.setErrorMsg(categoryResult.getMsg()); + return result; + } + JSONObject jsonObject = JSONObject.parseObject(categoryResult.getData()); + result.setErrorCode(jsonObject.getInteger(ERR_CODE)); + result.setErrorMsg(WxMaErrorMsgEnum.findMsgByCode(jsonObject.getInteger(ERR_CODE))); + return result; + } + + @Override + public WxResult modifyCategory(String accessToken, WxModifyCategoryReq request) { + WxResult result = new WxResult(); + String url = WxMaSettingConstant.MODIFY_CATEGORY_URL + "?" + "access_token=" + accessToken; + Result categoryResult = HttpClientManager.getInstance().sendPostByJSON(url, toJson(request)); + if (!categoryResult.success()) { + result.setErrorCode(categoryResult.getCode()); + result.setErrorMsg(categoryResult.getMsg()); + return result; + } + JSONObject jsonObject = JSONObject.parseObject(categoryResult.getData()); + result.setErrorCode(jsonObject.getInteger(ERR_CODE)); + result.setErrorMsg(WxMaErrorMsgEnum.findMsgByCode(jsonObject.getInteger(ERR_CODE))); + return result; + } + + @Override + public WxResult bindTester(String accessToken, WxBindTesterReq request) { + WxResult result = new WxResult<>(); + String url = WxMaSettingConstant.BIND_TESTER_URL + "?" + "access_token=" + accessToken; + Result testerResult = HttpClientManager.getInstance().sendPostByJSON(url, toJson(request)); + if (!testerResult.success()) { + result.setErrorCode(testerResult.getCode()); + result.setErrorMsg(testerResult.getMsg()); + return result; + } + JSONObject jsonObject = JSONObject.parseObject(testerResult.getData()); + result.setErrorCode(jsonObject.getInteger(ERR_CODE)); + result.setErrorMsg(WxMaErrorMsgEnum.findMsgByCode(jsonObject.getInteger(ERR_CODE))); + result.setData(jsonObject.getString("userstr")); + return result; + } + + @Override + public WxResult unBindTester(String accessToken, WxBindTesterReq request) { + WxResult result = new WxResult(); + String url = WxMaSettingConstant.UNBIND_TESTER_URL + "?" + "access_token=" + accessToken; + Result testerResult = HttpClientManager.getInstance().sendPostByJSON(url, toJson(request)); + if (!testerResult.success()) { + result.setErrorCode(testerResult.getCode()); + result.setErrorMsg(testerResult.getMsg()); + return result; + } + JSONObject jsonObject = JSONObject.parseObject(testerResult.getData()); + result.setErrorCode(jsonObject.getInteger(ERR_CODE)); + result.setErrorMsg(WxMaErrorMsgEnum.findMsgByCode(jsonObject.getInteger(ERR_CODE))); + return result; + } + + private String toJson(Object object) { + GsonBuilder gsonBuilder = new GsonBuilder(); + gsonBuilder.setPrettyPrinting(); + Gson gson = gsonBuilder.create(); + return gson.toJson(object); + } + +} diff --git a/epmet-module/gov-access/gov-access-server/deploy/docker-compose-prod.yml b/epmet-module/gov-access/gov-access-server/deploy/docker-compose-prod.yml index 4f95fcde7b..7a5133aacd 100644 --- a/epmet-module/gov-access/gov-access-server/deploy/docker-compose-prod.yml +++ b/epmet-module/gov-access/gov-access-server/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: gov-access-server: container_name: gov-access-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/gov-access-server:0.3.37 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/gov-access-server:0.3.38 ports: - "8099:8099" network_mode: host # 使用现有网络 diff --git a/epmet-module/gov-org/gov-org-server/deploy/docker-compose-prod.yml b/epmet-module/gov-org/gov-org-server/deploy/docker-compose-prod.yml index b4890333e8..006b14bdff 100644 --- a/epmet-module/gov-org/gov-org-server/deploy/docker-compose-prod.yml +++ b/epmet-module/gov-org/gov-org-server/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: gov-org-server: container_name: gov-org-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/gov-org-server:0.3.81 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/gov-org-server:0.3.83 ports: - "8092:8092" network_mode: host # 使用现有网络 diff --git a/epmet-module/gov-project/gov-project-server/deploy/docker-compose-prod.yml b/epmet-module/gov-project/gov-project-server/deploy/docker-compose-prod.yml index 50ef5a1ac9..0c08e7e115 100644 --- a/epmet-module/gov-project/gov-project-server/deploy/docker-compose-prod.yml +++ b/epmet-module/gov-project/gov-project-server/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: gov-project-server: container_name: gov-project-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/gov-project-server:0.3.39 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/gov-project-server:0.3.40 ports: - "8102:8102" network_mode: host # 使用现有网络 diff --git a/epmet-module/gov-voice/gov-voice-server/deploy/docker-compose-prod.yml b/epmet-module/gov-voice/gov-voice-server/deploy/docker-compose-prod.yml index 53fded4c6b..1821a379dc 100644 --- a/epmet-module/gov-voice/gov-voice-server/deploy/docker-compose-prod.yml +++ b/epmet-module/gov-voice/gov-voice-server/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: gov-voice-server: container_name: gov-voice-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/gov-voice-server:0.3.60 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/gov-voice-server:0.3.68 ports: - "8105:8105" network_mode: host # 使用现有网络 diff --git a/epmet-module/oper-crm/oper-crm-server/deploy/docker-compose-prod.yml b/epmet-module/oper-crm/oper-crm-server/deploy/docker-compose-prod.yml index a03b8a39cf..9a7eb3e9b9 100644 --- a/epmet-module/oper-crm/oper-crm-server/deploy/docker-compose-prod.yml +++ b/epmet-module/oper-crm/oper-crm-server/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: oper-crm-server: container_name: oper-crm-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/oper-crm-server:0.3.58 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/oper-crm-server:0.3.66 ports: - "8090:8090" network_mode: host # 使用现有网络 diff --git a/epmet-module/oper-customize/oper-customize-server/deploy/docker-compose-prod.yml b/epmet-module/oper-customize/oper-customize-server/deploy/docker-compose-prod.yml index 5c2f1ccb37..df76d59dbc 100644 --- a/epmet-module/oper-customize/oper-customize-server/deploy/docker-compose-prod.yml +++ b/epmet-module/oper-customize/oper-customize-server/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: oper-customize-server: container_name: oper-customize-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/oper-customize-server:0.3.25 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/oper-customize-server:0.3.26 ports: - "8089:8089" network_mode: host # 使用现有网络 diff --git a/epmet-module/resi-group/resi-group-server/deploy/docker-compose-prod.yml b/epmet-module/resi-group/resi-group-server/deploy/docker-compose-prod.yml index 1a09240300..a4aecd5dbf 100644 --- a/epmet-module/resi-group/resi-group-server/deploy/docker-compose-prod.yml +++ b/epmet-module/resi-group/resi-group-server/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: resi-group-server: container_name: resi-group-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/resi-group-server:0.3.62 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/resi-group-server:0.3.66 ports: - "8095:8095" network_mode: host # 使用现有网络 diff --git a/epmet-module/resi-guide/resi-guide-server/deploy/docker-compose-prod.yml b/epmet-module/resi-guide/resi-guide-server/deploy/docker-compose-prod.yml index 14f7d5d7da..cfac504f95 100644 --- a/epmet-module/resi-guide/resi-guide-server/deploy/docker-compose-prod.yml +++ b/epmet-module/resi-guide/resi-guide-server/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: resi-guide-server: container_name: resi-guide-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/resi-guide-server:0.3.17 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/resi-guide-server:0.3.20 ports: - "8091:8091" network_mode: host # 使用现有网络 diff --git a/epmet-user/epmet-user-server/deploy/docker-compose-prod.yml b/epmet-user/epmet-user-server/deploy/docker-compose-prod.yml index 30a65e8b8a..a9847b773c 100644 --- a/epmet-user/epmet-user-server/deploy/docker-compose-prod.yml +++ b/epmet-user/epmet-user-server/deploy/docker-compose-prod.yml @@ -2,7 +2,7 @@ version: "3.7" services: epmet-user-server: container_name: epmet-user-server-prod - image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-user-server:0.3.102 + image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-master/epmet-user-server:0.3.118 ports: - "8087:8087" network_mode: host # 不会创建新的网络