|
@@ -2,6 +2,7 @@ package org.springblade.project.controller;
|
|
|
|
|
|
|
|
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.obs.services.internal.security.EcsSecurityUtils;
|
|
|
import lombok.AllArgsConstructor;
|
|
import lombok.AllArgsConstructor;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
import org.springblade.client.entity.CorpsDesc;
|
|
import org.springblade.client.entity.CorpsDesc;
|
|
@@ -18,6 +19,8 @@ import org.springblade.project.entity.ServiceProjectItem;
|
|
|
import org.springblade.project.service.ServiceProjectFilesService;
|
|
import org.springblade.project.service.ServiceProjectFilesService;
|
|
|
import org.springblade.project.service.ServiceProjectItemService;
|
|
import org.springblade.project.service.ServiceProjectItemService;
|
|
|
import org.springblade.project.service.ServiceProjectService;
|
|
import org.springblade.project.service.ServiceProjectService;
|
|
|
|
|
+import org.springblade.system.entity.Dept;
|
|
|
|
|
+import org.springblade.system.feign.ISysClient;
|
|
|
import org.springblade.system.user.entity.User;
|
|
import org.springblade.system.user.entity.User;
|
|
|
import org.springblade.system.user.feign.IUserClient;
|
|
import org.springblade.system.user.feign.IUserClient;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -25,10 +28,10 @@ import org.springframework.util.CollectionUtils;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
import springfox.documentation.annotations.ApiIgnore;
|
|
import springfox.documentation.annotations.ApiIgnore;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
-import java.util.Arrays;
|
|
|
|
|
-import java.util.Date;
|
|
|
|
|
-import java.util.List;
|
|
|
|
|
-import java.util.Map;
|
|
|
|
|
|
|
+
|
|
|
|
|
+import javax.management.relation.RoleResult;
|
|
|
|
|
+import java.security.Security;
|
|
|
|
|
+import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
@NonDS
|
|
@NonDS
|
|
@@ -47,6 +50,9 @@ public class ProjectController {
|
|
|
private IUserClient userClient;
|
|
private IUserClient userClient;
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private ICorpsDescClient corpsDescClient;//获取客户信息
|
|
private ICorpsDescClient corpsDescClient;//获取客户信息
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private ISysClient iSysClient;//部门
|
|
|
|
|
+
|
|
|
|
|
|
|
|
@GetMapping("/list")
|
|
@GetMapping("/list")
|
|
|
public R<IPage<?>> list(@RequestParam(name = "current", defaultValue = "1") Integer current,
|
|
public R<IPage<?>> list(@RequestParam(name = "current", defaultValue = "1") Integer current,
|
|
@@ -120,8 +126,10 @@ public class ProjectController {
|
|
|
@DeleteMapping("delete")
|
|
@DeleteMapping("delete")
|
|
|
public R delete (@RequestParam(name = "id", required = true) Long id)
|
|
public R delete (@RequestParam(name = "id", required = true) Long id)
|
|
|
{
|
|
{
|
|
|
- List<Long> ids= Arrays.asList(id);
|
|
|
|
|
- serviceProjectService.deleteLogic(ids);
|
|
|
|
|
|
|
+ ServiceProject serviceProject=new ServiceProject();
|
|
|
|
|
+ serviceProject.setId(id);
|
|
|
|
|
+ serviceProject.setIsDeleted(1);
|
|
|
|
|
+ serviceProjectService.updateById(serviceProject);
|
|
|
return R.success("删除成功");
|
|
return R.success("删除成功");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -184,23 +192,60 @@ public class ProjectController {
|
|
|
@RequestParam(name = "size", defaultValue = "10") Integer size,
|
|
@RequestParam(name = "size", defaultValue = "10") Integer size,
|
|
|
@RequestParam(name = "pname", required = false) String pName,
|
|
@RequestParam(name = "pname", required = false) String pName,
|
|
|
@RequestParam(name = "beginTime", required = false) String beginTime,
|
|
@RequestParam(name = "beginTime", required = false) String beginTime,
|
|
|
|
|
+
|
|
|
|
|
+ @RequestParam(name = "cornId", required = false) Long cornId,
|
|
|
|
|
+ @RequestParam(name = "deptName", required = false) String deptName,
|
|
|
|
|
+
|
|
|
@RequestParam(name = "actualDate", required = false) String actualDate,
|
|
@RequestParam(name = "actualDate", required = false) String actualDate,
|
|
|
|
|
+ @RequestParam(name = "userName", required = false) String userName,
|
|
|
@RequestParam(name = "deptid", required = false) Long deptid,
|
|
@RequestParam(name = "deptid", required = false) Long deptid,
|
|
|
- @RequestParam(name = "status", required = true) String status
|
|
|
|
|
|
|
+ @RequestParam(name = "status", required = true) String status,
|
|
|
|
|
+ @RequestParam(name = "payStartTime", required = false) String payStartTime,
|
|
|
|
|
+ @RequestParam(name = "payEndTime", required = false) String payEndTime,
|
|
|
|
|
+ @RequestParam(name = "createStartTime", required = false) String createStartTime,
|
|
|
|
|
+ @RequestParam(name = "createEndTime", required = false) String createEndTime
|
|
|
)
|
|
)
|
|
|
{
|
|
{
|
|
|
-
|
|
|
|
|
- List<String> listStatus=Arrays.asList(status.split(","));
|
|
|
|
|
|
|
+ List<String> listStatus=Arrays.asList(status.split(","));
|
|
|
|
|
|
|
|
LambdaQueryWrapper<ServiceProjectItem> itemLambdaQueryWrapper=new LambdaQueryWrapper<>();
|
|
LambdaQueryWrapper<ServiceProjectItem> itemLambdaQueryWrapper=new LambdaQueryWrapper<>();
|
|
|
itemLambdaQueryWrapper
|
|
itemLambdaQueryWrapper
|
|
|
.eq(ServiceProjectItem::getTenantId,AuthUtil.getTenantId())
|
|
.eq(ServiceProjectItem::getTenantId,AuthUtil.getTenantId())
|
|
|
|
|
+ .between(StringUtils.isNotBlank(createStartTime)&&StringUtils.isNotBlank(createEndTime),ServiceProjectItem::getCreateTime,createStartTime,createEndTime)
|
|
|
|
|
+ .between(StringUtils.isNotBlank(payStartTime)&&StringUtils.isNotBlank(payEndTime),ServiceProjectItem::getPayTime,payStartTime,payEndTime)
|
|
|
.like(StringUtils.isNotBlank(pName),ServiceProjectItem::getPName,pName)
|
|
.like(StringUtils.isNotBlank(pName),ServiceProjectItem::getPName,pName)
|
|
|
.apply(StringUtils.isNotBlank(beginTime),"date_format(begin_time,'%Y-%m-%d') = '"+beginTime+"'")
|
|
.apply(StringUtils.isNotBlank(beginTime),"date_format(begin_time,'%Y-%m-%d') = '"+beginTime+"'")
|
|
|
- .apply(StringUtils.isNotBlank(actualDate),"date_format(actual_date,'%Y-%m-%d') = '"+actualDate+"'")
|
|
|
|
|
- .eq(ServiceProjectItem::getUserid,SecureUtil.getUserId())
|
|
|
|
|
- .orderByDesc(ServiceProjectItem::getUpdateTime)
|
|
|
|
|
|
|
+ .apply(StringUtils.isNotBlank(actualDate),"date_format(actual_date,'%Y-%m-%d') = '"+actualDate+"'");
|
|
|
|
|
+
|
|
|
|
|
+ //客户名称
|
|
|
|
|
+ if(cornId!=null)
|
|
|
|
|
+ {
|
|
|
|
|
+ LambdaQueryWrapper<ServiceProject> lambdaQueryWrapper=new LambdaQueryWrapper<>();
|
|
|
|
|
+ lambdaQueryWrapper.eq(ServiceProject::getCorpId,cornId);
|
|
|
|
|
+ List<ServiceProject> list = serviceProjectService.list(lambdaQueryWrapper);
|
|
|
|
|
+ if(!CollectionUtils.isEmpty(list))
|
|
|
|
|
+ {
|
|
|
|
|
+ itemLambdaQueryWrapper.in(ServiceProjectItem::getPId,list.stream().map(ServiceProject::getId).collect(Collectors.toList()));
|
|
|
|
|
+ }
|
|
|
|
|
+ else
|
|
|
|
|
+ {
|
|
|
|
|
+ return R.data(Collections.EMPTY_LIST);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ // 承做人
|
|
|
|
|
+ /* if(!CollectionUtils.isEmpty(users))
|
|
|
|
|
+ {
|
|
|
|
|
+ List<Long> userIds = users.stream().map(User::getId).collect(Collectors.toList());
|
|
|
|
|
+ itemLambdaQueryWrapper .in(ServiceProjectItem::getUserid,userIds);
|
|
|
|
|
+ }
|
|
|
|
|
+ else
|
|
|
|
|
+ {
|
|
|
|
|
+ return R.data(Collections.EMPTY_LIST);
|
|
|
|
|
+ }*/
|
|
|
|
|
+ itemLambdaQueryWrapper.orderByDesc(ServiceProjectItem::getUpdateTime)
|
|
|
.eq(deptid!=null,ServiceProjectItem::getDeptid,deptid)
|
|
.eq(deptid!=null,ServiceProjectItem::getDeptid,deptid)
|
|
|
|
|
+ /*.eq(ServiceProjectItem::getIsDeleted,0)*/
|
|
|
.in(ServiceProjectItem::getStatus,listStatus);
|
|
.in(ServiceProjectItem::getStatus,listStatus);
|
|
|
Page<ServiceProjectItem> page=new Page<>(current,size);
|
|
Page<ServiceProjectItem> page=new Page<>(current,size);
|
|
|
IPage<ServiceProjectItem> iPage = serviceProjectItemService.page(page, itemLambdaQueryWrapper);
|
|
IPage<ServiceProjectItem> iPage = serviceProjectItemService.page(page, itemLambdaQueryWrapper);
|
|
@@ -209,13 +254,27 @@ public class ProjectController {
|
|
|
String[] str = new String[]{"录入","已请核","审核中","审核通过","正在结算","结算完成"};
|
|
String[] str = new String[]{"录入","已请核","审核中","审核通过","正在结算","结算完成"};
|
|
|
iPage.getRecords().forEach(e->{
|
|
iPage.getRecords().forEach(e->{
|
|
|
e.setStrStatus(str[e.getStatus()]);
|
|
e.setStrStatus(str[e.getStatus()]);
|
|
|
- Long corpId = serviceProjectService.getById(e.getPId()).getCorpId();
|
|
|
|
|
|
|
+ Long corpId = serviceProjectService.getOne(new LambdaQueryWrapper<ServiceProject>()
|
|
|
|
|
+ .eq(ServiceProject::getId,e.getPId())).getCorpId();
|
|
|
|
|
+
|
|
|
R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(corpId);
|
|
R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(corpId);
|
|
|
if(corpMessage.isSuccess())
|
|
if(corpMessage.isSuccess())
|
|
|
{
|
|
{
|
|
|
e.setCornName(corpMessage.getData().getCname());
|
|
e.setCornName(corpMessage.getData().getCname());
|
|
|
}
|
|
}
|
|
|
|
|
+ //任务部门
|
|
|
|
|
+ R<Dept> dept = iSysClient.getDept(e.getDeptid());
|
|
|
|
|
+ if(dept.isSuccess())
|
|
|
|
|
+ {
|
|
|
|
|
+ e.setDeptName(dept.getData().getDeptName());
|
|
|
|
|
+ }
|
|
|
|
|
+ //承做人
|
|
|
|
|
|
|
|
|
|
+ R<User> userR = userClient.userInfoById(e.getUserid());
|
|
|
|
|
+ if(userR.isSuccess())
|
|
|
|
|
+ {
|
|
|
|
|
+ e.setUserName(userR.getData().getRealName());
|
|
|
|
|
+ }
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
return R.data(iPage);
|
|
return R.data(iPage);
|