Commit e082e8a5 authored by danfuman's avatar danfuman

Merge branch 'V20231129-中建一局二公司' of http://192.168.60.201/root/dsk-operate-sys...

Merge branch 'V20231129-中建一局二公司' of http://192.168.60.201/root/dsk-operate-sys into V20231129-中建一局二公司
parents 76f08c3c 4630083b
...@@ -9,6 +9,7 @@ import cn.hutool.core.lang.tree.Tree; ...@@ -9,6 +9,7 @@ import cn.hutool.core.lang.tree.Tree;
import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.dsk.common.annotation.Log; import com.dsk.common.annotation.Log;
import com.dsk.common.annotation.RepeatSubmit;
import com.dsk.common.constant.GlobalConstants; import com.dsk.common.constant.GlobalConstants;
import com.dsk.common.constant.TenantConstants; import com.dsk.common.constant.TenantConstants;
import com.dsk.common.core.controller.BaseController; import com.dsk.common.core.controller.BaseController;
...@@ -187,6 +188,7 @@ public class SysUserController extends BaseController { ...@@ -187,6 +188,7 @@ public class SysUserController extends BaseController {
/** /**
* 新增用户 * 新增用户
*/ */
@RepeatSubmit
@SaCheckPermission("system:user:add") @SaCheckPermission("system:user:add")
@Log(title = "用户管理", businessType = BusinessType.INSERT) @Log(title = "用户管理", businessType = BusinessType.INSERT)
@PostMapping @PostMapping
......
...@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -5,6 +5,7 @@ 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.dsk.cscec.domain.DSubcontract; import com.dsk.cscec.domain.DSubcontract;
import com.dsk.cscec.domain.vo.DCustomerListVo;
import com.dsk.cscec.domain.bo.CustomerCooperationBo; import com.dsk.cscec.domain.bo.CustomerCooperationBo;
import com.dsk.cscec.domain.vo.CustomerCooperationVo; import com.dsk.cscec.domain.vo.CustomerCooperationVo;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -21,7 +22,9 @@ public interface DSubcontractMapper extends BaseMapper<DSubcontract> { ...@@ -21,7 +22,9 @@ public interface DSubcontractMapper extends BaseMapper<DSubcontract> {
Integer selectProjectCountByCustomerId(String customerId); Integer selectProjectCountByCustomerId(String customerId);
/** DCustomerListVo selectStatisticByCustomerId(String customerId);
/**
* 供应商合作记录 * 供应商合作记录
* @param build * @param build
* @param bo * @param bo
......
...@@ -11,6 +11,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -11,6 +11,7 @@ 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.dsk.common.core.domain.PageQuery; import com.dsk.common.core.domain.PageQuery;
import com.dsk.common.core.page.TableDataInfo; import com.dsk.common.core.page.TableDataInfo;
import com.dsk.common.utils.StringUtils;
import com.dsk.cscec.constant.QueryConstants; import com.dsk.cscec.constant.QueryConstants;
import com.dsk.cscec.domain.DCustomer; import com.dsk.cscec.domain.DCustomer;
import com.dsk.cscec.domain.bo.AdvisoryBodyBo; import com.dsk.cscec.domain.bo.AdvisoryBodyBo;
...@@ -69,6 +70,14 @@ public class CustomerInfoServiceImpl extends ServiceImpl<DCustomerMapper, DCusto ...@@ -69,6 +70,14 @@ public class CustomerInfoServiceImpl extends ServiceImpl<DCustomerMapper, DCusto
item.setEnterpriseCooperationCount(subcontractMapper.selectEnterpriseCountByCustomerId(item.getCustomerId())); item.setEnterpriseCooperationCount(subcontractMapper.selectEnterpriseCountByCustomerId(item.getCustomerId()));
//项目合作数量 //项目合作数量
item.setProjectCooperationCount(subcontractMapper.selectProjectCountByCustomerId(item.getCustomerId())); item.setProjectCooperationCount(subcontractMapper.selectProjectCountByCustomerId(item.getCustomerId()));
//关键字标红
if(!ObjectUtils.isEmpty(bo.getCustomerName())){
item.setCustomerName(StringUtils.markInRed(item.getCustomerName(), bo.getCustomerName()));
}
//关键字标红
if(!ObjectUtils.isEmpty(bo.getLeaderName())){
item.setCustomerName(StringUtils.markInRed(item.getLeaderName(), bo.getLeaderName()));
}
try { try {
Map<String, Object> map = opportunityRadarService.enterpriseByName(item.getCustomerName()); Map<String, Object> map = opportunityRadarService.enterpriseByName(item.getCustomerName());
if (!ObjectUtils.isEmpty(map.get("data"))) { if (!ObjectUtils.isEmpty(map.get("data"))) {
......
...@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -7,6 +7,7 @@ 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.dsk.common.core.domain.PageQuery; import com.dsk.common.core.domain.PageQuery;
import com.dsk.common.core.page.TableDataInfo; import com.dsk.common.core.page.TableDataInfo;
import com.dsk.common.utils.StringUtils;
import com.dsk.cscec.domain.DCustomer; import com.dsk.cscec.domain.DCustomer;
import com.dsk.cscec.domain.bo.DCustomerSearchBo; import com.dsk.cscec.domain.bo.DCustomerSearchBo;
import com.dsk.cscec.domain.vo.DCustomerListVo; import com.dsk.cscec.domain.vo.DCustomerListVo;
...@@ -44,11 +45,17 @@ public class DCustomerServiceImpl extends ServiceImpl<DCustomerMapper, DCustomer ...@@ -44,11 +45,17 @@ public class DCustomerServiceImpl extends ServiceImpl<DCustomerMapper, DCustomer
dealWithCustomerClass(bo); dealWithCustomerClass(bo);
Page<DCustomerListVo> page = baseMapper.allSearchList(query.build(), bo); Page<DCustomerListVo> page = baseMapper.allSearchList(query.build(), bo);
if (CollectionUtils.isNotEmpty(page.getRecords())) { if (CollectionUtils.isNotEmpty(page.getRecords())) {
page.getRecords().parallelStream().forEach(item->{ page.getRecords().parallelStream().forEach(item -> {
DCustomerListVo vo = subcontractMapper.selectStatisticByCustomerId(item.getCustomerId());
//企业合作数量 //企业合作数量
item.setEnterpriseCooperationCount(subcontractMapper.selectEnterpriseCountByCustomerId(item.getCustomerId())); item.setEnterpriseCooperationCount(vo.getEnterpriseCooperationCount());
//项目合作数量 //项目合作数量
item.setProjectCooperationCount(subcontractMapper.selectProjectCountByCustomerId(item.getCustomerId())); item.setProjectCooperationCount(vo.getProjectCooperationCount());
showCustomerClass(item);
//关键字标红
if (!ObjectUtils.isEmpty(bo.getCustomerName())) {
item.setCustomerName(StringUtils.markInRed(item.getCustomerName(), bo.getCustomerName()));
}
try { try {
Map<String, Object> map = opportunityRadarService.enterpriseByName(item.getCustomerName()); Map<String, Object> map = opportunityRadarService.enterpriseByName(item.getCustomerName());
if (!ObjectUtils.isEmpty(map.get("data"))) { if (!ObjectUtils.isEmpty(map.get("data"))) {
...@@ -56,7 +63,7 @@ public class DCustomerServiceImpl extends ServiceImpl<DCustomerMapper, DCustomer ...@@ -56,7 +63,7 @@ public class DCustomerServiceImpl extends ServiceImpl<DCustomerMapper, DCustomer
Integer companyId = MapUtil.getInt(data, "jskEid"); Integer companyId = MapUtil.getInt(data, "jskEid");
item.setCompanyId(companyId); item.setCompanyId(companyId);
} }
}catch (Exception e){ } catch (Exception e) {
// //
} }
}); });
...@@ -69,12 +76,14 @@ public class DCustomerServiceImpl extends ServiceImpl<DCustomerMapper, DCustomer ...@@ -69,12 +76,14 @@ public class DCustomerServiceImpl extends ServiceImpl<DCustomerMapper, DCustomer
dealWithCustomerClass(bo); dealWithCustomerClass(bo);
PageQuery query = new PageQuery(); PageQuery query = new PageQuery();
List<DCustomerListVo> records = baseMapper.allSearchList(query.build(), bo).getRecords(); List<DCustomerListVo> records = baseMapper.allSearchList(query.build(), bo).getRecords();
if(CollectionUtils.isNotEmpty(records)){ if (CollectionUtils.isNotEmpty(records)) {
records.parallelStream().forEach(item->{ records.parallelStream().forEach(item -> {
DCustomerListVo vo = subcontractMapper.selectStatisticByCustomerId(item.getCustomerId());
//企业合作数量 //企业合作数量
item.setEnterpriseCooperationCount(subcontractMapper.selectEnterpriseCountByCustomerId(item.getCustomerId())); item.setEnterpriseCooperationCount(vo.getEnterpriseCooperationCount());
//项目合作数量 //项目合作数量
item.setProjectCooperationCount(subcontractMapper.selectProjectCountByCustomerId(item.getCustomerId())); item.setProjectCooperationCount(vo.getProjectCooperationCount());
showCustomerClass(item);
}); });
} }
return records; return records;
...@@ -85,7 +94,7 @@ public class DCustomerServiceImpl extends ServiceImpl<DCustomerMapper, DCustomer ...@@ -85,7 +94,7 @@ public class DCustomerServiceImpl extends ServiceImpl<DCustomerMapper, DCustomer
List<String> list = new ArrayList<>(); List<String> list = new ArrayList<>();
Integer isTeam = null; Integer isTeam = null;
for (String customerClass : bo.getCustomerClass()) { for (String customerClass : bo.getCustomerClass()) {
switch (customerClass){ switch (customerClass) {
case "专业分包": case "专业分包":
list.add("专业分包"); list.add("专业分包");
break; break;
...@@ -96,17 +105,17 @@ public class DCustomerServiceImpl extends ServiceImpl<DCustomerMapper, DCustomer ...@@ -96,17 +105,17 @@ public class DCustomerServiceImpl extends ServiceImpl<DCustomerMapper, DCustomer
list.add("租赁"); list.add("租赁");
break; break;
case "劳务分包": case "劳务分包":
if(isTeam == null){ if (isTeam == null) {
isTeam = 0; isTeam = 0;
}else if(isTeam == 1) { } else if (isTeam == 1) {
isTeam = null; isTeam = null;
} }
list.add("劳务分包"); list.add("劳务分包");
break; break;
case "劳务队伍": case "劳务队伍":
if(isTeam == null) { if (isTeam == null) {
isTeam = 1; isTeam = 1;
}else if(isTeam == 0) { } else if (isTeam == 0) {
isTeam = null; isTeam = null;
} }
list.add("劳务分包"); list.add("劳务分包");
...@@ -119,5 +128,25 @@ public class DCustomerServiceImpl extends ServiceImpl<DCustomerMapper, DCustomer ...@@ -119,5 +128,25 @@ public class DCustomerServiceImpl extends ServiceImpl<DCustomerMapper, DCustomer
bo.setIsTeam(isTeam); bo.setIsTeam(isTeam);
} }
} }
private void showCustomerClass(DCustomerListVo vo) {
if (!ObjectUtils.isEmpty(vo.getCustomerClass())) {
switch (vo.getCustomerClass()) {
case "分供":
vo.setCustomerClass("物资设备");
break;
case "租赁":
vo.setCustomerClass("施工机械");
break;
case "劳务分包":
if (!ObjectUtils.isEmpty(vo.getLeaderName())) {
vo.setCustomerClass("劳务队伍");
}
break;
default:
break;
}
}
}
} }
package com.dsk.jsk.controller;
import com.dsk.common.core.domain.AjaxResult;
import com.dsk.jsk.domain.bo.UrbanInvestmentPlatformDto;
import com.dsk.jsk.service.service.UrbanInvestmentPlatformService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* @ClassName UrbanInvestmentPlatformController
* @Description 城投平台
* @Author Dgm
* @Date 2023/12/18 10:09
* @Version 1.0.0
*/
@RestController
@RequestMapping(value ="/urbanInvestment")
public class UrbanInvestmentPlatformController {
@Autowired
private UrbanInvestmentPlatformService urbanInvestmentPlatformService;
/***
*@Description: 城投平台分页列表
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping("/page")
public AjaxResult page(@RequestBody UrbanInvestmentPlatformDto dto) {
return urbanInvestmentPlatformService.page(dto);
}
/***
*@Description: 城投平台详情
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping("/details/{id}")
public AjaxResult details(@PathVariable("id") String id) {
return urbanInvestmentPlatformService.details(id);
}
/***
*@Description: 城投平台统计
*@Param:
*@return: com.dsk.common.core.domain.AjaxResult
*@Author: Dgm
*@date: 2023/5/18 10:29
*/
@PostMapping("/statistics")
public AjaxResult statistics(@RequestBody UrbanInvestmentPlatformDto dto) {
return urbanInvestmentPlatformService.statistics(dto);
}
@PostMapping("/export/pre")
public AjaxResult exportPre(@RequestBody UrbanInvestmentPlatformDto dto) {
return urbanInvestmentPlatformService.esportPre(dto);
}
}
...@@ -5,6 +5,7 @@ import com.dsk.common.core.domain.AjaxResult; ...@@ -5,6 +5,7 @@ import com.dsk.common.core.domain.AjaxResult;
import com.dsk.component.UploadComponent; import com.dsk.component.UploadComponent;
import com.dsk.jsk.domain.bo.ComposeQueryDto; import com.dsk.jsk.domain.bo.ComposeQueryDto;
import com.dsk.search.service.BusinessOpportunityRadarService; import com.dsk.search.service.BusinessOpportunityRadarService;
import com.dsk.search.util.PageQueryLimit;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
......
...@@ -2,9 +2,9 @@ package com.dsk.search.controller; ...@@ -2,9 +2,9 @@ package com.dsk.search.controller;
import com.alibaba.fastjson2.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.dsk.common.core.domain.AjaxResult; import com.dsk.common.core.domain.AjaxResult;
import com.dsk.common.utils.StringUtils;
import com.dsk.jsk.domain.bo.ComposeQueryDto; import com.dsk.jsk.domain.bo.ComposeQueryDto;
import com.dsk.search.service.BusinessOpportunityRadarService; import com.dsk.search.service.BusinessOpportunityRadarService;
import com.dsk.search.util.PageQueryLimit;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
......
...@@ -54,8 +54,11 @@ public class ExportService { ...@@ -54,8 +54,11 @@ public class ExportService {
list.add(companyNameList.get(i).getCompanyName()); list.add(companyNameList.get(i).getCompanyName());
} }
composeQueryDto.setKeyword(String.join(",",list)); composeQueryDto.setKeyword(String.join(",",list));
SimpleDateFormat sdf =new SimpleDateFormat("yyyyMMdd");
String dayformat = sdf.format(new Date());
SysUserFileRecord fileRecord = new SysUserFileRecord(); SysUserFileRecord fileRecord = new SysUserFileRecord();
fileRecord.setFileName("批量导出".concat(Constants.SUFFIX_XLSX)); String fileName = "供应商资质批量查询".concat(dayformat).concat(Constants.SUFFIX_XLSX);
fileRecord.setFileName(fileName);
fileRecord.setType(1); fileRecord.setType(1);
//生成中 //生成中
fileRecord.setStatus(2); fileRecord.setStatus(2);
...@@ -64,9 +67,7 @@ public class ExportService { ...@@ -64,9 +67,7 @@ public class ExportService {
composeQueryDto.setExportUniqueCode(fileId.toString()); composeQueryDto.setExportUniqueCode(fileId.toString());
//回调函数 //回调函数
composeQueryDto.setExportBackUrl(EXPORT_BACK_URL); composeQueryDto.setExportBackUrl(EXPORT_BACK_URL);
SimpleDateFormat sdf =new SimpleDateFormat("yyyyMMdd"); composeQueryDto.setExportExeclName(fileName);
String dayformat = sdf.format(new Date());
composeQueryDto.setExportExeclName("供应商资质批量查询"+dayformat+".xlsx");
dskOpenApiUtil.requestBody("/operate/export/zjyj/aptitude", BeanUtil.beanToMap(composeQueryDto,false,false)); dskOpenApiUtil.requestBody("/operate/export/zjyj/aptitude", BeanUtil.beanToMap(composeQueryDto,false,false));
return AjaxResult.success(); return AjaxResult.success();
} }
......
package com.dsk.search.controller; package com.dsk.search.util;
import com.dsk.jsk.domain.bo.Page; import com.dsk.jsk.domain.bo.Page;
......
...@@ -17,6 +17,16 @@ ...@@ -17,6 +17,16 @@
) a ) a
</select> </select>
<select id="selectStatisticByCustomerId" resultType="com.dsk.cscec.domain.vo.DCustomerListVo">
select
count(DISTINCT org.customer_id) enterpriseCooperationCount,
count(DISTINCT project.customer_id) projectCooperationCount
from d_customer dc
left join d_subcontract org on org.customer_id = dc.customer_id
left join d_subcontract project on project.customer_id = dc.customer_id
where dc.customer_id = #{customerId}
</select>
<select id="selectCooperationList" resultType="com.dsk.cscec.domain.vo.CustomerCooperationVo"> <select id="selectCooperationList" resultType="com.dsk.cscec.domain.vo.CustomerCooperationVo">
select ds.subcontract_key,ds.subcontract_id,ds.project_name,ds.sign_org_name,ds.sign_date,ds.subcontract_value,ds.settle_value,ds.job_scope, select ds.subcontract_key,ds.subcontract_id,ds.project_name,ds.sign_org_name,ds.sign_date,ds.subcontract_value,ds.settle_value,ds.job_scope,
dp.area_name,dp.province_name,dp.city_name,dp.project_manager_name,dp.project_manager_phone,dp.project_type2 dp.area_name,dp.province_name,dp.city_name,dp.project_manager_name,dp.project_manager_phone,dp.project_type2
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment