Browse Source

工单查询检索字段增加,新增项目绑定部门

ops-management-platform-backend-dev
gjh 3 weeks ago
parent
commit
492fed0f1e
  1. 2
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/controller/ContractInfoController.java
  2. 6
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/controller/ProjectInfoController.java
  3. 2
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/IProjectInfoService.java
  4. 37
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/impl/ProjectInfoServiceImpl.java
  5. 8
      ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/impl/WorkOrderInfoServiceImpl.java

2
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/controller/ContractInfoController.java

@ -138,7 +138,7 @@ public class ContractInfoController extends BaseController {
/**
* 获取合同对应的运维单位 (乙方)
* 根据合同名称获取对应的运维单位 (乙方)
*
*/
//@SaCheckPermission("platform:contractInfo:getIoCompany")

6
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/controller/ProjectInfoController.java

@ -139,4 +139,10 @@ public class ProjectInfoController extends BaseController {
String partyB = projectInfoService.getContractPartyBNameByProjectName(projectName);
return R.ok("乙方单位",partyB);
}
@GetMapping("/bindUnit")
public R<Void> bindUnit(String projectId,Long deptId ) {
projectInfoService.bindUnit(projectId,deptId);
return R.ok("项目配置相关单位成功!");
}
}

2
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/IProjectInfoService.java

@ -110,4 +110,6 @@ public interface IProjectInfoService {
String getContractPartyBNameByContractName(String projectName);
String getContractPartyBNameByProjectName(String projectName);
void bindUnit(String projectId,Long deptId);
}

37
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/impl/ProjectInfoServiceImpl.java

@ -2,14 +2,19 @@ package org.dromara.platform.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.dromara.common.core.domain.dto.RoleDTO;
import org.dromara.common.core.domain.model.LoginUser;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.platform.domain.Attachment;
import org.dromara.platform.domain.AttachmentSerializer;
import org.dromara.platform.domain.ContractInfo;
@ -23,10 +28,7 @@ import org.dromara.platform.domain.ProjectInfo;
import org.dromara.platform.mapper.ProjectInfoMapper;
import org.dromara.platform.service.IProjectInfoService;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Collection;
import java.util.*;
/**
* 项目信息Service业务层处理
@ -36,6 +38,7 @@ import java.util.Collection;
*/
@RequiredArgsConstructor
@Service
@Slf4j
public class ProjectInfoServiceImpl implements IProjectInfoService {
private final ProjectInfoMapper baseMapper;
@ -70,6 +73,19 @@ public class ProjectInfoServiceImpl implements IProjectInfoService {
*/
@Override
public TableDataInfo<ProjectInfoVo> queryPageList(ProjectInfoBo bo, PageQuery pageQuery) {
LoginUser loginUser = LoginHelper.getLoginUser();
Set<String> rolePermission = loginUser.getRolePermission();
//设置权限:如果是监理和超级管理员可以访问全部的项目信息
//其余人员只能看到自己的项目信息
String[] requiredRoles = {"jianli", "superadmin"};
boolean hasAnyRole = Arrays.stream(requiredRoles)
.anyMatch(rolePermission::contains);
if (!hasAnyRole) {
log.info("非监理和管理员登录需要根据登录用户的部门id过滤项目");
bo.setCreateDept(loginUser.getDeptId());
}
LambdaQueryWrapper<ProjectInfo> lqw = buildQueryWrapper(bo);
Page<ProjectInfoVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
@ -104,6 +120,7 @@ public class ProjectInfoServiceImpl implements IProjectInfoService {
lqw.eq(StringUtils.isNotBlank(bo.getIcon()), ProjectInfo::getIcon, bo.getIcon());
lqw.eq(StringUtils.isNotBlank(bo.getAttachment()), ProjectInfo::getAttachment, bo.getAttachment());
lqw.eq(bo.getStatus() != null, ProjectInfo::getStatus, bo.getStatus());
lqw.eq(bo.getCreateDept() != null, BaseEntity::getCreateDept, bo.getCreateDept());
return lqw;
}
@ -232,4 +249,16 @@ public class ProjectInfoServiceImpl implements IProjectInfoService {
String partyB = contractInfo.getPartyB();
return partyB;
}
@Override
public void bindUnit(String projectId,Long deptId) {
LoginUser loginUser = LoginHelper.getLoginUser();
Long userDeptId = loginUser.getDeptId();
log.info("用户部门ID:{}",userDeptId);
// 更新项目信息
ProjectInfo projectInfo = new ProjectInfo();
projectInfo.setId(projectId);
projectInfo.setCreateDept(deptId);
baseMapper.updateById(projectInfo);
}
}

8
ruoyi-modules/guoyan-platform/src/main/java/org/dromara/platform/service/impl/WorkOrderInfoServiceImpl.java

@ -168,15 +168,22 @@ public class WorkOrderInfoServiceImpl implements IWorkOrderInfoService {
private LambdaQueryWrapper<WorkOrderInfo> buildQueryWrapper(WorkOrderInfoBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<WorkOrderInfo> lqw = Wrappers.lambdaQuery();
//所属项目
lqw.like(StringUtils.isNotBlank(bo.getProjectName()), WorkOrderInfo::getProjectName, bo.getProjectName());
//编号:id 主键
lqw.eq(StringUtils.isNotBlank(bo.getRepairer()), WorkOrderInfo::getRepairer, bo.getRepairer());
lqw.eq(StringUtils.isNotBlank(bo.getId()), WorkOrderInfo::getId, bo.getId());
//所属合同
lqw.eq(StringUtils.isNotBlank(bo.getContractName()), WorkOrderInfo::getContractName, bo.getContractName());
lqw.eq(StringUtils.isNotBlank(bo.getRepairerId()), WorkOrderInfo::getRepairerId, bo.getRepairerId());
lqw.eq(bo.getIsAccident() != null, WorkOrderInfo::getIsAccident, bo.getIsAccident());
lqw.eq(bo.getResponseLevel() != null, WorkOrderInfo::getResponseLevel, bo.getResponseLevel());
lqw.eq(bo.getResponseTime() != null, WorkOrderInfo::getResponseTime, bo.getResponseTime());
lqw.eq(StringUtils.isNotBlank(bo.getFaultCategory()), WorkOrderInfo::getFaultCategory, bo.getFaultCategory());
lqw.eq(bo.getFaultSubcategory() != null, WorkOrderInfo::getFaultSubcategory, bo.getFaultSubcategory());
//所属机构:organization_name
lqw.eq(StringUtils.isNotBlank(bo.getOrganizationName()), WorkOrderInfo::getOrganizationName, bo.getOrganizationName());
//故障地点:fault_location
lqw.eq(StringUtils.isNotBlank(bo.getFaultLocation()), WorkOrderInfo::getFaultLocation, bo.getFaultLocation());
lqw.eq(StringUtils.isNotBlank(bo.getFaultDescription()), WorkOrderInfo::getFaultDescription, bo.getFaultDescription());
lqw.eq(StringUtils.isNotBlank(bo.getAttachment()), WorkOrderInfo::getAttachment, bo.getAttachment());
@ -185,6 +192,7 @@ public class WorkOrderInfoServiceImpl implements IWorkOrderInfoService {
lqw.eq(bo.getIsDispatched() != null, WorkOrderInfo::getIsDispatched, bo.getIsDispatched());
lqw.eq(StringUtils.isNotBlank(bo.getLatitude()), WorkOrderInfo::getLatitude, bo.getLatitude());
lqw.eq(StringUtils.isNotBlank(bo.getLongitude()), WorkOrderInfo::getLongitude, bo.getLongitude());
//当前状态:status
lqw.eq(bo.getStatus() != null, WorkOrderInfo::getStatus, bo.getStatus());
// 添加按创建时间降序排序

Loading…
Cancel
Save