|
|
@ -30,6 +30,7 @@ import com.epmet.commons.tools.page.PageData; |
|
|
|
import com.epmet.commons.tools.utils.ConvertUtils; |
|
|
|
import com.epmet.commons.tools.utils.Result; |
|
|
|
import com.epmet.dao.SpecialSubjectDao; |
|
|
|
import com.epmet.dto.CustomerAgencyDTO; |
|
|
|
import com.epmet.dto.SpecialSubjectDTO; |
|
|
|
import com.epmet.dto.TagCustomerDTO; |
|
|
|
import com.epmet.dto.form.*; |
|
|
@ -142,11 +143,8 @@ public class SpecialSubjectServiceImpl extends BaseServiceImpl<SpecialSubjectDao |
|
|
|
throw new RenException(EpmetErrorCode.TAG_NOT_EXIST.getCode(), EpmetErrorCode.TAG_NOT_EXIST.getMsg()); |
|
|
|
} |
|
|
|
//2、校验当前组织是否添加过此专题
|
|
|
|
QuerySpecialSubFormDTO querySpecialSubFormDTO=new QuerySpecialSubFormDTO(); |
|
|
|
querySpecialSubFormDTO.setOrgId(formDTO.getOrgId()); |
|
|
|
querySpecialSubFormDTO.setPids(formDTO.getPids()); |
|
|
|
QuerySpecialSubFormDTO querySpecialSubFormDTO=ConvertUtils.sourceToTarget(formDTO,QuerySpecialSubFormDTO.class); |
|
|
|
querySpecialSubFormDTO.setUserId(formDTO.getAddUserId()); |
|
|
|
querySpecialSubFormDTO.setCustomerId(formDTO.getCustomerId()); |
|
|
|
List<WorkSpecialSubjectResultDTO> havedList=this.queryExistedList(querySpecialSubFormDTO); |
|
|
|
List<String> haveTagIds=havedList.stream().map(WorkSpecialSubjectResultDTO::getTagId).distinct().collect(Collectors.toList()); |
|
|
|
haveTagIds.forEach(tagId->{ |
|
|
@ -156,12 +154,9 @@ public class SpecialSubjectServiceImpl extends BaseServiceImpl<SpecialSubjectDao |
|
|
|
}); |
|
|
|
// 3、保存
|
|
|
|
SpecialSubjectEntity insertEntity = ConvertUtils.sourceToTarget(formDTO, SpecialSubjectEntity.class); |
|
|
|
StaffInfoFromDTO staffInfoFromDTO = new StaffInfoFromDTO(); |
|
|
|
staffInfoFromDTO.setStaffId(formDTO.getAddUserId()); |
|
|
|
staffInfoFromDTO.setCustomerId(formDTO.getCustomerId()); |
|
|
|
Result<MineResultDTO> result = govOrgOpenFeignClient.queryStaffProfile(staffInfoFromDTO); |
|
|
|
Result<CustomerAgencyDTO> result = govOrgOpenFeignClient.getAgencyByStaff(formDTO.getAddUserId()); |
|
|
|
if(result.success()&&null!=result.getData()){ |
|
|
|
insertEntity.setAddUserAgencyId(result.getData().getAgencyId()); |
|
|
|
insertEntity.setAddUserAgencyId(result.getData().getId()); |
|
|
|
} |
|
|
|
insertEntity.setAddOrgId(formDTO.getOrgId()); |
|
|
|
insertEntity.setAddOrgPid(formDTO.getPid()); |
|
|
@ -188,7 +183,6 @@ public class SpecialSubjectServiceImpl extends BaseServiceImpl<SpecialSubjectDao |
|
|
|
} |
|
|
|
baseDao.delSpecialSubject(formDTO.getSpecialSubjectId(), formDTO.getUserId()); |
|
|
|
} |
|
|
|
log.warn(String.format("special_subject is null id=%s", formDTO.getSpecialSubjectId())); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
@ -201,10 +195,7 @@ public class SpecialSubjectServiceImpl extends BaseServiceImpl<SpecialSubjectDao |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
public List<WorkSpecialSubjectResultDTO> queryExistedList(QuerySpecialSubFormDTO formDTO) { |
|
|
|
StaffInfoFromDTO staffInfoFromDTO = new StaffInfoFromDTO(); |
|
|
|
staffInfoFromDTO.setStaffId(formDTO.getUserId()); |
|
|
|
staffInfoFromDTO.setCustomerId(formDTO.getCustomerId()); |
|
|
|
Result<MineResultDTO> staffResult = govOrgOpenFeignClient.queryStaffProfile(staffInfoFromDTO); |
|
|
|
Result<CustomerAgencyDTO> staffResult = govOrgOpenFeignClient.getAgencyByStaff(formDTO.getUserId()); |
|
|
|
if (!staffResult.success() && null == staffResult.getData()) { |
|
|
|
throw new RenException("查询当前工作人员信息异常"); |
|
|
|
} |
|
|
@ -214,24 +205,16 @@ public class SpecialSubjectServiceImpl extends BaseServiceImpl<SpecialSubjectDao |
|
|
|
List<WorkSpecialSubjectResultDTO> currentOrgList = new ArrayList<>(); |
|
|
|
List<SpecialSubjectDTO> currentOrgCreatedList = baseDao.queryExistedList(formDTO.getOrgId(), notList); |
|
|
|
currentOrgCreatedList.forEach(dto -> { |
|
|
|
WorkSpecialSubjectResultDTO result = new WorkSpecialSubjectResultDTO(); |
|
|
|
WorkSpecialSubjectResultDTO result = ConvertUtils.sourceToTarget(dto,WorkSpecialSubjectResultDTO.class); |
|
|
|
result.setSpecialSubjectId(dto.getId()); |
|
|
|
result.setTagId(dto.getTagId()); |
|
|
|
result.setTagName(dto.getTagName()); |
|
|
|
//1、如果当前专题是给当前所在组织(or网格)添加的;
|
|
|
|
//2、当前工作人员所属的组织,与专题添加人所属的组织一致,同时满足这两个条件即可删除
|
|
|
|
if(dto.getAddUserAgencyId().equals(staffResult.getData().getAgencyId()) |
|
|
|
if(dto.getAddUserAgencyId().equals(staffResult.getData().getId()) |
|
|
|
&& dto.getAddOrgId().equals(formDTO.getOrgId())){ |
|
|
|
result.setCanDel(true); |
|
|
|
}else{ |
|
|
|
result.setCanDel(false); |
|
|
|
} |
|
|
|
result.setAddOrgId(dto.getAddOrgId()); |
|
|
|
result.setOrgLevel(dto.getOrgLevel()); |
|
|
|
result.setTagColor(dto.getTagColor()); |
|
|
|
result.setCreatedTime(dto.getCreatedTime()); |
|
|
|
result.setCreatedBy(dto.getCreatedBy()); |
|
|
|
result.setAddUserAgencyId(dto.getAddUserAgencyId()); |
|
|
|
currentOrgList.add(result); |
|
|
|
}); |
|
|
|
if (CollectionUtils.isNotEmpty(currentOrgList)) { |
|
|
@ -247,24 +230,16 @@ public class SpecialSubjectServiceImpl extends BaseServiceImpl<SpecialSubjectDao |
|
|
|
//优先展示自己的,所以要排除掉自己的,自上向下查,优先展示上层领导们给我建立的专题
|
|
|
|
List<SpecialSubjectDTO> list = baseDao.queryExistedList(pid, notList); |
|
|
|
list.forEach(dto -> { |
|
|
|
WorkSpecialSubjectResultDTO result = new WorkSpecialSubjectResultDTO(); |
|
|
|
WorkSpecialSubjectResultDTO result = ConvertUtils.sourceToTarget(dto,WorkSpecialSubjectResultDTO.class); |
|
|
|
result.setSpecialSubjectId(dto.getId()); |
|
|
|
result.setTagId(dto.getTagId()); |
|
|
|
result.setTagName(dto.getTagName()); |
|
|
|
//1、如果当前专题是给当前所在组织(or网格)添加的;
|
|
|
|
//2、当前工作人员所属的组织,与专题添加人所属的组织一致,同时满足这两个条件即可删除
|
|
|
|
if (dto.getAddUserAgencyId().equals(staffResult.getData().getAgencyId()) |
|
|
|
if (dto.getAddUserAgencyId().equals(staffResult.getData().getId()) |
|
|
|
&& dto.getAddOrgId().equals(formDTO.getOrgId())) { |
|
|
|
result.setCanDel(true); |
|
|
|
} else { |
|
|
|
result.setCanDel(false); |
|
|
|
} |
|
|
|
result.setAddOrgId(dto.getAddOrgId()); |
|
|
|
result.setOrgLevel(dto.getOrgLevel()); |
|
|
|
result.setTagColor(dto.getTagColor()); |
|
|
|
result.setCreatedTime(dto.getCreatedTime()); |
|
|
|
result.setCreatedBy(dto.getCreatedBy()); |
|
|
|
result.setAddUserAgencyId(dto.getAddUserAgencyId()); |
|
|
|
resultDTOList.add(result); |
|
|
|
}); |
|
|
|
} |
|
|
|