jiangping
2025-01-06 7c5484cc1169aa6ef55c77c70f136a781469a7c3
最新版本541200007
已添加1个文件
已修改9个文件
154 ■■■■ 文件已修改
server/system_gateway/src/main/java/com/doumee/api/gateway/JwtAuthController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/core/utils/Constants.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/dao/business/model/SmsEmail.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/dao/system/dto/LoginH5DTO.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/service/business/impl/third/TmsServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/service/system/SystemLoginService.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java 27 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroCache.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/resources/bootstrap.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java 58 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_gateway/src/main/java/com/doumee/api/gateway/JwtAuthController.java
@@ -6,6 +6,7 @@
import com.doumee.core.annotation.pr.PreventRepeat;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.dao.system.dto.LoginH5DTO;
import com.doumee.service.business.third.model.ApiResponse;
import com.doumee.service.business.third.model.LoginUserInfo;
import com.doumee.core.utils.Constants;
@@ -97,11 +98,11 @@
    @ApiOperation("H5业务登录")
    @PostMapping("/loginH5")
    @LoginNoRequired
    public ApiResponse<String> loginH5 (@Validated @RequestBody LoginDTO dto, ServerWebExchange serverWebExchange) {
    public ApiResponse<String> loginH5 (@Validated @RequestBody LoginH5DTO dto, ServerWebExchange serverWebExchange) {
        try {
            ServerHttpRequest request = serverWebExchange.getRequest();
            dto.setCheckCode(false);
            LoginUserInfo user =  systemLoginService.loginByPasswordNew(dto,request);
            LoginUserInfo user =  systemLoginService.loginH5(dto,request);
            String token = jwtTokenUtil.generateToken(user);
            return ApiResponse.success(token);
        }catch (BusinessException e){
@@ -112,7 +113,7 @@
        }
    }
    @PreventRepeat(limit = 10, lockTime = 10000)
    @ApiOperation("H5业务登录")
    @ApiOperation("H5业务登录(手机号验证码登录)")
    @PostMapping("/loginH5ByPhone")
    @LoginNoRequired
    public ApiResponse<String> loginH5ByPhone (@Validated @RequestBody LoginPhoneDTO dto, ServerWebExchange serverWebExchange) {
@@ -170,7 +171,7 @@
    @ApiOperation("司机登录")
    @PostMapping("/loginDriver")
    @LoginNoRequired
    public ApiResponse<String> loginDriver (@Validated @RequestBody LoginDTO dto, ServerWebExchange serverWebExchange) {
    public ApiResponse<String> loginDriver (@Validated @RequestBody LoginH5DTO dto, ServerWebExchange serverWebExchange) {
        try {
            ServerHttpRequest request = serverWebExchange.getRequest();
            dto.setCheckCode(false);
server/system_service/src/main/java/com/doumee/core/utils/Constants.java
@@ -541,6 +541,10 @@
    }
    /**
     * è¿å•了单位类型 0万支 1ç®±
     */
    public static final  int UNIT_TYPE =1;
public interface  memberType{
    int driver = 0;//司机人员
    int visitor = 1;//普通访客
server/system_service/src/main/java/com/doumee/dao/business/model/SmsEmail.java
@@ -100,4 +100,7 @@
    @ApiModelProperty(value = "结束时间")
    @TableField(exist = false)
    private Date endTime;
    @ApiModelProperty(value = "用户类型 0司机 1访客 2内部员工 3")
    @TableField(exist = false)
    private Integer userType;
}
server/system_service/src/main/java/com/doumee/dao/system/dto/LoginH5DTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,37 @@
package com.doumee.dao.system.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
 * @author Eva.Caesar Liu
 * @date 2023/05/04 18:21
 */
@Data
@ApiModel("登录参数")
public class LoginH5DTO implements Serializable {
    @NotBlank(message = "用户名不能为空")
    @ApiModelProperty(value = "用户名")
    private String username;
    @ApiModelProperty(value = "微信openId")
    private String openid;
    @NotBlank(message = "密码不能为空")
    @ApiModelProperty(value = "密码")
    private String password;
    @ApiModelProperty(value = "验证码")
    private String code;
    @ApiModelProperty(value = "验证码UUID")
    private String uuid;
    @ApiModelProperty(value = "是否验证验证码" , hidden = true)
    private Boolean checkCode;
}
server/system_service/src/main/java/com/doumee/service/business/impl/third/TmsServiceImpl.java
@@ -288,12 +288,12 @@
    public   TmsEmployeeListResponse getEmployeeList(TmsEmployeeListRequest param){
        String url = systemDictDataBiz.queryByCode(Constants.TSM_PARAM,Constants.TMS_INTERFACE_URL_PREFIX).getCode()
                    +TMSContants.InterfacePath.getEmployeeList[0];
        TmsBaseResponse<TmsEmployeeListResponse > response = sendHttpRequest(url,TMSContants.InterfacePath.getEmployeeList[1],JSONObject.toJSONString(param)
                ,new TypeReference< TmsBaseResponse<TmsEmployeeListResponse>>(){});
        if(response ==null || response.getData() == null){
        TmsBaseResponse<List<TmsEmployeeListResponse>> response = sendHttpRequest(url,TMSContants.InterfacePath.getEmployeeList[1],JSONObject.toJSONString(param)
                ,new TypeReference< TmsBaseResponse<List<TmsEmployeeListResponse>>>(){});
        if(response ==null || response.getData() == null || response.getData().size() ==0){
            return  new TmsEmployeeListResponse();
        }
        return  response.getData();
        return  response.getData().get(0);
    }
    /**
     * å‡ºåº“能力统计
server/system_service/src/main/java/com/doumee/service/system/SystemLoginService.java
@@ -1,5 +1,6 @@
package com.doumee.service.system;
import com.doumee.dao.system.dto.LoginH5DTO;
import com.doumee.service.business.third.model.LoginUserInfo;
import com.doumee.dao.system.dto.LoginDTO;
import com.doumee.dao.system.dto.LoginPhoneDTO;
@@ -22,13 +23,14 @@
    String loginByPassword (LoginDTO dto, HttpServletRequest request);
    LoginUserInfo loginByPasswordNew (LoginDTO dto, ServerHttpRequest request);
    LoginUserInfo loginH5 (LoginH5DTO dto, ServerHttpRequest request);
    LoginUserInfo loginByPasswordForPda(LoginDTO dto, ServerHttpRequest request);
    LoginUserInfo loginByPhone(LoginPhoneDTO dto, ServerHttpRequest request);
    LoginUserInfo driverLogin(LoginDTO dto, ServerHttpRequest request);
    LoginUserInfo driverLogin(LoginH5DTO dto, ServerHttpRequest request);
    LoginUserInfo loginDriverWithCode(LoginPhoneDTO dto, ServerHttpRequest request);
    LoginUserInfo loginGkUserWithCode(LoginPhoneDTO dto, ServerHttpRequest request);
    /**
server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java
@@ -5,6 +5,7 @@
import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.config.jwt.JwtTokenUtil;
import com.doumee.core.exception.BusinessException;
import com.doumee.dao.system.dto.LoginH5DTO;
import com.doumee.service.business.third.TmsService;
import com.doumee.service.business.third.model.LoginUserInfo;
import com.doumee.core.constants.ResponseStatus;
@@ -140,6 +141,26 @@
    @Override
    public LoginUserInfo loginByPasswordNew(LoginDTO dto, ServerHttpRequest request) {
        SystemLoginLog loginLog = getInitLoginlog(dto.getUsername(),request);
        if((isDebug == null  || !isDebug) && (Objects.isNull(dto.getCheckCode()) || dto.getCheckCode()) ){
            // æ ¡éªŒéªŒè¯ç 
            try {
                captchaService.check(dto.getUuid(), dto.getCode());
            } catch (Exception e) {
                log.error(e.getMessage(), e);
                loginLog.setReason(e.getMessage().length() > 200 ? (e.getMessage().substring(0, 190) + "...") : e.getMessage());
                loginLog.setSuccess(Boolean.FALSE);
                systemLoginLogService.create(loginLog);
                throw e;
            }
        }
        LoginUserInfo user = dealLoginByPwdNewBiz(dto.getUsername(),dto.getPassword(),null,dto.getOpenid(),request);
        systemLoginLogService.create(loginLog);
        return  user;
    }
    @Override
    public LoginUserInfo loginH5 (LoginH5DTO dto, ServerHttpRequest request) {
        SystemLoginLog loginLog = getInitLoginlog(dto.getUsername(),request);
        if((isDebug == null  || !isDebug) && (Objects.isNull(dto.getCheckCode()) || dto.getCheckCode()) ){
@@ -356,7 +377,7 @@
    @Override
    public LoginUserInfo driverLogin(LoginDTO dto, ServerHttpRequest request) {
    public LoginUserInfo driverLogin(LoginH5DTO dto, ServerHttpRequest request) {
        SystemLoginLog loginLog =getInitLoginlog(dto.getUsername(),request);
        LoginUserInfo userInfo = dealLoginDriverBiz(dto.getUsername(),dto.getPassword(),null,dto.getOpenid());
        systemLoginLogService.create(loginLog);
@@ -521,10 +542,6 @@
        if (systemUser == null) {
            //新增管控人员数据
            systemUser = systemUser = autoRegisterUser(Constants.memberType.gkuser,param.getPhone(),param.getOpenid(),false);
        }else{
            if(!Constants.equalsInteger(systemUser.getType(),Constants.memberType.gkuser)){
                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对不起,请使用正确的管控人员手机号登陆!");
            }
        }
        dealOpenIdBizForGk(systemUser,param.getOpenid());
        LoginUserInfo userInfo = LoginUserInfo.from(systemUser, null, null,null,null);
server/visits/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroCache.java
@@ -45,7 +45,7 @@
    @Override
    public Serializable get(Object key) throws CacheException {
        if (key == null) {
        if (key == null || getKey(key) == null) {
            return null;
        }
        return redisTemplate.opsForValue().get(getKey(key));
server/visits/dmvisit_admin/src/main/resources/bootstrap.yml
@@ -1,6 +1,6 @@
spring:
  profiles:
    active: pro
    active: self
  application:
    name: visitsAdmin
    # å®‰å…¨é…ç½®
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
@@ -38,6 +38,7 @@
import com.doumee.service.business.third.model.response.*;
import com.github.xiaoymin.knife4j.core.util.CollectionUtils;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import io.swagger.annotations.ApiModelProperty;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
@@ -2150,6 +2151,11 @@
                    if(t.getTotalNum().compareTo(new BigDecimal(0)) !=0){
                        t.setUseRate(t.getCurrentNum().divide(t.getTotalNum(),4,BigDecimal.ROUND_HALF_UP));
                    }
                    if(Constants.UNIT_TYPE == 1) {
                        //处理单位成“箱”,一箱=5万支
                        t.setCurrentNum(Constants.formatBigdecimal(t.getCurrentNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
                        t.setTotalNum(Constants.formatBigdecimal(t.getTotalNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
                    }
                }
                result.getDetailList().add(t);
                result.setCurrentNum(result.getCurrentNum().add(t.getCurrentNum()));
@@ -2292,6 +2298,15 @@
        if(data.getCrrentRestCarNum()<=0){
            data.setCrrentRestCarNum(0);
        }
        //处理单位成“箱”,一箱=5万支
        if(Constants.UNIT_TYPE == 1) {
            data.setMaxAbility(Constants.formatBigdecimal(data.getMaxAbility()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
            data.setHoursAbility(Constants.formatBigdecimal(data.getHoursAbility()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
            data.setCrrentRestNum(Constants.formatBigdecimal(data.getCrrentRestNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
            data.setCurrentPlanNum(Constants.formatBigdecimal(data.getCurrentPlanNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
            data.setCrrentOutNum(Constants.formatBigdecimal(data.getCrrentOutNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
            data.setCurrentOrderNum(Constants.formatBigdecimal(data.getCurrentOrderNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
        }
    }
    private boolean notInList(String transportCode, List<String> planCodes) {
@@ -2380,6 +2395,16 @@
            data.setSameOutNum(data.getLastOutNum());
            data.setSameInNum(data.getLastInNum());
        }
        //处理单位成“箱”,一箱=5万支
        if(Constants.UNIT_TYPE == 1) {
            data.setCurrentInNum(Constants.formatBigdecimal(data.getCurrentInNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
            data.setCurrentOutNum(Constants.formatBigdecimal(data.getCurrentOutNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
            data.setLastInNum(Constants.formatBigdecimal(data.getLastInNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
            data.setLastOutNum(Constants.formatBigdecimal(data.getLastOutNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
            data.setSameInNum(Constants.formatBigdecimal(data.getSameInNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
            data.setSameOutNum(Constants.formatBigdecimal(data.getSameOutNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
        }
        return data;
    }
    /**
@@ -2397,14 +2422,20 @@
        List<TmsDistributionOfDeliveryLocResponse> response  = tmsService.getDistributionOfDeliveryLocations(param);//查询出库量
        if(response!=null &&response.size()>0){
            for(TmsDistributionOfDeliveryLocResponse model : response){
                WholeProvinceMapVO tt = getFromProvinceResultList(model ,result);
                if(tt == null){
                    tt =new WholeProvinceMapVO();
                    tt.setMonthNum( Constants.formatBigdecimal0Float(model.getMonthOutboundQuantity()));
                    tt.setYearNum( Constants.formatBigdecimal0Float(model.getYearOutboundQuantity()));
                    tt.setProvinceCode(model.getToProvinceCode());
                    tt.setProvinceName(model.getToProvinceName());
                    result.add(tt);
                WholeProvinceMapVO t = getFromProvinceResultList(model ,result);
                if(t == null){
                    t =new WholeProvinceMapVO();
                    t.setMonthNum( Constants.formatBigdecimal0Float(model.getMonthOutboundQuantity()));
                    t.setYearNum( Constants.formatBigdecimal0Float(model.getYearOutboundQuantity()));
                    if(Constants.UNIT_TYPE == 1) {
                        //处理单位成“箱”,一箱=5万支
                        t.setMonthNum(Constants.formatBigdecimal(t.getMonthNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
                        t.setYearNum(Constants.formatBigdecimal(t.getYearNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
                    }
                    t.setProvinceCode(model.getToProvinceCode());
                    t.setProvinceName(model.getToProvinceName());
                    result.add(t);
                }
            }
        }
@@ -2528,6 +2559,12 @@
                if(t.getTotalNum().compareTo(new BigDecimal(0)) !=0){
                    t.setUseRate(t.getCurrentNum().divide(t.getTotalNum(),4,BigDecimal.ROUND_HALF_UP));
                }
                if(Constants.UNIT_TYPE == 1) {
                    //处理单位成“箱”,一箱=5万支
                    t.setCurrentNum(Constants.formatBigdecimal(t.getCurrentNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
                    t.setTotalNum(Constants.formatBigdecimal(t.getTotalNum()).divide(new BigDecimal(5), 2, BigDecimal.ROUND_HALF_UP));
                }
                result.getDetailList().add(t);
                result.setCurrentNum(result.getCurrentNum().add(t.getCurrentNum()));
                result.setTotalNum(result.getTotalNum().add(t.getTotalNum()));
@@ -2586,6 +2623,11 @@
                if(t.getTotalNum().compareTo(new BigDecimal(0)) !=0){
                    t.setUseRate(t.getCurrentNum().divide(t.getTotalNum(),4,BigDecimal.ROUND_HALF_UP));
                }
                if(Constants.UNIT_TYPE == 1){
                    //处理单位成“箱”,一箱=5万支
                    t.setCurrentNum(Constants.formatBigdecimal(t.getCurrentNum()).divide(new BigDecimal(5),2,BigDecimal.ROUND_HALF_UP));
                    t.setTotalNum(Constants.formatBigdecimal(t.getTotalNum()).divide(new BigDecimal(5),2,BigDecimal.ROUND_HALF_UP));
                }
                result.getDetailList().add(t);
                result.setCurrentNum(result.getCurrentNum().add(t.getCurrentNum()));
                result.setTotalNum(result.getTotalNum().add(t.getTotalNum()));