|
@@ -83,7 +83,9 @@ public class SalesOrderServiceImpl extends ServiceImpl<SalesOrderMapper, SalesOr
|
|
|
private String path;
|
|
|
|
|
|
@Override
|
|
|
- public HttpRespMsg getList(String userId, String orderName,String orderCode, String productCode, Integer pageIndex, Integer pageSize,Integer isDelete) {
|
|
|
+ public HttpRespMsg getList(String inchargerId,Integer orderType, String orderName,
|
|
|
+ String orderCode,Integer customId,String businessName,
|
|
|
+ Integer receivedStatus,String startDate,String endDate, String productCode, Integer pageIndex, Integer pageSize,Integer isDelete) {
|
|
|
HttpRespMsg msg=new HttpRespMsg();
|
|
|
User user = userMapper.selectById(request.getHeader("token"));
|
|
|
List<Department> departments = departmentMapper.selectList(new LambdaQueryWrapper<Department>().eq(Department::getCompanyId, user.getCompanyId()));
|
|
@@ -92,6 +94,7 @@ public class SalesOrderServiceImpl extends ServiceImpl<SalesOrderMapper, SalesOr
|
|
|
List<User> userList = userMapper.selectList(new LambdaQueryWrapper<User>().eq(User::getCompanyId, user.getCompanyId()));
|
|
|
List<SysDict> sysDictOfOrderType = sysDictMapper.selectList(new LambdaQueryWrapper<SysDict>().eq(SysDict::getCompanyId, user.getCompanyId()).eq(SysDict::getCode, "OrderType"));
|
|
|
LambdaQueryWrapper<SalesOrder> orderLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ List<Custom> customList = customService.list(new LambdaQueryWrapper<Custom>().eq(Custom::getCompanyId, user.getCompanyId()));
|
|
|
orderLambdaQueryWrapper.eq(SalesOrder::getCompanyId,user.getCompanyId());
|
|
|
if(isDelete!=null){
|
|
|
orderLambdaQueryWrapper.eq(SalesOrder::getIsDelete,isDelete);
|
|
@@ -130,6 +133,30 @@ public class SalesOrderServiceImpl extends ServiceImpl<SalesOrderMapper, SalesOr
|
|
|
orderLambdaQueryWrapper.in(SalesOrder::getCreatorId,userIds);
|
|
|
}
|
|
|
}
|
|
|
+ if (!StringUtils.isEmpty(inchargerId)){
|
|
|
+ orderLambdaQueryWrapper.eq(SalesOrder::getInchargerId,inchargerId);
|
|
|
+ }
|
|
|
+ if(orderType!=null){
|
|
|
+ orderLambdaQueryWrapper.eq(SalesOrder::getType,orderType);
|
|
|
+ }
|
|
|
+ if(customId!=null){
|
|
|
+ orderLambdaQueryWrapper.eq(SalesOrder::getCustomId,customId);
|
|
|
+ }
|
|
|
+ if(!StringUtils.isEmpty(businessName)){
|
|
|
+ orderLambdaQueryWrapper.inSql(SalesOrder::getBusinessOpportunityId,"select id from business_opportunity where name like '%"+businessName+"%'");
|
|
|
+ }
|
|
|
+ if(receivedStatus!=null){
|
|
|
+ if(receivedStatus==1){
|
|
|
+ //回款金额不为空 切大于0 作为已回款状态
|
|
|
+ orderLambdaQueryWrapper.and(wrapper->wrapper.isNotNull(SalesOrder::getReceivedPayment).gt(SalesOrder::getReceivedPayment,0));
|
|
|
+ }else {
|
|
|
+ //回款金额为空 或者等于0 作为未回款状态
|
|
|
+ orderLambdaQueryWrapper.and(wrapper->wrapper.isNull(SalesOrder::getReceivedPayment).or().eq(SalesOrder::getReceivedPayment,0));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(!StringUtils.isEmpty(startDate)&&!StringUtils.isEmpty(endDate)){
|
|
|
+ orderLambdaQueryWrapper.lt(SalesOrder::getOrderStartDate,endDate).gt(SalesOrder::getOrderEndDate,startDate);
|
|
|
+ }
|
|
|
if(!StringUtils.isEmpty(orderName)){
|
|
|
orderLambdaQueryWrapper.like(SalesOrder::getOrderName,orderName);
|
|
|
}
|
|
@@ -150,12 +177,20 @@ public class SalesOrderServiceImpl extends ServiceImpl<SalesOrderMapper, SalesOr
|
|
|
records.forEach(r->{
|
|
|
Optional<User> item = userList.stream().filter(u -> u.getId().equals(r.getCreatorId())).findFirst();
|
|
|
if(item.isPresent()){
|
|
|
- r.setInchargerName(item.get().getName());
|
|
|
+ r.setCreatorName(item.get().getName());
|
|
|
}
|
|
|
- Optional<SysDict> type = sysDictOfOrderType.stream().filter(u -> u.getId().equals(r.getCreatorId())).findFirst();
|
|
|
+ Optional<User> incharger = userList.stream().filter(u -> u.getId().equals(r.getInchargerId())).findFirst();
|
|
|
+ if(incharger.isPresent()){
|
|
|
+ r.setInchargerName(incharger.get().getName());
|
|
|
+ }
|
|
|
+ Optional<SysDict> type = sysDictOfOrderType.stream().filter(s -> s.getId().equals(r.getType())).findFirst();
|
|
|
if(type.isPresent()){
|
|
|
r.setTypeName(type.get().getName());
|
|
|
}
|
|
|
+ Optional<Custom> custom = customList.stream().filter(c -> c.getId().equals(r.getCustomId())).findFirst();
|
|
|
+ if(custom.isPresent()){
|
|
|
+ r.setCustomName(custom.get().getCustomName());
|
|
|
+ }
|
|
|
});
|
|
|
Map map=new HashMap();
|
|
|
map.put("record",records);
|
|
@@ -351,7 +386,7 @@ public class SalesOrderServiceImpl extends ServiceImpl<SalesOrderMapper, SalesOr
|
|
|
titleList.add(item.getString("label"));
|
|
|
}
|
|
|
dataList.add(titleList);
|
|
|
- HttpRespMsg respMsg = getList( userId, orderName,orderCode, productCode, null, null,0);
|
|
|
+ HttpRespMsg respMsg = getList( userId,null, orderName,orderCode,null,null,null,null,null,productCode, null,null,0);
|
|
|
Map<String, Object> msgData = (Map<String, Object>) respMsg.getData();
|
|
|
List<Product> productList = (List<Product>) msgData.get("record");
|
|
|
for (Product product : productList) {
|