返回异常修改

master
bynt 3 years ago
parent 068db02a2a
commit accabed021

@ -23,7 +23,6 @@ import com.baiye.properties.bean.LoginProperties;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.security.core.authority.SimpleGrantedAuthority; import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.persistence.EntityNotFoundException; import javax.persistence.EntityNotFoundException;
@ -68,10 +67,10 @@ public class UserDetailsServiceImpl implements UserDetailsService {
user = remoteUserService.findByName(username); user = remoteUserService.findByName(username);
} catch (EntityNotFoundException e) { } catch (EntityNotFoundException e) {
// SpringSecurity会自动转换UsernameNotFoundException为BadCredentialsException // SpringSecurity会自动转换UsernameNotFoundException为BadCredentialsException
throw new UsernameNotFoundException("", e); throw new BadRequestException("用户名或密码不正确");
} }
if (user == null) { if (user == null) {
throw new UsernameNotFoundException(""); throw new BadRequestException("用户名或密码不正确!");
} else { } else {
if (Boolean.FALSE.equals(user.getEnabled())) { if (Boolean.FALSE.equals(user.getEnabled())) {
throw new BadRequestException("账号未激活!"); throw new BadRequestException("账号未激活!");
@ -125,10 +124,10 @@ public class UserDetailsServiceImpl implements UserDetailsService {
user = remoteUserService.findByName(username); user = remoteUserService.findByName(username);
} catch (EntityNotFoundException e) { } catch (EntityNotFoundException e) {
// SpringSecurity会自动转换UsernameNotFoundException为BadCredentialsException // SpringSecurity会自动转换UsernameNotFoundException为BadCredentialsException
throw new UsernameNotFoundException("", e); throw new BadRequestException("用户名或密码不正确");
} }
if (user == null) { if (user == null) {
throw new UsernameNotFoundException(""); throw new BadRequestException("用户名或密码不正确!");
} else { } else {
if (Boolean.FALSE.equals(user.getEnabled())) { if (Boolean.FALSE.equals(user.getEnabled())) {
throw new BadRequestException("账号未激活!"); throw new BadRequestException("账号未激活!");

@ -0,0 +1,18 @@
package com.baiye.http;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author Enzo
* @date : 2022/2/9
*/
@Data
@NoArgsConstructor
public class DoubleCallResponse {
private String reason;
private String result;
private String requestId;
private String sessionId;
}

@ -67,6 +67,8 @@ public class UserDto extends BaseDTO implements Serializable {
private Boolean isGroup; private Boolean isGroup;
private Boolean isOperator;
private Long companyId; private Long companyId;
private Integer companyStatus; private Integer companyStatus;

@ -22,6 +22,11 @@ public enum ResponseCode {
*/ */
USER_INFORMATION_ERROR("1002", "用户信息错误"), USER_INFORMATION_ERROR("1002", "用户信息错误"),
/**
*
*/
CALL_ERROR("1014", "呼叫失败"),
DECRYPTION_FAILED("1012", "数据解析失败"); DECRYPTION_FAILED("1012", "数据解析失败");

@ -135,6 +135,22 @@
<groupId>com.aliyun</groupId> <groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-dysmsapi</artifactId> <artifactId>aliyun-java-sdk-dysmsapi</artifactId>
</dependency> </dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
</dependency>
</dependencies> </dependencies>
<!-- 配置插件 --> <!-- 配置插件 -->

@ -16,12 +16,11 @@
package com.baiye.modules.security.security; package com.baiye.modules.security.security;
import cn.hutool.core.text.CharSequenceUtil; import cn.hutool.core.text.CharSequenceUtil;
import cn.hutool.core.util.StrUtil;
import com.baiye.model.dto.OnlineUserDto; import com.baiye.model.dto.OnlineUserDto;
import com.baiye.modules.security.service.OnlineUserService; import com.baiye.modules.security.service.OnlineUserService;
import com.baiye.service.UserCacheClean;
import com.baiye.properties.SecurityProperties; import com.baiye.properties.SecurityProperties;
import com.baiye.security.TokenProvider; import com.baiye.security.TokenProvider;
import com.baiye.service.UserCacheClean;
import io.jsonwebtoken.ExpiredJwtException; import io.jsonwebtoken.ExpiredJwtException;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;

@ -4,6 +4,7 @@ import com.baiye.model.dto.UserDto;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import javax.persistence.*; import javax.persistence.*;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import lombok.Data; import lombok.Data;
@ -35,7 +36,7 @@ public class Organize implements Serializable {
private Long id; private Long id;
@ApiModelProperty(value = "小组名称") @ApiModelProperty(value = "小组名称")
@NotNull(message = "小组名称不能为空") @NotBlank(message = "小组名称不能为空")
@Column(name = "organize_name") @Column(name = "organize_name")
private String organizeName; private String organizeName;

@ -43,16 +43,19 @@ public class CompanyController {
@ApiOperation("获取公司详情") @ApiOperation("获取公司详情")
@PostMapping("/companyDetails") @PostMapping("/companyDetails")
public ResponseEntity<Object> companyDetails() { public ResponseEntity<Object> companyDetails() {
CompanyDto companyDto = companyService.findCompanyByUserId(SecurityUtils.getCompanyId()); Long companyId = SecurityUtils.getCompanyId();
return new ResponseEntity<>(companyDto, HttpStatus.OK); if (companyId != null) {
CompanyDto companyDto = companyService.findCompanyByUserId(SecurityUtils.getCompanyId());
return new ResponseEntity<>(companyDto, HttpStatus.OK);
}
return new ResponseEntity<>(HttpStatus.OK);
} }
@ApiOperation("公司列表") @ApiOperation("公司列表")
@GetMapping("/companyList") @GetMapping("/companyList")
public ResponseEntity<Object> create(CompanyQueryCriteria criteria, Pageable pageable) { public ResponseEntity<Object> create(CompanyQueryCriteria criteria, Pageable pageable) {
return new ResponseEntity<>(companyService.queryAll(criteria, pageable),HttpStatus.OK); return new ResponseEntity<>(companyService.queryAll(criteria, pageable), HttpStatus.OK);
} }

@ -154,7 +154,7 @@ public class UserController {
@ApiOperation("创建或导入用户") @ApiOperation("创建或导入用户")
@PostMapping(value = "/createUsers") @PostMapping(value = "/createUsers")
public ResponseEntity<Object> createUsers(@Validated @RequestBody CreateUserDTO userDTO) throws IOException { public ResponseEntity<Object> createUsers(@Validated @RequestBody CreateUserDTO userDTO) throws IOException {
Long companyId; Long companyId = null;
User user = new User(); User user = new User();
boolean flag = Boolean.FALSE; boolean flag = Boolean.FALSE;
Long userId = SecurityUtils.getCurrentUserId(); Long userId = SecurityUtils.getCurrentUserId();
@ -167,18 +167,22 @@ public class UserController {
} }
} }
} }
CompanyDto companyDto = new CompanyDto();
companyDto.setStatus(DefaultNumberConstants.ZERO_NUMBER); if (flag){
companyDto.setCompanyName(userDTO.getNickName()); CompanyDto companyDto = new CompanyDto();
companyId = flag ? companyDto.setStatus(DefaultNumberConstants.ZERO_NUMBER);
companyService.createCompany(companyDto).getId() : companyDto.setCompanyName(userDTO.getNickName());
companyId = companyService.createCompany(companyDto).getId();
}
companyId = companyId != null ? companyId :
SecurityUtils.getCompanyId(); SecurityUtils.getCompanyId();
userDTO.setPassword(passwordEncoder.encode("123456")); userDTO.setPassword(passwordEncoder.encode("123456"));
BeanUtil.copyProperties(userDTO, user); BeanUtil.copyProperties(userDTO, user);
user.setCompanyId(companyId); user.setCompanyId(companyId);
user.setUsername(flag ? user.getUsername() : user.setUsername(flag ||
companyService.findById(companyId). userId == DefaultNumberConstants.ONE_NUMBER ? user.getUsername() :
getCompanyName().concat(StrPool.COLON).concat(user.getUsername())); companyService.findById(companyId).getCompanyName().concat(StrPool.COLON).concat(user.getUsername()));
user.setWhichUserId(userId); user.setWhichUserId(userId);
User userCreateResult = userService.create(user); User userCreateResult = userService.create(user);
MultipartFile file = userDTO.getFile(); MultipartFile file = userDTO.getFile();

@ -84,7 +84,7 @@ public class OrganizeServiceImpl implements OrganizeService {
*/ */
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@CacheEvict(key = "'organize:' + #organize.getId()") @CacheEvict(value = "organize",key = "'organize:' + #organize.getId()")
public void updateOrganize(Organize organize) { public void updateOrganize(Organize organize) {
if (organize.getOrganizeName() != null) { if (organize.getOrganizeName() != null) {
Organize updateOrganize = organizeRepository.findById(organize.getId()).orElseGet(Organize::new); Organize updateOrganize = organizeRepository.findById(organize.getId()).orElseGet(Organize::new);

@ -170,6 +170,9 @@ public class UserServiceImpl implements UserService {
if (role.getId() == DefaultNumberConstants.NINE_NUMBER) { if (role.getId() == DefaultNumberConstants.NINE_NUMBER) {
userDto.setIsGroup(Boolean.TRUE); userDto.setIsGroup(Boolean.TRUE);
} }
if (role.getId() == DefaultNumberConstants.FIVE_NUMBER) {
userDto.setIsOperator(Boolean.TRUE);
}
} }
return userDto; return userDto;
} }
@ -297,6 +300,9 @@ public class UserServiceImpl implements UserService {
if (role.getId() == DefaultNumberConstants.NINE_NUMBER) { if (role.getId() == DefaultNumberConstants.NINE_NUMBER) {
convert.setIsGroup(Boolean.TRUE); convert.setIsGroup(Boolean.TRUE);
} }
if (role.getId() == DefaultNumberConstants.FIVE_NUMBER) {
convert.setIsOperator(Boolean.TRUE);
}
} }
return convert; return convert;
} }

@ -11,6 +11,7 @@ import com.baiye.modules.telemarkting.entity.dto.DoubleCallStopDTO;
import com.baiye.modules.telemarkting.service.DoubleCallService; import com.baiye.modules.telemarkting.service.DoubleCallService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@ -25,9 +26,12 @@ import javax.annotation.Resource;
@RestController @RestController
@RequestMapping("/api") @RequestMapping("/api")
@Api(tags = "对接双呼") @Api(tags = "对接双呼")
@RequiredArgsConstructor
public class DoubleCallController { public class DoubleCallController {
@Resource
private DoubleCallService doubleCallService; private final DoubleCallService doubleCallService;
@PostMapping("/double/req") @PostMapping("/double/req")
@ApiOperation("请求接入双呼") @ApiOperation("请求接入双呼")
@ -35,6 +39,8 @@ public class DoubleCallController {
if (ObjectUtil.isEmpty(doubleCallReq)) { if (ObjectUtil.isEmpty(doubleCallReq)) {
return CommonResponse.createByError(); return CommonResponse.createByError();
} }
Long teamId = doubleCallReq.getTeamId();
return doubleCallService.doubleCallReq(doubleCallReq); return doubleCallService.doubleCallReq(doubleCallReq);
} }

@ -6,10 +6,14 @@ import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse; import cn.hutool.http.HttpResponse;
import cn.hutool.json.JSONObject; import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.baiye.exception.BadRequestException;
import com.baiye.http.DoubleCallResponse;
import com.baiye.model.enums.ResponseCode;
import com.baiye.modules.telemarkting.entity.dto.DoubleCallReqDTO; import com.baiye.modules.telemarkting.entity.dto.DoubleCallReqDTO;
import com.baiye.modules.telemarkting.entity.dto.DoubleCallStopDTO; import com.baiye.modules.telemarkting.entity.dto.DoubleCallStopDTO;
import com.baiye.modules.telemarkting.entity.dto.DoubleCallSystemDTO; import com.baiye.modules.telemarkting.entity.dto.DoubleCallSystemDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
@ -56,7 +60,10 @@ public class CallReq {
return result.get("sessionId").toString(); return result.get("sessionId").toString();
} else { } else {
count++; count++;
log.error("请求失败,response==={}", httpResponse.body()); String body = httpResponse.body();
log.error("请求失败,response==={}", body);
throw new BadRequestException(StringUtils.isNotBlank(body) ?
JSONUtil.toBean(body, DoubleCallResponse.class).getReason() : ResponseCode.CALL_ERROR.getDesc());
} }
} }
log.info("=======================doubleCallReq end in {}", DateUtil.date()); log.info("=======================doubleCallReq end in {}", DateUtil.date());

@ -60,7 +60,7 @@ spring:
# 登录相关配置 # 登录相关配置
login: login:
# 登录缓存 # 登录缓存
cache-enable: true cache-enable: false
# 是否限制单用户登录 # 是否限制单用户登录
single-login: false single-login: false
# 验证码 # 验证码

@ -31,6 +31,7 @@
<properties> <properties>
<jwt.version>3.4.1</jwt.version> <jwt.version>3.4.1</jwt.version>
<poi.version>4.0.0</poi.version>
<oshi.version>5.7.1</oshi.version> <oshi.version>5.7.1</oshi.version>
<guava.version>22.0</guava.version> <guava.version>22.0</guava.version>
<yauaa.version>5.23</yauaa.version> <yauaa.version>5.23</yauaa.version>
@ -199,6 +200,26 @@
<artifactId>aliyun-java-sdk-dysmsapi</artifactId> <artifactId>aliyun-java-sdk-dysmsapi</artifactId>
<version>${dysmsapi.version}</version> <version>${dysmsapi.version}</version>
</dependency> </dependency>
<!-- TODO excel冲突 -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>${poi.version}</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>${poi.version}</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
<version>${poi.version}</version>
</dependency>
</dependencies> </dependencies>
</dependencyManagement> </dependencyManagement>

@ -73,23 +73,20 @@
<artifactId>mapstruct-processor</artifactId> <artifactId>mapstruct-processor</artifactId>
<scope>provided</scope> <scope>provided</scope>
</dependency> </dependency>
<!-- TODO excel冲突 -->
<dependency> <dependency>
<groupId>org.apache.poi</groupId> <groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId> <artifactId>poi</artifactId>
<version>4.0.0</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.apache.poi</groupId> <groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId> <artifactId>poi-ooxml</artifactId>
<version>4.0.0</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.apache.poi</groupId> <groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId> <artifactId>poi-ooxml-schemas</artifactId>
<version>4.0.0</version>
</dependency> </dependency>
</dependencies> </dependencies>

@ -63,7 +63,7 @@ spring:
storage: storage:
url: /usr/local/webapp/source/files/ url: /usr/local/webapp/source/files/
de_symbol: / de_symbol: /
download-template: 47.97.90.60/api-source/download/custom.xlsx download-template: https://mm.tuoz.net/source/download/custom.xlsx
# 线程池配置 # 线程池配置

Loading…
Cancel
Save