This commit is contained in:
zt
2025-11-25 16:05:58 +08:00
parent fbbc4846de
commit 66893410e9
18 changed files with 148 additions and 52 deletions

View File

@ -83,7 +83,7 @@ public class BusContactnoticeController extends BaseController {
/**
* 修改联系单
*/
@SaCheckPermission("cory:contactnotice:edit")
// @SaCheckPermission("cory:contactnotice:edit")
@Log(title = "联系单", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()

View File

@ -46,4 +46,7 @@ public class BusContactnoticeBo extends BaseEntity {
*/
@NotNull(message = "模板类型不能为空", groups = { QueryGroup.class })
private List<Long> types;
private Long id;
}

View File

@ -57,7 +57,7 @@ public class BusBillofquantitiesVersionsController extends BaseController {
/**
* 获取所有版本号
*/
@SaCheckPermission("design:billofquantitiesVersions:obtainAllVersionNumbers")
@SaCheckPermission("design:billofquantitiesVersions:list")
@GetMapping("/obtainAllVersionNumbers")
public TableDataInfo<BusBillofquantitiesVersionsVo> obtainAllVersionNumbers(ObtainAllVersionNumbersReq bo, PageQuery pageQuery) {
return busBillofquantitiesVersionsService.obtainAllVersionNumbers(bo, pageQuery);
@ -76,7 +76,7 @@ public class BusBillofquantitiesVersionsController extends BaseController {
/**
* 获取指定版本的sheet
*/
@SaCheckPermission("design:billofquantitiesVersions:sheetList")
@SaCheckPermission("design:billofquantitiesVersions:list")
@GetMapping("/sheetList")
public R<List<String>> sheetList(SheetListReq bo) {
return R.ok(busBillofquantitiesVersionsService.sheetList(bo));
@ -85,7 +85,7 @@ public class BusBillofquantitiesVersionsController extends BaseController {
/**
* 获取工程量清单列表
*/
@SaCheckPermission("design:billofquantitiesVersions:obtainTheList")
@SaCheckPermission("design:billofquantitiesVersions:list")
@GetMapping("/obtainTheList")
public R<List<ObtainTheListRes>> obtainTheList(CoryObtainTheListReq bo, PageQuery pageQuery) {
return R.ok(busBillofquantitiesVersionsService.obtainTheList(bo));
@ -114,6 +114,7 @@ public class BusBillofquantitiesVersionsController extends BaseController {
* 导出工程量清单版本列表
*/
@Log(title = "工程量清单版本", businessType = BusinessType.EXPORT)
@SaCheckPermission("design:billofquantitiesVersions:export")
@PostMapping("/export")
public void export(String versions,Long projectId, HttpServletResponse response) throws IOException {
Map<String, List<BillOfQuantitiesExport>> sheetDataMap = busBillofquantitiesVersionsService.export(versions,projectId);

View File

@ -130,7 +130,7 @@ public class BusDrawingreviewController extends BaseController {
/**
* 查询项目下的子项目列表
*/
@SaCheckPermission("design:drawingreviewReceipts:subProjectList")
// @SaCheckPermission("design:drawingreviewReceipts:subProjectList")
@GetMapping("/subProjectList/{id}")
public R<List<BusSubProjectVo>> listSubProject(@NotNull(message = "项目id不能为空")
@PathVariable Long id) {

View File

@ -98,7 +98,7 @@ public class BusDrawingreviewReceiptsController extends BaseController {
*
* @param id 主键
*/
@SaCheckPermission("design:drawingreviewReceipts:query")
// @SaCheckPermission("design:drawingreviewReceipts:query")
@GetMapping("/{id}")
public R<BusDrawingreviewReceiptsVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
@ -119,7 +119,7 @@ public class BusDrawingreviewReceiptsController extends BaseController {
/**
* 修改设计-图纸评审验证
*/
@SaCheckPermission("design:drawingreviewReceipts:edit")
// @SaCheckPermission("design:drawingreviewReceipts:edit")
@Log(title = "设计-图纸评审验证", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
@ -163,6 +163,8 @@ public class BusDrawingreviewReceiptsController extends BaseController {
private static final String TEMPLATE_PATH = "template/设计验证表.docx";
@PostMapping("/downloadWord")
public void generateDesignLeaderDoc(Long id, HttpServletResponse response) {
OutputStream outputStream = null;

View File

@ -15,6 +15,9 @@ import org.dromara.design.domain.DesCollectCatalogue;
import org.dromara.design.domain.dto.desCollect.DesCollectBatchDto;
import org.dromara.design.domain.vo.DesCollectCatalogueVo;
//import org.dromara.design.handler.UserDropdownSheetWriteHandler;
import org.dromara.system.domain.bo.SysUserBo;
import org.dromara.system.domain.vo.SysUserVo;
import org.dromara.system.service.ISysUserService;
import org.dromara.tender.domain.bo.BusBillofquantitiesLimitListBo;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
@ -46,6 +49,7 @@ import org.springframework.web.multipart.MultipartFile;
public class DesCollectController extends BaseController {
private final IDesCollectService desCollectService;
private final ISysUserService userService;
/**
* 查询收资清单列表
@ -56,6 +60,13 @@ public class DesCollectController extends BaseController {
return desCollectService.queryPageList(bo, pageQuery);
}
@SaCheckPermission("design:collect:query")
@GetMapping("/userList")
public TableDataInfo<SysUserVo> list(SysUserBo user, PageQuery pageQuery) {
return userService.selectPageUserList(user, pageQuery);
}
/**
* 导出收资清单列表
*/
@ -129,7 +140,7 @@ public class DesCollectController extends BaseController {
*
* @param projectId 项目ID
*/
@SaCheckPermission("design:collect:byProjectId")
@SaCheckPermission("design:collect:query")
@GetMapping("/byProjectId/{projectId}")
public R<DesCollectVo> getInfoByProjectId(@NotNull(message = "项目ID不能为空")
@PathVariable Long projectId) {

View File

@ -7,6 +7,7 @@ import java.net.URLEncoder;
import java.util.*;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.deepoove.poi.XWPFTemplate;
import com.deepoove.poi.config.Configure;
import com.deepoove.poi.plugin.table.LoopRowTableRenderPolicy;
@ -14,14 +15,20 @@ import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.dromara.common.core.enums.BusinessStatusEnum;
import org.dromara.design.domain.DesCollect;
import org.dromara.design.domain.DesCollectFile;
import org.dromara.design.domain.bo.DesCollectCatalogueBo;
import org.dromara.design.domain.bo.DesCollectFileBo;
import org.dromara.design.domain.dto.ExportDto;
import org.dromara.design.domain.dto.designchange.DesDesignExtendDetailDto;
import org.dromara.design.domain.vo.DesCollectCatalogueVo;
import org.dromara.design.domain.vo.DesCollectFileVo;
import org.dromara.design.domain.vo.DesCollectFileWordVo;
import org.dromara.design.domain.vo.designchange.DesDesignChangeVo;
import org.dromara.design.service.IDesCollectCatalogueService;
import org.dromara.design.service.IDesCollectFileService;
import org.dromara.design.service.IDesCollectService;
import org.dromara.project.domain.BusProject;
import org.dromara.project.service.IBusProjectService;
import org.springframework.core.io.ClassPathResource;
@ -56,6 +63,21 @@ public class DesCollectFileController extends BaseController {
private final IDesCollectFileService desCollectFileService;
private final IBusProjectService projectService;
private final IDesCollectService desCollectService;
private final IDesCollectCatalogueService desCollectCatalogueService;
@SaCheckPermission("design:collectFile:list")
@GetMapping("/catalogueList")
public TableDataInfo<DesCollectCatalogueVo> list(DesCollectCatalogueBo bo, PageQuery pageQuery) {
DesCollect desCollect = desCollectService.getOne(Wrappers.lambdaQuery(DesCollect.class)
.eq(DesCollect::getProjectId, bo.getProjectId()).last("limit 1"));
if (desCollect == null || !BusinessStatusEnum.FINISH.getStatus().equals(desCollect.getStatus())) {
return TableDataInfo.build();
}
return desCollectCatalogueService.queryPageList(bo, pageQuery);
}
/**
* 查询收资文件列表
@ -66,6 +88,8 @@ public class DesCollectFileController extends BaseController {
return desCollectFileService.queryPageList(bo, pageQuery);
}
/**
* 导出收资文件列表
*/
@ -142,6 +166,7 @@ public class DesCollectFileController extends BaseController {
}
private static final String TEMPLATE_PATH = "template/设计输入资料清单及评审表.docx";
@SaCheckPermission("design:collectFile:downloadWord")
@PostMapping("/downloadWord")
public void generateDesignLeaderDoc(Long projectId, HttpServletResponse response) {
OutputStream outputStream = null;

View File

@ -177,6 +177,8 @@ public class DesConstructionSchedulePlanController extends BaseController {
private static final String TEMPLATE_RESOURCE_PATH = "template/CCCET-JL-CX-25设计计划表.docx";
// -------------------------- 2. 核心接口:修复单元格清空逻辑与数据填充 --------------------------
@SaCheckPermission("design:constructionSchedulePlan:downloadWord")
@PostMapping("/downloadWord")
public void fillCccetTemplate(Long projectId, HttpServletResponse response) {
// 1. 基础参数校验(避免空数据)

View File

@ -97,7 +97,7 @@ public class DesDesignChangeController extends BaseController {
*
* @param id 主键
*/
@SaCheckPermission("design:designChange:query")
// @SaCheckPermission("design:designChange:query")
@GetMapping("/{id}")
public R<DesDesignChangeVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
@ -118,7 +118,7 @@ public class DesDesignChangeController extends BaseController {
/**
* 修改设计变更管理
*/
@SaCheckPermission("design:designChange:edit")
// @SaCheckPermission("design:designChange:edit")
@Log(title = "设计变更管理", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
@ -143,7 +143,7 @@ public class DesDesignChangeController extends BaseController {
/**
* 查询选择卷册目录
*/
@SaCheckPermission("design:designChange:catalogList")
// @SaCheckPermission("design:designChange:catalogList")
@GetMapping("/catalogList/{projectId}")
public R<List<DesVolumeCatalogVo>> catalogList(@PathVariable("projectId") Long projectId) {
return R.ok(desVolumeCatalogService.catalogList(projectId));

View File

@ -2,7 +2,10 @@ package org.dromara.design.controller;
import java.util.List;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import jakarta.annotation.Resource;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
@ -15,7 +18,15 @@ import org.dromara.design.domain.dto.desCollect.DesCollectBatchDto;
import org.dromara.design.domain.dto.desExtract.DesExtractBatchDto;
import org.dromara.design.domain.vo.DesCollectFileVo;
import org.dromara.design.domain.vo.DesUserVo;
import org.dromara.design.domain.vo.volumecatalog.DesVolumeCatalogVo;
import org.dromara.design.service.IDesUserService;
import org.dromara.design.service.IDesVolumeCatalogService;
import org.dromara.system.domain.bo.SysPostBo;
import org.dromara.system.domain.bo.SysRoleBo;
import org.dromara.system.domain.vo.SysRoleVo;
import org.dromara.system.domain.vo.SysUserInfoVo;
import org.dromara.system.domain.vo.SysUserVo;
import org.dromara.system.service.ISysUserService;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
@ -47,6 +58,10 @@ public class DesExtractController extends BaseController {
private final IDesExtractService desExtractService;
private final IDesUserService deUserService;
private final IDesVolumeCatalogService desVolumeCatalogService;
private final ISysUserService userService;
/**
* 查询提资清单列表
*/
@ -126,13 +141,29 @@ public class DesExtractController extends BaseController {
/**
* 查询用户的专业
*/
@SaCheckPermission("design:extract:userMajor")
@SaCheckPermission("design:extract:add")
@GetMapping("/userMajor")
public R<List<DesUserVo>> selectUserMajor(DesUserBo bo) {
bo.setUserType("2");
return R.ok( deUserService.queryList(bo));
}
@SaCheckPermission("design:extract:add")
@GetMapping("/catalogList/{projectId}")
public R<List<DesVolumeCatalogVo>> catalogList(@PathVariable("projectId") Long projectId) {
return R.ok(desVolumeCatalogService.catalogList(projectId));
}
@SaCheckPermission("design:extract:add")
@GetMapping("/userInfo/{userId}")
public R<SysUserInfoVo> userInfo(@PathVariable(value = "userId", required = false) Long userId) {
SysUserInfoVo userInfoVo = new SysUserInfoVo();
if (ObjectUtil.isNotNull(userId)) {
SysUserVo sysUser = userService.selectUserById(userId);
userInfoVo.setUser(sysUser);
}
return R.ok(userInfoVo);
}
/**
* 清单导出

View File

@ -47,16 +47,16 @@ public class DesPrelimSchemeController extends BaseController {
return desPrelimSchemeService.queryPageList(bo, pageQuery);
}
/**
* 导出设计初步方案列表
*/
@SaCheckPermission("design:prelimScheme:export")
@Log(title = "设计初步方案", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(DesPrelimSchemeBo bo, HttpServletResponse response) {
List<DesPrelimSchemeVo> list = desPrelimSchemeService.queryList(bo);
ExcelUtil.exportExcel(list, "设计初步方案", DesPrelimSchemeVo.class, response);
}
// /**
// * 导出设计初步方案列表
// */
// @SaCheckPermission("design:prelimScheme:export")
// @Log(title = "设计初步方案", businessType = BusinessType.EXPORT)
// @PostMapping("/export")
// public void export(DesPrelimSchemeBo bo, HttpServletResponse response) {
// List<DesPrelimSchemeVo> list = desPrelimSchemeService.queryList(bo);
// ExcelUtil.exportExcel(list, "设计初步方案", DesPrelimSchemeVo.class, response);
// }
/**
* 获取设计初步方案详细信息
@ -70,27 +70,27 @@ public class DesPrelimSchemeController extends BaseController {
return R.ok(desPrelimSchemeService.queryById(id));
}
/**
* 新增设计初步方案
*/
@SaCheckPermission("design:prelimScheme:add")
@Log(title = "设计初步方案", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody DesPrelimSchemeBo bo) {
return toAjax(desPrelimSchemeService.insertByBo(bo));
}
// /**
// * 新增设计初步方案
// */
// @SaCheckPermission("design:prelimScheme:add")
// @Log(title = "设计初步方案", businessType = BusinessType.INSERT)
// @RepeatSubmit()
// @PostMapping()
// public R<Void> add(@Validated(AddGroup.class) @RequestBody DesPrelimSchemeBo bo) {
// return toAjax(desPrelimSchemeService.insertByBo(bo));
// }
/**
* 修改设计初步方案
*/
@SaCheckPermission("design:prelimScheme:edit")
@Log(title = "设计初步方案", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody DesPrelimSchemeBo bo) {
return toAjax(desPrelimSchemeService.updateByBo(bo));
}
// /**
// * 修改设计初步方案
// */
// @SaCheckPermission("design:prelimScheme:edit")
// @Log(title = "设计初步方案", businessType = BusinessType.UPDATE)
// @RepeatSubmit()
// @PutMapping()
// public R<Void> edit(@Validated(EditGroup.class) @RequestBody DesPrelimSchemeBo bo) {
// return toAjax(desPrelimSchemeService.updateByBo(bo));
// }
/**
* 删除设计初步方案
@ -109,7 +109,7 @@ public class DesPrelimSchemeController extends BaseController {
/**
* 新增设计初步方案文件
*/
@SaCheckPermission("design:prelimScheme:upload")
@SaCheckPermission("design:prelimScheme:add")
@Log(title = "设计初步方案", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping("/upload")
@ -121,7 +121,7 @@ public class DesPrelimSchemeController extends BaseController {
/**
* 修改设计方案文件
*/
@SaCheckPermission("design:prelimScheme:update")
@SaCheckPermission("design:prelimScheme:edit")
@Log(title = "设计初步方案", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PostMapping("/update/{id}")
@ -129,6 +129,8 @@ public class DesPrelimSchemeController extends BaseController {
return toAjax(desPrelimSchemeService.updateFile(file, projectId,id));
}
@SaCheckPermission("design:prelimScheme:export")
@Log(title = "设计初步方案", businessType = BusinessType.EXPORT)
@PostMapping("/exportZipWithStatus")
public void exportZipWithStatus(ExportDto dto, HttpServletResponse response) throws Exception {
desPrelimSchemeService.exportAsZipWithStatusPrefix(dto, response);

View File

@ -109,7 +109,7 @@ public class DesSchemeController extends BaseController {
/**
* 新增设计方案文件
*/
@SaCheckPermission("design:scheme:upload")
@SaCheckPermission("design:scheme:add")
@Log(title = "设计方案", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping("/upload")
@ -120,7 +120,7 @@ public class DesSchemeController extends BaseController {
/**
* 修改设计方案文件
*/
@SaCheckPermission("design:scheme:update")
@SaCheckPermission("design:scheme:edit")
@Log(title = "设计方案", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PostMapping("/update/{id}")
@ -129,6 +129,7 @@ public class DesSchemeController extends BaseController {
}
@SaCheckPermission("design:scheme:export")
@PostMapping("/exportZipWithStatus")
public void exportZipWithStatus(ExportDto dto, HttpServletResponse response) throws Exception {
desSchemeService.exportAsZipWithStatusPrefix(dto, response);

View File

@ -61,7 +61,7 @@ public class DesSubcontractController extends BaseController {
*
* @param id 主键
*/
@SaCheckPermission("design:subcontract:query")
// @SaCheckPermission("design:subcontract:query")
@GetMapping("/{id}")
public R<DesSubcontractVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {

View File

@ -29,6 +29,9 @@ import org.dromara.design.domain.DesUserExcelData;
import org.dromara.design.domain.dto.desUser.DesUserBatchDto;
import org.dromara.project.domain.BusProject;
import org.dromara.project.service.IBusProjectService;
import org.dromara.system.domain.bo.SysUserBo;
import org.dromara.system.domain.vo.SysUserVo;
import org.dromara.system.service.ISysUserService;
import org.springframework.core.io.ClassPathResource;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
@ -64,6 +67,7 @@ public class DesUserController extends BaseController {
private final IDesUserService desUserService;
private final IBusProjectService projectService;
private final ISysUserService userService;
/**
* 查询设计人员列表
@ -74,6 +78,12 @@ public class DesUserController extends BaseController {
return desUserService.queryPageList(bo, pageQuery);
}
@SaCheckPermission("design:user:list")
@GetMapping("/userList")
public TableDataInfo<SysUserVo> list(SysUserBo user, PageQuery pageQuery) {
return userService.selectPageUserList(user, pageQuery);
}
/**
* 导出设计人员列表
*/
@ -154,6 +164,7 @@ public class DesUserController extends BaseController {
private static final String TEMPLATE_PATH = "template/设计项目负责人任命通知单.docx";
@SaCheckPermission("design:user:downloadWord")
@PostMapping("/downloadWord")
public void generateDesignLeaderDoc( Long projectId,
HttpServletResponse response

View File

@ -89,7 +89,7 @@ public class DesVolumeCatalogController extends BaseController {
*
* @param id 主键
*/
@SaCheckPermission("design:volumeCatalog:query")
// @SaCheckPermission("design:volumeCatalog:query")
@GetMapping("/{id}")
public R<DesVolumeCatalogVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id, String type) {
@ -222,7 +222,7 @@ public class DesVolumeCatalogController extends BaseController {
/**
* 查询设计人员列表
*/
@SaCheckPermission("design:volumeCatalog:majorList")
@SaCheckPermission("design:volumeCatalog:add")
@GetMapping("/majorList")
public R<List<DesUserVo>> list(DesUserBo bo) {
@ -237,6 +237,13 @@ public class DesVolumeCatalogController extends BaseController {
return R.ok(uniqueMajors);
}
@SaCheckPermission("design:volumeCatalog:add")
@GetMapping("/userList")
public TableDataInfo<DesUserVo> list(DesUserBo bo, PageQuery pageQuery) {
return desUserService.queryPageList(bo, pageQuery);
}
public static List<ExcelData> readExcel(MultipartFile file) throws IOException {
List<ExcelData> dataList = new ArrayList<>();

View File

@ -96,7 +96,7 @@ public class DesVolumeFileController extends BaseController {
}
@SaCheckPermission("design:volumeFile:joinList")
@GetMapping("/joinList")
public TableDataInfo<DesVolumeFileJoinVo> joinList(DesVolumeFileBo bo, PageQuery pageQuery) {
return desVolumeFileService.queryJoinPageList(bo, pageQuery);

View File

@ -70,7 +70,7 @@ public class DesVolumeFileViewerController extends BaseController {
/**
* 新增卷册文件查阅人
*/
@SaCheckPermission("design:volumeFileViewer:add")
// @SaCheckPermission("design:volumeFileViewer:add")
@Log(title = "卷册文件查阅人", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()

View File

@ -116,7 +116,7 @@ public class SysOssController extends BaseController {
*
* @param ossId OSS对象ID
*/
@SaCheckPermission("system:oss:download")
// @SaCheckPermission("system:oss:download")
@GetMapping("/download/{ossId}")
public void download(@PathVariable Long ossId, HttpServletResponse response) throws IOException {
ossService.download(ossId, response);