会议需要的企业、联系人开放接口添加

This commit is contained in:
梁琦涛
2021-09-22 14:52:20 +08:00
parent 1be9d780d5
commit 6f5ff7c4c8
4 changed files with 233 additions and 4 deletions
@@ -146,6 +146,13 @@ public class ShiroConfig {
//性能监控 TODO 存在安全漏洞泄露TOEKN(durid连接池也有)
filterChainDefinitionMap.put("/actuator/**", "anon");
// 会议添加企业,联系人接口放过
filterChainDefinitionMap.put("/company/payCompanyManagement/listMeeting","anon");
filterChainDefinitionMap.put("/company/payCompanyManagement/addMeeting","anon");
filterChainDefinitionMap.put("/company/payContactsManagement/listMeeting","anon");
filterChainDefinitionMap.put("/company/payContactsManagement/addMeeting","anon");
filterChainDefinitionMap.put("/company/payContactsManagement/queryByIdMeeting","anon");
// 添加自己的过滤器并且取名为jwt
@@ -96,6 +96,103 @@ public class PayCompanyManagementController extends JeroController<PayCompanyMan
}
return Result.OK(pageList);
}
/**
* 分页列表查询 - 会议对外开放接口
* (管理端查询dataSource = 1的数据;报名查询全部的数据)
* @param payCompanyManagement 企业管理
* @param pageNo 页数
* @param pageSize 条数
* @param req
* @return
*/
@ApiOperation(value="企业管理-分页列表查询-会议对外开放接口", notes="企业管理-分页列表查询-会议对外开放接口")
@GetMapping(value = "/listMeeting")
public Result<?> queryPageListMeeting(PayCompanyManagement payCompanyManagement,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
if(!StringUtils.isBlank(payCompanyManagement.getCompanyName()) && payCompanyManagement.getCompanyName().length() > 50){
return Result.error("企业名称长度不能大于50个字符!");
}
QueryWrapper<PayCompanyManagement> queryWrapper = QueryGenerator.initQueryWrapper(payCompanyManagement, req.getParameterMap());
Page<PayCompanyManagement> page = new Page<PayCompanyManagement>(pageNo, pageSize);
IPage<PayCompanyManagement> pageList = payCompanyManagementService.page(page, queryWrapper);
List<PayCompanyManagement> listPayCompanyManagement = pageList.getRecords();
if(!CollectionUtils.isEmpty(listPayCompanyManagement)){
try {
listPayCompanyManagement.forEach(p->{
if (!StringUtils.isBlank(p.getCompanyPhone())){
p.setCompanyPhone(PasswordUtil.decrypt(p.getCompanyPhone()));
}
});
pageList.setRecords(listPayCompanyManagement);
}catch (Exception e){
log.error("公司电话解密异常!",e);
}
}
return Result.OK(pageList);
}
/**
* 添加-会议对外开放接口
*
* @param payCompanyManagement 企业管理
* @return
*/
@ApiOperation(value="企业管理-添加-会议对外开放接口", notes="企业管理-添加-会议对外开放接口")
@PostMapping(value = "/addMeeting")
public Result<?> addMeeting(@RequestBody PayCompanyManagement payCompanyManagement) {
StringBuilder msg = ValidUtil.validateAll(payCompanyManagement);
if(!StringUtils.isBlank(msg)){
return Result.error(msg.toString());
}
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
// 查看角色是否为财务人员
int dataSource = PayCompanyManagementCommon.DATA_SOURCE2;
int status = PayCompanyManagementCommon.STATUS2;
if(Objects.equals(sysUser.getRoleCode(),PayCompanyManagementCommon.ROLE_CODE)){
dataSource = PayCompanyManagementCommon.DATA_SOURCE1;
status = PayCompanyManagementCommon.STATUS1;
}
payCompanyManagement.setDataSource(dataSource);
payCompanyManagement.setStatus(status);
try {
// 新增企业前在次校验企业名称是否存在
LambdaQueryWrapper<PayCompanyManagement> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PayCompanyManagement::getCompanyName,payCompanyManagement.getCompanyName());
PayCompanyManagement payCompanyManagementNew = payCompanyManagementService.getOne(queryWrapper);
// 存在数据
if(!Objects.isNull(payCompanyManagementNew)){
return Result.error("该企业名称已存在!");
}
}catch (Exception e){
log.info("企业管理-添加异常",e);
return Result.error("该企业名称已存在!");
}
try {
// 新增企业前在次校验信用代码是否存在
LambdaQueryWrapper<PayCompanyManagement> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PayCompanyManagement::getDutyCode,payCompanyManagement.getDutyCode());
PayCompanyManagement payCompanyManagementNew = payCompanyManagementService.getOne(queryWrapper);
// 存在数据
if(!Objects.isNull(payCompanyManagementNew)){
return Result.error("该信用代码已存在!");
}
}catch (Exception e){
log.info("企业管理-添加异常",e);
return Result.error("该信用代码已存在!");
}
if(!StringUtils.isBlank(payCompanyManagement.getCompanyPhone())){
try {
payCompanyManagement.setCompanyPhone(PasswordUtil.encrypt(payCompanyManagement.getCompanyPhone()));
}catch (Exception e){
log.error("公司电话加密异常!",e);
}
}
payCompanyManagementService.save(payCompanyManagement);
return Result.OK("添加成功!",payCompanyManagement);
}
/**
* 添加
@@ -107,7 +107,111 @@ public class PayContactsManagementController extends JeroController<PayContactsM
}
return Result.OK(pageList);
}
/**
* 分页列表查询-会议对外开放接口
*
* @param payContactsManagement 联系人管理
* @param pageNo 页数
* @param pageSize 条数
* @return
*/
@ApiOperation(value="联系人管理-分页列表查询-会议对外开放接口", notes="联系人管理-分页列表查询-会议对外开放接口")
@GetMapping(value = "/listMeeting")
public Result<?> queryPageListMeeting(PayContactsManagement payContactsManagement,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize) {
if(!StringUtils.isBlank(payContactsManagement.getName()) && payContactsManagement.getName().length() > 20){
return Result.error("姓名长度不能大于20个字符!");
}
if(!StringUtils.isBlank(payContactsManagement.getCompanyName()) && payContactsManagement.getCompanyName().length() > 50){
return Result.error("企业名称长度不能大于50个字符!");
}
if(!StringUtils.isBlank(payContactsManagement.getPhone()) && payContactsManagement.getPhone().length() > 11){
return Result.error("手机号长度不能大于11个字符!");
}
Page<PayContactsManagement> page = new Page<>(pageNo, pageSize);
IPage<PayContactsManagement> pageList = payContactsManagementService.queryPageList(page, payContactsManagement);
List<PayContactsManagement> listPayContactsManagement = pageList.getRecords();
if(!CollectionUtils.isEmpty(listPayContactsManagement)){
try {
listPayContactsManagement.forEach(p->{
if (!StringUtils.isBlank(p.getPhone())){
p.setPhone(PasswordUtil.decrypt(p.getPhone()));
}
if (!StringUtils.isBlank(p.getEmail())){
p.setEmail(PasswordUtil.decrypt(p.getEmail()));
}
});
pageList.setRecords(listPayContactsManagement);
}catch (Exception e){
log.error("手机号、邮箱解密异常!",e);
}
}
return Result.OK(pageList);
}
/**
* 添加-会议对外开放接口
*
* @param payContactsManagement 联系人管理
* @return
*/
@ApiOperation(value="联系人管理-添加-会议对外开放接口", notes="联系人管理-添加-会议对外开放接口")
@PostMapping(value = "/addMeeting")
public Result<?> addMeeting(@RequestBody PayContactsManagement payContactsManagement) {
StringBuilder msg = ValidUtil.validateAll(payContactsManagement);
if(!StringUtils.isBlank(msg)){
return Result.error(msg.toString());
}
PayCompanyManagement payCompanyManagement = payCompanyManagementService.getById(payContactsManagement.getCompanyId());
if(Objects.isNull(payCompanyManagement)){
return Result.error("企业不存在!");
}
payContactsManagement.setCompanyName(payCompanyManagement.getCompanyName());
try {
String phone = PasswordUtil.encrypt(payContactsManagement.getPhone());
// 新增联系人前在次校验手机号是否存在
LambdaQueryWrapper<PayContactsManagement> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PayContactsManagement::getPhone,phone);
PayContactsManagement payContactsManagementNew = payContactsManagementService.getOne(queryWrapper);
// 手机号存在,并且编辑id与查询不同,则校验不通过
if(!Objects.isNull(payContactsManagementNew)) {
return Result.error("手机号已存在!");
}
}catch (Exception e){
log.info("联系人管理-添加异常",e);
return Result.error("手机号已存在!");
}
try {
// 新增联系人前校验同企业下联系人是否存在
LambdaQueryWrapper<PayContactsManagement> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PayContactsManagement::getName,payContactsManagement.getName());
queryWrapper.eq(PayContactsManagement::getCompanyId,payContactsManagement.getCompanyId());
PayContactsManagement payContactsManagementNew = payContactsManagementService.getOne(queryWrapper);
// 姓名存在,则校验不通过
if(!Objects.isNull(payContactsManagementNew)) {
return Result.error("联系人姓名已存在!");
}
}catch (Exception e){
log.info("联系人管理-添加异常",e);
return Result.error("联系人姓名已存在!");
}
// 存在数据
try {
if (!StringUtils.isBlank(payContactsManagement.getPhone())){
payContactsManagement.setPhone(PasswordUtil.encrypt(payContactsManagement.getPhone()));
}
if (!StringUtils.isBlank(payContactsManagement.getEmail())){
payContactsManagement.setEmail(PasswordUtil.encrypt(payContactsManagement.getEmail()));
}
}catch (Exception e){
log.error("手机号、邮箱加密异常!",e);
}
payContactsManagementService.save(payContactsManagement);
return Result.OK("添加成功!",payContactsManagement);
}
/**
* 添加
*
@@ -333,7 +437,29 @@ public class PayContactsManagementController extends JeroController<PayContactsM
}
return Result.error("该联系人姓名已存在!");
}
/**
* 通过id查询-会议对外开放接口
*
* @param id
* @return
*/
@ApiOperation(value="联系人管理-通过id查询-会议对外开放接口", notes="联系人管理-通过id查询-会议对外开放接口")
@GetMapping(value = "/queryByIdMeeting")
public Result<?> queryByIdMeeting(@RequestParam(name="id") String id) {
PayContactsManagement payContactsManagement = payContactsManagementService.getById(id);
if(payContactsManagement == null) {
return Result.error("未找到对应数据");
}
if (!StringUtils.isBlank(payContactsManagement.getPhone())){
payContactsManagement.setPhone(PasswordUtil.decrypt(payContactsManagement.getPhone()));
}
if (!StringUtils.isBlank(payContactsManagement.getEmail())){
payContactsManagement.setEmail(PasswordUtil.decrypt(payContactsManagement.getEmail()));
}
return Result.OK(payContactsManagement);
}
/**
* 通过id查询
*
@@ -41,8 +41,7 @@ public class PayCommonProject implements Serializable {
/**来款项目*/
@Excel(name = "来款项目", width = 20,orderNum = "0")
@ApiModelProperty(value = "来款项目")
@NotEmpty(message = "来款项目不能为空!")
@Size(max = 100,message = "来款项目长度不能大于100个字符")
@TableField(exist = false)
private String chargeProject;
/**来款用途(字典表)*/
@ApiModelProperty(value = "来款用途")