diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java index f79b22ccb5..f60e8fd2d7 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java @@ -341,12 +341,12 @@ public class DateUtils { return DateUtils.addDateDays(nextMonth, -1); } - public static void main(String[] args) { - //int weekOfYear = getWeekOfYear(new Date()); - String format = String.format("%02d", 9); - - System.out.println(666); - } +// public static void main(String[] args) { +// //int weekOfYear = getWeekOfYear(new Date()); +// String format = String.format("%02d", 9); +// +// System.out.println(666); +// } /** * 获取日期前一天 @@ -485,7 +485,7 @@ public class DateUtils { public static String formatTimestamp(Long timestamp, String pattern) { //设置格式 SimpleDateFormat format = new SimpleDateFormat(pattern); - return format.format(timestamp); + return format.format(timestamp * 1000); } } diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HttpClientManager.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HttpClientManager.java index 0a9f862662..84b0edbcd0 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HttpClientManager.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HttpClientManager.java @@ -6,10 +6,10 @@ import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.RenException; import lombok.extern.slf4j.Slf4j; import org.apache.commons.codec.binary.Base64; -import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.StringUtils; -import org.apache.http.*; -import org.apache.http.client.HttpResponseException; +import org.apache.http.HttpEntity; +import org.apache.http.HttpStatus; +import org.apache.http.NameValuePair; import org.apache.http.client.config.RequestConfig; import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.CloseableHttpResponse; @@ -39,7 +39,6 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Set; -import java.util.UUID; /** * desc: http 工具类 @@ -244,6 +243,7 @@ public class HttpClientManager { return new Result().error(EpmetErrorCode.SERVER_ERROR.getCode(), EpmetErrorCode.SERVER_ERROR.getMsg()); } + /** * desc: 发送get请求 * param:url, params @@ -252,7 +252,7 @@ public class HttpClientManager { * * @author: jianjun liu */ - public Result sendGetFile(String url, Map params) { + public Result getByteArray(String url, Map params) { try { URIBuilder builder = new URIBuilder(url); @@ -267,35 +267,33 @@ public class HttpClientManager { return executeToByte(httpGet); } catch (Exception e) { log.error("sendGet exception", e); - return new Result().error(EpmetErrorCode.SERVER_ERROR.getCode(), EpmetErrorCode.SERVER_ERROR.getMsg()); + return new Result().error(EpmetErrorCode.SERVER_ERROR.getCode(), EpmetErrorCode.SERVER_ERROR.getMsg()); } } - private Result executeToByte(HttpRequestBase httpMethod) { + private Result executeToByte(HttpRequestBase httpMethod) { CloseableHttpResponse response = null; try { response = httpclient.execute(httpMethod); log.debug("http send response:{}", JSON.toJSONString(response)); if (response != null && response.getStatusLine() != null) { if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { - InputStream inputStream = InputStreamResponseHandler.INSTANCE.handleResponse(response); - Header[] contentTypeHeader = response.getHeaders("Content-Type"); - if (contentTypeHeader != null && contentTypeHeader.length > 0) { - // 出错 - if (ContentType.TEXT_PLAIN.getMimeType() - .equals(ContentType.parse(contentTypeHeader[0].getValue()).getMimeType())) { - String responseContent = Utf8ResponseHandler.INSTANCE.handleResponse(response); - } - } - File file = FileUtils.createTmpFile(inputStream, UUID.randomUUID().toString(), "jpg"); - return new Result().ok(file); + InputStream in = response.getEntity().getContent(); + ByteArrayOutputStream output = new ByteArrayOutputStream(); + byte[] buffer = new byte[4096]; + int n = 0; + while (-1 != (n = in.read(buffer))) { + output.write(buffer, 0, n); + } +// return new Result().ok(ArrayUtils.toObject(output.toByteArray())); + return new Result().ok(output.toByteArray()); } else { log.warn("execute http method fail,httpStatus:{0}", response.getStatusLine().getStatusCode()); } } } catch (Exception e) { log.error("execute exception", e); - return new Result().error(EpmetErrorCode.SERVER_ERROR.getCode(), e.getMessage()); + return new Result().error(EpmetErrorCode.SERVER_ERROR.getCode(), e.getMessage()); } finally { httpMethod.releaseConnection(); try { @@ -305,7 +303,7 @@ public class HttpClientManager { } catch (IOException e) { } } - return new Result().error(EpmetErrorCode.SERVER_ERROR.getCode(), EpmetErrorCode.SERVER_ERROR.getMsg()); + return new Result().error(EpmetErrorCode.SERVER_ERROR.getCode(), EpmetErrorCode.SERVER_ERROR.getMsg()); } /** diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/InputStreamResponseHandler.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/InputStreamResponseHandler.java deleted file mode 100644 index 75c16053fb..0000000000 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/InputStreamResponseHandler.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.epmet.commons.tools.utils; - -import org.apache.http.HttpEntity; -import org.apache.http.HttpResponse; -import org.apache.http.StatusLine; -import org.apache.http.client.HttpResponseException; -import org.apache.http.client.ResponseHandler; -import org.apache.http.util.EntityUtils; - -import java.io.IOException; -import java.io.InputStream; - -/** - * 输入流响应处理器. - * - * @author Daniel Qian - */ -public class InputStreamResponseHandler implements ResponseHandler { - public static final ResponseHandler INSTANCE = new InputStreamResponseHandler(); - private static final int STATUS_CODE_300 = 300; - - @Override - public InputStream handleResponse(final HttpResponse response) throws IOException { - final StatusLine statusLine = response.getStatusLine(); - final HttpEntity entity = response.getEntity(); - if (statusLine.getStatusCode() >= STATUS_CODE_300) { - EntityUtils.consume(entity); - throw new HttpResponseException(statusLine.getStatusCode(), statusLine.getReasonPhrase()); - } - return entity == null ? null : entity.getContent(); - } - -} diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/Utf8ResponseHandler.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/Utf8ResponseHandler.java deleted file mode 100644 index 107dc3cbdf..0000000000 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/Utf8ResponseHandler.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.epmet.commons.tools.utils; - -import org.apache.http.Consts; -import org.apache.http.HttpEntity; -import org.apache.http.HttpResponse; -import org.apache.http.StatusLine; -import org.apache.http.client.HttpResponseException; -import org.apache.http.client.ResponseHandler; -import org.apache.http.util.EntityUtils; - -import java.io.IOException; - -/** - * copy from {@link org.apache.http.impl.client.BasicResponseHandler} - * - * @author Daniel Qian - */ -public class Utf8ResponseHandler implements ResponseHandler { - - public static final ResponseHandler INSTANCE = new Utf8ResponseHandler(); - - @Override - public String handleResponse(final HttpResponse response) throws IOException { - final StatusLine statusLine = response.getStatusLine(); - final HttpEntity entity = response.getEntity(); - if (statusLine.getStatusCode() >= 300) { - EntityUtils.consume(entity); - throw new HttpResponseException(statusLine.getStatusCode(), statusLine.toString()); - } - return entity == null ? null : EntityUtils.toString(entity, Consts.UTF_8); - } - -} diff --git a/epmet-module/epmet-oss/epmet-oss-client/pom.xml b/epmet-module/epmet-oss/epmet-oss-client/pom.xml index e88c7004ce..8a27707939 100644 --- a/epmet-module/epmet-oss/epmet-oss-client/pom.xml +++ b/epmet-module/epmet-oss/epmet-oss-client/pom.xml @@ -26,6 +26,21 @@ io.springfox springfox-swagger-ui + + io.github.openfeign.form + feign-form + 3.8.0 + + + io.github.openfeign.form + feign-form-spring + 3.8.0 + + + commons-fileupload + commons-fileupload + 1.3.3 + diff --git a/epmet-module/epmet-oss/epmet-oss-server/deploy/docker-compose-dev.yml b/epmet-module/epmet-oss/epmet-oss-server/deploy/docker-compose-dev.yml index 3cfb7ad834..6460e6170d 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/deploy/docker-compose-dev.yml +++ b/epmet-module/epmet-oss/epmet-oss-server/deploy/docker-compose-dev.yml @@ -3,7 +3,7 @@ services: epmet-oss-server: container_name: epmet-oss-server-dev # image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-dev/epmet-oss-server:0.3.2 - image: 192.168.1.130:10080/epmet-cloud-dev/epmet-oss-server:0.3.22 + image: 192.168.1.130:10080/epmet-cloud-dev/epmet-oss-server:0.3.23 ports: - "8083:8083" network_mode: host # 使用现有网络 diff --git a/epmet-module/epmet-oss/epmet-oss-server/pom.xml b/epmet-module/epmet-oss/epmet-oss-server/pom.xml index 36377c819b..1b8463505e 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/pom.xml +++ b/epmet-module/epmet-oss/epmet-oss-server/pom.xml @@ -2,7 +2,7 @@ 4.0.0 - 0.3.22 + 0.3.23 com.epmet epmet-oss diff --git a/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/RegisterByAuthFormDTO.java b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/RegisterByAuthFormDTO.java index 2d067fd589..c8c1288c12 100644 --- a/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/RegisterByAuthFormDTO.java +++ b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/RegisterByAuthFormDTO.java @@ -2,43 +2,20 @@ package com.epmet.dto.form; import lombok.Data; -import javax.validation.constraints.Min; -import javax.validation.constraints.NotNull; import java.io.Serializable; /** * @Author sun - * @Description 运营端-根据授权状态和初始化状态获取客户列表(不分页)-接口入参 + * @Description 运营端-根据初始化状态获取公众号注册的客户列表-接口入参 */ @Data public class RegisterByAuthFormDTO implements Serializable { private static final long serialVersionUID = -6547893374373422628L; - public interface AddUserInternalGroup { - } - - /** - * 居民端是否授权(0:未授权,1:已授权) - * */ - @NotNull(message = "居民端是否授权不能为空", groups = { AddUserInternalGroup.class }) - private Integer resiAuth; - - /** - * 工作端是否授权(0:未授权,1:已授权) - * */ - @NotNull(message = "工作端是否授权不能为空", groups = { AddUserInternalGroup.class }) - private Integer workAuth; - /** * 初始化状态(0:已初始化、1:未初始化) * */ - @NotNull(message = "初始化状态不能为空", groups = { AddUserInternalGroup.class }) private Integer initState; - /** - * 所属端 resi:居民端 work:工作端 - */ - private String client; - } diff --git a/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/RemoveBindFormDTO.java b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/RemoveBindFormDTO.java index c83dbcc97b..773ff2d54e 100644 --- a/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/RemoveBindFormDTO.java +++ b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/RemoveBindFormDTO.java @@ -23,4 +23,6 @@ public class RemoveBindFormDTO implements Serializable { @NotBlank(message = "客户端类型不能为空",groups = {RemoveBindFormDTO.RemoveBind.class}) private String clientType; + private String customerId; + } 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 cb770c9a05..fffb5e8bb2 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.58 + image: 192.168.1.130:10080/epmet-cloud-dev/epmet-third-server:0.0.64 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 3677cfa944..9cb62e714d 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.58 + 0.0.64 com.epmet diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/constant/PaConstant.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/constant/PaConstant.java index 4651738fd4..c381b4e2f3 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/constant/PaConstant.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/constant/PaConstant.java @@ -6,10 +6,6 @@ package com.epmet.constant; */ public interface PaConstant { - /** - * 手机号注册 - */ - String PHONE_EXCEPTION = "手机号已存在,不允许再次注册"; /** * 更新用户信息失败 */ @@ -74,4 +70,8 @@ public interface PaConstant { * 获取客户信息失败 */ String SELECT_CUSTOMER_EXCEPTION = "获取客户信息失败"; + /** + * 获取访问记录表数据失败失败 + */ + String SELECT_VISITED_EXCEPTION = "获取访问记录表数据失败"; } diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/PaCustomerController.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/PaCustomerController.java index 8ed2ff7fd9..144b38aace 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/PaCustomerController.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/PaCustomerController.java @@ -121,11 +121,11 @@ public class PaCustomerController { * @param formDTO * @return * @Author sun - * @Description 根据授权状态和初始化状态获取客户列表(不分页) + * @Description 根据初始化状态获取公众号注册的客户列表 **/ @PostMapping(value = "registerbyauth") public Result> registerByAuth(@LoginUser TokenDto tokenDTO, @RequestBody RegisterByAuthFormDTO formDTO) { - ValidatorUtils.validateEntity(formDTO, RegisterByAuthFormDTO.AddUserInternalGroup.class); + ValidatorUtils.validateEntity(formDTO); return new Result>().ok( paCustomerService.registerByAuth(formDTO)); } diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/AuthorizationInfoDao.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/AuthorizationInfoDao.java index f4fde172f6..3d26bcffab 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/AuthorizationInfoDao.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/AuthorizationInfoDao.java @@ -81,7 +81,7 @@ public interface AuthorizationInfoDao extends BaseDao { * @param customerId * @author zxc */ - void updateOldAuthorizerAccessToken(@Param("customerId")String customerId,@Param("clientType")String clientType); + void deleteOldAuthorizerAccessToken(@Param("customerId")String customerId,@Param("clientType")String clientType); /** * @Description 根据 authAppId 查询客户ID和客户端类型 diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/ComponentAccessTokenDao.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/ComponentAccessTokenDao.java index 67d38d540c..10a5710c6e 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/ComponentAccessTokenDao.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/ComponentAccessTokenDao.java @@ -45,7 +45,7 @@ public interface ComponentAccessTokenDao extends BaseDao { * @param formDTO * @return * @Author sun - * @Description 根据所属端授权状态、初始化状态查询客户列表数据 + * @Description 根据初始化状态获取公众号注册的客户列表 **/ List selectCustomerList(RegisterByAuthFormDTO formDTO); diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/PaCustomerService.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/PaCustomerService.java index addf9d6d53..a48b2b7d88 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/PaCustomerService.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/PaCustomerService.java @@ -158,7 +158,7 @@ public interface PaCustomerService extends BaseService { * @param formDTO * @return * @Author sun - * @Description 根据授权状态和初始化状态获取客户列表(不分页) + * @Description 根据初始化状态获取公众号注册的客户列表 **/ List registerByAuth(RegisterByAuthFormDTO formDTO); } \ No newline at end of file diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/AppLetAuthorizationServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/AppLetAuthorizationServiceImpl.java index ba3c63d941..bafd6849dc 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/AppLetAuthorizationServiceImpl.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/AppLetAuthorizationServiceImpl.java @@ -79,7 +79,7 @@ public class AppLetAuthorizationServiceImpl implements AppLetAuthorizationServic */ @Override public void removeBind(TokenDto tokenDto, RemoveBindFormDTO formDTO) { - String customerId = componentVerifyTicketServiceImpl.getLoginUserCustomerId(tokenDto); + String customerId = formDTO.getCustomerId(); String clientType = formDTO.getClientType(); //查询openAppId String openAppId = openPlatformAccountDao.selectOpenAppIdByCustomerId(customerId); @@ -91,8 +91,8 @@ public class AppLetAuthorizationServiceImpl implements AppLetAuthorizationServic jsonObject.put(ModuleConstant.LOW_APP_ID,authAppId); jsonObject.put(ModuleConstant.OPEN_APP_ID,openAppId); String data = HttpClientManager.getInstance().sendPostByJSON(WxMaCodeConstant.UN_BIND + authorizationInfo.getAuthorizer_access_token(), JSON.toJSONString(jsonObject)).getData(); - Map map = JSON.parseObject(data, Map.class); - if (!map.get(ModuleConstant.ERR_CODE).equals(NumConstant.ZERO_STR)){ + Map map = JSON.parseObject(data, Map.class); + if (!map.get(ModuleConstant.ERR_CODE).equals(NumConstant.ZERO)){ log.error("解绑失败" + data); throw new RenException("解绑失败" + data); } diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/CodeServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/CodeServiceImpl.java index aa2076ec75..18221f298e 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/CodeServiceImpl.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/CodeServiceImpl.java @@ -373,17 +373,13 @@ public class CodeServiceImpl implements CodeService { //获取小程序调用令牌 AuthorizationInfoDTO authInfo = authorizationInfoDao.getAuthInfoByCustomer(codeCustomerDTO.getCustomerId(), codeCustomerDTO.getClientType()); //调用微信API获取获取体验版二维码 - WxResult wxResult = wxMaCodeService.getQrCode(authInfo.getAuthorizerAccessToken(), formDTO.getPath()); + WxResult wxResult = wxMaCodeService.getQrCode(authInfo.getAuthorizerAccessToken(), formDTO.getPath()); QrCodeDTO qrCodeDTO = new QrCodeDTO(); - try { - qrCodeDTO.setQrCode(Files.readAllBytes(wxResult.getData().toPath())); - Result uploadResult = ossFeignClient.uploadQrCode(qrCodeDTO); - codeCustomerDTO.setQrCode(uploadResult.getData().getUrl()); - codeCustomerService.update(codeCustomerDTO); - result.setQrcode(uploadResult.getData().getUrl()); - } catch (Exception e) { - throw new RenException(e.getMessage()); - } + qrCodeDTO.setQrCode(wxResult.getData()); + Result uploadResult = ossFeignClient.uploadQrCode(qrCodeDTO); + codeCustomerDTO.setQrCode(uploadResult.getData().getUrl()); + codeCustomerService.update(codeCustomerDTO); + result.setQrcode(uploadResult.getData().getUrl()); if (!wxResult.success()) { throw new RenException(wxResult.getErrorCode(), wxResult.getErrorMsg()); } @@ -405,8 +401,8 @@ public class CodeServiceImpl implements CodeService { try { QrCodeDTO dto = new QrCodeDTO(); dto.setMedia(formDTO.getMedia()); - Result uploadDTOResult = ossFeignClient.uploadWxImg(dto); - File file = new File(uploadDTOResult.getData().getUrl()); + Result uploadWxImg = ossFeignClient.uploadWxImg(dto); + File file = new File(uploadWxImg.getData().getUrl()); //获取上传代码信息 CodeCustomerDTO codeCustomerDTO = codeCustomerService.get(formDTO.getCodeId()); //获取小程序调用令牌 diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ComponentVerifyTicketServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ComponentVerifyTicketServiceImpl.java index 4bcf98a9e3..d00460d8a0 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ComponentVerifyTicketServiceImpl.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ComponentVerifyTicketServiceImpl.java @@ -211,7 +211,7 @@ public class ComponentVerifyTicketServiceImpl implements ComponentVerifyTicketSe formDTO.setExpiresInTime(expiresInTime); //先逻辑删,在插入 log.info(ThirdRunTimeInfoConstant.START_DELETE_COMPONENT_ACCESS_TOKEN); - componentAccessTokenDao.updateOldComponentAccessToken(); + componentAccessTokenDao.deleteOldComponentAccessToken(); componentAccessTokenDao.insertComponentAccessToken(formDTO); //存缓存 redisThird.setComponentAccessToken(componentAccessToken); @@ -341,20 +341,26 @@ public class ComponentVerifyTicketServiceImpl implements ComponentVerifyTicketSe Date expiresInTime = this.countExpirationTime(expiresIn); //更新DB AuthorizerAccessTokenFormDTO formDTO = new AuthorizerAccessTokenFormDTO(); - AuthorizationInfoFormDTO authorizationInfo = new AuthorizationInfoFormDTO(); - BeanUtils.copyProperties(formDTO, authorizationInfo); - authorizationInfo.setAuthorizerAppid(authAppId); formDTO.setAuthorizerAccessToken(authorizerAccessToken); formDTO.setAuthorizerRefreshToken(authorizerRefreshToken); formDTO.setExpiresInTime(expiresInTime); formDTO.setCustomerId(customerId); formDTO.setAuthAppid(authAppId); formDTO.setClientType(clientType); + AuthorizationInfoFormDTO authorizationInfo = new AuthorizationInfoFormDTO(); + BeanUtils.copyProperties(formDTO,authorizationInfo); + authorizationInfo.setAuthorizerAppid(authAppId); //先逻辑删除,在插入 - authorizationInfoDao.updateOldAuthorizerAccessToken(customerId, clientType); + authorizationInfoDao.deleteOldAuthorizerAccessToken(customerId, clientType); authorizationInfoDao.insertAuthorizerAccessToken(formDTO); //缓存 refreshAuthorizerAccessToken redisThird.setAuthorizerRefreshToken(authorizationInfo); + AuthorizationInfoResultDTO resultDTO = new AuthorizationInfoResultDTO(); + resultDTO.setAuthorizer_access_token(authorizerAccessToken); + resultDTO.setAuthorizer_refresh_token(authorizerRefreshToken); + resultDTO.setAuthorizer_appid(authAppId); + resultDTO.setExpires_in(7200); + redisThird.setAuthInfo(resultDTO,customerId,clientType); } }); log.info("更新authorizer_access_token成功"); diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/PaCustomerServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/PaCustomerServiceImpl.java index 62fdde3a8c..432066c3da 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/PaCustomerServiceImpl.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/PaCustomerServiceImpl.java @@ -167,7 +167,7 @@ public class PaCustomerServiceImpl extends BaseServiceImpl userList = paUserDao.selectUserByPhone(formDTO.getPhone()); if (null != userList && userList.size() > NumConstant.ZERO) { - throw new RenException(PaConstant.PHONE_EXCEPTION); + throw new RenException(EpmetErrorCode.MOBILE_USED.getCode()); } //2.根据token中的userId查询pa_user表数据,根据手机号是否为空判断后续是新增还是更新user数据 @@ -488,29 +488,12 @@ public class PaCustomerServiceImpl extends BaseServiceImpl registerByAuth(RegisterByAuthFormDTO formDTO) { - List resultList = new ArrayList<>(); - //1.根据是否初始化和居民端授权状态查询客户列表信息 - formDTO.setClient(PaConstant.CLIENT_RESI); - List list1 = baseDao.selectCustomerList(formDTO); - - //2.根据是否初始化和工作端授权状态查询客户列表信息 - formDTO.setClient(PaConstant.CLIENT_WORK); - List list2 = baseDao.selectCustomerList(formDTO); - - //3.取交集数据 - list1.forEach(dto->{ - list2.forEach(cu->{ - if(dto.getCustomerId().equals(cu.getCustomerId())){ - resultList.add(dto); - } - }); - }); - return resultList; + return baseDao.selectCustomerList(formDTO); } } \ No newline at end of file diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/PaUserServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/PaUserServiceImpl.java index 680bf4fec4..d5acc59fb5 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/PaUserServiceImpl.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/PaUserServiceImpl.java @@ -20,10 +20,12 @@ package com.epmet.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; -import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.constant.PaConstant; import com.epmet.dao.PaCustomerDao; import com.epmet.dao.PaUserDao; import com.epmet.dao.PaUserVisitedDao; @@ -41,6 +43,8 @@ import com.epmet.service.PaUserService; import com.epmet.service.PaUserWechatService; import me.chanjar.weixin.mp.bean.result.WxMpUser; import org.apache.commons.lang3.StringUtils; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -57,7 +61,7 @@ import java.util.Map; */ @Service public class PaUserServiceImpl extends BaseServiceImpl implements PaUserService { - + private Logger logger = LogManager.getLogger(PaUserServiceImpl.class); @Autowired private PaUserRedis paUserRedis; @Autowired @@ -170,6 +174,10 @@ public class PaUserServiceImpl extends BaseServiceImpl //2.4、根据openid查询用户登陆访问记录表数据,按登陆时间倒序 PaUserVisitedDTO visitedDTO = paUserVisitedDao.selectByOpenId(wxMpUser.getOpenId()); + if (null == visitedDTO || "".equals(visitedDTO.getUserId())) { + logger.error("根据openid查询用户访问记录表数据失败,openid->"+wxMpUser.getOpenId()); + throw new RenException(PaConstant.SELECT_VISITED_EXCEPTION); + } resultDTO.setUserId(visitedDTO.getUserId()); } diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/param/WxExtJson.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/param/WxExtJson.java new file mode 100644 index 0000000000..13441e4573 --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/param/WxExtJson.java @@ -0,0 +1,66 @@ +package com.epmet.wxapi.param; + +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/7/27 9:19 + */ +@NoArgsConstructor +@Data +public class WxExtJson implements Serializable { + + private static final long serialVersionUID = -559311391779774945L; + + private boolean extEnable; + private String extAppid; + private boolean directCommit; + private ExtBean ext; + + @NoArgsConstructor + @Data + private static class ExtBean { + private String extAppid; + private FootbarBean footbar; + @NoArgsConstructor + @Data + private static class FootbarBean { + private WorkBean work; + private OrgBean org; + private DataBean data; + private FindBean find; + + @NoArgsConstructor + @Data + private static class WorkBean { + private String name; + private String pageTile; + } + + @NoArgsConstructor + @Data + private static class OrgBean { + private String name; + private String pageTile; + } + + @NoArgsConstructor + @Data + private static class DataBean { + private String name; + private String pageTile; + } + + @NoArgsConstructor + @Data + private static class FindBean { + private String name; + private String pageTile; + } + } + } +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/WxMaCodeService.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/WxMaCodeService.java index eea4649219..dca678a55e 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/WxMaCodeService.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/WxMaCodeService.java @@ -48,7 +48,7 @@ public interface WxMaCodeService { * @author zhaoqifeng * @date 2020/7/10 15:25 */ - WxResult getQrCode(String accessToken, String path); + WxResult getQrCode(String accessToken, String path); /** * 获取授权小程序帐号的可选类目. diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/impl/WxMaCodeServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/impl/WxMaCodeServiceImpl.java index 5808634523..97f7cac543 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/impl/WxMaCodeServiceImpl.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/wxapi/service/impl/WxMaCodeServiceImpl.java @@ -70,17 +70,18 @@ public class WxMaCodeServiceImpl implements WxMaCodeService { } @Override - public WxResult getQrCode(String accessToken, String path) { - WxResult result = new WxResult<>(); - StringBuilder url = new StringBuilder(WxMaCodeConstant.GET_QRCODE_URL).append("?access_token").append(accessToken); + public WxResult getQrCode(String accessToken, String path) { + WxResult result = new WxResult<>(); + StringBuilder url = new StringBuilder(WxMaCodeConstant.GET_QRCODE_URL).append("?access_token=").append(accessToken); if (StringUtils.isNotBlank(path)) { try { - url.append("?path=").append(URLEncoder.encode(path, StandardCharsets.UTF_8.name())); + url.append("&path=").append(URLEncoder.encode(path, StandardCharsets.UTF_8.name())); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } } - Result qrCodeResult = HttpClientManager.getInstance().sendGetFile(url.toString(), null); + Result qrCodeResult = HttpClientManager.getInstance().getByteArray(url.toString(), null); + if (!qrCodeResult.success()) { result.setErrorCode(qrCodeResult.getCode()); result.setErrorMsg(WxMaErrorMsgEnum.findMsgByCode(qrCodeResult.getCode())); diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/AuthorizationInfoDao.xml b/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/AuthorizationInfoDao.xml index d8ab9821eb..ec104db583 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/AuthorizationInfoDao.xml +++ b/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/AuthorizationInfoDao.xml @@ -65,9 +65,9 @@ - - update authorization_info set del_flag = 1 where customer_id = #{customerId} AND client_type = #{clientType} - + + delete from authorization_info where customer_id = #{customerId} AND client_type = #{clientType} + SELECT COMPONENT_ACCESS_TOKEN diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/CustomerMpDao.xml b/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/CustomerMpDao.xml index 9c3c48b996..2024c79005 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/CustomerMpDao.xml +++ b/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/CustomerMpDao.xml @@ -21,7 +21,7 @@ SELECT - pc.id AS "customerId", - pc.customer_name AS "customerName" + id AS "customerId", + customer_name AS "customerName" FROM - pa_customer pc - INNER JOIN customer_mp cm ON pc.id = cm.customer_id + pa_customer WHERE - pc.del_flag = '0' - AND cm.del_flag = '0' - AND pc.is_initialize = #{initState} - - AND cm.client = #{client} - AND cm.AUTHORIZATION_FLAG = #{resiAuth} - - - AND cm.client = #{client} - AND cm.AUTHORIZATION_FLAG = #{workAuth} + del_flag = '0' + + AND is_initialize = #{initState}