Commit a921cd8d 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 486eea5f 90f13903
......@@ -187,6 +187,7 @@ tenant:
- d_customer_qualification_certificate
- d_customer_safety_certificate
- d_customer_tax_certificate
- d_everydaydispose
- f_supplier_limited
- f_ads_bsi_kpi_proj_two
- cb_summary
......
......@@ -9,10 +9,7 @@ import com.dsk.cscec.domain.AdvisoryBodyCustomFormData;
import com.dsk.cscec.domain.AdvisoryBodyCustomFormTemplate;
import com.dsk.cscec.domain.bo.*;
import com.dsk.cscec.domain.vo.*;
import com.dsk.cscec.service.AdvisoryBodyCustomFormDataService;
import com.dsk.cscec.service.AdvisoryBodyCustomFormTemplateService;
import com.dsk.cscec.service.AdvisoryBodyService;
import com.dsk.cscec.service.IDProjectService;
import com.dsk.cscec.service.*;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
......@@ -37,13 +34,16 @@ public class AdvisoryBodyManageController extends BaseController {
private AdvisoryBodyCustomFormDataService customFormDataService;
@Resource
private AdvisoryBodyCustomFormTemplateService templateService;
@Resource
private DContractService contractService;
/**
* 获取项目列表
*/
@GetMapping("/getProjectList")
public TableDataInfo<ProjectSearchVo> getProjectList(ProjectSearchBo projectSearchBo, PageQuery pageQuery) {
return projectService.queryProjectList(projectSearchBo, pageQuery);
//return projectService.queryProjectList(projectSearchBo, pageQuery);
return contractService.queryProjectList(projectSearchBo, pageQuery);
}
/**
......
package com.dsk.cscec.controller;
import com.dsk.common.core.controller.BaseController;
import com.dsk.cscec.service.DContractService;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
/**
* 合同维表(DContract)表控制层
*
* @author sxk
* @since 2024-06-21 13:38:28
*/
@RestController
@RequestMapping("dContract")
public class DContractController extends BaseController {
/**
* 服务对象
*/
@Resource
private DContractService baseService;
}
......@@ -65,4 +65,32 @@ public class AdvisoryBodyProject extends BaseEntity implements Serializable {
* 是否为终审单位(0代表是 1代表否)
*/
private String isFinalJudgeUnit;
/**
* 业主名称
*/
private String ownerName;
/**
* 项目经理及联系方式
*/
private String projectManagerAndPhone;
/**
* 商务经理及联系方式
*/
private String businessManagerAndPhone;
/**
* 招标代理单位
*/
private String bidAgencyUnit;
/**
* 一审单位
*/
private String firstAuditUnit;
/**
* 二审单位
*/
private String secondAuditUnit;
/**
* 三审单位
*/
private String thirdAuditUnit;
}
package com.dsk.cscec.domain.vo;
import com.dsk.cscec.domain.AdvisoryBody;
import com.dsk.cscec.domain.AdvisoryBodyProject;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.math.BigDecimal;
import java.util.Date;
/**
......@@ -19,75 +16,91 @@ import java.util.Date;
@AllArgsConstructor
public class ProjectSearchVo {
/**
* 项目主键
* 合同主键
*/
private Long projectKey;
/**
* 项目ID
*/
private String projectId;
private String contractKey;
///**
// * 项目主键
// */
//private Long projectKey;
///**
// * 项目ID
// */
//private String projectId;
/**
* 项目名称
*/
private String projectName;
/**
* 项目编码
*/
private String projectCode;
/**
* 省市
*/
private String provinceName;
/**
* 项目承接类型
*/
private String isinvestproject;
/**
* 工程基础大类
*/
private String projectType1;
///**
// * 项目编码
// */
//private String projectCode;
///**
// * 省市
// */
//private String provinceName;
///**
// * 项目承接类型
// */
//private String isinvestproject;
///**
// * 工程基础大类
// */
//private String projectType1;
///**
// * 工程类别明细
// */
//private String projectType2;
///**
// * 项目与咨询机构关系
// */
//private AdvisoryBodyProject advisoryBodyProject;
///**
// * 合同金额
// */
//private BigDecimal contractOrigValue;
///**
// * 业主单位Cid
// */
//private Long ownerUnitCid;
/**
* 工程类别明细
* 业主单位
*/
private String projectType2;
private String ownerName;
///**
// * 项目承接单位
// */
//private String contractOrgName;
///**
// * 咨询机构(咨询机构表)
// */
//private AdvisoryBody advisoryBody;
/**
* 项目与咨询机构关系
* 创建时间(合同生效日期)
*/
private AdvisoryBodyProject advisoryBodyProject;
private Date contractSignDate;
/**
* 合同金额
* 项目经理及联系方式
*/
private BigDecimal contractOrigValue;
private String projectManagerAndPhone;
/**
* 业主单位Cid
* 商务经理及联系方式
*/
private Long ownerUnitCid;
private String businessManagerAndPhone;
/**
* 业主单位
* 招标代理单位
*/
private String ownerName;
private String bidAgencyUnit;
/**
* 项目承接单位
* 一审单位
*/
private String contractOrgName;
private String firstAuditUnit;
/**
* 咨询机构(咨询机构表)
* 二审单位
*/
private AdvisoryBody advisoryBody;
private String secondAuditUnit;
/**
* 创建时间(合同生效日期)
* 三审单位
*/
private Date contractSignDate;
private String thirdAuditUnit;
}
package com.dsk.cscec.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dsk.cscec.domain.DContract;
import com.dsk.cscec.domain.bo.ProjectSearchBo;
import com.dsk.cscec.domain.vo.ProjectSearchVo;
import org.apache.ibatis.annotations.Param;
/**
* 合同维表(DContract)表数据库访问层
*
* @author makejava
* @since 2024-06-21 13:38:28
*/
public interface DContractMapper extends BaseMapper<DContract> {
/**
* 获取所有项目列表数据
*/
Page<ProjectSearchVo> selectPageProjectList(IPage<ProjectSearchVo> page, @Param("bo") ProjectSearchBo bo);
}
package com.dsk.cscec.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.Map;
/**
* @author flx
* @date 2024/06/21
*/
@Mapper
public interface DEverydaydisposeMapper {
Map<String, Object> getLevelByName(@Param("name") String name);
}
......@@ -32,4 +32,9 @@ public interface DProjectMapper extends BaseMapper<DProject> {
* 获取合作项目明细
*/
Page<CooperateProjectDetailSearchVo> selectPageCooperateProjectDetailList(@Param("page") Page<CooperateProjectDetailSearchVo> page, @Param(Constants.WRAPPER) Wrapper<DProject> Wrapper);
/**
* 获取业主单位列表
*/
List<String> getOwnerNameList(@Param("contractOrgId") String contractOrgId);
}
\ No newline at end of file
package com.dsk.cscec.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dsk.common.core.domain.PageQuery;
import com.dsk.common.core.page.TableDataInfo;
import com.dsk.cscec.domain.DContract;
import com.dsk.cscec.domain.bo.ProjectSearchBo;
import com.dsk.cscec.domain.vo.ProjectSearchVo;
/**
* 合同维表(DContract)表服务接口
*
* @author makejava
* @since 2024-06-21 13:38:29
*/
public interface DContractService extends IService<DContract> {
/**
* 获取所有项目列表数据
*
* @param projectSearchBo 查询实体
* @param pageQuery 分页对象
* @return 所有数据
*/
TableDataInfo<ProjectSearchVo> queryProjectList(ProjectSearchBo projectSearchBo, PageQuery pageQuery);
}
package com.dsk.cscec.service.impl;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dsk.common.core.domain.PageQuery;
import com.dsk.common.core.page.TableDataInfo;
import com.dsk.cscec.domain.DContract;
import com.dsk.cscec.domain.bo.ProjectSearchBo;
import com.dsk.cscec.domain.vo.ProjectSearchVo;
import com.dsk.cscec.mapper.AdvisoryBodyCustomFormDataMapper;
import com.dsk.cscec.mapper.DContractMapper;
import com.dsk.cscec.service.DContractService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
/**
* 合同维表(DContract)表服务实现类
*
* @author sxk
* @since 2024-06-21 13:38:29
*/
@Service("dContractService")
public class DContractServiceImpl extends ServiceImpl<DContractMapper, DContract> implements DContractService {
@Resource
private DContractMapper baseMapper;
@Resource
private AdvisoryBodyCustomFormDataMapper formDataMapper;
/**
* 获取所有项目列表数据
*
* @param projectSearchBo 查询实体
* @param pageQuery 分页对象
* @return 所有数据
*/
@Override
public TableDataInfo<ProjectSearchVo> queryProjectList(ProjectSearchBo projectSearchBo, PageQuery pageQuery) {
Page<ProjectSearchVo> page = baseMapper.selectPageProjectList(pageQuery.build(), projectSearchBo);
return TableDataInfo.build(page);
}
}
......@@ -19,6 +19,7 @@ import com.dsk.cscec.domain.bo.DCustomerDynamicRiskTypeVo;
import com.dsk.cscec.domain.bo.DCustomerSearchBo;
import com.dsk.cscec.domain.vo.DCustomerListVo;
import com.dsk.cscec.mapper.DCustomerMapper;
import com.dsk.cscec.mapper.DEverydaydisposeMapper;
import com.dsk.cscec.mapper.DSubcontractMapper;
import com.dsk.cscec.service.IDCustomerService;
import com.dsk.monitor.domain.vo.PushMonitorCompanyAddVo;
......@@ -49,6 +50,8 @@ public class DCustomerServiceImpl extends ServiceImpl<DCustomerMapper, DCustomer
private DSubcontractMapper subcontractMapper;
@Autowired
private BusinessOpportunityRadarService opportunityRadarService;
@Resource
private DEverydaydisposeMapper dEverydaydisposeMapper;
@Resource
......@@ -61,6 +64,11 @@ public class DCustomerServiceImpl extends ServiceImpl<DCustomerMapper, DCustomer
Page<DCustomerListVo> page = baseMapper.allSearchList(query.build(), bo);
if (CollectionUtils.isNotEmpty(page.getRecords())) {
page.getRecords().parallelStream().forEach(item -> {
//根据customerName查询出creditLevel 设置进来 表d_everydaydispose fsuppliername --》fcreditlevel
Map<String, Object> levelMap = dEverydaydisposeMapper.getLevelByName(item.getCustomerName());
if(MapUtil.isNotEmpty(levelMap)){
item.setCreditLevel(MapUtil.getStr(levelMap,"fcreditlevel"));
}
DCustomerListVo vo = subcontractMapper.selectStatisticByCustomerId(item.getCustomerId());
//企业合作数量
item.setEnterpriseCooperationCount(vo.getEnterpriseCooperationCount());
......
......@@ -167,15 +167,15 @@ public class MonitorUserController {
public R systemDetail(@RequestBody PushMonitorSystemDetailVo detailVo){
return monitorService.systemDetail(detailVo);
}
//
// /**
// * 监控列表添加默认业主单位
// * @Author: lc
// * @return
// */
// @PostMapping(value = "/add/default")
// public R addDefaultCompany() {
// return monitorService.addDefaultCompany();
// }
/**
* 监控列表添加默认业主单位
* @Author: lc
* @return
*/
@PostMapping(value = "/add/default")
public R addDefaultCompany() {
return monitorService.addDefaultCompany();
}
}
......@@ -8,7 +8,9 @@ import com.dsk.common.core.domain.R;
import com.dsk.common.core.page.TableDataInfo;
import com.dsk.common.helper.LoginHelper;
import com.dsk.common.utils.redis.RedisUtils;
import com.dsk.cscec.constant.AdvisoryBodyManageQueryConstants;
import com.dsk.cscec.mapper.DCustomerMapper;
import com.dsk.cscec.mapper.DProjectMapper;
import com.dsk.monitor.domain.dto.PushMonitorRules;
import com.dsk.monitor.domain.vo.*;
import com.dsk.monitor.mapper.PushMonitorInfoMapper;
......@@ -51,6 +53,9 @@ public class MonitorUserServiceImpl implements MonitorUserService {
@Resource
private DCustomerMapper customerMapper;
@Resource
private DProjectMapper projectMapper;
@Autowired
private BusinessOpportunityRadarService opportunityRadarService;
......@@ -317,11 +322,12 @@ public class MonitorUserServiceImpl implements MonitorUserService {
List<Integer> idList = new ArrayList<>();
//如果没有上一次的企业id数据则直接返回
if (RedisUtils.hasKey("monitorCompanyList")) {
log.info("添加默认企业监控:企业id从缓存中取");
idList = RedisUtils.getCacheList("monitorCompanyList");
if (RedisUtils.hasKey("monitorUserCompanyList")) {
log.info("添加默认业主单位企业监控:企业id从缓存中取");
idList = RedisUtils.getCacheList("monitorUserCompanyList");
} else {
List<String> list = customerMapper.allSearchCompanyNameList();
//获取业主公司名称
List<String> list = projectMapper.getOwnerNameList(AdvisoryBodyManageQueryConstants.LEVEL1_COMPANY_ID);
for (String companyName : list) {
//循环匹配 得到能关联上的企业id
Map<String, Object> map = opportunityRadarService.enterpriseByName(companyName);
......@@ -331,24 +337,22 @@ public class MonitorUserServiceImpl implements MonitorUserService {
idList.add(companyId);
}
}
RedisUtils.setCacheList("monitorCompanyList", idList);
RedisUtils.setCacheList("monitorUserCompanyList", idList);
//设置过期时间两天
RedisUtils.expire("monitorCompanyList", 172800);
RedisUtils.expire("monitorUserCompanyList", 172800);
}
//去除重复企业id
idList = idList.stream().distinct().collect(Collectors.toList());
log.info("获取供应商企业id数量:" + idList.size());
PushMonitorCompanyAddVo addVo = new PushMonitorCompanyAddVo();
Long userId = LoginHelper.getUserId();
if (ObjectUtil.isNotEmpty(userId)) {
addVo.setUserId(userId);
}
Long userId = 123456789L;
addVo.setUserId(userId);
addVo.setSystemCode("ZJYJ");
int size = idList.size();
if (size <= 200) {
addVo.setCid(idList);
log.info("中建一局用户添加默认监控企业!");
log.info("中建一局用户添加默认业主单位监控企业!");
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/monitor/company/addDefaultCompany", BeanUtil.beanToMap(addVo, false, false));
} else {
//循环次数
......@@ -362,10 +366,10 @@ public class MonitorUserServiceImpl implements MonitorUserService {
newList = idList.subList(i * 200, (i + 1) * 200);
}
addVo.setCid(newList);
log.info("中建一局用户添加默认监控企业------->循环添加:" + i * 200 + "----" + (i + 1) * 200);
log.info("中建一局用户添加默认业主监控企业------->循环添加:" + i * 200 + "----" + (i + 1) * 200);
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/monitor/company/addDefaultCompany", BeanUtil.beanToMap(addVo, false, false));
}
}
return R.ok("默认企业添加中,请稍候");
return R.ok("默认业主监控企业添加中,请稍候");
}
}
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dsk.cscec.mapper.DContractMapper">
<select id="selectPageProjectList" resultType="com.dsk.cscec.domain.vo.ProjectSearchVo">
select c.contract_key,
c.project_name,
c.owner_name,
c.contract_sign_date,
abp.project_manager_and_phone,
abp.business_manager_and_phone,
abp.bid_agency_unit,
abp.first_audit_unit,
abp.second_audit_unit,
abp.third_audit_unit
from d_contract c
left join advisory_body_project abp on c.contract_key = abp.project_key
<where>
<if test="bo.projectName != null and bo.projectName != ''">
c.project_name = #{bo.projectName}
</if>
<if test="bo.ownerUnit != null and bo.ownerUnit != ''">
and c.owner_name = #{bo.ownerUnit}
</if>
</where>
order by c.contract_sign_date desc
</select>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dsk.cscec.mapper.DEverydaydisposeMapper">
<select id="getLevelByName" resultType="map">
SELECT
fcreditlevel
FROM
d_everydaydispose
WHERE
fsuppliername = #{name}
ORDER BY fyear desc
limit 1
</select>
</mapper>
......@@ -45,4 +45,12 @@
from d_project p
${ew.getCustomSqlSegment}
</select>
<select id="getOwnerNameList" resultType="java.lang.String">
SELECT owner_name
FROM d_project dp
WHERE contract_org_id =#{contractOrgId}
group BY owner_name
</select>
</mapper>
\ No newline at end of file
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