单位获取修改

This commit is contained in:
YY
2025-08-07 10:06:07 +08:00
parent b6f2442b49
commit 6f02bbdeb0
25 changed files with 847 additions and 350 deletions

View File

@ -0,0 +1,27 @@
package com.chinaunicom.zyhy.ebtp.supplier.base.vo;
import lombok.Data;
@Data
public class OrgNameVo {
/**
* 部门id
*/
private String deptId;
/**
* 公司id
*/
private String orgId;
/**
* 部门名称
*/
private String deptName;
/**
* 公司名称
*/
private String orgName;
/**
* 供应商id
*/
private String supplierId;
}

View File

@ -13,36 +13,54 @@ import java.util.Date;
* @date 2025-06-18
*/
@Data
public class CoscoAnnualreviewTask extends BaseEntity{
public class CoscoAnnualreviewTask extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键ID */
/**
* 主键ID
*/
private String id;
/** 年审主题 */
/**
* 年审主题
*/
private String annualreviewTheme;
/** 发起单位 */
/**
* 发起单位
*/
private String deptId;
/** 年审年度 */
/**
* 年审年度
*/
private String annualreviewYear;
/** 年审开始时间 */
/**
* 年审开始时间
*/
@JsonFormat(pattern = "yyyy-MM-dd")
private Date startTime;
/** 年审结束时间 */
/**
* 年审结束时间
*/
@JsonFormat(pattern = "yyyy-MM-dd")
private Date endTime;
/** 年审模板id(cosco_annualreview_template表主键) */
/**
* 年审模板id(cosco_annualreview_template表主键)
*/
private String templateId;
/** 品类限制类型0.通用不限品类、1.限制品类) */
/**
* 品类限制类型0.通用不限品类、1.限制品类)
*/
private String categoryLimitation;
/** 品类id(cosco_category表主键) */
/**
* 品类id(cosco_category表主键)
*/
private String categoryId;
/**
* 品类名称
@ -53,11 +71,15 @@ public class CoscoAnnualreviewTask extends BaseEntity{
*/
private String categoryPathName;
/** 状态(0.未开始、1.进行中、2.已结束) */
/**
* 状态(0.未开始、1.进行中、2.已结束)
*/
private Long status;
/** 删除标识(normal.正常、deleted.已删除) */
private String delFlag="normal";
/**
* 删除标识(normal.正常、deleted.已删除)
*/
private String delFlag = "normal";
private String remark;
@ -72,5 +94,9 @@ public class CoscoAnnualreviewTask extends BaseEntity{
* 品类全id
*/
private String categoryPathId;
/**
* 单位id
*/
private String orgId;
}

View File

@ -10,6 +10,7 @@ import com.chinaunicom.mall.ebtp.common.util.PropertyUtils;
import com.chinaunicom.zyhy.ebtp.supplier.base.constant.AnnualreviewTaskConstant;
import com.chinaunicom.zyhy.ebtp.supplier.base.service.IOrgService;
import com.chinaunicom.zyhy.ebtp.supplier.base.service.IUserService;
import com.chinaunicom.zyhy.ebtp.supplier.base.vo.OrgNameVo;
import com.chinaunicom.zyhy.ebtp.supplier.base.vo.SelectUserVo;
import com.chinaunicom.zyhy.ebtp.supplier.base.vo.UserVo;
import com.chinaunicom.zyhy.ebtp.supplier.coscoAnnualreview.dao.*;
@ -22,6 +23,7 @@ import com.chinaunicom.zyhy.ebtp.supplier.coscoAnnualreview.vo.SupplierPeopleVo;
import com.chinaunicom.zyhy.ebtp.supplier.coscoBlack.vo.BlackSupplierVo;
import com.chinaunicom.zyhy.ebtp.supplier.coscoCategory.service.ICoscoCategoryService;
import com.chinaunicom.zyhy.ebtp.supplier.coscoEvaluate.vo.TaskUserVo;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.dao.mapper.CoscoAccessWorkMapper;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.dao.mapper.CoscoSupplierBaseMapper;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.vo.OrgDeptVo;
@ -57,7 +59,8 @@ public class CoscoAnnualreviewTaskServiceImpl implements ICoscoAnnualreviewTaskS
private CoscoSupplierBaseMapper coscoSupplierBaseMapper;
@Autowired
private IUserService userService;
@Autowired
private CoscoAccessWorkMapper coscoAccessWorkMapper;
@Autowired
private IOrgService orgService;
@Autowired
@ -124,8 +127,42 @@ public class CoscoAnnualreviewTaskServiceImpl implements ICoscoAnnualreviewTaskS
List<String> supplierIds = list.stream().map(SupplierPeopleVo::getSuppliedId).collect(Collectors.toList());
List<BlackSupplierVo> blackSupplierVos = coscoSupplierBaseMapper.selectSupplierByIds(supplierIds);
List<UserVo> userInfo = userIdMap.keySet().stream().map(userId -> userMap.get(userId)).collect(Collectors.toList());
//用户信息封装
blackSupplierVos.forEach(blackSupplierVo -> {
SysOrg orgInfo = orgService.getOrgInfo(coscoAnnualreviewTask.getDeptId());
List<OrgNameVo> accessWorkList = new ArrayList<>();
if (orgInfo != null) {
String orgFullId = orgInfo.getOrgFullId();
String[] split = orgFullId.split(",");
accessWorkList = coscoAccessWorkMapper.selectAccessWorkBySupplerIdsIdAndOrgId(supplierIds, Arrays.asList(split));
}
Map<String, List<OrgNameVo>> groupedBySupplier = accessWorkList.stream()
.collect(Collectors.groupingBy(OrgNameVo::getSupplierId));
StringBuilder deptIds = new StringBuilder();
for (OrgNameVo orgName : accessWorkList) {
if (deptIds.length() > 0) {
deptIds.append(",");
}
deptIds.append(orgName.getDeptId());
deptIds.append(",");
deptIds.append(orgName.getOrgId());
}
Map<String, SysOrg> orgNaMap = null;
if (!StringUtils.isEmpty(deptIds.toString())) {
//构建 deptId -> SysOrg 的映射,方便后续查找
orgNaMap = orgService.getOrgDeptInfo(deptIds.toString());
}
for (BlackSupplierVo blackSupplierVo : blackSupplierVos) {
List<OrgNameVo> orgNameVos = groupedBySupplier.get(blackSupplierVo.getSupplierId());
if (orgNameVos != null) {
for (OrgNameVo vos : orgNameVos) {
if (orgNaMap.containsKey(vos.getOrgId())) {
vos.setOrgName(orgNaMap.get(vos.getOrgId()).getOrgName());
}
if (orgNaMap.containsKey(vos.getDeptId())) {
vos.setDeptName(orgNaMap.get(vos.getDeptId()).getOrgName());
}
}
blackSupplierVo.setOrgNameList(orgNameVos);
}
List<TaskUserVo> taskUserVos = new ArrayList<>();
List<String> strings = suppMap.get(blackSupplierVo.getSupplierId());
if (!strings.isEmpty()) {
@ -142,7 +179,8 @@ public class CoscoAnnualreviewTaskServiceImpl implements ICoscoAnnualreviewTaskS
}
}
blackSupplierVo.setUserList(taskUserVos);
});
}
vo.setBlackSupplierVos(blackSupplierVos);
vo.setSupplierPeopleVo(list);
vo.setUserList(userInfo);
@ -174,10 +212,11 @@ public class CoscoAnnualreviewTaskServiceImpl implements ICoscoAnnualreviewTaskS
BaseCacheUser currentUser = TokenUtil.getCurrentUser();
String userId = currentUser.getUserId();
taskVo.setUpdateBy(userId);
taskVo.setOrgId(currentUser.getOrganizationId());
taskVo.setDeptId(currentUser.getDeptId());
taskVo.setId(PropertyUtils.getSnowflakeId());
taskVo.setCreateBy(userId);
if(taskVo.getCategoryId()!=null){
if (taskVo.getCategoryId() != null) {
CoscoCategoryMaintenance category = coscoCategoryService.getCategoryNameById(taskVo.getCategoryId());
taskVo.setCategoryName(category.getCategoryName());
taskVo.setCategoryPathName(category.getPathName());
@ -186,7 +225,7 @@ public class CoscoAnnualreviewTaskServiceImpl implements ICoscoAnnualreviewTaskS
taskVo.setStatus(AnnualreviewTaskConstant.NOT_START);
coscoAnnualreviewTaskMapper.insertCoscoAnnualreviewTask(taskVo);
addList(taskVo);
if(taskVo.getStartTime().getTime()<=System.currentTimeMillis()){
if (taskVo.getStartTime().getTime() <= System.currentTimeMillis()) {
annualScheduledTasksService.MessageTask(taskVo.getId());
}
return 1;
@ -262,7 +301,7 @@ public class CoscoAnnualreviewTaskServiceImpl implements ICoscoAnnualreviewTaskS
@Transactional(rollbackFor = Exception.class)
public int updateCoscoAnnualreviewTask(AddTaskVo taskVo) {
taskVo.setUpdateTime(new Date());
if(taskVo.getCategoryId()!=null){
if (taskVo.getCategoryId() != null) {
CoscoCategoryMaintenance category = coscoCategoryService.getCategoryNameById(taskVo.getCategoryId());
taskVo.setCategoryName(category.getCategoryName());
taskVo.setCategoryPathName(category.getPathName());
@ -299,6 +338,8 @@ public class CoscoAnnualreviewTaskServiceImpl implements ICoscoAnnualreviewTaskS
public IPage<CoscoAnnualreviewTaskListVo> getPage(CoscoAnnualreviewTaskListVo taskListVo) {
IPage<CoscoAnnualreviewTaskListVo> p = new Page<>(taskListVo.getBasePageRequest().getPageNo(),
taskListVo.getBasePageRequest().getPageSize());
BaseCacheUser currentUser = TokenUtil.getCurrentUser();
taskListVo.setOrgId(currentUser.getOrganizationId());
IPage<CoscoAnnualreviewTaskListVo> coscoAnnualreviewTaskListVoIPage = coscoAnnualreviewTaskMapper.selectPage(p, taskListVo);
//获取查询任务部门信息
String deptIds = coscoAnnualreviewTaskListVoIPage.getRecords().stream()
@ -306,9 +347,9 @@ public class CoscoAnnualreviewTaskServiceImpl implements ICoscoAnnualreviewTaskS
.filter(Objects::nonNull)
.map(Object::toString)
.collect(Collectors.joining(","));
if(!StringUtils.isEmpty(deptIds)){
if (!StringUtils.isEmpty(deptIds)) {
//构建 deptId -> SysOrg 的映射,方便后续查找
Map<String, SysOrg> orgMap = orgService.getOrgDeptInfo(deptIds);
Map<String, SysOrg> orgMap = orgService.getOrgDeptInfo(deptIds);
//遍历 pageData.getRecords(),设置部门名称和所属单位名称
for (CoscoAnnualreviewTaskListVo taskVo : coscoAnnualreviewTaskListVoIPage.getRecords()) {

View File

@ -33,4 +33,8 @@ public class AddTaskVo extends CoscoAnnualreviewTask {
* 评价状态名称
*/
private String statusName;
/**
* 单位id
*/
private String orgId;
}

View File

@ -46,6 +46,10 @@ public class CoscoAnnualreviewTaskListVo implements Serializable {
/** 品类限制类型0.通用不限品类、1.限制品类) */
private String categoryLimitation;
/**
* 单位id
*/
private String orgId;
@ApiModelProperty(value = "分页对象信息")
private BasePageRequest basePageRequest;

View File

@ -2,6 +2,7 @@ package com.chinaunicom.zyhy.ebtp.supplier.coscoBlack.vo;
import com.chinaunicom.mall.ebtp.common.base.entity.BaseEntity;
import com.chinaunicom.mall.ebtp.common.base.entity.BasePageRequest;
import com.chinaunicom.zyhy.ebtp.supplier.base.vo.OrgNameVo;
import com.chinaunicom.zyhy.ebtp.supplier.coscoEvaluate.vo.TaskUserVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -57,4 +58,6 @@ public class BlackSupplierVo implements Serializable {
private String categoryIds;
private List<OrgNameVo> orgNameList;
}

View File

@ -115,6 +115,10 @@ public class CoscoEvaluateTask extends BaseEntity {
* 品类全路径id
*/
private String categoryPathId;
/**
* 单位id
*/
private String orgId;
}

View File

@ -12,6 +12,7 @@ import com.chinaunicom.zyhy.ebtp.supplier.base.constant.CoscoCategoryConstant;
import com.chinaunicom.zyhy.ebtp.supplier.base.constant.SupplierUserConstant;
import com.chinaunicom.zyhy.ebtp.supplier.base.service.IOrgService;
import com.chinaunicom.zyhy.ebtp.supplier.base.service.IUserService;
import com.chinaunicom.zyhy.ebtp.supplier.base.vo.OrgNameVo;
import com.chinaunicom.zyhy.ebtp.supplier.base.vo.SelectUserVo;
import com.chinaunicom.zyhy.ebtp.supplier.base.vo.UserVo;
import com.chinaunicom.zyhy.ebtp.supplier.base.constant.MessageType;
@ -25,9 +26,12 @@ import com.chinaunicom.zyhy.ebtp.supplier.coscoEvaluate.service.ICoscoEvaluateTa
import com.chinaunicom.zyhy.ebtp.supplier.coscoEvaluate.service.ICoscoEvaluateTemplateIndicatorNdService;
import com.chinaunicom.zyhy.ebtp.supplier.coscoEvaluate.service.ScheduledTasksService;
import com.chinaunicom.zyhy.ebtp.supplier.coscoEvaluate.vo.*;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.dao.mapper.CoscoAccessWorkMapper;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.dao.mapper.CoscoSupplierBaseMapper;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoAccessWork;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.vo.OrgDeptVo;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.vo.SupplierPageVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -48,6 +52,8 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
@Autowired
private CoscoEvaluateTaskMapper coscoEvaluateTaskMapper;
@Autowired
private CoscoAccessWorkMapper coscoAccessWorkMapper;
@Autowired
private IUserService userService;
@Autowired
private IOrgService orgService;
@ -143,7 +149,30 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
Map<String, List<String>> suppMap = list.stream().collect(Collectors.toMap(TaskSupplierVo::getId, TaskSupplierVo::getUserIds, (existing, replacement) -> existing));
Map<String, UserVo> userMap = userService.getUser(new SelectUserVo()).stream().collect(Collectors.toMap(UserVo::getUserId, userVo -> userVo));
List<BlackSupplierVo> blackSupplierVos = coscoSupplierBaseMapper.selectSupplierByIds(supplierIds);
blackSupplierVos.forEach(blackSupplierVo -> {
SysOrg orgInfo = orgService.getOrgInfo(addCoscoEvaluateTaskVo.getDeptId());
List<OrgNameVo> accessWorkList =new ArrayList<>();
if(orgInfo!=null){
String orgFullId = orgInfo.getOrgFullId();
String[] split = orgFullId.split(",");
accessWorkList = coscoAccessWorkMapper.selectAccessWorkBySupplerIdsIdAndOrgId(supplierIds, Arrays.asList(split));
}
Map<String, List<OrgNameVo>> groupedBySupplier = accessWorkList.stream()
.collect(Collectors.groupingBy(OrgNameVo::getSupplierId));
StringBuilder deptIds = new StringBuilder();
for (OrgNameVo orgName : accessWorkList) {
if (deptIds.length() > 0) {
deptIds.append(",");
}
deptIds.append(orgName.getDeptId());
deptIds.append(",");
deptIds.append(orgName.getOrgId());
}
Map<String, SysOrg> orgNaMap = null;
if (!StringUtils.isEmpty(deptIds.toString())) {
//构建 deptId -> SysOrg 的映射,方便后续查找
orgNaMap = orgService.getOrgDeptInfo(deptIds.toString());
}
for (BlackSupplierVo blackSupplierVo : blackSupplierVos) {
List<String> strings = suppMap.get(blackSupplierVo.getSupplierId());
List<TaskUserVo> taskUserVos = new ArrayList<>();
strings.forEach(userId -> {
@ -161,11 +190,23 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
vo.setUserDeptId(userVo.getUserDeptId());
vo.setIsSelected(true);
}
taskUserVos.add(vo);
});
blackSupplierVo.setUserList(taskUserVos);
});
List<OrgNameVo> orgNameVos = groupedBySupplier.get(blackSupplierVo.getSupplierId());
if (orgNameVos != null) {
for (OrgNameVo vo : orgNameVos) {
if (orgNaMap.containsKey(vo.getOrgId())) {
vo.setOrgName(orgNaMap.get(vo.getOrgId()).getOrgName());
}
if (orgNaMap.containsKey(vo.getDeptId())) {
vo.setDeptName(orgNaMap.get(vo.getDeptId()).getOrgName());
}
}
blackSupplierVo.setOrgNameList(orgNameVos);
}
}
addCoscoEvaluateTaskVo.setBlackSupplierVos(blackSupplierVos);
addCoscoEvaluateTaskVo.setIndicatorList(vos);
} catch (Exception e) {
@ -276,12 +317,13 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
public IPage<CoscoEvaluateTaskListVo> getPage(CoscoEvaluateTaskListVo taskListVo) {
IPage<CoscoEvaluateTaskListVo> p = new Page<>(taskListVo.getBasePageRequest().getPageNo(),
taskListVo.getBasePageRequest().getPageSize());
BaseCacheUser currentUser = TokenUtil.getCurrentUser();
taskListVo.setOrgId(currentUser.getOrganizationId());
//获取分页数据
IPage<CoscoEvaluateTaskListVo> coscoEvaluateTaskListVoIPage = coscoEvaluateTaskMapper.selectMyPage(p, taskListVo);
//根据分页数据获取是否显示分工
List<String> taskIds = coscoEvaluateTaskListVoIPage.getRecords().stream().map(CoscoEvaluateTaskListVo::getId).collect(Collectors.toList());
//获取本部门id
BaseCacheUser currentUser = TokenUtil.getCurrentUser();
taskListVo.setDeptId(currentUser.getOrganizationId());
taskListVo.setTaskIds(taskIds);
//获取上级部门id
@ -548,7 +590,7 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
if (addCoscoEvaluateTaskVo.getTaskStatus() != null) {
coscoEvaluateTaskAssignDeptService.insertAssignDept(addCoscoEvaluateTaskVo);
}
if(addCoscoEvaluateTaskVo.getStartTime().getTime()<=System.currentTimeMillis()){
if (addCoscoEvaluateTaskVo.getStartTime().getTime() <= System.currentTimeMillis()) {
scheduledTasksService.MessageTask(addCoscoEvaluateTaskVo.getId());
}
}

View File

@ -84,6 +84,8 @@ public class CoscoEvaluateTaskListVo implements Serializable {
*/
private String createBy;
private String orgId;
@ApiModelProperty(value = "分页对象信息")
private BasePageRequest basePageRequest;

View File

@ -1,6 +1,7 @@
package com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.dao.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.chinaunicom.zyhy.ebtp.supplier.base.vo.OrgNameVo;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoAccessWork;
import org.apache.ibatis.annotations.Param;
@ -16,6 +17,7 @@ public interface CoscoAccessWorkMapper {
/**
* 供应商准入管理列表
*
* @param page
* @param vo
* @return
@ -24,6 +26,7 @@ public interface CoscoAccessWorkMapper {
/**
* 供应商准入评审列表
*
* @param page
* @param vo
* @return
@ -31,7 +34,6 @@ public interface CoscoAccessWorkMapper {
IPage<CoscoAccessWork> selectCoscoAccessWorkUserReviewPage(IPage<CoscoAccessWork> page, @Param("vo") CoscoAccessWork vo);
IPage<CoscoAccessWork> selectApproveList(CoscoAccessWork coscoAccessWork);
/**
@ -44,12 +46,12 @@ public interface CoscoAccessWorkMapper {
/**
* 统计准入类别数量
*
* @return
*/
public List<CoscoAccessWork> selectAccessTypeCountNum();
/**
* 查询供应商准入_准入申请工作主列表
*
@ -90,4 +92,13 @@ public interface CoscoAccessWorkMapper {
* @return 结果
*/
public int deleteCoscoAccessWorkByIds(String[] ids);
/**
* 根据供应商id和部门信息查询供应商准入部门信息
*
* @param supplierIds
* @param orgFullId
* @return
*/
List<OrgNameVo> selectAccessWorkBySupplerIdsIdAndOrgId(@Param("supplierId") List<String> supplierIds, @Param("orgId") List<String> orgFullId);
}

View File

@ -11,6 +11,7 @@ import com.chinaunicom.mall.ebtp.common.util.PropertyUtils;
import com.chinaunicom.zyhy.ebtp.supplier.base.service.IDictService;
import com.chinaunicom.zyhy.ebtp.supplier.base.service.IOrgService;
import com.chinaunicom.zyhy.ebtp.supplier.base.service.IUserService;
import com.chinaunicom.zyhy.ebtp.supplier.base.vo.OrgNameVo;
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;
@ -606,28 +607,49 @@ public class CoscoSupplierBaseServiceImpl extends BaseServiceImpl<CoscoSupplierB
}
supplierPageVo.setLibrarySupplierIdList(supplierIds);
}
SysOrg orgInfo = orgService.getOrgInfo(supplierPageVo.getOrgId());
if(orgInfo!=null){
String orgFullId = orgInfo.getOrgFullId();
String[] split = orgFullId.split(",");
supplierPageVo.setBlackDept(Arrays.asList(split));
supplierPageVo.setAllOrgIds(Arrays.asList(split));
}
IPage<CoscoSupplierBase> page = new Page<>(supplierPageVo.getBasePageRequest().getPageNo(), supplierPageVo.getBasePageRequest().getPageSize());
IPage<SupplierPageVo> supplierPage = coscoSupplierBaseMapper.getSupplierPage(page, supplierPageVo);
//提取所有 deptId并用逗号拼接成字符串
StringBuilder deptIds = new StringBuilder();
for(SupplierPageVo rec:supplierPage.getRecords()){
List<OrgNameVo> orgNameList = rec.getOrgNameList();
for(OrgNameVo orgName:orgNameList){
if(deptIds.length()>0){
deptIds.append(",");
}
deptIds.append(orgName.getDeptId());
deptIds.append(",");
deptIds.append(orgName.getOrgId());
}
}
/* //提取所有 deptId并用逗号拼接成字符串
String deptIds = supplierPage.getRecords().stream()
.map(SupplierPageVo::getDeptId)
.filter(Objects::nonNull)
.map(Object::toString)
.collect(Collectors.joining(","));
if(!StringUtils.isEmpty(deptIds)){
.collect(Collectors.joining(","));*/
if(deptIds!=null && !StringUtils.isEmpty(deptIds.toString())){
//构建 deptId -> SysOrg 的映射,方便后续查找
Map<String, SysOrg> orgMap = orgService.getOrgDeptInfo(deptIds);
Map<String, SysOrg> orgNaMap = orgService.getOrgDeptInfo(deptIds.toString());
//遍历 pageData.getRecords(),设置部门名称和所属单位名称
for (SupplierPageVo vo : supplierPage.getRecords()) {
String deptId = vo.getDeptId();
if (deptId != null && orgMap.containsKey(deptId)) {
SysOrg org = orgMap.get(deptId);
vo.setDeptName(org.getOrgName()); // 设置部门名称
vo.setOrgName(org.getCuCompanyName());// 设置单位名称
}
vo.getOrgNameList().forEach(orgName -> {
if(orgNaMap.containsKey(orgName.getOrgId())){
orgName.setOrgName(orgNaMap.get(orgName.getOrgId()).getOrgName());
}
if(orgNaMap.containsKey(orgName.getDeptId())){
orgName.setDeptName(orgNaMap.get(orgName.getDeptId()).getOrgName());
}
});
}
}

View File

@ -1,6 +1,8 @@
package com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.vo;
import com.chinaunicom.mall.ebtp.common.base.entity.BasePageRequest;
import com.chinaunicom.zyhy.ebtp.supplier.base.vo.OrgNameVo;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoAccessSupplierCategory;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -8,7 +10,7 @@ import java.util.Date;
import java.util.List;
@Data
public class SupplierPageVo {
public class SupplierPageVo {
/**
* 供应商ID
@ -87,7 +89,7 @@ public class SupplierPageVo {
/**
* 黑名单部门list
*/
private List<String> blackListDept;
private List<String> blackDept;
/**
* 企业类型
@ -100,6 +102,10 @@ public class SupplierPageVo {
private String socialCreditCode;
private String orgIds;
private List<String> allOrgIds;
/**
* 三合一统一信用代码
*/
@ -111,4 +117,13 @@ public class SupplierPageVo {
* 品类集合
*/
private String categoryIds;
/**
* 品类集合
*/
private List<CoscoAccessSupplierCategory> categoryNameList;
/**
* 部门名称集合
*/
private List<OrgNameVo> orgNameList;
}

View File

@ -2,17 +2,20 @@ package com.chinaunicom.zyhy.ebtp.supplier.dataStatistics.service.impl;
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.entity.SysUser;
import com.chinaunicom.mall.ebtp.common.base.util.TokenUtil;
import com.chinaunicom.zyhy.ebtp.supplier.base.service.IOrgService;
import com.chinaunicom.zyhy.ebtp.supplier.base.service.IUserService;
import com.chinaunicom.zyhy.ebtp.supplier.base.vo.OrgNameVo;
import com.chinaunicom.zyhy.ebtp.supplier.coscoAnnualreview.dao.CoscoAnnualreviewTaskSupplierMapper;
import com.chinaunicom.zyhy.ebtp.supplier.coscoCategory.service.ICoscoCategoryService;
import com.chinaunicom.zyhy.ebtp.supplier.coscoEvaluate.dao.CoscoEvaluateTaskSupplierMapper;
import com.chinaunicom.zyhy.ebtp.supplier.coscoEvaluate.vo.CoscoEvaluateTaskListVo;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.dao.mapper.CoscoAccessWorkMapper;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.dao.mapper.CoscoSupplierQualificationsMapper;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.dao.mapper.CoscoSupplierexitMapper;
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.vo.OrgDeptVo;
import com.chinaunicom.zyhy.ebtp.supplier.dataStatistics.service.DataStatisticeService;
import com.chinaunicom.zyhy.ebtp.supplier.dataStatistics.vo.SupplierAnnualReviewStatisticsVo;
import com.chinaunicom.zyhy.ebtp.supplier.dataStatistics.vo.SupplierEvaluateStatisticsVo;
@ -20,10 +23,13 @@ import com.chinaunicom.zyhy.ebtp.supplier.dataStatistics.vo.SupplierExitStatisti
import com.chinaunicom.zyhy.ebtp.supplier.dataStatistics.vo.SupplierQualificationExpireVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@Service
public class DataStatisticeServiceImpl implements DataStatisticeService {
@ -36,10 +42,10 @@ public class DataStatisticeServiceImpl implements DataStatisticeService {
@Autowired
private CoscoSupplierexitMapper coscoSupplierexitMapper;
@Autowired
private ICoscoCategoryService coscoCategoryService;
@Autowired
private IUserService userService;
@Autowired
private CoscoAccessWorkMapper coscoAccessWorkMapper;
@Autowired
private IOrgService orgService;
@Autowired
@ -49,11 +55,10 @@ public class DataStatisticeServiceImpl implements DataStatisticeService {
public IPage<SupplierEvaluateStatisticsVo> getSupplierEvaluateStatistics(SupplierEvaluateStatisticsVo vo) {
IPage<CoscoEvaluateTaskListVo> p = new Page<>(vo.getBasePageRequest().getPageNo(),
vo.getBasePageRequest().getPageSize());
BaseCacheUser currentUser = TokenUtil.getCurrentUser();
vo.setOrgId(currentUser.getOrganizationId());
IPage<SupplierEvaluateStatisticsVo> supplierEvaluateStatistics = coscoEvaluateTaskMapper.getSupplierEvaluateStatistics(p, vo);
supplierEvaluateStatistics.getRecords().forEach(item -> {
});
getEvalOrgName(supplierEvaluateStatistics.getRecords());
return supplierEvaluateStatistics;
}
@ -61,9 +66,10 @@ public class DataStatisticeServiceImpl implements DataStatisticeService {
public IPage<SupplierAnnualReviewStatisticsVo> getSupplierAnnualReviewStatistics(SupplierAnnualReviewStatisticsVo vo) {
IPage<SupplierAnnualReviewStatisticsVo> p = new Page<>(vo.getBasePageRequest().getPageNo(),
vo.getBasePageRequest().getPageSize());
BaseCacheUser currentUser = TokenUtil.getCurrentUser();
vo.setOrgId(currentUser.getOrganizationId());
IPage<SupplierAnnualReviewStatisticsVo> supplierAnnualReviewStatistics = coscoAnnualreviewTaskMapper.getSupplierAnnualReviewStatistics(p, vo);
supplierAnnualReviewStatistics.getRecords().forEach(item -> {
});
getAnnalOrgName(supplierAnnualReviewStatistics.getRecords());
return supplierAnnualReviewStatistics;
}
@ -75,24 +81,67 @@ public class DataStatisticeServiceImpl implements DataStatisticeService {
*/
@Override
public List<SupplierAnnualReviewStatisticsVo> getSupplierAnnualReviewStatisticsList(SupplierAnnualReviewStatisticsVo vo) {
BaseCacheUser currentUser = TokenUtil.getCurrentUser();
vo.setOrgId(currentUser.getOrganizationId());
List<SupplierAnnualReviewStatisticsVo> supplierAnnualReviewStatisticsList = coscoAnnualreviewTaskMapper.getSupplierAnnualReviewStatisticsList(vo);
supplierAnnualReviewStatisticsList.forEach(item -> {
StringBuilder builder = new StringBuilder();
if (item.getCategoryIds() != null && item.getCategoryIds().length() > 0) {
String[] split = item.getCategoryIds().split(",");
for (String s : split) {
builder.append(coscoCategoryService.getCategoryNameById(s).getCategoryName());
getAnnalOrgName(supplierAnnualReviewStatisticsList);
return supplierAnnualReviewStatisticsList;
}
private void getAnnalOrgName(List<SupplierAnnualReviewStatisticsVo> supplierAnnualReviewStatisticsList) {
if(!supplierAnnualReviewStatisticsList.isEmpty()) {
List<String> supplierIds = supplierAnnualReviewStatisticsList.stream()
.map(SupplierAnnualReviewStatisticsVo::getSupplierId) // 假设 getId() 方法存在
.collect(Collectors.toList());
BaseCacheUser currentUser = TokenUtil.getCurrentUser();
SysOrg orgInfo = orgService.getOrgInfo(currentUser.getOrganizationId());
List<OrgNameVo> accessWorkList = new ArrayList<>();
if (orgInfo != null) {
String orgFullId = orgInfo.getOrgFullId();
String[] split = orgFullId.split(",");
accessWorkList = coscoAccessWorkMapper.selectAccessWorkBySupplerIdsIdAndOrgId(supplierIds, Arrays.asList(split));
}
Map<String, List<OrgNameVo>> groupedBySupplier = accessWorkList.stream()
.collect(Collectors.groupingBy(OrgNameVo::getSupplierId));
StringBuilder deptIds = new StringBuilder();
for (OrgNameVo orgName : accessWorkList) {
if (deptIds.length() > 0) {
deptIds.append(",");
}
deptIds.append(orgName.getDeptId());
deptIds.append(",");
deptIds.append(orgName.getOrgId());
}
Map<String, SysOrg> orgNaMap = null;
if (!StringUtils.isEmpty(deptIds.toString())) {
//构建 deptId -> SysOrg 的映射,方便后续查找
orgNaMap = orgService.getOrgDeptInfo(deptIds.toString());
}
for (SupplierAnnualReviewStatisticsVo item : supplierAnnualReviewStatisticsList) {
List<OrgNameVo> orgNameVos = groupedBySupplier.get(item.getSupplierId());
if (orgNameVos != null) {
for (OrgNameVo vos : orgNameVos) {
if (orgNaMap.containsKey(vos.getOrgId())) {
vos.setOrgName(orgNaMap.get(vos.getOrgId()).getOrgName());
}
if (orgNaMap.containsKey(vos.getDeptId())) {
vos.setDeptName(orgNaMap.get(vos.getDeptId()).getOrgName());
}
}
item.setOrgNameList(orgNameVos);
}
}
item.setCategoryName(builder.toString());
});
return supplierAnnualReviewStatisticsList;
}
}
@Override
public IPage<SupplierExitStatisticsVo> getSupplierExitStatistics(SupplierExitStatisticsVo vo) {
IPage<SupplierExitStatisticsVo> p = new Page<>(vo.getBasePageRequest().getPageNo(),
vo.getBasePageRequest().getPageSize());
BaseCacheUser currentUser = TokenUtil.getCurrentUser();
vo.setOrgId(currentUser.getOrganizationId());
IPage<SupplierExitStatisticsVo> supplierExitStatistics = coscoSupplierexitMapper.getSupplierExitStatistics(p, vo);
supplierExitStatistics.getRecords().forEach(item -> {
item.setCategoryName(item.getCategory());
@ -115,20 +164,64 @@ public class DataStatisticeServiceImpl implements DataStatisticeService {
* @return
*/
public List<SupplierExitStatisticsVo> getSupplierExitStatisticsList(SupplierExitStatisticsVo vo) {
return coscoSupplierexitMapper.getSupplierExitStatisticsList(vo);
BaseCacheUser currentUser = TokenUtil.getCurrentUser();
vo.setOrgId(currentUser.getOrganizationId());
List<SupplierExitStatisticsVo> supplierExitStatisticsList = coscoSupplierexitMapper.getSupplierExitStatisticsList(vo);
supplierExitStatisticsList.forEach(item -> {
item.setCategoryName(item.getCategory());
SysUser userById = userService.getUserById(item.getApplyUser());
if(userById!=null){
SysOrg orgInfo = orgService.getOrgInfo(userById.getOrgId());
item.setAccessUnit(orgInfo.getCuCompanyName());
item.setAccessDept(orgInfo.getOrgName());
item.setApplyUser(userById.getName());
}
});
return supplierExitStatisticsList;
}
@Override
public IPage<SupplierQualificationExpireVo> getSupplierQualificationExpire(SupplierQualificationExpireVo vo) {
IPage<SupplierQualificationExpireVo> p = new Page<>(vo.getBasePageRequest().getPageNo(),
vo.getBasePageRequest().getPageSize());
BaseCacheUser currentUser = TokenUtil.getCurrentUser();
vo.setOrgId(currentUser.getOrganizationId());
IPage<SupplierQualificationExpireVo> supplierExitStatistics = coscoSupplierQualificationsMapper.getSupplierExitStatistics(p, vo);
getQualOrgName(supplierExitStatistics.getRecords());
supplierExitStatistics.getRecords().forEach(item -> {
item.setCategoryName(item.getCategory());
});
return supplierExitStatistics;
}
private void getQualOrgName(List<SupplierQualificationExpireVo> supplierExitStatistics) {
if(!supplierExitStatistics.isEmpty()) {
StringBuilder deptIds = new StringBuilder();
for (SupplierQualificationExpireVo expireVo : supplierExitStatistics) {
if (deptIds.length() > 0) {
deptIds.append(",");
}
deptIds.append(expireVo.getDeptId());
deptIds.append(",");
deptIds.append(expireVo.getOrgId());
}
Map<String, SysOrg> orgNaMap = null;
if (!StringUtils.isEmpty(deptIds.toString())) {
//构建 deptId -> SysOrg 的映射,方便后续查找
orgNaMap = orgService.getOrgDeptInfo(deptIds.toString());
}
for (SupplierQualificationExpireVo item : supplierExitStatistics) {
if (orgNaMap.containsKey(item.getDeptId())) {
item.setAccessDept(orgNaMap.get(item.getDeptId()).getOrgName());
}
if (orgNaMap.containsKey(item.getOrgId())) {
item.setAccessUnit(orgNaMap.get(item.getOrgId()).getOrgName());
}
}
}
}
/**
* 供应商资质
*
@ -136,22 +229,68 @@ public class DataStatisticeServiceImpl implements DataStatisticeService {
* @return
*/
public List<SupplierQualificationExpireVo> getSupplierQualificationExpireList(SupplierQualificationExpireVo vo) {
return coscoSupplierQualificationsMapper.getSupplierQualificationExpireList(vo);
BaseCacheUser currentUser = TokenUtil.getCurrentUser();
vo.setOrgId(currentUser.getOrganizationId());
List<SupplierQualificationExpireVo> supplierQualificationExpireList = coscoSupplierQualificationsMapper.getSupplierQualificationExpireList(vo);
getQualOrgName(supplierQualificationExpireList);
supplierQualificationExpireList.forEach(item -> {
item.setCategoryName(item.getCategory());
});
return supplierQualificationExpireList;
}
@Override
public List<SupplierEvaluateStatisticsVo> getSupplierEvaluateStatisticsList(SupplierEvaluateStatisticsVo vo) {
BaseCacheUser currentUser = TokenUtil.getCurrentUser();
vo.setOrgId(currentUser.getOrganizationId());
List<SupplierEvaluateStatisticsVo> supplierEvaluateStatisticsList = coscoEvaluateTaskMapper.getSupplierEvaluateStatisticsList(vo);
supplierEvaluateStatisticsList.forEach(item -> {
if (item.getCategoryIds() != null && item.getCategoryIds().length() > 0) {
String[] split = item.getCategoryIds().split(",");
StringBuilder builder = new StringBuilder();
for (String s : split) {
builder.append(coscoCategoryService.getCategoryNameById(s).getCategoryName());
}
item.setCategoryName(builder.toString());
}
});
getEvalOrgName(supplierEvaluateStatisticsList);
return supplierEvaluateStatisticsList;
}
private void getEvalOrgName(List<SupplierEvaluateStatisticsVo> supplierEvaluateStatisticsList) {
if(!supplierEvaluateStatisticsList.isEmpty()){
List<String> supplierIds = supplierEvaluateStatisticsList.stream()
.map(SupplierEvaluateStatisticsVo::getId) // 假设 getId() 方法存在
.collect(Collectors.toList());
BaseCacheUser currentUser = TokenUtil.getCurrentUser();
SysOrg orgInfo = orgService.getOrgInfo(currentUser.getOrganizationId());
List<OrgNameVo> accessWorkList =new ArrayList<>();
if(orgInfo!=null){
String orgFullId = orgInfo.getOrgFullId();
String[] split = orgFullId.split(",");
accessWorkList = coscoAccessWorkMapper.selectAccessWorkBySupplerIdsIdAndOrgId(supplierIds, Arrays.asList(split));
}
Map<String, List<OrgNameVo>> groupedBySupplier = accessWorkList.stream()
.collect(Collectors.groupingBy(OrgNameVo::getSupplierId));
StringBuilder deptIds = new StringBuilder();
for (OrgNameVo orgName : accessWorkList) {
if (deptIds.length() > 0) {
deptIds.append(",");
}
deptIds.append(orgName.getDeptId());
deptIds.append(",");
deptIds.append(orgName.getOrgId());
}
Map<String, SysOrg> orgNaMap = null;
if (!StringUtils.isEmpty(deptIds.toString())) {
//构建 deptId -> SysOrg 的映射,方便后续查找
orgNaMap = orgService.getOrgDeptInfo(deptIds.toString());
}
for (SupplierEvaluateStatisticsVo item : supplierEvaluateStatisticsList) {
List<OrgNameVo> orgNameVos = groupedBySupplier.get(item.getId());
if (orgNameVos != null) {
for (OrgNameVo vos : orgNameVos) {
if (orgNaMap.containsKey(vos.getOrgId())) {
vos.setOrgName(orgNaMap.get(vos.getOrgId()).getOrgName());
}
if (orgNaMap.containsKey(vos.getDeptId())) {
vos.setDeptName(orgNaMap.get(vos.getDeptId()).getOrgName());
}
}
item.setOrgNameList(orgNameVos);
}
}
}
}
}

View File

@ -2,9 +2,12 @@ package com.chinaunicom.zyhy.ebtp.supplier.dataStatistics.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import com.chinaunicom.mall.ebtp.common.base.entity.BasePageRequest;
import com.chinaunicom.zyhy.ebtp.supplier.base.vo.OrgNameVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* 供应商年度评价统计
*/
@ -59,5 +62,9 @@ public class SupplierAnnualReviewStatisticsVo {
@ApiModelProperty(value = "分页对象信息")
private BasePageRequest basePageRequest;
private List<OrgNameVo> orgNameList;
private String orgId;
}

View File

@ -2,9 +2,12 @@ package com.chinaunicom.zyhy.ebtp.supplier.dataStatistics.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import com.chinaunicom.mall.ebtp.common.base.entity.BasePageRequest;
import com.chinaunicom.zyhy.ebtp.supplier.base.vo.OrgNameVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
public class SupplierEvaluateStatisticsVo {
/**
@ -55,4 +58,8 @@ public class SupplierEvaluateStatisticsVo {
@ApiModelProperty(value = "分页对象信息")
private BasePageRequest basePageRequest;
private String orgId;
private List<OrgNameVo> orgNameList;
}

View File

@ -48,6 +48,7 @@ public class SupplierExitStatisticsVo {
private String category;
private String orgId;
@ApiModelProperty(value = "分页对象信息")
private BasePageRequest basePageRequest;
}

View File

@ -2,9 +2,12 @@ package com.chinaunicom.zyhy.ebtp.supplier.dataStatistics.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import com.chinaunicom.mall.ebtp.common.base.entity.BasePageRequest;
import com.chinaunicom.zyhy.ebtp.supplier.base.vo.OrgNameVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* 供应商资质到期提醒视图对象
@ -64,9 +67,19 @@ public class SupplierQualificationExpireVo {
private BasePageRequest basePageRequest;
private String category;
/**
* 单位id
*/
private String orgId;
/**
* 资质名称
*/
private String qualificationsName;
/**
* 部门id
*/
private String deptId;
private List<OrgNameVo> orgNameList;
}

View File

@ -142,6 +142,7 @@
<if test="categoryName != null">category_name,</if>
<if test="categoryPathName != null">category_path_name,</if>
<if test="categoryPathId != null">category_path_id,</if>
<if test="orgId != null">org_id,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
@ -163,7 +164,7 @@
<if test="categoryName != null">#{categoryName},</if>
<if test="categoryPathName != null">#{categoryPathName},</if>
<if test="categoryPathId != null">#{categoryPathId},</if>
<if test="orgId != null">#{orgId},</if>
</trim>
</insert>
<insert id="batchCoscoAnnualreviewTask" parameterType="java.util.List">
@ -283,6 +284,9 @@
<if test="vo.status != null ">
and cat.status = #{vo.status}
</if>
<if test="vo.orgId != null ">
and cat.org_id = #{vo.orgId}
</if>
<if test="vo.createBy != null and vo.createBy!=''">
and cat.create_by = #{vo.createBy}
</if>

View File

@ -239,6 +239,9 @@
<if test="annualreviewYear!=null and annualreviewYear!=''">
and cat.annualreview_year = #{annualreviewYear}
</if>
<if test="vo.orgId!=null and vo.orgId!=''">
and cat.org_id = #{vo.orgId}
</if>
and review_result is not null
</where>
@ -288,6 +291,9 @@
<if test="vo.annualreviewYear!=null and vo.annualreviewYear!=''">
and cat.annualreview_year = #{vo.annualreviewYear}
</if>
<if test="vo.orgId!=null and vo.orgId!=''">
and cat.org_id = #{vo.orgId}
</if>
and review_result is not null
</where>

View File

@ -231,6 +231,7 @@
<if test="categoryName != null">category_name,</if>
<if test="categoryPathName != null">category_path_name,</if>
<if test="categoryPathId != null">category_path_id,</if>
<if test="orgId != null">org_id,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
@ -255,7 +256,7 @@
<if test="categoryName != null">#{categoryName},</if>
<if test="categoryPathName != null">#{categoryPathName},</if>
<if test="categoryPathId != null">#{categoryPathId},</if>
<if test="orgId != null">#{orgId},</if>
</trim>
</insert>
<insert id="batchCoscoEvaluateTask" parameterType="java.util.List">
@ -454,6 +455,9 @@
<if test="vo.status!=null">
and cet.status=#{vo.status}
</if>
<if test="vo.orgId!=null">
and cet.org_id=#{vo.orgId}
</if>
<if test="vo.startTime!=null and vo.endTime!=null">
and (cet.start_time >= #{vo.startTime} and cet.end_time &lt;= #{vo.endTime})
</if>

View File

@ -374,6 +374,9 @@
<if test="evaluateResult!=null and evaluateResult!=''">
and cets.review_result = #{evaluateResult}
</if>
<if test="vo.orgId!=null and vo.orgId!=''">
and cet.org_id = #{vo.orgId}
</if>
</where>
order by cets.create_time desc
</select>
@ -416,6 +419,9 @@
<if test="vo.supplierName!=null and vo.supplierName!=''">
and csb.name like concat('%',#{vo.supplierName},'%')
</if>
<if test="vo.orgId!=null and vo.orgId!=''">
and cet.org_id = #{vo.orgId}
</if>
<if test="vo.evaluateYear!=null and vo.evaluateYear!=''">
and cet.evaluate_year = #{vo.evaluateYear}
</if>

View File

@ -469,4 +469,22 @@
#{id}
</foreach>
</update>
<select id="selectAccessWorkBySupplerIdsIdAndOrgId" parameterType="map" resultType="com.chinaunicom.zyhy.ebtp.supplier.base.vo.OrgNameVo">
select cas.dept_id, cas.org_id , cas.supplier_id
from cosco_access_supplier cas
left join cosco_access_work caw on cas.access_work_id = caw.id and caw.apply_type='0'
where
cas.supplier_id in
<foreach collection="supplierId" item="id" separator="," open="(" close=")">
#{id}
</foreach>
and cas.org_id in
<foreach collection="orgId" item="org" separator="," open="(" close=")">
#{org}
</foreach>
and cas.access_status = 1
and caw.del_flag='normal'
</select>
</mapper>

View File

@ -4,51 +4,52 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.dao.mapper.CoscoSupplierBaseMapper">
<resultMap type="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase" id="CoscoSupplierBaseResult">
<result property="id" column="id"/>
<result property="supplierType" column="supplier_type"/>
<result property="licenceAccessory" column="licence_accessory"/>
<result property="licenceDate" column="licence_date"/>
<result property="enterpriseType" column="enterprise_type"/>
<result property="name" column="name"/>
<result property="nameEn" column="name_en"/>
<result property="socialCreditCode" column="social_credit_code"/>
<result property="range" column="range"/>
<result property="regAddress" column="reg_address"/>
<result property="workAddress" column="work_address"/>
<result property="parentCompanyInvestor" column="parent_company_investor"/>
<result property="legalPerson" column="legal_person"/>
<result property="idCard" column="id_card"/>
<result property="capital" column="capital"/>
<result property="contactsName" column="contacts_name"/>
<result property="contactsPhone" column="contacts_phone"/>
<result property="contactsType" column="contacts_type"/>
<result property="contactsEmail" column="contacts_email"/>
<result property="telephone" column="telephone"/>
<result property="nation" column="nation"/>
<result property="vat" column="vat"/>
<result property="taxpayerId" column="taxpayer_id"/>
<result property="currency" column="currency"/>
<result property="personName" column="person_name"/>
<result property="personPhone" column="person_phone"/>
<result property="personBank" column="person_bank"/>
<result property="personAccount" column="person_account"/>
<result property="remark" column="remark"/>
<result property="accessStatus" column="access_status"/>
<result property="blacklistStatus" column="blacklist_status"/>
<result property="greylistStatus" column="greylist_status"/>
<result property="fillinStatus" column="fillin_status"/>
<result property="fillinBy" column="fillin_by"/>
<result property="sapCode" column="sap_code"/>
<result property="delFlag" column="del_flag"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
<result property="lastUpdateTime" column="last_update_time"/>
<result property="supplierTypeCn" column="supplier_type_cn"/>
<result property="accessStatusCn" column="access_status_cn"/>
<result property="enterpriseTypeCn" column="enterprise_type_cn"/>
<resultMap type="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase"
id="CoscoSupplierBaseResult">
<result property="id" column="id"/>
<result property="supplierType" column="supplier_type"/>
<result property="licenceAccessory" column="licence_accessory"/>
<result property="licenceDate" column="licence_date"/>
<result property="enterpriseType" column="enterprise_type"/>
<result property="name" column="name"/>
<result property="nameEn" column="name_en"/>
<result property="socialCreditCode" column="social_credit_code"/>
<result property="range" column="range"/>
<result property="regAddress" column="reg_address"/>
<result property="workAddress" column="work_address"/>
<result property="parentCompanyInvestor" column="parent_company_investor"/>
<result property="legalPerson" column="legal_person"/>
<result property="idCard" column="id_card"/>
<result property="capital" column="capital"/>
<result property="contactsName" column="contacts_name"/>
<result property="contactsPhone" column="contacts_phone"/>
<result property="contactsType" column="contacts_type"/>
<result property="contactsEmail" column="contacts_email"/>
<result property="telephone" column="telephone"/>
<result property="nation" column="nation"/>
<result property="vat" column="vat"/>
<result property="taxpayerId" column="taxpayer_id"/>
<result property="currency" column="currency"/>
<result property="personName" column="person_name"/>
<result property="personPhone" column="person_phone"/>
<result property="personBank" column="person_bank"/>
<result property="personAccount" column="person_account"/>
<result property="remark" column="remark"/>
<result property="accessStatus" column="access_status"/>
<result property="blacklistStatus" column="blacklist_status"/>
<result property="greylistStatus" column="greylist_status"/>
<result property="fillinStatus" column="fillin_status"/>
<result property="fillinBy" column="fillin_by"/>
<result property="sapCode" column="sap_code"/>
<result property="delFlag" column="del_flag"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
<result property="lastUpdateTime" column="last_update_time"/>
<result property="supplierTypeCn" column="supplier_type_cn"/>
<result property="accessStatusCn" column="access_status_cn"/>
<result property="enterpriseTypeCn" column="enterprise_type_cn"/>
<result property="currencyCn" column="currency_cn"/>
<result property="deptId" column="dept_id"/>
<result property="unifiedCode" column="unified_code"/>
@ -57,8 +58,8 @@
</resultMap>
<resultMap type="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase" id="MySupplierBaseResult">
<resultMap type="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase"
id="MySupplierBaseResult">
<result property="id" column="id"/>
<result property="supplierType" column="supplier_type"/>
<result property="licenceAccessory" column="licence_accessory"/>
@ -118,199 +119,189 @@
<!-- 供应商基本信息 -->
<sql id="selectCoscoSupplierBaseVo">
SELECT
csb.id,
csb.dept_id,
csb.supplier_type,
CASE csb.supplier_type
WHEN 'dvs' THEN '境企业'
WHEN 'ovs' THEN '境外企业'
WHEN 'pe' THEN '个人'
ELSE supplier_type
END AS supplier_type_cn,
CASE
WHEN csb.supplier_type = 'dvs' THEN social_credit_code
WHEN csb.supplier_type = 'ovs' THEN vat
WHEN csb.supplier_type = 'pe' THEN id_card
ELSE NULL
END AS unified_code,
csb.licence_accessory,
csb.licence_date,
csb.enterprise_type,
csb.name,
csb.name_en,
csb.social_credit_code,
csb.`range`,
csb.reg_address,
csb.work_address,
csb.parent_company_investor,
csb.legal_person,
csb.id_card,
csb.capital,
csb.contacts_name,
csb.contacts_phone,
csb.contacts_type,
csb.contacts_email,
csb.telephone,
csb.nation,
csb.vat,
csb.taxpayer_id,
csb.currency,
csb.person_name,
csb.person_phone,
csb.person_bank,
csb.person_account,
csb.remark,
csb.access_status,
CASE csb.access_status
WHEN 0 THEN '准入'
WHEN 1 THEN '已准入'
ELSE CAST(access_status AS CHAR)
END AS access_status_cn,
csb.blacklist_status,
CASE csb.blacklist_status
WHEN 0 THEN '加入'
WHEN 1 THEN '已加入'
ELSE CAST(blacklist_status AS CHAR)
END AS blacklist_status_cn,
csb.greylist_status,
CASE csb.greylist_status
WHEN 0 THEN '加入'
WHEN 1 THEN '已加入'
ELSE CAST(greylist_status AS CHAR)
END AS greylist_status_cn,
csb.fillin_status,
CASE csb.fillin_status
WHEN 0 THEN ''
WHEN 1 THEN '是'
ELSE CAST(fillin_status AS CHAR)
END AS fillin_status_cn,
csb.fillin_by,
csb.sap_code,
csb.create_by,
csb.create_time,
csb.update_by,
csb.update_time,
csb.last_update_time
FROM
cosco_supplier_base csb
SELECT csb.id,
csb.dept_id,
csb.supplier_type,
CASE csb.supplier_type
WHEN 'dvs' THEN '境内企业'
WHEN 'ovs' THEN '境企业'
WHEN 'pe' THEN '个人'
ELSE supplier_type
END AS supplier_type_cn,
CASE
WHEN csb.supplier_type = 'dvs' THEN social_credit_code
WHEN csb.supplier_type = 'ovs' THEN vat
WHEN csb.supplier_type = 'pe' THEN id_card
ELSE NULL
END AS unified_code,
csb.licence_accessory,
csb.licence_date,
csb.enterprise_type,
csb.name,
csb.name_en,
csb.social_credit_code,
csb.`range`,
csb.reg_address,
csb.work_address,
csb.parent_company_investor,
csb.legal_person,
csb.id_card,
csb.capital,
csb.contacts_name,
csb.contacts_phone,
csb.contacts_type,
csb.contacts_email,
csb.telephone,
csb.nation,
csb.vat,
csb.taxpayer_id,
csb.currency,
csb.person_name,
csb.person_phone,
csb.person_bank,
csb.person_account,
csb.remark,
csb.access_status,
CASE csb.access_status
WHEN 0 THEN '未准入'
WHEN 1 THEN '准入'
ELSE CAST(access_status AS CHAR)
END AS access_status_cn,
csb.blacklist_status,
CASE csb.blacklist_status
WHEN 0 THEN '未加入'
WHEN 1 THEN '加入'
ELSE CAST(blacklist_status AS CHAR)
END AS blacklist_status_cn,
csb.greylist_status,
CASE csb.greylist_status
WHEN 0 THEN '未加入'
WHEN 1 THEN '加入'
ELSE CAST(greylist_status AS CHAR)
END AS greylist_status_cn,
csb.fillin_status,
CASE csb.fillin_status
WHEN 0 THEN '否'
WHEN 1 THEN ''
ELSE CAST(fillin_status AS CHAR)
END AS fillin_status_cn,
csb.fillin_by,
csb.sap_code,
csb.create_by,
csb.create_time,
csb.update_by,
csb.update_time,
csb.last_update_time
FROM cosco_supplier_base csb
</sql>
<!-- 我的供应商 -->
<sql id="selectMySupplierBaseVo">
SELECT
CASE supplier_type
WHEN 'dvs' THEN '境企业'
WHEN 'ovs' THEN '境外企业'
WHEN 'pe' THEN '个人'
END AS supplier_type_cn,
CASE
WHEN supplier_type = 'dvs' THEN social_credit_code
WHEN supplier_type = 'ovs' THEN vat
WHEN supplier_type = 'pe' THEN id_card
ELSE NULL
END AS unified_code,
csb.supplier_type,
csb.enterprise_type,
csb.id,
cas.access_work_id,
cas.supplier_id as supplierId,
csb.`name`,
csb.name_en,
caw.update_time,
caw.org_id as orgId,
cas.access_status,
CASE cas.access_status
WHEN '0' THEN '准入'
WHEN '1' THEN '已准入'
WHEN '2' THEN '退出'
END AS access_status_cn
FROM
cosco_access_supplier cas
LEFT JOIN cosco_access_work caw ON cas.access_work_id = caw.id and caw.del_flag = 'normal'
LEFT JOIN cosco_supplier_base csb ON cas.supplier_id = csb.id and csb.del_flag = 'normal'
SELECT CASE supplier_type
WHEN 'dvs' THEN '境内企业'
WHEN 'ovs' THEN '境企业'
WHEN 'pe' THEN '个人'
END AS supplier_type_cn,
CASE
WHEN supplier_type = 'dvs' THEN social_credit_code
WHEN supplier_type = 'ovs' THEN vat
WHEN supplier_type = 'pe' THEN id_card
ELSE NULL
END AS unified_code,
csb.supplier_type,
csb.enterprise_type,
csb.id,
cas.access_work_id,
cas.supplier_id as supplierId,
csb.`name`,
csb.name_en,
caw.update_time,
caw.org_id as orgId,
cas.access_status,
CASE cas.access_status
WHEN '0' THEN '未准入'
WHEN '1' THEN '准入'
WHEN '2' THEN '退出'
END AS access_status_cn
FROM cosco_access_supplier cas
LEFT JOIN cosco_access_work caw ON cas.access_work_id = caw.id and caw.del_flag = 'normal'
LEFT JOIN cosco_supplier_base csb ON cas.supplier_id = csb.id and csb.del_flag = 'normal'
</sql>
<!-- 合格、个人的供应商 -->
<sql id="selectHgSupplierBaseVo">
SELECT
CASE supplier_type
WHEN 'dvs' THEN '境企业'
WHEN 'ovs' THEN '境外企业'
WHEN 'pe' THEN '个人'
END AS supplier_type_cn,
CASE
WHEN supplier_type = 'dvs' THEN social_credit_code
WHEN supplier_type = 'ovs' THEN vat
WHEN supplier_type = 'pe' THEN id_card
ELSE NULL
END AS unified_code,
csb.supplier_type,
csb.enterprise_type,
csb.id,
cas.access_work_id,
cas.supplier_id,
CASE
WHEN csb.supplier_type = 'ovs' THEN
name_en ELSE name
END AS name,
csb.name_en,
csb.id_card,
csb.capital,
cas.dept_id,
csb.contacts_name,
csb.contacts_phone,
csb.person_name,
csb.person_phone,
csb.person_bank,
csb.person_account,
csb.create_time,
caw.update_time,
csb.create_by,
cas.access_status,
CASE cas.access_status
WHEN '0' THEN '未准入'
WHEN '1' THEN '已准入'
WHEN '2' THEN '退出'
END AS access_status_cn
FROM
cosco_access_supplier cas
LEFT JOIN cosco_access_work caw ON cas.access_work_id = caw.id and caw.del_flag = 'normal'
LEFT JOIN cosco_supplier_base csb ON cas.supplier_id = csb.id and csb.del_flag = 'normal'
SELECT CASE supplier_type
WHEN 'dvs' THEN '境内企业'
WHEN 'ovs' THEN '境企业'
WHEN 'pe' THEN '个人'
END AS supplier_type_cn,
CASE
WHEN supplier_type = 'dvs' THEN social_credit_code
WHEN supplier_type = 'ovs' THEN vat
WHEN supplier_type = 'pe' THEN id_card
ELSE NULL
END AS unified_code,
csb.supplier_type,
csb.enterprise_type,
csb.id,
cas.access_work_id,
cas.supplier_id,
CASE
WHEN csb.supplier_type = 'ovs' THEN
name_en
ELSE name
END AS name,
csb.name_en,
csb.id_card,
csb.capital,
cas.dept_id,
csb.contacts_name,
csb.contacts_phone,
csb.person_name,
csb.person_phone,
csb.person_bank,
csb.person_account,
csb.create_time,
caw.update_time,
csb.create_by,
cas.access_status,
CASE cas.access_status
WHEN '0' THEN '未准入'
WHEN '1' THEN '已准入'
WHEN '2' THEN '退出'
END AS access_status_cn
FROM cosco_access_supplier cas
LEFT JOIN cosco_access_work caw ON cas.access_work_id = caw.id and caw.del_flag = 'normal'
LEFT JOIN cosco_supplier_base csb ON cas.supplier_id = csb.id and csb.del_flag = 'normal'
</sql>
<!--未准入的供应商 -->
<sql id="selecWzrListVo">
SELECT
csb.id,
csb.supplier_type,
CASE
WHEN csb.supplier_type = 'dvs' THEN social_credit_code
WHEN csb.supplier_type = 'ovs' THEN vat
WHEN csb.supplier_type = 'pe' THEN id_card
ELSE NULL
END AS unified_code,
csb.name,
csb.name_en
FROM
cosco_supplier_base csb
left join (
SELECT
cas.supplier_id
FROM
cosco_access_work caw
LEFT JOIN cosco_access_supplier cas ON caw.id = cas.access_work_id
WHERE
(
caw.approve_status IS NULL
OR caw.approve_status = 0
OR ( caw.approve_status = 1 AND cas.access_status = 1 )
)
AND cas.org_id = #{vo.orgId}
) b on csb.id = b.supplier_id
SELECT csb.id,
csb.supplier_type,
CASE
WHEN csb.supplier_type = 'dvs' THEN social_credit_code
WHEN csb.supplier_type = 'ovs' THEN vat
WHEN csb.supplier_type = 'pe' THEN id_card
ELSE NULL
END AS unified_code,
csb.name,
csb.name_en
FROM cosco_supplier_base csb
left join (SELECT cas.supplier_id
FROM cosco_access_work caw
LEFT JOIN cosco_access_supplier cas ON caw.id = cas.access_work_id
WHERE (
caw.approve_status IS NULL
OR caw.approve_status = 0
OR (caw.approve_status = 1 AND cas.access_status = 1)
)
AND cas.org_id = #{vo.orgId}) b on csb.id = b.supplier_id
</sql>
<!-- 未准入供应商查询sql -->
<select id="selectWzrPageList" parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase" resultMap="CoscoSupplierBaseResult">
<select id="selectWzrPageList"
parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase"
resultMap="CoscoSupplierBaseResult">
<include refid="selecWzrListVo"/>
where b.supplier_id is null and csb.del_flag = 'normal'
<if test="vo.name != null and vo.name != ''">
@ -324,7 +315,9 @@
<!-- 供应商查询基本信息sql -->
<select id="selectPageList" parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase" resultMap="CoscoSupplierBaseResult">
<select id="selectPageList"
parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase"
resultMap="CoscoSupplierBaseResult">
<include refid="selectCoscoSupplierBaseVo"/>
<where>
and csb.del_flag = 'normal'
@ -435,7 +428,9 @@
</select>
<!-- 合格、个人供应商查询sql -->
<select id="getHeSupplierBasePage" parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase" resultMap="CoscoSupplierBaseResult">
<select id="getHeSupplierBasePage"
parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase"
resultMap="CoscoSupplierBaseResult">
<include refid="selectHgSupplierBaseVo"/>
<where>
AND caw.apply_type = '0'
@ -452,7 +447,7 @@
and caw.approve_status = #{vo.accessStatus}
</if>
<if test="vo.categoryId != null and vo.categoryId != ''">
and cc.id = #{vo.categoryId}
and cc.id = #{vo.categoryId}
</if>
<if test="vo.orgId != null and vo.orgId != ''">
and cas.org_id = #{vo.orgId}
@ -495,23 +490,29 @@
<select id="selectCoscoAccessSupplierCategoryList"
parameterType="map"
resultType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoAccessSupplierCategory">
select c.category_name,c.category_path_name from cosco_access_supplier_category c
where c.supplier_id = #{supplierId} and c.org_id = #{orgId} and c.del_flag = 'normal'
select c.category_name, c.category_path_name
from cosco_access_supplier_category c
where c.supplier_id = #{supplierId}
and c.org_id = #{orgId}
and c.del_flag = 'normal'
</select>
<!-- 我的供应商查询sql -->
<select id="getMySupplierBasePage" parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase" resultMap="MySupplierBaseResult">
<select id="getMySupplierBasePage"
parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase"
resultMap="MySupplierBaseResult">
<include refid="selectMySupplierBaseVo"/>
<where>
AND caw.apply_type = '0'
<if test="vo.categoryId != null and vo.categoryId != ''">
AND EXISTS (
SELECT 1 FROM cosco_access_supplier_category
WHERE supplier_id = csb.id AND org_id = caw.org_id and category_id = #{vo.categoryId} and del_flag = 'normal'
WHERE supplier_id = csb.id AND org_id = caw.org_id and category_id = #{vo.categoryId} and del_flag =
'normal'
)
</if>
<if test="vo.createBy != null and vo.createBy != ''">
and caw.create_by = #{vo.createBy}
and caw.create_by = #{vo.createBy}
</if>
<if test="vo.accessStatus != null and vo.accessStatus != ''">
and caw.approve_status = #{vo.accessStatus}
@ -561,17 +562,20 @@
</select>
<!-- 我的供应商导出查询sql -->
<select id="getMySupplierBaseList" parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase" resultMap="MySupplierBaseResult">
<select id="getMySupplierBaseList"
parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase"
resultMap="MySupplierBaseResult">
<include refid="selectMySupplierBaseVo"/>
<where>
AND caw.apply_type = '0'
<if test="createBy != null and createBy != ''">
and caw.create_by = #{createBy}
and caw.create_by = #{createBy}
</if>
<if test="categoryId != null and categoryId != ''">
AND EXISTS (
SELECT 1 FROM cosco_access_supplier_category
WHERE supplier_id = csb.id AND org_id = caw.org_id and category_id = #{categoryId} and del_flag = 'normal'
WHERE supplier_id = csb.id AND org_id = caw.org_id and category_id = #{categoryId} and del_flag =
'normal'
)
</if>
<if test="deptId != null and deptId != ''">
@ -611,7 +615,9 @@
order by csb.create_time desc
</select>
<!-- 合格、个人供应商导出查询sql -->
<select id="getHeSupplierBaseExecList" parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase" resultMap="CoscoSupplierBaseResult">
<select id="getHeSupplierBaseExecList"
parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase"
resultMap="CoscoSupplierBaseResult">
<include refid="selectHgSupplierBaseVo"/>
<where>
AND caw.apply_type = '0'
@ -628,7 +634,7 @@
and caw.approve_status = #{accessStatus}
</if>
<if test="categoryId != null and categoryId != ''">
and cc.id = #{categoryId}
and cc.id = #{categoryId}
</if>
<if test="orgId != null and orgId != ''">
and cas.org_id = #{orgId}
@ -656,7 +662,9 @@
</select>
<!-- 供应商基本信息查询sql -->
<select id="selectCoscoSupplierBaseList" parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase" resultMap="CoscoSupplierBaseResult">
<select id="selectCoscoSupplierBaseList"
parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase"
resultMap="CoscoSupplierBaseResult">
<include refid="selectCoscoSupplierBaseVo"/>
<where>
and csb.del_flag = 'normal'
@ -705,21 +713,21 @@
<!-- 统计注册供应商的供应商身份类型数量 -->
<select id="selectSupplierTypeCountNum" parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase" resultMap="CoscoSupplierBaseResult">
SELECT
CASE
supplier_type
WHEN 'dvs' THEN
'境内企业'
WHEN 'ovs' THEN
'境外企业'
WHEN 'pe' THEN
'个人'
END AS supplier_type_cn,
COUNT(0) as countNum
<select id="selectSupplierTypeCountNum"
parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase"
resultMap="CoscoSupplierBaseResult">
SELECT CASE
supplier_type
WHEN 'dvs' THEN
'境内企业'
WHEN 'ovs' THEN
'境外企业'
WHEN 'pe' THEN
'个人'
END AS supplier_type_cn,
COUNT(0) as countNum
FROM
cosco_supplier_base
FROM cosco_supplier_base
where del_flag = 'normal'
GROUP BY supplier_type
</select>
@ -974,7 +982,8 @@
</update>
<update id="updateCoscoSupplierBaseByIds" parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase">
<update id="updateCoscoSupplierBaseByIds"
parameterType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase">
UPDATE cosco_supplier_base
SET
access_status = #{accessStatus},
@ -989,8 +998,6 @@
</update>
<update id="deleteCoscoSupplierBaseById" parameterType="String">
update cosco_supplier_base
set del_flag = 2
@ -1007,13 +1014,58 @@
resultType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.vo.BaseCategoryNameVo">
select csb.id, csb.name, GROUP_CONCAT(DISTINCT casc.category_name SEPARATOR ', ') AS categoryName
from cosco_supplier_base csb
left join cosco_access_supplier_category casc on csb.id = casc.supplier_id and casc.del_flag = 'normal'
left join cosco_access_supplier_category casc on csb.id = casc.supplier_id and casc.del_flag = 'normal'
where csb.id = #{id}
group by csb.id
</select>
<select id="getSupplierPage" parameterType="map"
resultType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.vo.SupplierPageVo">
<resultMap id="supplierInfoResultMap" type="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.vo.SupplierPageVo">
<result property="id" column="id"/>
<result property="name" column="name"/>
<result property="nameEn" column="nameEn"/>
<result property="enterpriseType" column="enterpriseType"/>
<result property="supplierType" column="supplierType"/>
<result property="unifiedCode" column="unifiedCode"/>
<result property="deptId" column="deptId"/>
<result property="admissionTime" column="admissionTime"/>
<result property="categoryIds" column="categoryIds"/>
<result property="categoryName" column="categoryName"/>
<result property="orgIds" column="org_ids"/>
<collection property="categoryNameList"
column="{supplierId=id,orgId=org_ids}"
ofType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoAccessSupplierCategory"
select="selectCoscoAccessSupplierCategoryList">
</collection>
<collection property="orgNameList"
column="{supplierId=id,orgId=org_ids}"
ofType="com.chinaunicom.zyhy.ebtp.supplier.base.vo.OrgNameVo"
select="selectOrgNameList">
</collection>
</resultMap>
<select id="selectCategoryOrgsAndSupplierId"
parameterType="map"
resultType="com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoAccessSupplierCategory">
select c.category_name, c.category_path_name
from cosco_access_supplier_category c
where c.supplier_id = #{supplierId}
and c.org_id in (#{orgId})
and c.del_flag = 'normal'
</select>
<select id="selectOrgNameList" parameterType="map"
resultType="com.chinaunicom.zyhy.ebtp.supplier.base.vo.OrgNameVo">
select cas.dept_id, cas.org_id
from cosco_access_supplier cas
left join cosco_access_work caw on cas.access_work_id = caw.id and caw.apply_type='0'
where cas.supplier_id = #{supplierId}
and cas.org_id in (#{orgId})
and cas.access_status = 1
and caw.del_flag='normal'
</select>
<select id="getSupplierPage" parameterType="map" resultMap="supplierInfoResultMap">
select
csb.id,
csb.name,
@ -1029,7 +1081,8 @@
GROUP_CONCAT(caw.dept_id) as deptId,
max(caw.update_time) AS admissionTime,
GROUP_CONCAT(DISTINCT casc.category_id SEPARATOR ', ') AS categoryIds,
GROUP_CONCAT(DISTINCT casc.category_name SEPARATOR ', ') AS categoryName
GROUP_CONCAT(DISTINCT casc.category_name SEPARATOR ', ') AS categoryName,
GROUP_CONCAT(DISTINCT casc.org_id SEPARATOR ', ') org_ids
from
cosco_access_supplier_category as casc
join cosco_supplier_base as csb on casc.supplier_id = csb.id -- 供应商已准入品类
@ -1043,18 +1096,31 @@
WHERE b.supplier_id = csb.id
AND cb.approve_status = 1
AND (cb.restore_approve_status is null or cb.restore_approve_status!=1)
AND cb.org_id = #{vo.orgId}
<if test="vo.blackDept!=null and vo.blackDept.size>0">
AND cb.org_id in
(
<foreach collection="vo.blackDept" separator="," item="deptId">
#{deptId}
</foreach>
)
</if>
)
and csb.access_status=1
and casc.del_flag='normal'
and casc.del_flag='normal'
<if test="vo.name!=null and vo.name!=''">
and csb.name like concat('%',#{vo.name},'%')
</if>
<if test="vo.supplierType!=null and vo.supplierType!=''">
and csb.supplier_type = #{vo.supplierType}
</if>
<if test="vo.orgId!=null and vo.orgId!=''">
and cas.org_id = #{vo.orgId}
<if test="vo.allOrgIds!=null and vo.allOrgIds.size>0">
AND cas.org_id in
(
<foreach collection="vo.allOrgIds" separator="," item="deptId">
#{deptId}
</foreach>
)
</if>
<if test="vo.categoryId!=null and vo.categoryId!=''">
and casc.category_id like concat('%',#{vo.categoryId},'%')

View File

@ -229,7 +229,6 @@
csb.NAME supplierName,
csb.id as supplierId,
CASE
WHEN csb.supplier_type = 'ovs' THEN
'境外'
WHEN csb.supplier_type = 'ovs' THEN
@ -244,14 +243,23 @@
WHERE
casc.del_flag = 'normal'
AND casc.supplier_id = csb.id
<if test="vo.orgId!=null and vo.orgId!=''">
and casc.org_id=#{vo.orgId}
</if>
) AS category,
'天津中远海运集装箱运输有限公司' AS accessUnit,
'天津中远海运集装箱运输有限公司' AS accessDept
caw.dept_id ,
caw.org_Id,
"" as accessUnit
FROM
cosco_supplier_qualifications csq
JOIN cosco_supplier_base csb ON csq.supplier_id = csb.id
join cosco_access_supplier cas on cas.supplier_id = csb.id
join cosco_access_work caw on caw.id= cas.access_work_id
WHERE
csq.del_flag = 'normal'
and cas.access_status=1
and caw.apply_type=0
AND ( csq.term_of_validity &lt; CURDATE() OR csq.term_of_validity
BETWEEN CURDATE() AND DATE_ADD( CURDATE(), INTERVAL 30 DAY ) )
<if test="supplierName!=null and supplierName!=''">
@ -268,9 +276,9 @@
<result property="supplierId" column="supplierId"/>
<result property="area" column="area"/>
<result property="id" column="id"/>
<result property="accessUnit" column="accessUnit"/>
<result property="accessDept" column="accessDept"/>
<result property="category" column="category"/>
<result property="deptId" column="dept_id"/>
<result property="orgId" column="org_Id"/>
</resultMap>
@ -283,7 +291,6 @@
csb.NAME supplierName,
csb.id as supplierId,
CASE
WHEN csb.supplier_type = 'ovs' THEN
'境外'
WHEN csb.supplier_type = 'ovs' THEN
@ -298,20 +305,32 @@
WHERE
casc.del_flag = 'normal'
AND casc.supplier_id = csb.id
<if test="vo.orgId!=null and vo.orgId!=''">
and casc.org_id=#{vo.orgId}
</if>
) AS category,
'天津中远海运集装箱运输有限公司' AS accessUnit,
'天津中远海运集装箱运输有限公司' AS accessDept
caw.dept_id ,
caw.org_Id,
"" as accessUnit
FROM
cosco_supplier_qualifications csq
JOIN cosco_supplier_base csb ON csq.supplier_id = csb.id
join cosco_access_supplier cas on cas.supplier_id = csb.id
join cosco_access_work caw on caw.id= cas.access_work_id
WHERE
csq.del_flag = 'normal'
and cas.access_status=1
and caw.apply_type=0
AND ( csq.term_of_validity &lt; CURDATE() OR csq.term_of_validity
BETWEEN CURDATE() AND DATE_ADD( CURDATE(), INTERVAL 30 DAY ) )
<if test="vo.supplierName!=null and vo.supplierName!=''">
and csb.name like concat('%',#{vo.supplierName},'%')
</if>
<if test="vo.orgId!=null and vo.orgId!=''">
and caw.org_id=#{vo.orgId}
</if>
ORDER BY
csq.term_of_validity desc
</select>

View File

@ -241,6 +241,9 @@
<if test="supplierName!=null and supplierName!=''">
and csb.name like concat('%',#{supplierName},'%')
</if>
<if test="vo.orgId!=null and vo.orgId!=''">
and cse.org_id = #{vo.orgId}
</if>
</select>
<resultMap id="supplierExitResultMap" type="com.chinaunicom.zyhy.ebtp.supplier.dataStatistics.vo.SupplierExitStatisticsVo">
@ -278,6 +281,9 @@
<if test="vo.supplierName!=null and vo.supplierName!=''">
and csb.name like concat('%',#{vo.supplierName},'%')
</if>
<if test="vo.orgId!=null and vo.orgId!=''">
and cse.org_id = #{vo.orgId}
</if>
</select>
</mapper>