准入供应商查询最后一次评价相关信息去除

This commit is contained in:
YY
2025-07-16 15:03:54 +08:00
parent f2c223a5d7
commit e9985ab668
7 changed files with 73 additions and 68 deletions

View File

@ -38,6 +38,16 @@ public class UserController {
return BaseResponse.success(userService.getUserList(param));
}
/**
* 根据id查询用户信息
* @param id
* @return
*/
@GetMapping("/getUserById")
public BaseResponse getUserById(String id) {
return BaseResponse.success(userService.getUserById(id));
}

View File

@ -21,6 +21,6 @@ public interface IUserService{
BaseResponse<List<SysUser>> getUserList(SysUser vo);
SysUser getUserById(String id);
List<UserVo> getUser(SelectUserVo vo);
}

View File

@ -31,6 +31,12 @@ public class UserServiceImpl implements IUserService {
return systemClient.getUserlist(user);
}
public SysUser getUserById(String id){
BaseResponse<SysUser> user = systemClient.getUser(id);
return user.getData();
}
public List<UserVo> getUser(SelectUserVo vo) {
BaseResponse<List<SysUser>> userlist = systemClient.getUserlist(new SysUser());
List<UserVo> list = new ArrayList<>();

View File

@ -1,6 +1,7 @@
package com.chinaunicom.zyhy.ebtp.supplier.coscoEvaluate.vo;
import com.chinaunicom.mall.ebtp.common.base.entity.BasePageRequest;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -35,11 +36,13 @@ public class SupplierDimensionVo implements Serializable {
/**
* 开始时间
*/
private String startTime;
@JsonFormat(pattern = "yyyy-MM-dd")
private Date startTime;
/**
* 结束时间
*/
private String endTime;
@JsonFormat(pattern = "yyyy-MM-dd")
private Date endTime;
/**
* 评价状态
*/

View File

@ -1,10 +1,12 @@
package com.chinaunicom.zyhy.ebtp.supplier.coscoEvaluate.vo;
import com.chinaunicom.mall.ebtp.common.base.entity.BasePageRequest;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
@Data
public class TaskPageVo implements Serializable {
@ -28,11 +30,13 @@ public class TaskPageVo implements Serializable {
/**
* 开始时间
*/
private String startTime;
@JsonFormat(pattern = "yyyy-MM-dd")
private Date startTime;
/**
* 结束时间
*/
private String endTime;
@JsonFormat(pattern = "yyyy-MM-dd")
private Date endTime;
/**
* 评价任务状态(0.待评价、1.评价中、2.已结束)
*/

View File

@ -5,9 +5,11 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.chinaunicom.mall.ebtp.common.base.entity.BaseCacheUser;
import com.chinaunicom.mall.ebtp.common.base.entity.SysOrg;
import com.chinaunicom.mall.ebtp.common.base.service.impl.BaseServiceImpl;
import com.chinaunicom.mall.ebtp.common.base.util.TokenUtil;
import com.chinaunicom.mall.ebtp.common.util.PropertyUtils;
import com.chinaunicom.zyhy.ebtp.supplier.base.service.IOrgService;
import com.chinaunicom.zyhy.ebtp.supplier.common.ChineseName;
import com.chinaunicom.zyhy.ebtp.supplier.common.CoscoDateUtils;
import com.chinaunicom.zyhy.ebtp.supplier.base.constant.CoscoType;
@ -44,27 +46,18 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
private CoscoSupplierQualificationsMapper coscoSupplierQualificationsMapper;
@Autowired
private CoscoSupplierInvoiceMapper coscoSupplierInvoiceMapper;
@Autowired
private CoscoSupplierBankMapper coscoSupplierBankMapper;
@Autowired
private CoscoSupplierSurveyMapper coscoSupplierSurveyMapper;
@Autowired
private CoscoSupplierSurveyQuestionReplyMapper coscoSupplierSurveyQuestionReplyMapper;
@ -73,8 +66,6 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
private CoscoSupplierSurveyAttachmentsMapper coscoSupplierSurveyAttachmentsMapper;
@Autowired
private CoscoSupplierChangeHistoryMapper coscoSupplierChangeHistoryMapper;
@ -90,11 +81,13 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
@Autowired
private CoscoCategoryLibraryContainMapper coscoCategoryLibraryContainMapper;
@Autowired
private IOrgService orgService;
/**
* 未准入的供应商分页列表查询
*
* @param coscoSupplierBase
* @return
*/
@ -109,30 +102,31 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
deptIds.add("222");
coscoSupplierBase.setDeptIdList(deptIds);
//查询当前登录人的部门本级、上级、下级,以外的供应商数据
return coscoSupplierBaseMapper.selectWzrPageList(page,coscoSupplierBase);
return coscoSupplierBaseMapper.selectWzrPageList(page, coscoSupplierBase);
}
@Override
public IPage<CoscoSupplierBase> getPage(CoscoSupplierBase coscoSupplierBase) {
IPage<CoscoSupplierBase> page = new Page<>(coscoSupplierBase.getPageNo(), coscoSupplierBase.getPageSize());
return coscoSupplierBaseMapper.selectPageList(page, coscoSupplierBase);
return coscoSupplierBaseMapper.selectPageList(page, coscoSupplierBase);
}
@Override
public IPage<CoscoSupplierBase> getMySupplierBasePage(CoscoSupplierBase coscoSupplierBase) {
IPage<CoscoSupplierBase> page = new Page<>(coscoSupplierBase.getPageNo(), coscoSupplierBase.getPageSize());
return coscoSupplierBaseMapper.getMySupplierBasePage(page, coscoSupplierBase);
return coscoSupplierBaseMapper.getMySupplierBasePage(page, coscoSupplierBase);
}
/**
* 供应商准入明细
*
* @param vo
* @return
*/
@Override
public IPage<AdmissionDetailsVo> getZrCategoryPage(AdmissionDetailsVo vo) {
IPage<AdmissionDetailsVo> page = new Page<>(vo.getPageNo(), vo.getPageSize());
return coscoAccessSupplierCategoryMapper.selectPageList(page, vo);
return coscoAccessSupplierCategoryMapper.selectPageList(page, vo);
}
@Override
@ -161,7 +155,7 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
coscoSupplierInvoice.setSupplierId(id);
List<CoscoSupplierInvoice> coscoSupplierInvoiceList = coscoSupplierInvoiceMapper.selectCoscoSupplierInvoiceList(coscoSupplierInvoice);
if(!CollectionUtils.isEmpty(coscoSupplierInvoiceList)){
if (!CollectionUtils.isEmpty(coscoSupplierInvoiceList)) {
vo.setCoscoSupplierInvoice(coscoSupplierInvoiceList.get(0));
}
@ -208,7 +202,7 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
*/
@Override
@Transactional
public Integer insertCoscoSupplierBase(CoscoSupplierVo vo,String userId) {
public Integer insertCoscoSupplierBase(CoscoSupplierVo vo, String userId) {
String supplierId = PropertyUtils.getSnowflakeId();//供应商id
Date date = new Date();
//资质信息集合
@ -222,7 +216,7 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
//资质信息添加到集合
if (!CollectionUtils.isEmpty(vo.getCoscoSupplierQualifications())) {
for(CoscoSupplierQualifications coscoSupplierQualifications : vo.getCoscoSupplierQualifications()){
for (CoscoSupplierQualifications coscoSupplierQualifications : vo.getCoscoSupplierQualifications()) {
coscoSupplierQualifications.setSupplierId(supplierId);
coscoSupplierQualifications.setId(PropertyUtils.getSnowflakeId());
coscoSupplierQualifications.setCreateBy(userId);
@ -249,7 +243,7 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
}
//银行信息添加到集合
if (!CollectionUtils.isEmpty(vo.getCoscoSupplierBank())) {
for(CoscoSupplierBank coscoSupplierBank : vo.getCoscoSupplierBank()){
for (CoscoSupplierBank coscoSupplierBank : vo.getCoscoSupplierBank()) {
coscoSupplierBank.setSupplierId(supplierId);
coscoSupplierBank.setId(PropertyUtils.getSnowflakeId());
coscoSupplierBank.setCreateBy(userId);
@ -277,7 +271,7 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
//问题回复添加到集合
if (!CollectionUtils.isEmpty(vo.getCoscoSupplierSurveyQuestionReply())) {
for(CoscoSupplierSurveyQuestionReply coscoSupplierSurveyQuestionReply : vo.getCoscoSupplierSurveyQuestionReply()){
for (CoscoSupplierSurveyQuestionReply coscoSupplierSurveyQuestionReply : vo.getCoscoSupplierSurveyQuestionReply()) {
coscoSupplierSurveyQuestionReply.setSupplierId(supplierId);
coscoSupplierSurveyQuestionReply.setId(PropertyUtils.getSnowflakeId());
coscoSupplierSurveyQuestionReply.setCreateBy(userId);
@ -292,7 +286,7 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
}
//承诺书/其他附件添加到集合
if (!CollectionUtils.isEmpty(vo.getCoscoSupplierSurveyAttachments())) {
for(CoscoSupplierSurveyAttachments coscoSupplierSurveyAttachments : vo.getCoscoSupplierSurveyAttachments()){
for (CoscoSupplierSurveyAttachments coscoSupplierSurveyAttachments : vo.getCoscoSupplierSurveyAttachments()) {
coscoSupplierSurveyAttachments.setSupplierId(supplierId);
coscoSupplierSurveyAttachments.setId(PropertyUtils.getSnowflakeId());
coscoSupplierSurveyAttachments.setCreateBy(userId);
@ -334,7 +328,7 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
CoscoSupplierChangeApply changeApply = new CoscoSupplierChangeApply();
//审批通过
if(CoscoType.APPROVE_STATUS_TG.equals(coscoSupplierChangeApply.getApproveStatus())){
if (CoscoType.APPROVE_STATUS_TG.equals(coscoSupplierChangeApply.getApproveStatus())) {
//新基本信息
CoscoSupplierChangeBase newCoscoSupplierBase = coscoSupplierChangeBaseMapper.selectBySupplierChangeApplyId(appid);
@ -342,7 +336,7 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
//老基本信息
CoscoSupplierBase coscoSupplierBase = coscoSupplierBaseMapper.selectCoscoSupplierBaseById(coscoSupplierChangeApply.getSupplierId());
String supplierId = coscoSupplierBase.getId();
BeanUtil.copyProperties(newCoscoSupplierBase,coscoSupplierBase);
BeanUtil.copyProperties(newCoscoSupplierBase, coscoSupplierBase);
coscoSupplierBase.setId(supplierId);
coscoSupplierBase.setUpdateTime(date);
coscoSupplierBase.setLastUpdateTime(date);
@ -396,15 +390,24 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
@Override
public IPage<SupplierPageVo> getSupplierPage(SupplierPageVo supplierPageVo) {
if(supplierPageVo.getCategoryLibraryId()!=null){
List<String> supplierIds=coscoCategoryLibraryContainMapper.selectSupplierIdByLibraryId(supplierPageVo.getCategoryLibraryId());
if(supplierIds.isEmpty()){
if (supplierPageVo.getCategoryLibraryId() != null) {
List<String> supplierIds = coscoCategoryLibraryContainMapper.selectSupplierIdByLibraryId(supplierPageVo.getCategoryLibraryId());
if (supplierIds.isEmpty()) {
return new Page<>();
}
supplierPageVo.setLibrarySupplierIdList(supplierIds);
}
IPage<CoscoSupplierBase> page = new Page<>(supplierPageVo.getBasePageRequest().getPageNo(), supplierPageVo.getBasePageRequest().getPageSize());
return coscoSupplierBaseMapper.getSupplierPage(page ,supplierPageVo);
IPage<SupplierPageVo> supplierPage = coscoSupplierBaseMapper.getSupplierPage(page, supplierPageVo);
supplierPage.getRecords().forEach(vo -> {
SysOrg orgInfo = orgService.getOrgInfo(vo.getDeptId());
if (orgInfo != null) {
vo.setDeptName(orgInfo.getOrgName());
}
});
return supplierPage;
}
@Override
@ -425,11 +428,11 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
CoscoSupplierBase oldCoscoSupplierBase = coscoSupplierBaseMapper.selectCoscoSupplierBaseById(coscoSupplierBase.getId());
//如果修改基础信息为个人供应商,不走变更逻辑,随便改
if(!CoscoType.SUPPLIER_TYPE_PE.equals(oldCoscoSupplierBase.getSupplierType())){
if(CoscoType.ACCESS_STATUS_YZR.equals(oldCoscoSupplierBase.getAccessStatus())){//已准入的供应商才会走下面变更的逻辑
boolean nameBlean = baseDiff(oldCoscoSupplierBase.getName(),coscoSupplierBase.getName()); //企业名称
boolean mameEnBlean = baseDiff(oldCoscoSupplierBase.getNameEn(),coscoSupplierBase.getNameEn()); //企业英文名称
boolean rangBlean = baseDiff(oldCoscoSupplierBase.getRange(),coscoSupplierBase.getRange()); //经营范围
if (!CoscoType.SUPPLIER_TYPE_PE.equals(oldCoscoSupplierBase.getSupplierType())) {
if (CoscoType.ACCESS_STATUS_YZR.equals(oldCoscoSupplierBase.getAccessStatus())) {//已准入的供应商才会走下面变更的逻辑
boolean nameBlean = baseDiff(oldCoscoSupplierBase.getName(), coscoSupplierBase.getName()); //企业名称
boolean mameEnBlean = baseDiff(oldCoscoSupplierBase.getNameEn(), coscoSupplierBase.getNameEn()); //企业英文名称
boolean rangBlean = baseDiff(oldCoscoSupplierBase.getRange(), coscoSupplierBase.getRange()); //经营范围
//如果是境内供应商且需要变更名称或经营范围,或者是境外供应商且需要变更英文名称或经营范围,则插入变更申请
boolean needsChange = isSupplierNeedsChange(oldCoscoSupplierBase, nameBlean, mameEnBlean, rangBlean);
if (needsChange) {
@ -466,7 +469,7 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
*
* @return 结果
*/
public Integer insertCoscoSupplierChangeApply(CoscoSupplierBase newCoscoSupplierBase,CoscoSupplierBase oldCoscoSupplierBase,CoscoSupplierVo vo) {
public Integer insertCoscoSupplierChangeApply(CoscoSupplierBase newCoscoSupplierBase, CoscoSupplierBase oldCoscoSupplierBase, CoscoSupplierVo vo) {
Date date = CoscoDateUtils.getNowDate();
String applyId = PropertyUtils.getSnowflakeId();
BaseCacheUser currentUser = TokenUtil.getCurrentUser();
@ -487,23 +490,22 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
coscoSupplierChangeApply.setLastUpdateTime(date);
//新增变更后基本信息
CoscoSupplierChangeBase coscoSupplierChangeBase = new CoscoSupplierChangeBase();
BeanUtil.copyProperties(newCoscoSupplierBase,coscoSupplierChangeBase);
BeanUtil.copyProperties(newCoscoSupplierBase, coscoSupplierChangeBase);
String changeSupplierId = PropertyUtils.getSnowflakeId();
coscoSupplierChangeBase.setId(changeSupplierId);
coscoSupplierChangeBase.setSupplierChangeApplyId(applyId);
coscoSupplierChangeBaseMapper.insertCoscoSupplierChangeBase(coscoSupplierChangeBase);
//基础信息对比--将差异内容插入到比对表
List<CoscoSupplierChangeHistory> changeHistories = compareSupplierChanges(newCoscoSupplierBase,oldCoscoSupplierBase,applyId);
List<CoscoSupplierChangeHistory> changeHistories = compareSupplierChanges(newCoscoSupplierBase, oldCoscoSupplierBase, applyId);
coscoSupplierChangeHistoryMapper.batchCoscoSupplierChangeHistory(changeHistories);
//变更证明附件--只会有一个
if (!CollectionUtils.isEmpty(vo.getCoscoSupplierSurveyAttachments())) {
for(CoscoSupplierSurveyAttachments coscoSupplierSurveyAttachments : vo.getCoscoSupplierSurveyAttachments()){
for (CoscoSupplierSurveyAttachments coscoSupplierSurveyAttachments : vo.getCoscoSupplierSurveyAttachments()) {
coscoSupplierSurveyAttachments.setId(PropertyUtils.getSnowflakeId());
coscoSupplierSurveyAttachments.setSupplierId(oldCoscoSupplierBase.getId());
coscoSupplierSurveyAttachments.setCreateBy(userId);
@ -521,6 +523,7 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
/**
* 字段比对方法
*
* @param newCoscoSupplierBase
* @param oldCoscoSupplierBase
* @param supplierChangeApplyId
@ -574,8 +577,8 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
}
}
List<CoscoSupplierChangeHistory> newChangeHistories = new ArrayList<>();
for(CoscoSupplierChangeHistory oldc: changeHistories){
if(oldc.getNewValue() != null){
for (CoscoSupplierChangeHistory oldc : changeHistories) {
if (oldc.getNewValue() != null) {
oldc.setFieldName(StrUtil.toUnderlineCase(oldc.getFieldName()));
newChangeHistories.add(oldc);
}
@ -586,6 +589,7 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
public static boolean isChanged(Object newValue, Object oldValue) {
return !Objects.equals(newValue, oldValue);
}
public static boolean baseDiff(String str1, String str2) {
// 处理两个都为null的情况
if (str1 == null && str2 == null) {

View File

@ -836,8 +836,6 @@
END AS unifiedCode,
GROUP_CONCAT(caw.dept_id) as dept_id,
max(caw.update_time) AS admissionTime,
max(ets.update_time) AS evaluationTime ,
max(ets.level_name) as levelName,
GROUP_CONCAT(DISTINCT cc.category_name SEPARATOR ', ') AS categoryName
from
cosco_access_supplier_category as casc
@ -845,24 +843,6 @@
left join cosco_access_supplier as cas on cas.supplier_id = csb.id
left join cosco_access_work as caw on caw.id = cas.access_work_id and caw.apply_type=1 and caw.approve_status=1
left join cosco_category as cc on casc.category_id = cc.id
LEFT JOIN (
SELECT ts1.*
FROM cosco_evaluate_task_supplier ts1
JOIN cosco_evaluate_task tsk1 ON ts1.evaluate_task_id = tsk1.id
WHERE tsk1.approve_status = 1
AND ts1.del_flag = 'normal'
AND tsk1.del_flag = 'normal'
AND ts1.create_time = (
SELECT MAX(ts2.create_time)
FROM cosco_evaluate_task_supplier ts2
JOIN cosco_evaluate_task tsk2 ON ts2.evaluate_task_id = tsk2.id
WHERE ts2.supplier_id = ts1.supplier_id
AND tsk2.approve_status = 1
AND ts2.del_flag = 'normal'
AND tsk2.del_flag = 'normal'
)
) ets ON ets.supplier_id = csb.id
-- 黑名单排除
WHERE NOT EXISTS (
SELECT 1
@ -892,9 +872,7 @@
<if test="vo.categoryId!=null and vo.categoryId!=''">
and cc.categoryId like concat('%',#{vo.categoryId},'%')
</if>
<if test="vo.levelName!=null and vo.levelName!=''">
and ets.level_name = #{vo.levelName}
</if>
<if test="vo.librarySupplierIdList!=null and vo.librarySupplierIdList.size>0">
and csb.id IN
<foreach item="id" collection="vo.librarySupplierIdList" open="(" separator="," close=")">