Commit 92cbd5b2 by 李小惠

根据条件查询账号和角色接口

parent 0000deb4
package com.junmp.jyzb.api.bean.dto;
import lombok.Data;
import java.util.Date;
/**
* 账号和角色返回字段
*/
@Data
public class UserRoleDto {
private Long userId;
private String account;
private String nickName;
private String realName;
private Long avatar;
private Date birthday;
private String sex;
private String email;
private String phone;
private String password;
private String tel;
private Long orgId;
private String orgCode;
private Long positionId;
private Integer statusFlag;
private Long roleId;
}
...@@ -54,4 +54,5 @@ public class OrderDetailReq extends BaseRequest { ...@@ -54,4 +54,5 @@ public class OrderDetailReq extends BaseRequest {
* 修改后数量 * 修改后数量
*/ */
private Integer modifyQuantity; private Integer modifyQuantity;
} }
package com.junmp.jyzb.api.bean.req; package com.junmp.jyzb.api.bean.req;
import com.junmp.v2.common.bean.request.ValidationApi;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date;
/** /**
* 记账时的子单据请求实体类 * 记账时的子单据请求实体类
*/ */
@Data @Data
public class DetailListReq implements Serializable { public class UpdateOrderDetailReq implements Serializable {
/** /**
* 类型 * 类型
*/ */
...@@ -43,4 +46,20 @@ public class DetailListReq implements Serializable { ...@@ -43,4 +46,20 @@ public class DetailListReq implements Serializable {
private String warehouseId; private String warehouseId;
private String orderId;
private Integer actualNum;
private String orderType;
private Date createTime;
private Date updateTime;
private String createUser;
private String updateUser;
private Integer modifyQuantity;
} }
package com.junmp.jyzb.api.bean.req; package com.junmp.jyzb.api.bean.req;
import com.junmp.jyzb.api.bean.Validator.IsDateTime;
import com.junmp.jyzb.api.bean.Validator.IsNumber; import com.junmp.jyzb.api.bean.Validator.IsNumber;
import com.junmp.v2.common.bean.request.BaseRequest; import com.junmp.v2.common.bean.request.BaseRequest;
import lombok.Data; import lombok.Data;
...@@ -47,11 +46,12 @@ public class UpdateOrderReq extends BaseRequest implements Serializable { ...@@ -47,11 +46,12 @@ public class UpdateOrderReq extends BaseRequest implements Serializable {
* 发物单位 * 发物单位
*/ */
// @IsNumber(message = "startOrgId必须是数字",groups = {add.class}) // @IsNumber(message = "startOrgId必须是数字",groups = {add.class})
private String startOrgId; private Long startOrgId;
/** /**
* 发物单位名称 * 发物单位名称
*/ */
private String startOrgName; private String startOrgName;
/** /**
* 收物单位 * 收物单位
*/ */
...@@ -116,7 +116,7 @@ public class UpdateOrderReq extends BaseRequest implements Serializable { ...@@ -116,7 +116,7 @@ public class UpdateOrderReq extends BaseRequest implements Serializable {
/** /**
* 明细列表 * 明细列表
*/ */
private List<DetailListReq> detailList; private List<UpdateOrderDetailReq> detailList;
/** /**
* 生产厂商id * 生产厂商id
......
...@@ -91,7 +91,7 @@ public class OrderController { ...@@ -91,7 +91,7 @@ public class OrderController {
@PostMapping("/Accounting") @PostMapping("/Accounting")
@ApiOperation("记账") @ApiOperation("记账")
public ApiRes<Boolean> Accounting(@RequestBody @Validated(ValidationApi.delete.class) OrderMainReq req){ public ApiRes<Boolean> Accounting(@RequestBody @Validated(ValidationApi.delete.class) UpdateOrderReq req){
return ApiRes.success(orderMainService.Accounting(req)); return ApiRes.success(orderMainService.Accounting(req));
} }
......
...@@ -16,6 +16,8 @@ import com.junmp.jyzb.utils.ResponseResult; ...@@ -16,6 +16,8 @@ import com.junmp.jyzb.utils.ResponseResult;
import com.junmp.v2.common.bean.request.ValidationApi; import com.junmp.v2.common.bean.request.ValidationApi;
import com.junmp.v2.common.bean.response.ApiRes; import com.junmp.v2.common.bean.response.ApiRes;
import com.junmp.v2.db.api.page.PageResult; import com.junmp.v2.db.api.page.PageResult;
import com.junmp.v2.sys.api.bean.user.SysUserDto;
import com.junmp.v2.sys.api.bean.user.req.SysUserReq;
import com.junmp.v2.sys.api.bean.user.req.UserOrgReq; import com.junmp.v2.sys.api.bean.user.req.UserOrgReq;
import com.junmp.v2.sys.user.controller.SysUserController; import com.junmp.v2.sys.user.controller.SysUserController;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -86,7 +88,7 @@ public class PoliceController { ...@@ -86,7 +88,7 @@ public class PoliceController {
return ApiRes.success(policemanDtos); return ApiRes.success(policemanDtos);
} }
//根据组条件查询,只查询本级,不包含下级(page) //根据组条件查询,只查询本级,不包含下级(page)--可以根据组织机构查询
@PostMapping("/ShowPolicePage") @PostMapping("/ShowPolicePage")
@ApiOperation("根据条件查询所有警员信息(page)") @ApiOperation("根据条件查询所有警员信息(page)")
public ApiRes<PageResult<PolicemanDto>> GetAllPolicemanPage(@RequestBody PolicemanReq req){ public ApiRes<PageResult<PolicemanDto>> GetAllPolicemanPage(@RequestBody PolicemanReq req){
...@@ -158,16 +160,12 @@ public class PoliceController { ...@@ -158,16 +160,12 @@ public class PoliceController {
return ApiRes.success(policeman); return ApiRes.success(policeman);
} }
// //警员绑定账号 //查询组织机构下的用户以及角色信息(也可以根据别的查询条件查询)
// @PostMapping("/PoliceBindUser") @PostMapping("/ShowUserRole")
// @ApiOperation("警员绑定账号") @ApiOperation("查询用户角色信息")
// public ApiRes<Boolean> PoliceBindUser(@RequestBody @Validated(ValidationApi.add.class) PolicemanReq req){ public ApiRes<PageResult<SysUserDto>> ShowUserRole(@RequestBody SysUserReq req){
// boolean b = policemanService.PoliceBindUser(req); return ApiRes.success( policemanService.ShowUserRole(req));
// if (!b){ }
// return ApiRes.failure("操作失败");
// }
// return ApiRes.success(b);
// }
/** /**
* 人员绑定箱门 * 人员绑定箱门
......
...@@ -3,9 +3,12 @@ package com.junmp.jyzb.mapper; ...@@ -3,9 +3,12 @@ package com.junmp.jyzb.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.junmp.jyzb.api.bean.dto.UserRoleDto;
import com.junmp.jyzb.entity.CabinetBox; import com.junmp.jyzb.entity.CabinetBox;
import com.junmp.jyzb.entity.InventorySummary; import com.junmp.jyzb.entity.InventorySummary;
import com.junmp.jyzb.entity.Policeman; import com.junmp.jyzb.entity.Policeman;
import com.junmp.v2.sys.api.bean.user.SysUserDto;
import com.junmp.v2.sys.api.bean.user.req.SysUserReq;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import java.util.Collection; import java.util.Collection;
...@@ -33,4 +36,6 @@ public interface PolicemanMapper extends BaseMapper<Policeman> { ...@@ -33,4 +36,6 @@ public interface PolicemanMapper extends BaseMapper<Policeman> {
Long SearchPoliceSize(String id); Long SearchPoliceSize(String id);
void updateBatchUserIdByAccountList(@Param("userIdList") List<Long> userIdList, @Param("accountList") List<String> accountList); void updateBatchUserIdByAccountList(@Param("userIdList") List<Long> userIdList, @Param("accountList") List<String> accountList);
List<UserRoleDto> ShowUserRole(@Param("req") SysUserReq req,@Param("numRoles") Integer numRoles);
} }
\ No newline at end of file
package com.junmp.jyzb.rabbitmq;
import com.junmp.jyzb.service.OrderMainService;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
//将工作单上传到rabbitmq中
@Component
public class OrderMQSender {
@Resource
private RabbitTemplate rabbitTemplate;
@Resource
private OrderMainService orderMainService;
public void send(){
//将审核状态为finished的任务单放入rabbitmq中
}
}
...@@ -36,7 +36,7 @@ public interface OrderMainService extends IService<OrderMain> { ...@@ -36,7 +36,7 @@ public interface OrderMainService extends IService<OrderMain> {
boolean PushState(OrderUploadReq req); boolean PushState(OrderUploadReq req);
//记账 //记账
boolean Accounting(OrderMainReq req); boolean Accounting(UpdateOrderReq req);
//查看记账列表 //查看记账列表
PageResult<OrderLog> ShowAccountingPage(QueryOrderLogReq req); PageResult<OrderLog> ShowAccountingPage(QueryOrderLogReq req);
......
...@@ -11,6 +11,8 @@ import com.junmp.jyzb.entity.PoliceEquipment; ...@@ -11,6 +11,8 @@ import com.junmp.jyzb.entity.PoliceEquipment;
import com.junmp.jyzb.entity.Policeman; import com.junmp.jyzb.entity.Policeman;
import com.junmp.jyzb.entity.Reassignment; import com.junmp.jyzb.entity.Reassignment;
import com.junmp.v2.db.api.page.PageResult; import com.junmp.v2.db.api.page.PageResult;
import com.junmp.v2.sys.api.bean.user.SysUserDto;
import com.junmp.v2.sys.api.bean.user.req.SysUserReq;
import com.junmp.v2.sys.api.bean.user.req.UserOrgReq; import com.junmp.v2.sys.api.bean.user.req.UserOrgReq;
import java.util.List; import java.util.List;
...@@ -83,4 +85,7 @@ public interface PolicemanService extends IService<Policeman> { ...@@ -83,4 +85,7 @@ public interface PolicemanService extends IService<Policeman> {
//查看警员调岗申请单 //查看警员调岗申请单
PageResult<Reassignment> ShowReassignmentPage(UpdateReassignmentReq req); PageResult<Reassignment> ShowReassignmentPage(UpdateReassignmentReq req);
////查询组织机构下的用户以及角色信息(也可以根据别的查询条件查询)
PageResult<SysUserDto> ShowUserRole(SysUserReq req);
} }
...@@ -7,11 +7,9 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; ...@@ -7,11 +7,9 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.junmp.jyzb.api.bean.dto.InventorySumDto; import com.junmp.jyzb.api.bean.dto.InventorySumDto;
import com.junmp.jyzb.api.bean.query.InventorySumReq; import com.junmp.jyzb.api.bean.query.InventorySumReq;
import com.junmp.jyzb.api.bean.req.RabbitMqOrderReq; import com.junmp.jyzb.api.bean.req.RabbitMqOrderReq;
import com.junmp.jyzb.entity.EquipmentSize; import com.junmp.jyzb.entity.*;
import com.junmp.jyzb.entity.EquipmentType;
import com.junmp.jyzb.entity.Inventory;
import com.junmp.jyzb.entity.InventorySummary;
import com.junmp.jyzb.service.*; import com.junmp.jyzb.service.*;
import com.junmp.v2.common.util.BeanPlusUtil;
import com.junmp.v2.db.api.factory.PageFactory; import com.junmp.v2.db.api.factory.PageFactory;
import com.junmp.v2.db.api.factory.PageResultFactory; import com.junmp.v2.db.api.factory.PageResultFactory;
import com.junmp.v2.db.api.page.PageResult; import com.junmp.v2.db.api.page.PageResult;
...@@ -84,6 +82,13 @@ public class InventorySummaryServiceImpl extends ServiceImpl<InventorySummaryMa ...@@ -84,6 +82,13 @@ public class InventorySummaryServiceImpl extends ServiceImpl<InventorySummaryMa
//处理本地主机返回单据结果 //处理本地主机返回单据结果
@Override @Override
public Boolean processInventoryRecords(RabbitMqOrderReq req) { public Boolean processInventoryRecords(RabbitMqOrderReq req) {
//将主单据信息复制进行更新
OrderMain orderMain = new OrderMain();
BeanPlusUtil.copyProperties(req.getOrderMainReq(),orderMain);
//将子单据信息复制进行更新
OrderDetail orderDetail = new OrderDetail();
BeanPlusUtil.copyProperties(req.getOrderDetailReq(),orderDetail);
return null; return null;
} }
......
...@@ -3,11 +3,9 @@ package com.junmp.jyzb.service.impl; ...@@ -3,11 +3,9 @@ package com.junmp.jyzb.service.impl;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.junmp.junmpProcess.dto.StartProcessInstanceDTO; import com.junmp.junmpProcess.dto.StartProcessInstanceDTO;
import com.junmp.junmpProcess.service.Bussiness.impl.WorkProcessServiceImpl;
import com.junmp.junmpProcess.service.IFlowInstanceService; import com.junmp.junmpProcess.service.IFlowInstanceService;
import com.junmp.jyzb.api.bean.dto.OrderDetailDto; import com.junmp.jyzb.api.bean.dto.OrderDetailDto;
import com.junmp.jyzb.api.bean.dto.OrderDto; import com.junmp.jyzb.api.bean.dto.OrderDto;
...@@ -15,7 +13,7 @@ import com.junmp.jyzb.api.bean.dto.OrderMainDto; ...@@ -15,7 +13,7 @@ import com.junmp.jyzb.api.bean.dto.OrderMainDto;
import com.junmp.jyzb.api.bean.query.OrderDetailReq; import com.junmp.jyzb.api.bean.query.OrderDetailReq;
import com.junmp.jyzb.api.bean.query.OrderMainReq; import com.junmp.jyzb.api.bean.query.OrderMainReq;
import com.junmp.jyzb.api.bean.query.OrderUploadReq; import com.junmp.jyzb.api.bean.query.OrderUploadReq;
import com.junmp.jyzb.api.bean.req.DetailListReq; import com.junmp.jyzb.api.bean.req.UpdateOrderDetailReq;
import com.junmp.jyzb.api.bean.query.QueryOrderLogReq; import com.junmp.jyzb.api.bean.query.QueryOrderLogReq;
import com.junmp.jyzb.api.bean.req.UpdateOrderReq; import com.junmp.jyzb.api.bean.req.UpdateOrderReq;
import com.junmp.jyzb.api.bean.vo.InOrderInfo; import com.junmp.jyzb.api.bean.vo.InOrderInfo;
...@@ -35,7 +33,6 @@ import com.junmp.v2.dict.entity.SysDictItem; ...@@ -35,7 +33,6 @@ import com.junmp.v2.dict.entity.SysDictItem;
import com.junmp.v2.dict.service.SysDictItemService; import com.junmp.v2.dict.service.SysDictItemService;
import com.junmp.v2.office.api.OfficeExcelApi; import com.junmp.v2.office.api.OfficeExcelApi;
import com.junmp.v2.office.api.bean.ExcelExportParam; import com.junmp.v2.office.api.bean.ExcelExportParam;
import org.apache.commons.lang3.StringUtils;
import org.springframework.amqp.core.Queue; import org.springframework.amqp.core.Queue;
import org.springframework.amqp.rabbit.core.RabbitAdmin; import org.springframework.amqp.rabbit.core.RabbitAdmin;
import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.amqp.rabbit.core.RabbitTemplate;
...@@ -46,12 +43,9 @@ import org.springframework.transaction.annotation.Transactional; ...@@ -46,12 +43,9 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import java.util.stream.Stream;
@Service @Service
...@@ -111,7 +105,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain ...@@ -111,7 +105,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
BigDecimal priceTotal=new BigDecimal(0); BigDecimal priceTotal=new BigDecimal(0);
List<OrderDetail> detailList = new ArrayList<>(); List<OrderDetail> detailList = new ArrayList<>();
//通过遍历批量保存详细信息 //通过遍历批量保存详细信息
for (DetailListReq listReq:req.getDetailList()) { for (UpdateOrderDetailReq listReq:req.getDetailList()) {
OrderDetail detail=new OrderDetail(); OrderDetail detail=new OrderDetail();
BeanPlusUtil.copyProperties(listReq, detail); BeanPlusUtil.copyProperties(listReq, detail);
detail.setOrderId(order.getId()); detail.setOrderId(order.getId());
...@@ -217,7 +211,6 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain ...@@ -217,7 +211,6 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
rabbitAdmin.declareExchange(exchange); rabbitAdmin.declareExchange(exchange);
rabbitAdmin.declareBinding(BindingBuilder.bind(queue).to(exchange).with(req.getEndOrgId().toString()).noargs()); rabbitAdmin.declareBinding(BindingBuilder.bind(queue).to(exchange).with(req.getEndOrgId().toString()).noargs());
rabbitTemplate.convertAndSend(exchangeName, req.getEndOrgId().toString(), req); rabbitTemplate.convertAndSend(exchangeName, req.getEndOrgId().toString(), req);
}else { }else {
Queue queue = new Queue(req.getStartOrgId().toString(), true, false, false); Queue queue = new Queue(req.getStartOrgId().toString(), true, false, false);
Exchange exchange = new DirectExchange(exchangeName, true, false); Exchange exchange = new DirectExchange(exchangeName, true, false);
...@@ -267,31 +260,31 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain ...@@ -267,31 +260,31 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
//对detaillist进行处理 //对detaillist进行处理
List<OrderDetail> addList = new ArrayList<>();//新增的 List<OrderDetail> addList = new ArrayList<>();//新增的
List<OrderDetail> updateList = new ArrayList<>();//更新 List<OrderDetail> updateList = new ArrayList<>();//更新
for (DetailListReq detailListReq :req.getDetailList()) { for (UpdateOrderDetailReq updateOrderDetailReq :req.getDetailList()) {
//判断是否存在,存在则进行修改 //判断是否存在,存在则进行修改
if (idSet.contains(detailListReq.getId())){ if (idSet.contains(updateOrderDetailReq.getId())){
OrderDetail one = orderDetailService.getOne(new LambdaQueryWrapper<OrderDetail>() OrderDetail one = orderDetailService.getOne(new LambdaQueryWrapper<OrderDetail>()
.eq(OrderDetail::getId, detailListReq.getId())); .eq(OrderDetail::getId, updateOrderDetailReq.getId()));
BeanPlusUtil.copyProperties(detailListReq,one); BeanPlusUtil.copyProperties(updateOrderDetailReq,one);
one.setType(req.getOrderType()); one.setType(req.getOrderType());
//判断数量和价格是否有变动,如果有变动,则将order的总价和总数量进行更新操作,否则不变 //判断数量和价格是否有变动,如果有变动,则将order的总价和总数量进行更新操作,否则不变
if (one.getPlanNum().equals(detailListReq.getPlanNum()) && one.getPrice().compareTo(detailListReq.getPrice())!=0){ if (one.getPlanNum().equals(updateOrderDetailReq.getPlanNum()) && one.getPrice().compareTo(updateOrderDetailReq.getPrice())!=0){
order.setPrice(order.getPrice().subtract(one.getPrice().multiply(BigDecimal.valueOf(one.getPlanNum()))) order.setPrice(order.getPrice().subtract(one.getPrice().multiply(BigDecimal.valueOf(one.getPlanNum())))
.add(detailListReq.getPrice().multiply(BigDecimal.valueOf(detailListReq.getPlanNum())))); .add(updateOrderDetailReq.getPrice().multiply(BigDecimal.valueOf(updateOrderDetailReq.getPlanNum()))));
order.setInventoryQuantity(order.getInventoryQuantity() - one.getPlanNum()+ detailListReq.getPlanNum()); order.setInventoryQuantity(order.getInventoryQuantity() - one.getPlanNum()+ updateOrderDetailReq.getPlanNum());
} }
one.setUpdateTime(DateTimeUtil.getCurrentDateTime()); one.setUpdateTime(DateTimeUtil.getCurrentDateTime());
updateList.add(one); updateList.add(one);
}else { }else {
//否则判断id是否为空或者错误,如果为空则添加,不为空则抛出异常 //否则判断id是否为空或者错误,如果为空则添加,不为空则抛出异常
if (ObjectUtil.isNull(detailListReq.getId()) || ObjectUtil.isEmpty(detailListReq.getId())){ if (ObjectUtil.isNull(updateOrderDetailReq.getId()) || ObjectUtil.isEmpty(updateOrderDetailReq.getId())){
OrderDetail detail=new OrderDetail(); OrderDetail detail=new OrderDetail();
BeanPlusUtil.copyProperties(detailListReq, detail); BeanPlusUtil.copyProperties(updateOrderDetailReq, detail);
detail.setOrderId(req.getId()); detail.setOrderId(req.getId());
detail.setType(req.getOrderType()); detail.setType(req.getOrderType());
//将数量和价格进行相加处理 //将数量和价格进行相加处理
order.setPrice(order.getPrice().add(detailListReq.getPrice().multiply(BigDecimal.valueOf(detailListReq.getPlanNum())))); order.setPrice(order.getPrice().add(updateOrderDetailReq.getPrice().multiply(BigDecimal.valueOf(updateOrderDetailReq.getPlanNum()))));
order.setInventoryQuantity(order.getInventoryQuantity() + detailListReq.getPlanNum()); order.setInventoryQuantity(order.getInventoryQuantity() + updateOrderDetailReq.getPlanNum());
detail.setUpdateTime(DateTimeUtil.getCurrentDateTime()); detail.setUpdateTime(DateTimeUtil.getCurrentDateTime());
addList.add(detail); addList.add(detail);
}else { }else {
...@@ -302,8 +295,8 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain ...@@ -302,8 +295,8 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
} }
orderDetailService.updateBatchById(updateList); orderDetailService.updateBatchById(updateList);
orderDetailService.saveBatch(addList); orderDetailService.saveBatch(addList);
// 方法2(直接删除并重新插入数据)----------------------------------------------
BeanPlusUtil.copyProperties(req,order); BeanPlusUtil.copyProperties(req,order);
// 方法2(直接删除并重新插入数据)未写----------------------------------------------
return this.updateById(order); return this.updateById(order);
} }
//更新任务单(进入工作流中之后不能进行更改) //更新任务单(进入工作流中之后不能进行更改)
...@@ -424,7 +417,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain ...@@ -424,7 +417,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
//记账 //记账
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
public boolean Accounting(OrderMainReq req) { public boolean Accounting(UpdateOrderReq req) {
//判断传递的订单主id是否存在 //判断传递的订单主id是否存在
OrderMain orderMain = orderMainExist(req.getId()); OrderMain orderMain = orderMainExist(req.getId());
//记账子单据不能传空 //记账子单据不能传空
...@@ -432,7 +425,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain ...@@ -432,7 +425,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
throw new ServiceException(OrderExceptionEnum.ORDERDETAIL_ISNOT_NULL); throw new ServiceException(OrderExceptionEnum.ORDERDETAIL_ISNOT_NULL);
} }
//前端传递的子单数据 //前端传递的子单数据
List<OrderDetailReq> reqList = req.getDetailList(); List<UpdateOrderDetailReq> reqList = req.getDetailList();
//将记账数量进行相加 //将记账数量进行相加
Integer updateQuantity=0; Integer updateQuantity=0;
//将价格进行添加修改 //将价格进行添加修改
...@@ -441,17 +434,17 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain ...@@ -441,17 +434,17 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
List<OrderDetail> list = orderDetailService.list(new LambdaQueryWrapper<OrderDetail>() List<OrderDetail> list = orderDetailService.list(new LambdaQueryWrapper<OrderDetail>()
.eq(OrderDetail::getOrderId,req.getId())); .eq(OrderDetail::getOrderId,req.getId()));
//获取所有传递的子单据id //获取所有传递的子单据id
Set<Long> collect = req.getDetailList().stream().map(OrderDetailReq::getId).collect(Collectors.toSet()); Set<Long> collect = req.getDetailList().stream().map(UpdateOrderDetailReq::getId).collect(Collectors.toSet());
//获取所有数据库的子单据id //获取所有数据库的子单据id
Set<Long> existingIds = list.stream().map(OrderDetail::getId).collect(Collectors.toSet()); Set<Long> existingIds = list.stream().map(OrderDetail::getId).collect(Collectors.toSet());
//创建一个操作记录 //创建一个操作记录
StringBuilder stringBuilder = new StringBuilder(); StringBuilder stringBuilder = new StringBuilder();
List<OrderDetail> orderDetailList=new ArrayList<>(); List<OrderDetail> orderDetailList=new ArrayList<>();
//创建一个列表用于修改summary数据库表中数据。 //创建一个列表用于修改summary数据库表中数据。
List<OrderDetailReq> orderDetailReqList=new ArrayList<>(); List<UpdateOrderDetailReq> orderDetailReqList=new ArrayList<>();
//比较两个子单id完全一致,判断传递的子单据id在数据库中是否存在,如果不存在则抛出子单据不存在异常 //比较两个子单id完全一致,判断传递的子单据id在数据库中是否存在,如果不存在则抛出子单据不存在异常
if (collect.size() == existingIds.size() && collect.containsAll(existingIds) && existingIds.containsAll(collect)){ if (collect.size() == existingIds.size() && collect.containsAll(existingIds) && existingIds.containsAll(collect)){
for (OrderDetailReq uploadDetailReq : reqList) { for (UpdateOrderDetailReq uploadDetailReq : reqList) {
OrderDetail orderDetail = new OrderDetail(); OrderDetail orderDetail = new OrderDetail();
BeanPlusUtil.copyProperties(uploadDetailReq,orderDetail); BeanPlusUtil.copyProperties(uploadDetailReq,orderDetail);
//获取修改后的数量并且记录(如果modifyQuantity不为空则表示该子单据进行了修改) //获取修改后的数量并且记录(如果modifyQuantity不为空则表示该子单据进行了修改)
...@@ -513,7 +506,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain ...@@ -513,7 +506,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
//将修改内容存储记录(历史操作,数量,单据,价格,组织机构) //将修改内容存储记录(历史操作,数量,单据,价格,组织机构)
//创建记账操作记录并且记录到数据表order_log中 //创建记账操作记录并且记录到数据表order_log中
public void saveAccountingLog (OrderMainReq req,StringBuilder stringBuilder,Integer updateQuantity){ public void saveAccountingLog (UpdateOrderReq req,StringBuilder stringBuilder,Integer updateQuantity){
OrderLog orderLog = new OrderLog(); OrderLog orderLog = new OrderLog();
BeanPlusUtil.copyProperties(req,orderLog); BeanPlusUtil.copyProperties(req,orderLog);
orderLog.setId(UUID.randomUUID().toString()); orderLog.setId(UUID.randomUUID().toString());
...@@ -533,7 +526,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain ...@@ -533,7 +526,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
} }
//修改装备汇总表中的数据inventory_summary //修改装备汇总表中的数据inventory_summary
public void updateSummaryInfo(OrderMainReq req,List<OrderDetailReq> orderDetailReqList,Long orgId){ public void updateSummaryInfo(UpdateOrderReq req,List<UpdateOrderDetailReq> orderDetailReqList,Long orgId){
//根据遍历该子单据,将summary中的对应数据进行修改 //根据遍历该子单据,将summary中的对应数据进行修改
List<InventorySummary> collect = orderDetailReqList.stream() List<InventorySummary> collect = orderDetailReqList.stream()
.map(orderDetailReq -> { .map(orderDetailReq -> {
...@@ -565,8 +558,8 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain ...@@ -565,8 +558,8 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
} }
//修改仓库表中的数量汇总信息 //修改仓库表中的数量汇总信息
public void updateWarehouseInfo(OrderMainReq req,List<OrderDetailReq> orderDetailReqList,Long orgId){ public void updateWarehouseInfo(UpdateOrderReq req,List<UpdateOrderDetailReq> orderDetailReqList,Long orgId){
for (OrderDetailReq orderDetailReq:orderDetailReqList) { for (UpdateOrderDetailReq orderDetailReq:orderDetailReqList) {
Warehouse one = warehouseService.getOne(new LambdaQueryWrapper<Warehouse>() Warehouse one = warehouseService.getOne(new LambdaQueryWrapper<Warehouse>()
.eq(Warehouse::getOrgId, orgId) .eq(Warehouse::getOrgId, orgId)
.eq(Warehouse::getId, orderDetailReq.getWarehouseId())); .eq(Warehouse::getId, orderDetailReq.getWarehouseId()));
......
...@@ -13,6 +13,7 @@ import com.junmp.junmpProcess.exception.WorkFlowException; ...@@ -13,6 +13,7 @@ import com.junmp.junmpProcess.exception.WorkFlowException;
import com.junmp.junmpProcess.service.IFlowInstanceService; import com.junmp.junmpProcess.service.IFlowInstanceService;
import com.junmp.jyzb.api.bean.dto.PoliceFingerDto; import com.junmp.jyzb.api.bean.dto.PoliceFingerDto;
import com.junmp.jyzb.api.bean.dto.PolicemanDto; import com.junmp.jyzb.api.bean.dto.PolicemanDto;
import com.junmp.jyzb.api.bean.dto.UserRoleDto;
import com.junmp.jyzb.api.bean.query.CabinetReq; import com.junmp.jyzb.api.bean.query.CabinetReq;
import com.junmp.jyzb.api.bean.query.PoliceReassignmentReq; import com.junmp.jyzb.api.bean.query.PoliceReassignmentReq;
import com.junmp.jyzb.api.bean.query.PolicemanReq; import com.junmp.jyzb.api.bean.query.PolicemanReq;
...@@ -41,6 +42,7 @@ import com.junmp.v2.sys.api.bean.user.req.UserOrgReq; ...@@ -41,6 +42,7 @@ import com.junmp.v2.sys.api.bean.user.req.UserOrgReq;
import com.junmp.v2.sys.user.entity.SysUser; import com.junmp.v2.sys.user.entity.SysUser;
import com.junmp.v2.sys.user.entity.SysUserOrg; import com.junmp.v2.sys.user.entity.SysUserOrg;
import com.junmp.v2.sys.user.factory.SysUserCreateFactory; import com.junmp.v2.sys.user.factory.SysUserCreateFactory;
import com.junmp.v2.sys.user.mapper.SysUserMapper;
import com.junmp.v2.sys.user.service.SysUserOrgService; import com.junmp.v2.sys.user.service.SysUserOrgService;
import com.junmp.v2.sys.user.service.SysUserService; import com.junmp.v2.sys.user.service.SysUserService;
import liquibase.pro.packaged.L; import liquibase.pro.packaged.L;
...@@ -672,4 +674,53 @@ public class PolicemanServiceImpl extends ServiceImpl<PolicemanMapper, Policeman ...@@ -672,4 +674,53 @@ public class PolicemanServiceImpl extends ServiceImpl<PolicemanMapper, Policeman
return PageResultFactory.createPageResult(page); return PageResultFactory.createPageResult(page);
} }
//查询组织机构下的用户以及角色信息(也可以根据别的查询条件查询)
@Override
public PageResult<SysUserDto> ShowUserRole(SysUserReq req) {
Integer numRoles=0;
if (ObjectUtil.isNotNull(req.getGrantRoleIdList()) && req.getGrantRoleIdList().size() > 0){
numRoles=req.getGrantRoleIdList().size();
}
//查询出所有用户以及用户角色
List<UserRoleDto> list=policemanMapper.ShowUserRole(req,numRoles);
//将查询的条件合并(如果一用户有多个角色,那么将该用户的角色id存入列表)
List<Long> uniqueUsers = new ArrayList<>();
List<SysUserDto> sysUserDtos=new ArrayList<>();
for (UserRoleDto userRoleDto : list) {
// 初始化 uniqueUsers 列表
if (sysUserDtos.size()==0) {
SysUserDto sysUserDto = new SysUserDto();
BeanPlusUtil.copyProperties(userRoleDto,sysUserDto);
uniqueUsers.add(userRoleDto.getRoleId());
sysUserDto.setGrantRoleIdList(uniqueUsers);
sysUserDtos.add(sysUserDto);
continue;
}
boolean foundUser = false;
for (SysUserDto list1:sysUserDtos) {
//如果不存在则进行添加,如果已经存在则直接修改角色列表
if (userRoleDto.getUserId().equals(list1.getUserId())) {
uniqueUsers.add(userRoleDto.getRoleId());
list1.setGrantRoleIdList(uniqueUsers);
foundUser = true;
break;
}
}
if (!foundUser){
SysUserDto sysUserDto = new SysUserDto();
BeanPlusUtil.copyProperties(userRoleDto, sysUserDto);
uniqueUsers = new ArrayList<>();
uniqueUsers.add(userRoleDto.getRoleId());
sysUserDto.setGrantRoleIdList(uniqueUsers);
sysUserDtos.add(sysUserDto);
}
}
Page<SysUserDto> page=PageFactory.getDefaultPage(req.getPageNo(), req.getPageSize());
page.setRecords(sysUserDtos);
page.setTotal(sysUserDtos.size());
return PageResultFactory.createPageResult(page);
}
} }
...@@ -184,5 +184,63 @@ WHERE o.org_id IN ...@@ -184,5 +184,63 @@ WHERE o.org_id IN
LEFT JOIN base_cabinet b ON b.id=bc.cabinet_id LEFT JOIN base_cabinet b ON b.id=bc.cabinet_id
WHERE b.id=#{id}) and p.state=1 WHERE b.id=#{id}) and p.state=1
</select> </select>
<select id="ShowUserRole" resultType="com.junmp.jyzb.api.bean.dto.UserRoleDto">
select
s1.user_id as userId,
s1.account as account,
s1.nick_name as nickName,
s1.real_name as realName,
s1.avatar as avatar,
s1.birthday as birthday,
s1.sex as sex,
s1.email as email,
s1.phone as phone,
s1.tel as tel,
s1.status_flag as statusFlag,
s2.org_id as orgId,
s3.org_code as orgCode,
s2.position_id as positionId,
s4.role_id as roleId
from sys_user s1
left join sys_user_org s2 on s1.user_id = s2.user_id
left join pub_org s3 on s2.org_id = s3.org_id
left join sys_user_role s4 on s1.user_id=s4.user_id
<where>
<if test="null != req.realName and '' != req.realName">
and s1.real_name like concat('%',#{req.realName},'%')
</if>
<if test="null != req.account and '' != req.account">
and s1.account like concat('%',#{req.account},'%')
</if>
<if test="null != req.statusFlag and '' != req.statusFlag">
and s1.status_flag like concat('%',#{req.statusFlag},'%')
</if>
<if test="null != req.phone and '' != req.phone">
and s1.phone like concat('%',#{req.phone},'%')
</if>
<if test="null != req.sex and '' != req.sex">
and s1.sex like concat('%',#{req.sex},'%')
</if>
<if test="null != req.orgId and '' != req.orgId">
and s2.org_id = #{req.orgId}
</if>
AND EXISTS (
SELECT 1 FROM sys_user_role s5 WHERE s5.user_id = s1.user_id
<if test="null != req.grantRoleIdList and req.grantRoleIdList.size() > 0">
AND (
SELECT COUNT(*)
FROM sys_user_role s5
WHERE s5.user_id = s1.user_id
AND s5.role_id IN
<foreach collection="req.grantRoleIdList" item="roleId" open="(" separator="," close=")">
#{roleId}
</foreach>
) = #{numRoles}
</if>
)
and s1.del_flag = 0
order by s1.create_time desc
</where>
</select>
</mapper> </mapper>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论