|
|
@@ -13,6 +13,7 @@ import org.springblade.core.secure.utils.AuthUtil;
|
|
|
import org.springblade.core.secure.utils.SecureUtil;
|
|
|
import org.springblade.core.tenant.annotation.NonDS;
|
|
|
import org.springblade.core.tool.api.R;
|
|
|
+import org.springblade.core.tool.utils.CollectionUtil;
|
|
|
import org.springblade.project.entity.ServiceProject;
|
|
|
|
|
|
import org.springblade.project.entity.ServiceProjectFiles;
|
|
|
@@ -67,6 +68,7 @@ public class ProjectController {
|
|
|
@RequestParam(name = "code", required = false) String code,
|
|
|
@RequestParam(name = "cname", required = false) String cName,
|
|
|
@RequestParam(name = "corpId", required = false) String corpId,
|
|
|
+ @RequestParam(name = "corpName", required = false) String corpName,
|
|
|
@RequestParam(name = "corpAttn", required = false) String corpAttn,
|
|
|
@RequestParam(name = "dutyName", required = false) String dutyName,
|
|
|
@RequestParam(name = "remark", required = false) String remark,
|
|
|
@@ -76,28 +78,33 @@ public class ProjectController {
|
|
|
)
|
|
|
{
|
|
|
LambdaQueryWrapper<ServiceProject> serviceProjectLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
- //只显示未结算的
|
|
|
- if(flag==2)
|
|
|
+ //只显示未结算的
|
|
|
+ if(flag==2)
|
|
|
+ {
|
|
|
+ LambdaQueryWrapper<ServiceProjectItem> lambdaQueryWrapper=new LambdaQueryWrapper<>();
|
|
|
+ lambdaQueryWrapper
|
|
|
+ .eq(ServiceProjectItem::getStatus,0)
|
|
|
+ .eq(ServiceProjectItem::getIsDeleted,0);
|
|
|
+ List<ServiceProjectItem> list = serviceProjectItemService.list(lambdaQueryWrapper);
|
|
|
+ //如果等于空,直接返回
|
|
|
+ if(CollectionUtils.isEmpty(list))
|
|
|
{
|
|
|
- LambdaQueryWrapper<ServiceProjectItem> lambdaQueryWrapper=new LambdaQueryWrapper<>();
|
|
|
- lambdaQueryWrapper
|
|
|
- .eq(ServiceProjectItem::getStatus,0)
|
|
|
- .eq(ServiceProjectItem::getIsDeleted,0);
|
|
|
- List<ServiceProjectItem> list = serviceProjectItemService.list(lambdaQueryWrapper);
|
|
|
- //如果等于空,直接返回
|
|
|
- if(CollectionUtils.isEmpty(list))
|
|
|
- {
|
|
|
- return R.data(null);
|
|
|
- }
|
|
|
- //不为空
|
|
|
- else
|
|
|
- {
|
|
|
- List<Long> ids = list.stream().map(ServiceProjectItem::getPId).collect(Collectors.toList());
|
|
|
- serviceProjectLambdaQueryWrapper.in(ServiceProject::getId,ids);
|
|
|
- }
|
|
|
-
|
|
|
+ return R.data(null);
|
|
|
+ }
|
|
|
+ //不为空
|
|
|
+ else
|
|
|
+ {
|
|
|
+ List<Long> ids = list.stream().map(ServiceProjectItem::getPId).collect(Collectors.toList());
|
|
|
+ serviceProjectLambdaQueryWrapper.in(ServiceProject::getId,ids);
|
|
|
}
|
|
|
|
|
|
+ }
|
|
|
+
|
|
|
+ List<Long> corpIdList = Collections.emptyList();
|
|
|
+ if (StringUtils.isNotBlank(corpName))
|
|
|
+ {
|
|
|
+ corpIdList = corpsDescClient.listCorpIdByName(corpName);
|
|
|
+ }
|
|
|
|
|
|
serviceProjectLambdaQueryWrapper.between(StringUtils.isNotBlank(createStartDate)&&StringUtils.isNotBlank(createEndDate),ServiceProject::getCreateTime,createStartDate,createEndDate)
|
|
|
.eq(ServiceProject::getTenantId, AuthUtil.getTenantId())
|
|
|
@@ -107,6 +114,7 @@ public class ProjectController {
|
|
|
.like(StringUtils.isNotBlank(cName), ServiceProject::getCName, cName)
|
|
|
.like(StringUtils.isNotBlank(code), ServiceProject::getCode, code)
|
|
|
.eq(StringUtils.isNotBlank(corpId), ServiceProject::getCorpId, corpId)
|
|
|
+ .in(CollectionUtil.isNotEmpty(corpIdList), ServiceProject::getCorpId, corpIdList)
|
|
|
.eq(ServiceProject::getIsDeleted, 0)
|
|
|
.orderByDesc(ServiceProject::getCreateTime);
|
|
|
|
|
|
@@ -293,6 +301,7 @@ public class ProjectController {
|
|
|
@RequestParam(name = "beginTime", required = false) String beginTime,
|
|
|
|
|
|
@RequestParam(name = "cornId", required = false) Long cornId,
|
|
|
+ @RequestParam(name = "corpName", required = false) String corpName,
|
|
|
@RequestParam(name = "deptName", required = false) String deptName,
|
|
|
|
|
|
|
|
|
@@ -311,82 +320,92 @@ public class ProjectController {
|
|
|
{
|
|
|
List<String> listStatus=Arrays.asList(status.split(","));
|
|
|
|
|
|
- LambdaQueryWrapper<ServiceProjectItem> itemLambdaQueryWrapper=new LambdaQueryWrapper<>();
|
|
|
- itemLambdaQueryWrapper
|
|
|
- .eq(projectType!=null,ServiceProjectItem::getProjectType,projectType)
|
|
|
- .eq(StringUtils.isNotBlank(userName),ServiceProjectItem::getUserName,userName)
|
|
|
- .eq(ServiceProjectItem::getTenantId,AuthUtil.getTenantId())
|
|
|
- .between(StringUtils.isNotBlank(beginStartTime)&&StringUtils.isNotBlank(beginEndTime),ServiceProjectItem::getBeginTime,beginStartTime,beginEndTime)
|
|
|
- .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)
|
|
|
- .apply(StringUtils.isNotBlank(beginTime),"date_format(begin_time,'%Y-%m-%d') = '"+beginTime+"'")
|
|
|
- .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(ServiceProjectItem::getIsDeleted,0)*/
|
|
|
- .in(ServiceProjectItem::getStatus,listStatus);
|
|
|
- Page<ServiceProjectItem> page=new Page<>(current,size);
|
|
|
- IPage<ServiceProjectItem> iPage = serviceProjectItemService.page(page, itemLambdaQueryWrapper);
|
|
|
- if(!CollectionUtils.isEmpty(iPage.getRecords()))
|
|
|
- {
|
|
|
- String[] str = new String[]{"录入","已请核","审核中","审核通过","正在结算","结算完成","","追加","退费"};
|
|
|
- iPage.getRecords().forEach(e->{
|
|
|
- e.setStrStatus(str[e.getStatus()]);
|
|
|
- Long corpId = serviceProjectService.getOne(new LambdaQueryWrapper<ServiceProject>()
|
|
|
- .eq(ServiceProject::getId,e.getPId())).getCorpId();
|
|
|
- e.setCornId(corpId);
|
|
|
- R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(corpId);
|
|
|
- if(corpMessage.isSuccess()&&corpMessage.getData()!=null)
|
|
|
- {
|
|
|
- e.setCornName(corpMessage.getData().getCname());
|
|
|
- }
|
|
|
- //任务部门
|
|
|
- R<Dept> dept = iSysClient.getDept(e.getDeptid());
|
|
|
- if(dept.isSuccess()&&dept.getData()!=null)
|
|
|
- {
|
|
|
- e.setDeptName(dept.getData().getDeptName());
|
|
|
- }
|
|
|
- //承做人
|
|
|
-
|
|
|
- /* R<User> userR = userClient.userInfoById(e.getUserid());
|
|
|
- if(userR.isSuccess())
|
|
|
- {
|
|
|
- e.setUserName(userR.getData().getRealName());
|
|
|
- }*/
|
|
|
- //毛收入
|
|
|
- e.setGrossIncome((e.getServiceCharge().add(e.getMatMoney())).subtract(e.getCostReturn()));
|
|
|
- });
|
|
|
+ LambdaQueryWrapper<ServiceProjectItem> itemLambdaQueryWrapper=new LambdaQueryWrapper<>();
|
|
|
+ itemLambdaQueryWrapper
|
|
|
+ .eq(projectType!=null,ServiceProjectItem::getProjectType,projectType)
|
|
|
+ .eq(StringUtils.isNotBlank(userName),ServiceProjectItem::getUserName,userName)
|
|
|
+ .eq(ServiceProjectItem::getTenantId,AuthUtil.getTenantId())
|
|
|
+ .between(StringUtils.isNotBlank(beginStartTime)&&StringUtils.isNotBlank(beginEndTime),ServiceProjectItem::getBeginTime,beginStartTime,beginEndTime)
|
|
|
+ .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)
|
|
|
+ .apply(StringUtils.isNotBlank(beginTime),"date_format(begin_time,'%Y-%m-%d') = '"+beginTime+"'")
|
|
|
+ .apply(StringUtils.isNotBlank(actualDate),"date_format(actual_date,'%Y-%m-%d') = '"+actualDate+"'");
|
|
|
+
|
|
|
+ LambdaQueryWrapper<ServiceProject> lambdaQueryWrapper=new LambdaQueryWrapper<>();
|
|
|
+ //客户名称
|
|
|
+ if(cornId!=null)
|
|
|
+ {
|
|
|
+ lambdaQueryWrapper.eq(ServiceProject::getCorpId,cornId);
|
|
|
+ List<ServiceProject> list = serviceProjectService.list(lambdaQueryWrapper);
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotBlank(corpName))
|
|
|
+ {
|
|
|
+ List<Long> corpIdList = corpsDescClient.listCorpIdByName(corpName);
|
|
|
+ lambdaQueryWrapper.in(CollectionUtil.isNotEmpty(corpIdList), ServiceProject::getCorpId, corpIdList);
|
|
|
|
|
|
- }
|
|
|
- return R.data(iPage);
|
|
|
+ }
|
|
|
+ if(cornId!=null || StringUtils.isNotBlank(corpName))
|
|
|
+ {
|
|
|
+ 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(ServiceProjectItem::getIsDeleted,0) */
|
|
|
+ .in(ServiceProjectItem::getStatus,listStatus);
|
|
|
+ Page<ServiceProjectItem> page=new Page<>(current,size);
|
|
|
+ IPage<ServiceProjectItem> iPage = serviceProjectItemService.page(page, itemLambdaQueryWrapper);
|
|
|
+ if(!CollectionUtils.isEmpty(iPage.getRecords()))
|
|
|
+ {
|
|
|
+ String[] str = new String[]{"录入","已请核","审核中","审核通过","正在结算","结算完成","","追加","退费"};
|
|
|
+ iPage.getRecords().forEach(e->{
|
|
|
+ e.setStrStatus(str[e.getStatus()]);
|
|
|
+ Long corpId = serviceProjectService.getOne(new LambdaQueryWrapper<ServiceProject>()
|
|
|
+ .eq(ServiceProject::getId,e.getPId())).getCorpId();
|
|
|
+ e.setCornId(corpId);
|
|
|
+ R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(corpId);
|
|
|
+ if(corpMessage.isSuccess()&&corpMessage.getData()!=null)
|
|
|
+ {
|
|
|
+ e.setCornName(corpMessage.getData().getCname());
|
|
|
+ }
|
|
|
+ //任务部门
|
|
|
+ R<Dept> dept = iSysClient.getDept(e.getDeptid());
|
|
|
+ if(dept.isSuccess()&&dept.getData()!=null)
|
|
|
+ {
|
|
|
+ e.setDeptName(dept.getData().getDeptName());
|
|
|
+ }
|
|
|
+ //承做人
|
|
|
+
|
|
|
+ /* R<User> userR = userClient.userInfoById(e.getUserid());
|
|
|
+ if(userR.isSuccess())
|
|
|
+ {
|
|
|
+ e.setUserName(userR.getData().getRealName());
|
|
|
+ }*/
|
|
|
+ //毛收入
|
|
|
+ e.setGrossIncome((e.getServiceCharge().add(e.getMatMoney())).subtract(e.getCostReturn()));
|
|
|
+ });
|
|
|
+
|
|
|
+ }
|
|
|
+ return R.data(iPage);
|
|
|
}
|
|
|
|
|
|
@GetMapping("getSysNo")
|