This commit is contained in:
zt
2025-05-23 14:27:40 +08:00
parent 8651495124
commit 1612bbaf5c
7 changed files with 83 additions and 44 deletions

View File

@ -25,28 +25,5 @@ public class SseController {
return SseUtil.subscribe(userId,prefix);
}
// /**
// * 触发消息数量推送适配2.4.7
// */
// @GetMapping("/push")
// public void pushMessageCount(String userId) {
// SseEmitter emitter = emitterMap.get(userId);
// if (emitter != null) {
// BgtMessageCountVO bgtMessageCountVO = new BgtMessageCountVO();
// bgtMessageCountVO.setTaskMessageCount(1);
// bgtMessageCountVO.setSettlementMessageCount(0);
// try {
// // 发送自定义事件(客户端通过事件名监听)
// emitter.send(SseEmitter.event()
// .id(String.valueOf(System.currentTimeMillis()))
// .name("messageCount")
// .data(JSONUtil.toJsonStr(bgtMessageCountVO))
// );
// } catch (IOException e) {
// emitter.completeWithError(e);
// emitterMap.remove(userId); // 异常时清理无效连接
// }
// }
// }
}

View File

@ -5,6 +5,7 @@ import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.fbs.domain.vo.FbsProjectSubcontractingDetailVO;
import com.ruoyi.zbf.domain.ZbfProject;
import com.ruoyi.zbf.domain.ZbfProjectSubcontracting;
import com.ruoyi.zbf.domain.ZbfProjectSubcontractingApply;
import com.ruoyi.zbf.service.IZbfProjectSectionService;
@ -62,7 +63,14 @@ public class AppFbsProjectSubcontractingController extends BaseController {
ZbfProjectSubcontracting zbfProjectSubcontracting = iZbfProjectSubcontractingService.queryById(apply.getSubId());
FbsProjectSubcontractingDetailVO vo = BeanUtil.copyProperties(zbfProjectSubcontracting, FbsProjectSubcontractingDetailVO.class);
vo.setSectionName(zbfProjectSectionService.getById(vo.getSectionId()).getSectionName());
vo.setProjectImg(zbfProjectService.getById(vo.getProjectId()).getProjectImg());
ZbfProject project = zbfProjectService.getById(vo.getProjectId());
vo.setProjectImg(project.getProjectImg());
vo.setProjectName(project.getProjectName());
vo.setProjectAddress(project.getProjectAddress());
vo.setContactPerson(project.getContactPerson());
vo.setContactPhone(project.getContactPhone());
vo.setUnitName(project.getUnitName());
vo.setCreditCode(project.getCreditCode());
vo.setApplyStatus(apply.getApplyStatus());
return AjaxResult.success(vo);
}

View File

@ -160,3 +160,4 @@ public class BgtUserServiceImpl extends ServicePlusImpl<BgtUserMapper, BgtUser>
return baseMapper.selectOne(new LambdaQueryWrapper<BgtUser>().eq(BgtUser::getUserId, userId));
}
}

View File

@ -53,6 +53,24 @@ public class FbsProjectSubcontractingDetailVO {
@ApiModelProperty("项目图片")
private String projectImg;
@ApiModelProperty("单位名称")
private String unitName;
@ApiModelProperty("统一社会信用代码")
private String creditCode;
@ApiModelProperty("项目名称")
private String projectName;
@ApiModelProperty("项目地址")
private String projectAddress;
@ApiModelProperty("联系人")
private String contactPerson;
@ApiModelProperty("联系电话")
private String contactPhone;
@ApiModelProperty("删除标志0代表存在 2代表删除")
private String delFlag;

View File

@ -420,6 +420,11 @@ public class WgzPayCalculationServiceImpl extends ServicePlusImpl<WgzPayCalculat
WgzAppApplyForPayrollSettlementListRes res = BeanUtil.copyProperties(payCalculation, WgzAppApplyForPayrollSettlementListRes.class);
List<WgzPayCalculationFiles> list = iWgzPayCalculationFilesService.list(Wrappers.<WgzPayCalculationFiles>lambdaQuery().eq(WgzPayCalculationFiles::getCalculationId, id));
res.setPayCalculation(list);
//查询离场时间
if("2".equals(payCalculation.getWorkingState())){
BgtProjectRecruitApply byId = iBgtProjectRecruitApplyService.getById(payCalculation.getApplyKey());
res.setLeaveTime(byId.getLeaveTime());
}
return res;
}

View File

@ -171,7 +171,9 @@ public class ZbfProjectServiceImpl extends ServicePlusImpl<ZbfProjectMapper, Zbf
//查询项目下的所有申请
List<ZbfProjectSubcontractingApply> applyList = zbfProjectSubcontractingApplyService.list(Wrappers.<ZbfProjectSubcontractingApply>lambdaQuery()
.eq(ZbfProjectSubcontractingApply::getProjectId, projectId)
.eq(ZbfProjectSubcontractingApply::getFbsUserId, SecurityUtils.getAppUserId()));
.eq(ZbfProjectSubcontractingApply::getFbsUserId, SecurityUtils.getAppUserId())
.eq(ZbfProjectSubcontractingApply::getApplyStatus, SubcontractingApplyStatus.APPLY.getCode())
);
HashMap<Long, String> map = applyList.stream()
.collect(Collectors.toMap(
ZbfProjectSubcontractingApply::getSubId,
@ -188,22 +190,29 @@ public class ZbfProjectServiceImpl extends ServicePlusImpl<ZbfProjectMapper, Zbf
for (ZbfProjectSection zbfProjectSection : sectionList) {
//分包处理
List<FbsProjectSubcontractingListVO> subListVO = new ArrayList<>();
//查询标段下的所有的分包
//查询标段下的所有选择的分包
List<ZbfProjectSubcontracting> subList = zbfProjectSubcontractingService.list(Wrappers.<ZbfProjectSubcontracting>lambdaQuery()
.eq(ZbfProjectSubcontracting::getSectionId, zbfProjectSection.getId())
//.isNull(ZbfProjectSubcontracting::getUserId)
.isNull(ZbfProjectSubcontracting::getUserId)
);
//排除掉已申请的分包
for (ZbfProjectSubcontracting sub : subList) {
//排除掉已申请的分包
if( map.get(sub.getId()) != null){
continue;
}
FbsProjectSubcontractingListVO fbsProjectSubcontractingListVO = new FbsProjectSubcontractingListVO();
BeanUtil.copyProperties(sub, fbsProjectSubcontractingListVO);
String applyStatus = map.get(sub.getId());
fbsProjectSubcontractingListVO.setApplyStatus(applyStatus);
if (sub.getUserId() != null && !sub.getUserId().equals(SecurityUtils.getAppUserId())) {
fbsProjectSubcontractingListVO.setApplyStatus(SubcontractingApplyStatus.CHOOSE.getCode());
}
// String applyStatus = map.get(sub.getId());
// fbsProjectSubcontractingListVO.setApplyStatus(applyStatus);
// if (sub.getUserId() != null && !sub.getUserId().equals(SecurityUtils.getAppUserId())) {
// fbsProjectSubcontractingListVO.setApplyStatus(SubcontractingApplyStatus.CHOOSE.getCode());
// }
subListVO.add(fbsProjectSubcontractingListVO);
}
if(CollectionUtil.isEmpty(subListVO)){
continue;
}
FbsProjectSectionListVO fbsProjectSectionListVO = new FbsProjectSectionListVO();
BeanUtil.copyProperties(zbfProjectSection, fbsProjectSectionListVO);
fbsProjectSectionListVO.setSubList(subListVO);
@ -327,7 +336,9 @@ public class ZbfProjectServiceImpl extends ServicePlusImpl<ZbfProjectMapper, Zbf
//查询项目下的所有申请
List<ZbfProjectSubcontractingApply> applyList = zbfProjectSubcontractingApplyService.list(Wrappers.<ZbfProjectSubcontractingApply>lambdaQuery()
.eq(ZbfProjectSubcontractingApply::getProjectId, projectId)
.eq(ZbfProjectSubcontractingApply::getFbsUserId, SecurityUtils.getAppUserId()));
.eq(ZbfProjectSubcontractingApply::getFbsUserId, SecurityUtils.getAppUserId())
.eq(ZbfProjectSubcontractingApply::getApplyStatus, SubcontractingApplyStatus.APPLY.getCode())
);
HashMap<Long, String> map = applyList.stream()
.collect(Collectors.toMap(
ZbfProjectSubcontractingApply::getSubId,
@ -346,20 +357,27 @@ public class ZbfProjectServiceImpl extends ServicePlusImpl<ZbfProjectMapper, Zbf
//查询标段下的所有的分包
List<ZbfProjectSubcontracting> subList = zbfProjectSubcontractingService.list(Wrappers.<ZbfProjectSubcontracting>lambdaQuery()
.eq(ZbfProjectSubcontracting::getSectionId, zbfProjectSection.getId())
//.isNull(ZbfProjectSubcontracting::getUserId)
.isNull(ZbfProjectSubcontracting::getUserId)
);
//排除掉已申请的分包
for (ZbfProjectSubcontracting sub : subList) {
for (ZbfProjectSubcontracting sub : subList) {
//排除掉已申请的分包
if (map.get(sub.getId()) != null) {
continue;
}
FbsProjectSubcontractingListVO fbsProjectSubcontractingListVO = new FbsProjectSubcontractingListVO();
BeanUtil.copyProperties(sub, fbsProjectSubcontractingListVO);
String applyStatus = map.get(sub.getId());
fbsProjectSubcontractingListVO.setApplyStatus(applyStatus);
if (sub.getUserId() != null && !sub.getUserId().equals(SecurityUtils.getAppUserId())) {
fbsProjectSubcontractingListVO.setApplyStatus(SubcontractingApplyStatus.CHOOSE.getCode());
}
// String applyStatus = map.get(sub.getId());
// fbsProjectSubcontractingListVO.setApplyStatus(applyStatus);
// if (sub.getUserId() != null && !sub.getUserId().equals(SecurityUtils.getAppUserId())) {
// fbsProjectSubcontractingListVO.setApplyStatus(SubcontractingApplyStatus.CHOOSE.getCode());
// }
subListVO.add(fbsProjectSubcontractingListVO);
}
if (CollectionUtil.isEmpty(subListVO)) {
continue;
}
FbsProjectSectionListVO fbsProjectSectionListVO = new FbsProjectSectionListVO();
BeanUtil.copyProperties(zbfProjectSection, fbsProjectSectionListVO);
fbsProjectSectionListVO.setSubList(subListVO);

View File

@ -30,11 +30,23 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
project_img,
project_status
FROM zbf_project zp
<where>
where EXISTS (
SELECT 1
FROM zbf_project_subcontracting zps
WHERE zps.project_id = zp.id
AND zps.user_id IS NULL
AND NOT EXISTS (
SELECT 1
FROM zbf_project_subcontracting_apply zpsa
WHERE zpsa.sub_id = zps.id
AND zpsa.fbs_user_id = #{dto.fbsUserId}
AND zpsa.apply_status = '0'
)
)
<if test="dto.projectName != null and dto.projectName != ''">
AND zp.project_name like concat('%', #{dto.projectName}, '%')
</if>
</where>
order by zp.id desc
</select>