Merge branch 'refs/heads/zt-test' into test
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<artifactId>zt-module-infra</artifactId>
|
||||
<artifactId>zt-module-infra-dsc</artifactId>
|
||||
<groupId>com.zt.plat</groupId>
|
||||
<version>${revision}</version>
|
||||
</parent>
|
||||
@@ -24,6 +24,12 @@
|
||||
<version>${revision}</version>
|
||||
</dependency>
|
||||
|
||||
<!-- Test 测试相关 -->
|
||||
<dependency>
|
||||
<groupId>com.zt.plat</groupId>
|
||||
<artifactId>zt-spring-boot-starter-test</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
<build>
|
||||
|
||||
@@ -0,0 +1,175 @@
|
||||
package com.zt.plat.module.infra.controller.admin.businessfile;
|
||||
|
||||
import com.zt.plat.framework.apilog.core.annotation.ApiAccessLog;
|
||||
import com.zt.plat.framework.common.pojo.CommonResult;
|
||||
import com.zt.plat.framework.common.pojo.PageParam;
|
||||
import com.zt.plat.framework.common.pojo.PageResult;
|
||||
import com.zt.plat.framework.common.util.object.BeanUtils;
|
||||
import com.zt.plat.framework.excel.core.util.ExcelUtils;
|
||||
import com.zt.plat.module.infra.controller.admin.businessfile.vo.BusinessFilePageReqVO;
|
||||
import com.zt.plat.module.infra.controller.admin.businessfile.vo.BusinessFileRespVO;
|
||||
import com.zt.plat.module.infra.controller.admin.businessfile.vo.BusinessFileSaveReqVO;
|
||||
import com.zt.plat.module.infra.controller.admin.businessfile.vo.BusinessFileWithUrlRespVO;
|
||||
import com.zt.plat.module.infra.dal.dataobject.businessfile.BusinessFileDO;
|
||||
import com.zt.plat.module.infra.service.businessfile.BusinessFileService;
|
||||
import com.zt.plat.module.infra.service.file.FileService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.Valid;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.PutMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
|
||||
import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
|
||||
import static com.zt.plat.framework.common.pojo.CommonResult.success;
|
||||
|
||||
@Tag(name = "管理后台 - 业务附件关联")
|
||||
@RestController
|
||||
@RequestMapping("/infra/business-file")
|
||||
@Validated
|
||||
public class BusinessFileController {
|
||||
|
||||
@Resource
|
||||
private BusinessFileService businessFileService;
|
||||
|
||||
@Resource
|
||||
private FileService fileService;
|
||||
|
||||
@PostMapping("/create")
|
||||
@Operation(summary = "创建业务附件关联")
|
||||
@PreAuthorize("@ss.hasPermission('infra:business-file:create')")
|
||||
public CommonResult<Long> createBusinessFile(@Valid @RequestBody BusinessFileSaveReqVO createReqVO) {
|
||||
return success(businessFileService.createBusinessFile(createReqVO));
|
||||
}
|
||||
|
||||
@PostMapping("/batch-create")
|
||||
@Operation(summary = "批量创建业务附件关联")
|
||||
@PreAuthorize("@ss.hasPermission('infra:business-file:create')")
|
||||
public CommonResult<List<Long>> batchCreateBusinessFile(@Valid @RequestBody List<BusinessFileSaveReqVO> createReqVOList) {
|
||||
return success(businessFileService.batchCreateBusinessFile(createReqVOList));
|
||||
}
|
||||
|
||||
@PutMapping("/update")
|
||||
@Operation(summary = "更新业务附件关联")
|
||||
@PreAuthorize("@ss.hasPermission('infra:business-file:update')")
|
||||
public CommonResult<Boolean> updateBusinessFile(@Valid @RequestBody BusinessFileSaveReqVO updateReqVO) {
|
||||
businessFileService.updateBusinessFile(updateReqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
@Operation(summary = "删除业务附件关联")
|
||||
@Parameter(name = "id", description = "编号", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('infra:business-file:delete')")
|
||||
public CommonResult<Boolean> deleteBusinessFile(@RequestParam("id") Long id) {
|
||||
businessFileService.deleteBusinessFile(id);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete-list")
|
||||
@Parameter(name = "ids", description = "编号", required = true)
|
||||
@Operation(summary = "批量删除业务附件关联")
|
||||
@PreAuthorize("@ss.hasPermission('infra:business-file:delete')")
|
||||
public CommonResult<Boolean> deleteBusinessFileList(@RequestParam("ids") List<Long> ids) {
|
||||
businessFileService.deleteBusinessFileListByIds(ids);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@GetMapping("/get")
|
||||
@Operation(summary = "获得业务附件关联")
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
@PreAuthorize("@ss.hasPermission('infra:business-file:query')")
|
||||
public CommonResult<BusinessFileRespVO> getBusinessFile(@RequestParam("id") Long id) {
|
||||
BusinessFileDO businessFile = businessFileService.getBusinessFile(id);
|
||||
return success(BeanUtils.toBean(businessFile, BusinessFileRespVO.class));
|
||||
}
|
||||
|
||||
@GetMapping("/get-by-code")
|
||||
@Operation(summary = "根据业务编码获得业务附件关联")
|
||||
@Parameter(name = "businessCode", description = "业务编码", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('infra:business-file:query')")
|
||||
public CommonResult<BusinessFileRespVO> getBusinessFileByBusinessCode(@RequestParam("businessCode") String businessCode) {
|
||||
BusinessFileDO businessFile = businessFileService.getBusinessFileByBusinessCode(businessCode);
|
||||
return success(BeanUtils.toBean(businessFile, BusinessFileRespVO.class));
|
||||
}
|
||||
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "获得业务附件关联分页")
|
||||
@PreAuthorize("@ss.hasAnyPermissions({'infra:business-file:query','supply:purchase-credit-granting-form-template:query-list','supply:purchase-amount-request-form-template:query-list'})")
|
||||
public CommonResult<PageResult<BusinessFileRespVO>> getBusinessFilePage(@Valid BusinessFilePageReqVO pageReqVO) {
|
||||
PageResult<BusinessFileDO> pageResult = businessFileService.getBusinessFilePage(pageReqVO);
|
||||
return success(BeanUtils.toBean(pageResult, BusinessFileRespVO.class));
|
||||
}
|
||||
|
||||
@GetMapping("/page-with-url")
|
||||
@Operation(summary = "获得业务附件关联分页(带URL)")
|
||||
@PreAuthorize("@ss.hasPermission('infra:business-file:query')")
|
||||
public CommonResult<PageResult<BusinessFileWithUrlRespVO>> getBusinessFilePageWithUrl(@Valid BusinessFilePageReqVO pageReqVO) {
|
||||
return success(businessFileService.getBusinessFilePageWithUrl(pageReqVO));
|
||||
}
|
||||
|
||||
@GetMapping("/export-excel")
|
||||
@Operation(summary = "导出业务附件关联 Excel")
|
||||
@PreAuthorize("@ss.hasPermission('infra:business-file:export')")
|
||||
@ApiAccessLog(operateType = EXPORT)
|
||||
public void exportBusinessFileExcel(@Valid BusinessFilePageReqVO pageReqVO,
|
||||
HttpServletResponse response) throws IOException {
|
||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||
List<BusinessFileDO> list = businessFileService.getBusinessFilePage(pageReqVO).getList();
|
||||
// 导出 Excel
|
||||
ExcelUtils.write(response, "业务附件关联.xls", "数据", BusinessFileRespVO.class,
|
||||
BeanUtils.toBean(list, BusinessFileRespVO.class));
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete-by-business")
|
||||
@Operation(summary = "根据业务Id和来源删除业务附件关联")
|
||||
@Parameter(name = "businessId", description = "业务Id", required = true)
|
||||
@Parameter(name = "source", description = "业务来源", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('infra:business-file:delete')")
|
||||
public CommonResult<Boolean> deleteBusinessFileByBusinessIdAndSource(@RequestParam("businessId") Long businessId,
|
||||
@RequestParam("source") String source) {
|
||||
businessFileService.deleteBusinessFileByBusinessIdAndSource(businessId, source);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@PutMapping("/enable")
|
||||
@Operation(summary = "启用业务附件关联")
|
||||
@Parameter(name = "id", description = "编号", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('infra:business-file:update')")
|
||||
public CommonResult<Boolean> enableBusinessFile(@RequestParam("id") Long id) {
|
||||
businessFileService.enableBusinessFile(id);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@PutMapping("/disable")
|
||||
@Operation(summary = "禁用业务附件关联")
|
||||
@Parameter(name = "id", description = "编号", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('infra:business-file:update')")
|
||||
public CommonResult<Boolean> disableBusinessFile(@RequestParam("id") Long id) {
|
||||
businessFileService.disableBusinessFile(id);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@PutMapping("/update-status")
|
||||
@Operation(summary = "批量更新业务附件状态")
|
||||
@PreAuthorize("@ss.hasPermission('infra:business-file:update')")
|
||||
public CommonResult<Boolean> updateBusinessFileStatus(@RequestParam("ids") List<Long> ids,
|
||||
@RequestParam("status") Integer status) {
|
||||
businessFileService.updateBusinessFileStatus(ids, status);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user