parent
a761c0a931
commit
5ee11edf05
@ -0,0 +1,102 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.controller.admin.distribution;
|
||||||
|
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import io.swagger.v3.oas.annotations.Parameter;
|
||||||
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
|
|
||||||
|
import javax.validation.constraints.*;
|
||||||
|
import javax.validation.*;
|
||||||
|
import javax.servlet.http.*;
|
||||||
|
import java.util.*;
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||||
|
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
||||||
|
import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.*;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.bikmk.controller.admin.distribution.vo.*;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.dataobject.distribution.DistributionDO;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.convert.distribution.DistributionConvert;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.service.distribution.DistributionService;
|
||||||
|
|
||||||
|
@Tag(name = "凯密克AI后台 - 项目主要分布")
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/bikmk/distribution")
|
||||||
|
@Validated
|
||||||
|
public class DistributionController {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private DistributionService distributionService;
|
||||||
|
|
||||||
|
@PostMapping("/create")
|
||||||
|
@Operation(summary = "创建项目主要分布")
|
||||||
|
@PreAuthorize("@ss.hasPermission('bikmk:distribution:create')")
|
||||||
|
public CommonResult<Long> createDistribution(@Valid @RequestBody DistributionCreateReqVO createReqVO) {
|
||||||
|
return success(distributionService.createDistribution(createReqVO));
|
||||||
|
}
|
||||||
|
|
||||||
|
@PutMapping("/update")
|
||||||
|
@Operation(summary = "更新项目主要分布")
|
||||||
|
@PreAuthorize("@ss.hasPermission('bikmk:distribution:update')")
|
||||||
|
public CommonResult<Boolean> updateDistribution(@Valid @RequestBody DistributionUpdateReqVO updateReqVO) {
|
||||||
|
distributionService.updateDistribution(updateReqVO);
|
||||||
|
return success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("/delete")
|
||||||
|
@Operation(summary = "删除项目主要分布")
|
||||||
|
@Parameter(name = "id", description = "编号", required = true)
|
||||||
|
@PreAuthorize("@ss.hasPermission('bikmk:distribution:delete')")
|
||||||
|
public CommonResult<Boolean> deleteDistribution(@RequestParam("id") Long id) {
|
||||||
|
distributionService.deleteDistribution(id);
|
||||||
|
return success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/get")
|
||||||
|
@Operation(summary = "获得项目主要分布")
|
||||||
|
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||||
|
@PreAuthorize("@ss.hasPermission('bikmk:distribution:query')")
|
||||||
|
public CommonResult<DistributionRespVO> getDistribution(@RequestParam("id") Long id) {
|
||||||
|
DistributionDO distribution = distributionService.getDistribution(id);
|
||||||
|
return success(DistributionConvert.INSTANCE.convert(distribution));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/list")
|
||||||
|
@Operation(summary = "获得项目主要分布列表")
|
||||||
|
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
|
||||||
|
@PreAuthorize("@ss.hasPermission('bikmk:distribution:query')")
|
||||||
|
public CommonResult<List<DistributionRespVO>> getDistributionList(@RequestParam("ids") Collection<Long> ids) {
|
||||||
|
List<DistributionDO> list = distributionService.getDistributionList(ids);
|
||||||
|
return success(DistributionConvert.INSTANCE.convertList(list));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/page")
|
||||||
|
@Operation(summary = "获得项目主要分布分页")
|
||||||
|
@PreAuthorize("@ss.hasPermission('bikmk:distribution:query')")
|
||||||
|
public CommonResult<PageResult<DistributionRespVO>> getDistributionPage(@Valid DistributionPageReqVO pageVO) {
|
||||||
|
PageResult<DistributionDO> pageResult = distributionService.getDistributionPage(pageVO);
|
||||||
|
return success(DistributionConvert.INSTANCE.convertPage(pageResult));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/export-excel")
|
||||||
|
@Operation(summary = "导出项目主要分布 Excel")
|
||||||
|
@PreAuthorize("@ss.hasPermission('bikmk:distribution:export')")
|
||||||
|
@OperateLog(type = EXPORT)
|
||||||
|
public void exportDistributionExcel(@Valid DistributionExportReqVO exportReqVO,
|
||||||
|
HttpServletResponse response) throws IOException {
|
||||||
|
List<DistributionDO> list = distributionService.getDistributionList(exportReqVO);
|
||||||
|
// 导出 Excel
|
||||||
|
List<DistributionExcelVO> datas = DistributionConvert.INSTANCE.convertList02(list);
|
||||||
|
ExcelUtils.write(response, "项目主要分布.xls", "数据", DistributionExcelVO.class, datas);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,14 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.controller.admin.distribution.vo;
|
||||||
|
|
||||||
|
import lombok.*;
|
||||||
|
import java.util.*;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import javax.validation.constraints.*;
|
||||||
|
|
||||||
|
@Schema(description = "管理后台 - 项目主要分布创建 Request VO")
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
public class DistributionCreateReqVO extends DistributionBaseVO {
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,34 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.controller.admin.distribution.vo;
|
||||||
|
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.*;
|
||||||
|
import java.util.*;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
|
import com.alibaba.excel.annotation.ExcelProperty;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目主要分布 Excel VO
|
||||||
|
*
|
||||||
|
* @author 芋道源码
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class DistributionExcelVO {
|
||||||
|
|
||||||
|
@ExcelProperty("编号")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@ExcelProperty("区域名称")
|
||||||
|
private String name;
|
||||||
|
|
||||||
|
@ExcelProperty("地图圆圈大小")
|
||||||
|
private String value;
|
||||||
|
|
||||||
|
@ExcelProperty("坐标")
|
||||||
|
private String position;
|
||||||
|
|
||||||
|
@ExcelProperty("创建时间")
|
||||||
|
private LocalDateTime createTime;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,31 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.controller.admin.distribution.vo;
|
||||||
|
|
||||||
|
import lombok.*;
|
||||||
|
import java.util.*;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
|
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||||
|
|
||||||
|
@Schema(description = "管理后台 - 项目主要分布分页 Request VO")
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
public class DistributionPageReqVO extends PageParam {
|
||||||
|
|
||||||
|
@Schema(description = "区域名称", example = "福建省福州市仓山区")
|
||||||
|
private String name;
|
||||||
|
|
||||||
|
@Schema(description = "地图圆圈大小", example = "20")
|
||||||
|
private String value;
|
||||||
|
|
||||||
|
@Schema(description = "坐标", example = "[119.2735,26.0467]")
|
||||||
|
private String position;
|
||||||
|
|
||||||
|
@Schema(description = "创建时间")
|
||||||
|
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||||
|
private LocalDateTime[] createTime;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,19 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.controller.admin.distribution.vo;
|
||||||
|
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.*;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
|
@Schema(description = "管理后台 - 项目主要分布 Response VO")
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
public class DistributionRespVO extends DistributionBaseVO {
|
||||||
|
|
||||||
|
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "23005")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||||
|
private LocalDateTime createTime;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.controller.admin.distribution.vo;
|
||||||
|
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.*;
|
||||||
|
import java.util.*;
|
||||||
|
import javax.validation.constraints.*;
|
||||||
|
|
||||||
|
@Schema(description = "管理后台 - 项目主要分布更新 Request VO")
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
public class DistributionUpdateReqVO extends DistributionBaseVO {
|
||||||
|
|
||||||
|
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "23005")
|
||||||
|
@NotNull(message = "编号不能为空")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,111 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.controller.admin.policy;
|
||||||
|
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import io.swagger.v3.oas.annotations.Parameter;
|
||||||
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
|
|
||||||
|
import javax.validation.constraints.*;
|
||||||
|
import javax.validation.*;
|
||||||
|
import javax.servlet.http.*;
|
||||||
|
import java.util.*;
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||||
|
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
||||||
|
import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.*;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.bikmk.controller.admin.policy.vo.*;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.dataobject.policy.PolicyDO;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.convert.policy.PolicyConvert;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.service.policy.PolicyService;
|
||||||
|
|
||||||
|
@Tag(name = "凯密克BI后台 - 政策动态")
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/bikmk/policy")
|
||||||
|
@Validated
|
||||||
|
public class PolicyController {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private PolicyService policyService;
|
||||||
|
|
||||||
|
@PostMapping("/create")
|
||||||
|
@Operation(summary = "创建政策动态")
|
||||||
|
@PreAuthorize("@ss.hasPermission('bikmk:policy:create')")
|
||||||
|
public CommonResult<Long> createPolicy(@Valid @RequestBody PolicyCreateReqVO createReqVO) {
|
||||||
|
return success(policyService.createPolicy(createReqVO));
|
||||||
|
}
|
||||||
|
|
||||||
|
@PutMapping("/update")
|
||||||
|
@Operation(summary = "更新政策动态")
|
||||||
|
@PreAuthorize("@ss.hasPermission('bikmk:policy:update')")
|
||||||
|
public CommonResult<Boolean> updatePolicy(@Valid @RequestBody PolicyUpdateReqVO updateReqVO) {
|
||||||
|
policyService.updatePolicy(updateReqVO);
|
||||||
|
return success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("/delete")
|
||||||
|
@Operation(summary = "删除政策动态")
|
||||||
|
@Parameter(name = "id", description = "编号", required = true)
|
||||||
|
@PreAuthorize("@ss.hasPermission('bikmk:policy:delete')")
|
||||||
|
public CommonResult<Boolean> deletePolicy(@RequestParam("id") Long id) {
|
||||||
|
policyService.deletePolicy(id);
|
||||||
|
return success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/get")
|
||||||
|
@Operation(summary = "获得政策动态")
|
||||||
|
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||||
|
@PreAuthorize("@ss.hasPermission('bikmk:policy:query')")
|
||||||
|
public CommonResult<PolicyRespVO> getPolicy(@RequestParam("id") Long id) {
|
||||||
|
PolicyDO policy = policyService.getPolicy(id);
|
||||||
|
return success(PolicyConvert.INSTANCE.convert(policy));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/list")
|
||||||
|
@Operation(summary = "获得政策动态列表")
|
||||||
|
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
|
||||||
|
@PreAuthorize("@ss.hasPermission('bikmk:policy:query')")
|
||||||
|
public CommonResult<List<PolicyRespVO>> getPolicyList(@RequestParam("ids") Collection<Long> ids) {
|
||||||
|
List<PolicyDO> list = policyService.getPolicyList(ids);
|
||||||
|
return success(PolicyConvert.INSTANCE.convertList(list));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/listb")
|
||||||
|
@Operation(summary = "获得政策动态列表B")
|
||||||
|
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
|
||||||
|
@PreAuthorize("@ss.hasPermission('bikmk:policy:query')")
|
||||||
|
public CommonResult<List<PolicyRespVO>> getPolicyListB(@RequestParam("ids") Collection<Long> ids) {
|
||||||
|
List<PolicyDO> list = policyService.getPolicyList(ids);
|
||||||
|
return success(PolicyConvert.INSTANCE.convertList(list));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/page")
|
||||||
|
@Operation(summary = "获得政策动态分页")
|
||||||
|
@PreAuthorize("@ss.hasPermission('bikmk:policy:query')")
|
||||||
|
public CommonResult<PageResult<PolicyRespVO>> getPolicyPage(@Valid PolicyPageReqVO pageVO) {
|
||||||
|
PageResult<PolicyDO> pageResult = policyService.getPolicyPage(pageVO);
|
||||||
|
return success(PolicyConvert.INSTANCE.convertPage(pageResult));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/export-excel")
|
||||||
|
@Operation(summary = "导出政策动态 Excel")
|
||||||
|
@PreAuthorize("@ss.hasPermission('bikmk:policy:export')")
|
||||||
|
@OperateLog(type = EXPORT)
|
||||||
|
public void exportPolicyExcel(@Valid PolicyExportReqVO exportReqVO,
|
||||||
|
HttpServletResponse response) throws IOException {
|
||||||
|
List<PolicyDO> list = policyService.getPolicyList(exportReqVO);
|
||||||
|
// 导出 Excel
|
||||||
|
List<PolicyExcelVO> datas = PolicyConvert.INSTANCE.convertList02(list);
|
||||||
|
ExcelUtils.write(response, "政策动态.xls", "数据", PolicyExcelVO.class, datas);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,14 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.controller.admin.policy.vo;
|
||||||
|
|
||||||
|
import lombok.*;
|
||||||
|
import java.util.*;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import javax.validation.constraints.*;
|
||||||
|
|
||||||
|
@Schema(description = "管理后台 - 政策动态创建 Request VO")
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
public class PolicyCreateReqVO extends PolicyBaseVO {
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,34 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.controller.admin.policy.vo;
|
||||||
|
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.*;
|
||||||
|
import java.util.*;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
|
import com.alibaba.excel.annotation.ExcelProperty;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 政策动态 Excel VO
|
||||||
|
*
|
||||||
|
* @author 芋道源码
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class PolicyExcelVO {
|
||||||
|
|
||||||
|
@ExcelProperty("编号")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@ExcelProperty("区域")
|
||||||
|
private String region;
|
||||||
|
|
||||||
|
@ExcelProperty("政策信息")
|
||||||
|
private String policy;
|
||||||
|
|
||||||
|
@ExcelProperty("是否显示")
|
||||||
|
private Boolean isshow;
|
||||||
|
|
||||||
|
@ExcelProperty("创建时间")
|
||||||
|
private LocalDateTime createTime;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,31 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.controller.admin.policy.vo;
|
||||||
|
|
||||||
|
import lombok.*;
|
||||||
|
import java.util.*;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
|
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||||
|
|
||||||
|
@Schema(description = "管理后台 - 政策动态分页 Request VO")
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
public class PolicyPageReqVO extends PageParam {
|
||||||
|
|
||||||
|
@Schema(description = "区域")
|
||||||
|
private String region;
|
||||||
|
|
||||||
|
@Schema(description = "政策信息")
|
||||||
|
private String policy;
|
||||||
|
|
||||||
|
@Schema(description = "是否显示")
|
||||||
|
private Boolean isshow;
|
||||||
|
|
||||||
|
@Schema(description = "创建时间")
|
||||||
|
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||||
|
private LocalDateTime[] createTime;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,19 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.controller.admin.policy.vo;
|
||||||
|
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.*;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
|
@Schema(description = "管理后台 - 政策动态 Response VO")
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
public class PolicyRespVO extends PolicyBaseVO {
|
||||||
|
|
||||||
|
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "21159")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||||
|
private LocalDateTime createTime;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.controller.admin.policy.vo;
|
||||||
|
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.*;
|
||||||
|
import java.util.*;
|
||||||
|
import javax.validation.constraints.*;
|
||||||
|
|
||||||
|
@Schema(description = "管理后台 - 政策动态更新 Request VO")
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
public class PolicyUpdateReqVO extends PolicyBaseVO {
|
||||||
|
|
||||||
|
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "21159")
|
||||||
|
@NotNull(message = "编号不能为空")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,36 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.controller.app.distribution;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.controller.admin.distribution.vo.DistributionRespVO;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.convert.distribution.DistributionConvert;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.dataobject.distribution.DistributionDO;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.service.distribution.DistributionService;
|
||||||
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||||
|
import cn.iocoder.yudao.framework.datapermission.core.annotation.DataPermission;
|
||||||
|
|
||||||
|
@Tag(name = "凯密克AI - 项目主要分布")
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/bikmk/distribution")
|
||||||
|
@Validated
|
||||||
|
public class AppDistributionController {
|
||||||
|
@Resource
|
||||||
|
private DistributionService distributionService;
|
||||||
|
|
||||||
|
@GetMapping("/list")
|
||||||
|
@Operation(summary = "获得政策动态列表")
|
||||||
|
@DataPermission(enable = false)
|
||||||
|
public CommonResult<List<DistributionRespVO>> getAppDistributionList() {
|
||||||
|
List<DistributionDO> list = distributionService.getAppDistributionList();
|
||||||
|
return success(DistributionConvert.INSTANCE.convertList(list));
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,34 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.controller.app.policy;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.controller.admin.policy.vo.PolicyRespVO;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.convert.policy.PolicyConvert;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.dataobject.policy.PolicyDO;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.service.policy.PolicyService;
|
||||||
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||||
|
|
||||||
|
@Tag(name = "凯密克 - 政策动态")
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/bikmk/policy")
|
||||||
|
@Validated
|
||||||
|
public class AppPolicyController {
|
||||||
|
@Resource
|
||||||
|
private PolicyService policyService;
|
||||||
|
|
||||||
|
@GetMapping("/list")
|
||||||
|
@Operation(summary = "获得政策动态列表")
|
||||||
|
public CommonResult<List<PolicyRespVO>> getPolicyList() {
|
||||||
|
List<PolicyDO> list = policyService.getAppPolicyList();
|
||||||
|
return success(PolicyConvert.INSTANCE.convertList(list));
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,34 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.convert.distribution;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
|
||||||
|
import org.mapstruct.Mapper;
|
||||||
|
import org.mapstruct.factory.Mappers;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.controller.admin.distribution.vo.*;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.dataobject.distribution.DistributionDO;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目主要分布 Convert
|
||||||
|
*
|
||||||
|
* @author 芋道源码
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface DistributionConvert {
|
||||||
|
|
||||||
|
DistributionConvert INSTANCE = Mappers.getMapper(DistributionConvert.class);
|
||||||
|
|
||||||
|
DistributionDO convert(DistributionCreateReqVO bean);
|
||||||
|
|
||||||
|
DistributionDO convert(DistributionUpdateReqVO bean);
|
||||||
|
|
||||||
|
DistributionRespVO convert(DistributionDO bean);
|
||||||
|
|
||||||
|
List<DistributionRespVO> convertList(List<DistributionDO> list);
|
||||||
|
|
||||||
|
PageResult<DistributionRespVO> convertPage(PageResult<DistributionDO> page);
|
||||||
|
|
||||||
|
List<DistributionExcelVO> convertList02(List<DistributionDO> list);
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,34 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.convert.policy;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
|
||||||
|
import org.mapstruct.Mapper;
|
||||||
|
import org.mapstruct.factory.Mappers;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.controller.admin.policy.vo.*;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.dataobject.policy.PolicyDO;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 政策动态 Convert
|
||||||
|
*
|
||||||
|
* @author 芋道源码
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface PolicyConvert {
|
||||||
|
|
||||||
|
PolicyConvert INSTANCE = Mappers.getMapper(PolicyConvert.class);
|
||||||
|
|
||||||
|
PolicyDO convert(PolicyCreateReqVO bean);
|
||||||
|
|
||||||
|
PolicyDO convert(PolicyUpdateReqVO bean);
|
||||||
|
|
||||||
|
PolicyRespVO convert(PolicyDO bean);
|
||||||
|
|
||||||
|
List<PolicyRespVO> convertList(List<PolicyDO> list);
|
||||||
|
|
||||||
|
PageResult<PolicyRespVO> convertPage(PageResult<PolicyDO> page);
|
||||||
|
|
||||||
|
List<PolicyExcelVO> convertList02(List<PolicyDO> list);
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,43 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.dal.dataobject.distribution;
|
||||||
|
|
||||||
|
import lombok.*;
|
||||||
|
import java.util.*;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import com.baomidou.mybatisplus.annotation.*;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目主要分布 DO
|
||||||
|
*
|
||||||
|
* @author 芋道源码
|
||||||
|
*/
|
||||||
|
@TableName("bikmk_distribution")
|
||||||
|
@KeySequence("bikmk_distribution_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class DistributionDO extends BaseDO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 编号
|
||||||
|
*/
|
||||||
|
@TableId
|
||||||
|
private Long id;
|
||||||
|
/**
|
||||||
|
* 区域名称
|
||||||
|
*/
|
||||||
|
private String name;
|
||||||
|
/**
|
||||||
|
* 地图圆圈大小
|
||||||
|
*/
|
||||||
|
private String value;
|
||||||
|
/**
|
||||||
|
* 坐标
|
||||||
|
*/
|
||||||
|
private String position;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,43 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.dal.dataobject.policy;
|
||||||
|
|
||||||
|
import lombok.*;
|
||||||
|
import java.util.*;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import com.baomidou.mybatisplus.annotation.*;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 政策动态 DO
|
||||||
|
*
|
||||||
|
* @author 芋道源码
|
||||||
|
*/
|
||||||
|
@TableName("bikmk_policy")
|
||||||
|
@KeySequence("bikmk_policy_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class PolicyDO extends BaseDO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 编号
|
||||||
|
*/
|
||||||
|
@TableId
|
||||||
|
private Long id;
|
||||||
|
/**
|
||||||
|
* 区域
|
||||||
|
*/
|
||||||
|
private String region;
|
||||||
|
/**
|
||||||
|
* 政策信息
|
||||||
|
*/
|
||||||
|
private String policy;
|
||||||
|
/**
|
||||||
|
* 是否显示
|
||||||
|
*/
|
||||||
|
private Boolean isshow;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,38 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.dal.mysql.distribution;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.dataobject.distribution.DistributionDO;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.controller.admin.distribution.vo.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目主要分布 Mapper
|
||||||
|
*
|
||||||
|
* @author 芋道源码
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface DistributionMapper extends BaseMapperX<DistributionDO> {
|
||||||
|
|
||||||
|
default PageResult<DistributionDO> selectPage(DistributionPageReqVO reqVO) {
|
||||||
|
return selectPage(reqVO, new LambdaQueryWrapperX<DistributionDO>()
|
||||||
|
.likeIfPresent(DistributionDO::getName, reqVO.getName())
|
||||||
|
.eqIfPresent(DistributionDO::getValue, reqVO.getValue())
|
||||||
|
.eqIfPresent(DistributionDO::getPosition, reqVO.getPosition())
|
||||||
|
.betweenIfPresent(DistributionDO::getCreateTime, reqVO.getCreateTime())
|
||||||
|
.orderByDesc(DistributionDO::getId));
|
||||||
|
}
|
||||||
|
|
||||||
|
default List<DistributionDO> selectList(DistributionExportReqVO reqVO) {
|
||||||
|
return selectList(new LambdaQueryWrapperX<DistributionDO>()
|
||||||
|
.likeIfPresent(DistributionDO::getName, reqVO.getName())
|
||||||
|
.eqIfPresent(DistributionDO::getValue, reqVO.getValue())
|
||||||
|
.eqIfPresent(DistributionDO::getPosition, reqVO.getPosition())
|
||||||
|
.betweenIfPresent(DistributionDO::getCreateTime, reqVO.getCreateTime())
|
||||||
|
.orderByDesc(DistributionDO::getId));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,38 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.dal.mysql.policy;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.dataobject.policy.PolicyDO;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.controller.admin.policy.vo.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 政策动态 Mapper
|
||||||
|
*
|
||||||
|
* @author 芋道源码
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface PolicyMapper extends BaseMapperX<PolicyDO> {
|
||||||
|
|
||||||
|
default PageResult<PolicyDO> selectPage(PolicyPageReqVO reqVO) {
|
||||||
|
return selectPage(reqVO, new LambdaQueryWrapperX<PolicyDO>()
|
||||||
|
.eqIfPresent(PolicyDO::getRegion, reqVO.getRegion())
|
||||||
|
.eqIfPresent(PolicyDO::getPolicy, reqVO.getPolicy())
|
||||||
|
.eqIfPresent(PolicyDO::getIsshow, reqVO.getIsshow())
|
||||||
|
.betweenIfPresent(PolicyDO::getCreateTime, reqVO.getCreateTime())
|
||||||
|
.orderByDesc(PolicyDO::getId));
|
||||||
|
}
|
||||||
|
|
||||||
|
default List<PolicyDO> selectList(PolicyExportReqVO reqVO) {
|
||||||
|
return selectList(new LambdaQueryWrapperX<PolicyDO>()
|
||||||
|
.eqIfPresent(PolicyDO::getRegion, reqVO.getRegion())
|
||||||
|
.eqIfPresent(PolicyDO::getPolicy, reqVO.getPolicy())
|
||||||
|
.eqIfPresent(PolicyDO::getIsshow, reqVO.getIsshow())
|
||||||
|
.betweenIfPresent(PolicyDO::getCreateTime, reqVO.getCreateTime())
|
||||||
|
.orderByDesc(PolicyDO::getId));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,71 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.service.distribution;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
import javax.validation.*;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.controller.admin.distribution.vo.*;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.dataobject.distribution.DistributionDO;
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目主要分布 Service 接口
|
||||||
|
*
|
||||||
|
* @author 芋道源码
|
||||||
|
*/
|
||||||
|
public interface DistributionService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建项目主要分布
|
||||||
|
*
|
||||||
|
* @param createReqVO 创建信息
|
||||||
|
* @return 编号
|
||||||
|
*/
|
||||||
|
Long createDistribution(@Valid DistributionCreateReqVO createReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新项目主要分布
|
||||||
|
*
|
||||||
|
* @param updateReqVO 更新信息
|
||||||
|
*/
|
||||||
|
void updateDistribution(@Valid DistributionUpdateReqVO updateReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除项目主要分布
|
||||||
|
*
|
||||||
|
* @param id 编号
|
||||||
|
*/
|
||||||
|
void deleteDistribution(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得项目主要分布
|
||||||
|
*
|
||||||
|
* @param id 编号
|
||||||
|
* @return 项目主要分布
|
||||||
|
*/
|
||||||
|
DistributionDO getDistribution(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得项目主要分布列表
|
||||||
|
*
|
||||||
|
* @param ids 编号
|
||||||
|
* @return 项目主要分布列表
|
||||||
|
*/
|
||||||
|
List<DistributionDO> getDistributionList(Collection<Long> ids);
|
||||||
|
List<DistributionDO> getAppDistributionList();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得项目主要分布分页
|
||||||
|
*
|
||||||
|
* @param pageReqVO 分页查询
|
||||||
|
* @return 项目主要分布分页
|
||||||
|
*/
|
||||||
|
PageResult<DistributionDO> getDistributionPage(DistributionPageReqVO pageReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得项目主要分布列表, 用于 Excel 导出
|
||||||
|
*
|
||||||
|
* @param exportReqVO 查询条件
|
||||||
|
* @return 项目主要分布列表
|
||||||
|
*/
|
||||||
|
List<DistributionDO> getDistributionList(DistributionExportReqVO exportReqVO);
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,87 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.service.distribution;
|
||||||
|
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.controller.admin.distribution.vo.*;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.dataobject.distribution.DistributionDO;
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.bikmk.convert.distribution.DistributionConvert;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.mysql.distribution.DistributionMapper;
|
||||||
|
|
||||||
|
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||||
|
import static cn.iocoder.yudao.module.bikmk.enums.ErrorCodeConstants.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目主要分布 Service 实现类
|
||||||
|
*
|
||||||
|
* @author 芋道源码
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
@Validated
|
||||||
|
public class DistributionServiceImpl implements DistributionService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private DistributionMapper distributionMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Long createDistribution(DistributionCreateReqVO createReqVO) {
|
||||||
|
// 插入
|
||||||
|
DistributionDO distribution = DistributionConvert.INSTANCE.convert(createReqVO);
|
||||||
|
distributionMapper.insert(distribution);
|
||||||
|
// 返回
|
||||||
|
return distribution.getId();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updateDistribution(DistributionUpdateReqVO updateReqVO) {
|
||||||
|
// 校验存在
|
||||||
|
validateDistributionExists(updateReqVO.getId());
|
||||||
|
// 更新
|
||||||
|
DistributionDO updateObj = DistributionConvert.INSTANCE.convert(updateReqVO);
|
||||||
|
distributionMapper.updateById(updateObj);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deleteDistribution(Long id) {
|
||||||
|
// 校验存在
|
||||||
|
validateDistributionExists(id);
|
||||||
|
// 删除
|
||||||
|
distributionMapper.deleteById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void validateDistributionExists(Long id) {
|
||||||
|
if (distributionMapper.selectById(id) == null) {
|
||||||
|
throw exception(DISTRIBUTION_NOT_EXISTS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public DistributionDO getDistribution(Long id) {
|
||||||
|
return distributionMapper.selectById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<DistributionDO> getDistributionList(Collection<Long> ids) {
|
||||||
|
return distributionMapper.selectBatchIds(ids);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<DistributionDO> getAppDistributionList() {
|
||||||
|
return distributionMapper.selectList();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PageResult<DistributionDO> getDistributionPage(DistributionPageReqVO pageReqVO) {
|
||||||
|
return distributionMapper.selectPage(pageReqVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<DistributionDO> getDistributionList(DistributionExportReqVO exportReqVO) {
|
||||||
|
return distributionMapper.selectList(exportReqVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,71 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.service.policy;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
import javax.validation.*;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.controller.admin.policy.vo.*;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.dataobject.policy.PolicyDO;
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 政策动态 Service 接口
|
||||||
|
*
|
||||||
|
* @author 芋道源码
|
||||||
|
*/
|
||||||
|
public interface PolicyService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建政策动态
|
||||||
|
*
|
||||||
|
* @param createReqVO 创建信息
|
||||||
|
* @return 编号
|
||||||
|
*/
|
||||||
|
Long createPolicy(@Valid PolicyCreateReqVO createReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新政策动态
|
||||||
|
*
|
||||||
|
* @param updateReqVO 更新信息
|
||||||
|
*/
|
||||||
|
void updatePolicy(@Valid PolicyUpdateReqVO updateReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除政策动态
|
||||||
|
*
|
||||||
|
* @param id 编号
|
||||||
|
*/
|
||||||
|
void deletePolicy(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得政策动态
|
||||||
|
*
|
||||||
|
* @param id 编号
|
||||||
|
* @return 政策动态
|
||||||
|
*/
|
||||||
|
PolicyDO getPolicy(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得政策动态列表
|
||||||
|
*
|
||||||
|
* @param ids 编号
|
||||||
|
* @return 政策动态列表
|
||||||
|
*/
|
||||||
|
List<PolicyDO> getPolicyList(Collection<Long> ids);
|
||||||
|
List<PolicyDO> getAppPolicyList();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得政策动态分页
|
||||||
|
*
|
||||||
|
* @param pageReqVO 分页查询
|
||||||
|
* @return 政策动态分页
|
||||||
|
*/
|
||||||
|
PageResult<PolicyDO> getPolicyPage(PolicyPageReqVO pageReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得政策动态列表, 用于 Excel 导出
|
||||||
|
*
|
||||||
|
* @param exportReqVO 查询条件
|
||||||
|
* @return 政策动态列表
|
||||||
|
*/
|
||||||
|
List<PolicyDO> getPolicyList(PolicyExportReqVO exportReqVO);
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,87 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.service.policy;
|
||||||
|
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.controller.admin.policy.vo.*;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.dataobject.policy.PolicyDO;
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.bikmk.convert.policy.PolicyConvert;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.mysql.policy.PolicyMapper;
|
||||||
|
|
||||||
|
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||||
|
import static cn.iocoder.yudao.module.bikmk.enums.ErrorCodeConstants.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 政策动态 Service 实现类
|
||||||
|
*
|
||||||
|
* @author 芋道源码
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
@Validated
|
||||||
|
public class PolicyServiceImpl implements PolicyService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private PolicyMapper policyMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Long createPolicy(PolicyCreateReqVO createReqVO) {
|
||||||
|
// 插入
|
||||||
|
PolicyDO policy = PolicyConvert.INSTANCE.convert(createReqVO);
|
||||||
|
policyMapper.insert(policy);
|
||||||
|
// 返回
|
||||||
|
return policy.getId();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updatePolicy(PolicyUpdateReqVO updateReqVO) {
|
||||||
|
// 校验存在
|
||||||
|
validatePolicyExists(updateReqVO.getId());
|
||||||
|
// 更新
|
||||||
|
PolicyDO updateObj = PolicyConvert.INSTANCE.convert(updateReqVO);
|
||||||
|
policyMapper.updateById(updateObj);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deletePolicy(Long id) {
|
||||||
|
// 校验存在
|
||||||
|
validatePolicyExists(id);
|
||||||
|
// 删除
|
||||||
|
policyMapper.deleteById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void validatePolicyExists(Long id) {
|
||||||
|
if (policyMapper.selectById(id) == null) {
|
||||||
|
throw exception(POLICY_NOT_EXISTS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PolicyDO getPolicy(Long id) {
|
||||||
|
return policyMapper.selectById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<PolicyDO> getPolicyList(Collection<Long> ids) {
|
||||||
|
return policyMapper.selectBatchIds(ids);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<PolicyDO> getAppPolicyList() {
|
||||||
|
return policyMapper.selectList();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PageResult<PolicyDO> getPolicyPage(PolicyPageReqVO pageReqVO) {
|
||||||
|
return policyMapper.selectPage(pageReqVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<PolicyDO> getPolicyList(PolicyExportReqVO exportReqVO) {
|
||||||
|
return policyMapper.selectList(exportReqVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,175 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.service.distribution;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Disabled;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.springframework.boot.test.mock.mockito.MockBean;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.bikmk.controller.admin.distribution.vo.*;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.dataobject.distribution.DistributionDO;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.mysql.distribution.DistributionMapper;
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import org.springframework.context.annotation.Import;
|
||||||
|
import java.util.*;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
|
import static cn.hutool.core.util.RandomUtil.*;
|
||||||
|
import static cn.iocoder.yudao.module.bikmk.enums.ErrorCodeConstants.*;
|
||||||
|
import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.*;
|
||||||
|
import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.*;
|
||||||
|
import static cn.iocoder.yudao.framework.common.util.date.LocalDateTimeUtils.*;
|
||||||
|
import static cn.iocoder.yudao.framework.common.util.object.ObjectUtils.*;
|
||||||
|
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.*;
|
||||||
|
import static org.junit.jupiter.api.Assertions.*;
|
||||||
|
import static org.mockito.Mockito.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@link DistributionServiceImpl} 的单元测试类
|
||||||
|
*
|
||||||
|
* @author 芋道源码
|
||||||
|
*/
|
||||||
|
@Import(DistributionServiceImpl.class)
|
||||||
|
public class DistributionServiceImplTest extends BaseDbUnitTest {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private DistributionServiceImpl distributionService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private DistributionMapper distributionMapper;
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testCreateDistribution_success() {
|
||||||
|
// 准备参数
|
||||||
|
DistributionCreateReqVO reqVO = randomPojo(DistributionCreateReqVO.class);
|
||||||
|
|
||||||
|
// 调用
|
||||||
|
Long distributionId = distributionService.createDistribution(reqVO);
|
||||||
|
// 断言
|
||||||
|
assertNotNull(distributionId);
|
||||||
|
// 校验记录的属性是否正确
|
||||||
|
DistributionDO distribution = distributionMapper.selectById(distributionId);
|
||||||
|
assertPojoEquals(reqVO, distribution);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testUpdateDistribution_success() {
|
||||||
|
// mock 数据
|
||||||
|
DistributionDO dbDistribution = randomPojo(DistributionDO.class);
|
||||||
|
distributionMapper.insert(dbDistribution);// @Sql: 先插入出一条存在的数据
|
||||||
|
// 准备参数
|
||||||
|
DistributionUpdateReqVO reqVO = randomPojo(DistributionUpdateReqVO.class, o -> {
|
||||||
|
o.setId(dbDistribution.getId()); // 设置更新的 ID
|
||||||
|
});
|
||||||
|
|
||||||
|
// 调用
|
||||||
|
distributionService.updateDistribution(reqVO);
|
||||||
|
// 校验是否更新正确
|
||||||
|
DistributionDO distribution = distributionMapper.selectById(reqVO.getId()); // 获取最新的
|
||||||
|
assertPojoEquals(reqVO, distribution);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testUpdateDistribution_notExists() {
|
||||||
|
// 准备参数
|
||||||
|
DistributionUpdateReqVO reqVO = randomPojo(DistributionUpdateReqVO.class);
|
||||||
|
|
||||||
|
// 调用, 并断言异常
|
||||||
|
assertServiceException(() -> distributionService.updateDistribution(reqVO), DISTRIBUTION_NOT_EXISTS);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testDeleteDistribution_success() {
|
||||||
|
// mock 数据
|
||||||
|
DistributionDO dbDistribution = randomPojo(DistributionDO.class);
|
||||||
|
distributionMapper.insert(dbDistribution);// @Sql: 先插入出一条存在的数据
|
||||||
|
// 准备参数
|
||||||
|
Long id = dbDistribution.getId();
|
||||||
|
|
||||||
|
// 调用
|
||||||
|
distributionService.deleteDistribution(id);
|
||||||
|
// 校验数据不存在了
|
||||||
|
assertNull(distributionMapper.selectById(id));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testDeleteDistribution_notExists() {
|
||||||
|
// 准备参数
|
||||||
|
Long id = randomLongId();
|
||||||
|
|
||||||
|
// 调用, 并断言异常
|
||||||
|
assertServiceException(() -> distributionService.deleteDistribution(id), DISTRIBUTION_NOT_EXISTS);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
|
||||||
|
public void testGetDistributionPage() {
|
||||||
|
// mock 数据
|
||||||
|
DistributionDO dbDistribution = randomPojo(DistributionDO.class, o -> { // 等会查询到
|
||||||
|
o.setName(null);
|
||||||
|
o.setValue(null);
|
||||||
|
o.setPosition(null);
|
||||||
|
o.setCreateTime(null);
|
||||||
|
});
|
||||||
|
distributionMapper.insert(dbDistribution);
|
||||||
|
// 测试 name 不匹配
|
||||||
|
distributionMapper.insert(cloneIgnoreId(dbDistribution, o -> o.setName(null)));
|
||||||
|
// 测试 value 不匹配
|
||||||
|
distributionMapper.insert(cloneIgnoreId(dbDistribution, o -> o.setValue(null)));
|
||||||
|
// 测试 position 不匹配
|
||||||
|
distributionMapper.insert(cloneIgnoreId(dbDistribution, o -> o.setPosition(null)));
|
||||||
|
// 测试 createTime 不匹配
|
||||||
|
distributionMapper.insert(cloneIgnoreId(dbDistribution, o -> o.setCreateTime(null)));
|
||||||
|
// 准备参数
|
||||||
|
DistributionPageReqVO reqVO = new DistributionPageReqVO();
|
||||||
|
reqVO.setName(null);
|
||||||
|
reqVO.setValue(null);
|
||||||
|
reqVO.setPosition(null);
|
||||||
|
reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
|
||||||
|
|
||||||
|
// 调用
|
||||||
|
PageResult<DistributionDO> pageResult = distributionService.getDistributionPage(reqVO);
|
||||||
|
// 断言
|
||||||
|
assertEquals(1, pageResult.getTotal());
|
||||||
|
assertEquals(1, pageResult.getList().size());
|
||||||
|
assertPojoEquals(dbDistribution, pageResult.getList().get(0));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
|
||||||
|
public void testGetDistributionList() {
|
||||||
|
// mock 数据
|
||||||
|
DistributionDO dbDistribution = randomPojo(DistributionDO.class, o -> { // 等会查询到
|
||||||
|
o.setName(null);
|
||||||
|
o.setValue(null);
|
||||||
|
o.setPosition(null);
|
||||||
|
o.setCreateTime(null);
|
||||||
|
});
|
||||||
|
distributionMapper.insert(dbDistribution);
|
||||||
|
// 测试 name 不匹配
|
||||||
|
distributionMapper.insert(cloneIgnoreId(dbDistribution, o -> o.setName(null)));
|
||||||
|
// 测试 value 不匹配
|
||||||
|
distributionMapper.insert(cloneIgnoreId(dbDistribution, o -> o.setValue(null)));
|
||||||
|
// 测试 position 不匹配
|
||||||
|
distributionMapper.insert(cloneIgnoreId(dbDistribution, o -> o.setPosition(null)));
|
||||||
|
// 测试 createTime 不匹配
|
||||||
|
distributionMapper.insert(cloneIgnoreId(dbDistribution, o -> o.setCreateTime(null)));
|
||||||
|
// 准备参数
|
||||||
|
DistributionExportReqVO reqVO = new DistributionExportReqVO();
|
||||||
|
reqVO.setName(null);
|
||||||
|
reqVO.setValue(null);
|
||||||
|
reqVO.setPosition(null);
|
||||||
|
reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
|
||||||
|
|
||||||
|
// 调用
|
||||||
|
List<DistributionDO> list = distributionService.getDistributionList(reqVO);
|
||||||
|
// 断言
|
||||||
|
assertEquals(1, list.size());
|
||||||
|
assertPojoEquals(dbDistribution, list.get(0));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,175 @@
|
|||||||
|
package cn.iocoder.yudao.module.bikmk.service.policy;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Disabled;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.springframework.boot.test.mock.mockito.MockBean;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.bikmk.controller.admin.policy.vo.*;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.dataobject.policy.PolicyDO;
|
||||||
|
import cn.iocoder.yudao.module.bikmk.dal.mysql.policy.PolicyMapper;
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import org.springframework.context.annotation.Import;
|
||||||
|
import java.util.*;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
|
import static cn.hutool.core.util.RandomUtil.*;
|
||||||
|
import static cn.iocoder.yudao.module.bikmk.enums.ErrorCodeConstants.*;
|
||||||
|
import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.*;
|
||||||
|
import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.*;
|
||||||
|
import static cn.iocoder.yudao.framework.common.util.date.LocalDateTimeUtils.*;
|
||||||
|
import static cn.iocoder.yudao.framework.common.util.object.ObjectUtils.*;
|
||||||
|
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.*;
|
||||||
|
import static org.junit.jupiter.api.Assertions.*;
|
||||||
|
import static org.mockito.Mockito.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@link PolicyServiceImpl} 的单元测试类
|
||||||
|
*
|
||||||
|
* @author 芋道源码
|
||||||
|
*/
|
||||||
|
@Import(PolicyServiceImpl.class)
|
||||||
|
public class PolicyServiceImplTest extends BaseDbUnitTest {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private PolicyServiceImpl policyService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private PolicyMapper policyMapper;
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testCreatePolicy_success() {
|
||||||
|
// 准备参数
|
||||||
|
PolicyCreateReqVO reqVO = randomPojo(PolicyCreateReqVO.class);
|
||||||
|
|
||||||
|
// 调用
|
||||||
|
Long policyId = policyService.createPolicy(reqVO);
|
||||||
|
// 断言
|
||||||
|
assertNotNull(policyId);
|
||||||
|
// 校验记录的属性是否正确
|
||||||
|
PolicyDO policy = policyMapper.selectById(policyId);
|
||||||
|
assertPojoEquals(reqVO, policy);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testUpdatePolicy_success() {
|
||||||
|
// mock 数据
|
||||||
|
PolicyDO dbPolicy = randomPojo(PolicyDO.class);
|
||||||
|
policyMapper.insert(dbPolicy);// @Sql: 先插入出一条存在的数据
|
||||||
|
// 准备参数
|
||||||
|
PolicyUpdateReqVO reqVO = randomPojo(PolicyUpdateReqVO.class, o -> {
|
||||||
|
o.setId(dbPolicy.getId()); // 设置更新的 ID
|
||||||
|
});
|
||||||
|
|
||||||
|
// 调用
|
||||||
|
policyService.updatePolicy(reqVO);
|
||||||
|
// 校验是否更新正确
|
||||||
|
PolicyDO policy = policyMapper.selectById(reqVO.getId()); // 获取最新的
|
||||||
|
assertPojoEquals(reqVO, policy);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testUpdatePolicy_notExists() {
|
||||||
|
// 准备参数
|
||||||
|
PolicyUpdateReqVO reqVO = randomPojo(PolicyUpdateReqVO.class);
|
||||||
|
|
||||||
|
// 调用, 并断言异常
|
||||||
|
assertServiceException(() -> policyService.updatePolicy(reqVO), POLICY_NOT_EXISTS);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testDeletePolicy_success() {
|
||||||
|
// mock 数据
|
||||||
|
PolicyDO dbPolicy = randomPojo(PolicyDO.class);
|
||||||
|
policyMapper.insert(dbPolicy);// @Sql: 先插入出一条存在的数据
|
||||||
|
// 准备参数
|
||||||
|
Long id = dbPolicy.getId();
|
||||||
|
|
||||||
|
// 调用
|
||||||
|
policyService.deletePolicy(id);
|
||||||
|
// 校验数据不存在了
|
||||||
|
assertNull(policyMapper.selectById(id));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testDeletePolicy_notExists() {
|
||||||
|
// 准备参数
|
||||||
|
Long id = randomLongId();
|
||||||
|
|
||||||
|
// 调用, 并断言异常
|
||||||
|
assertServiceException(() -> policyService.deletePolicy(id), POLICY_NOT_EXISTS);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
|
||||||
|
public void testGetPolicyPage() {
|
||||||
|
// mock 数据
|
||||||
|
PolicyDO dbPolicy = randomPojo(PolicyDO.class, o -> { // 等会查询到
|
||||||
|
o.setRegion(null);
|
||||||
|
o.setPolicy(null);
|
||||||
|
o.setIsshow(null);
|
||||||
|
o.setCreateTime(null);
|
||||||
|
});
|
||||||
|
policyMapper.insert(dbPolicy);
|
||||||
|
// 测试 region 不匹配
|
||||||
|
policyMapper.insert(cloneIgnoreId(dbPolicy, o -> o.setRegion(null)));
|
||||||
|
// 测试 policy 不匹配
|
||||||
|
policyMapper.insert(cloneIgnoreId(dbPolicy, o -> o.setPolicy(null)));
|
||||||
|
// 测试 isshow 不匹配
|
||||||
|
policyMapper.insert(cloneIgnoreId(dbPolicy, o -> o.setIsshow(null)));
|
||||||
|
// 测试 createTime 不匹配
|
||||||
|
policyMapper.insert(cloneIgnoreId(dbPolicy, o -> o.setCreateTime(null)));
|
||||||
|
// 准备参数
|
||||||
|
PolicyPageReqVO reqVO = new PolicyPageReqVO();
|
||||||
|
reqVO.setRegion(null);
|
||||||
|
reqVO.setPolicy(null);
|
||||||
|
reqVO.setIsshow(null);
|
||||||
|
reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
|
||||||
|
|
||||||
|
// 调用
|
||||||
|
PageResult<PolicyDO> pageResult = policyService.getPolicyPage(reqVO);
|
||||||
|
// 断言
|
||||||
|
assertEquals(1, pageResult.getTotal());
|
||||||
|
assertEquals(1, pageResult.getList().size());
|
||||||
|
assertPojoEquals(dbPolicy, pageResult.getList().get(0));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
|
||||||
|
public void testGetPolicyList() {
|
||||||
|
// mock 数据
|
||||||
|
PolicyDO dbPolicy = randomPojo(PolicyDO.class, o -> { // 等会查询到
|
||||||
|
o.setRegion(null);
|
||||||
|
o.setPolicy(null);
|
||||||
|
o.setIsshow(null);
|
||||||
|
o.setCreateTime(null);
|
||||||
|
});
|
||||||
|
policyMapper.insert(dbPolicy);
|
||||||
|
// 测试 region 不匹配
|
||||||
|
policyMapper.insert(cloneIgnoreId(dbPolicy, o -> o.setRegion(null)));
|
||||||
|
// 测试 policy 不匹配
|
||||||
|
policyMapper.insert(cloneIgnoreId(dbPolicy, o -> o.setPolicy(null)));
|
||||||
|
// 测试 isshow 不匹配
|
||||||
|
policyMapper.insert(cloneIgnoreId(dbPolicy, o -> o.setIsshow(null)));
|
||||||
|
// 测试 createTime 不匹配
|
||||||
|
policyMapper.insert(cloneIgnoreId(dbPolicy, o -> o.setCreateTime(null)));
|
||||||
|
// 准备参数
|
||||||
|
PolicyExportReqVO reqVO = new PolicyExportReqVO();
|
||||||
|
reqVO.setRegion(null);
|
||||||
|
reqVO.setPolicy(null);
|
||||||
|
reqVO.setIsshow(null);
|
||||||
|
reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
|
||||||
|
|
||||||
|
// 调用
|
||||||
|
List<PolicyDO> list = policyService.getPolicyList(reqVO);
|
||||||
|
// 断言
|
||||||
|
assertEquals(1, list.size());
|
||||||
|
assertPojoEquals(dbPolicy, list.get(0));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,54 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 创建项目主要分布
|
||||||
|
export function createDistribution(data) {
|
||||||
|
return request({
|
||||||
|
url: '/bikmk/distribution/create',
|
||||||
|
method: 'post',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 更新项目主要分布
|
||||||
|
export function updateDistribution(data) {
|
||||||
|
return request({
|
||||||
|
url: '/bikmk/distribution/update',
|
||||||
|
method: 'put',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除项目主要分布
|
||||||
|
export function deleteDistribution(id) {
|
||||||
|
return request({
|
||||||
|
url: '/bikmk/distribution/delete?id=' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获得项目主要分布
|
||||||
|
export function getDistribution(id) {
|
||||||
|
return request({
|
||||||
|
url: '/bikmk/distribution/get?id=' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获得项目主要分布分页
|
||||||
|
export function getDistributionPage(query) {
|
||||||
|
return request({
|
||||||
|
url: '/bikmk/distribution/page',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 导出项目主要分布 Excel
|
||||||
|
export function exportDistributionExcel(query) {
|
||||||
|
return request({
|
||||||
|
url: '/bikmk/distribution/export-excel',
|
||||||
|
method: 'get',
|
||||||
|
params: query,
|
||||||
|
responseType: 'blob'
|
||||||
|
})
|
||||||
|
}
|
@ -0,0 +1,54 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 创建政策动态
|
||||||
|
export function createPolicy(data) {
|
||||||
|
return request({
|
||||||
|
url: '/bikmk/policy/create',
|
||||||
|
method: 'post',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 更新政策动态
|
||||||
|
export function updatePolicy(data) {
|
||||||
|
return request({
|
||||||
|
url: '/bikmk/policy/update',
|
||||||
|
method: 'put',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除政策动态
|
||||||
|
export function deletePolicy(id) {
|
||||||
|
return request({
|
||||||
|
url: '/bikmk/policy/delete?id=' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获得政策动态
|
||||||
|
export function getPolicy(id) {
|
||||||
|
return request({
|
||||||
|
url: '/bikmk/policy/get?id=' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获得政策动态分页
|
||||||
|
export function getPolicyPage(query) {
|
||||||
|
return request({
|
||||||
|
url: '/bikmk/policy/page',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 导出政策动态 Excel
|
||||||
|
export function exportPolicyExcel(query) {
|
||||||
|
return request({
|
||||||
|
url: '/bikmk/policy/export-excel',
|
||||||
|
method: 'get',
|
||||||
|
params: query,
|
||||||
|
responseType: 'blob'
|
||||||
|
})
|
||||||
|
}
|
@ -0,0 +1,229 @@
|
|||||||
|
<template>
|
||||||
|
<div class="app-container">
|
||||||
|
|
||||||
|
<!-- 搜索工作栏 -->
|
||||||
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
|
<el-form-item label="区域名称" prop="name">
|
||||||
|
<el-input v-model="queryParams.name" placeholder="请输入区域名称" clearable @keyup.enter.native="handleQuery"/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="地图圆圈大小" prop="value">
|
||||||
|
<el-input v-model="queryParams.value" placeholder="请输入地图圆圈大小" clearable @keyup.enter.native="handleQuery"/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="坐标" prop="position">
|
||||||
|
<el-input v-model="queryParams.position" placeholder="请输入坐标" clearable @keyup.enter.native="handleQuery"/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="创建时间" prop="createTime">
|
||||||
|
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
|
||||||
|
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item>
|
||||||
|
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
||||||
|
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
|
||||||
|
<!-- 操作工具栏 -->
|
||||||
|
<el-row :gutter="10" class="mb8">
|
||||||
|
<el-col :span="1.5">
|
||||||
|
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
|
||||||
|
v-hasPermi="['bikmk:distribution:create']">新增</el-button>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="1.5">
|
||||||
|
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
|
||||||
|
v-hasPermi="['bikmk:distribution:export']">导出</el-button>
|
||||||
|
</el-col>
|
||||||
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
|
</el-row>
|
||||||
|
|
||||||
|
<!-- 列表 -->
|
||||||
|
<el-table v-loading="loading" :data="list">
|
||||||
|
<el-table-column label="编号" align="center" prop="id" />
|
||||||
|
<el-table-column label="区域名称" align="center" prop="name" />
|
||||||
|
<el-table-column label="地图圆圈大小" align="center" prop="value" />
|
||||||
|
<el-table-column label="坐标" align="center" prop="position" />
|
||||||
|
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
|
||||||
|
<template v-slot="scope">
|
||||||
|
<span>{{ parseTime(scope.row.createTime) }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
|
<template v-slot="scope">
|
||||||
|
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
|
||||||
|
v-hasPermi="['bikmk:distribution:update']">修改</el-button>
|
||||||
|
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
||||||
|
v-hasPermi="['bikmk:distribution:delete']">删除</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<!-- 分页组件 -->
|
||||||
|
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
|
||||||
|
@pagination="getList"/>
|
||||||
|
|
||||||
|
<!-- 对话框(添加 / 修改) -->
|
||||||
|
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
|
||||||
|
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||||
|
<el-form-item label="区域名称" prop="name">
|
||||||
|
<el-input v-model="form.name" placeholder="请输入区域名称" />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="地图圆圈大小" prop="value">
|
||||||
|
<el-input v-model="form.value" placeholder="请输入地图圆圈大小" />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="坐标" prop="position">
|
||||||
|
<el-input v-model="form.position" placeholder="请输入坐标" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<div slot="footer" class="dialog-footer">
|
||||||
|
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||||
|
<el-button @click="cancel">取 消</el-button>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { createDistribution, updateDistribution, deleteDistribution, getDistribution, getDistributionPage, exportDistributionExcel } from "@/api/bikmk/distribution";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "Distribution",
|
||||||
|
components: {
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
// 遮罩层
|
||||||
|
loading: true,
|
||||||
|
// 导出遮罩层
|
||||||
|
exportLoading: false,
|
||||||
|
// 显示搜索条件
|
||||||
|
showSearch: true,
|
||||||
|
// 总条数
|
||||||
|
total: 0,
|
||||||
|
// 项目主要分布列表
|
||||||
|
list: [],
|
||||||
|
// 弹出层标题
|
||||||
|
title: "",
|
||||||
|
// 是否显示弹出层
|
||||||
|
open: false,
|
||||||
|
// 查询参数
|
||||||
|
queryParams: {
|
||||||
|
pageNo: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
name: null,
|
||||||
|
value: null,
|
||||||
|
position: null,
|
||||||
|
createTime: [],
|
||||||
|
},
|
||||||
|
// 表单参数
|
||||||
|
form: {},
|
||||||
|
// 表单校验
|
||||||
|
rules: {
|
||||||
|
name: [{ required: true, message: "区域名称不能为空", trigger: "blur" }],
|
||||||
|
value: [{ required: true, message: "地图圆圈大小不能为空", trigger: "blur" }],
|
||||||
|
position: [{ required: true, message: "坐标不能为空", trigger: "blur" }],
|
||||||
|
}
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
/** 查询列表 */
|
||||||
|
getList() {
|
||||||
|
this.loading = true;
|
||||||
|
// 执行查询
|
||||||
|
getDistributionPage(this.queryParams).then(response => {
|
||||||
|
this.list = response.data.list;
|
||||||
|
this.total = response.data.total;
|
||||||
|
this.loading = false;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 取消按钮 */
|
||||||
|
cancel() {
|
||||||
|
this.open = false;
|
||||||
|
this.reset();
|
||||||
|
},
|
||||||
|
/** 表单重置 */
|
||||||
|
reset() {
|
||||||
|
this.form = {
|
||||||
|
id: undefined,
|
||||||
|
name: undefined,
|
||||||
|
value: undefined,
|
||||||
|
position: undefined,
|
||||||
|
};
|
||||||
|
this.resetForm("form");
|
||||||
|
},
|
||||||
|
/** 搜索按钮操作 */
|
||||||
|
handleQuery() {
|
||||||
|
this.queryParams.pageNo = 1;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
/** 重置按钮操作 */
|
||||||
|
resetQuery() {
|
||||||
|
this.resetForm("queryForm");
|
||||||
|
this.handleQuery();
|
||||||
|
},
|
||||||
|
/** 新增按钮操作 */
|
||||||
|
handleAdd() {
|
||||||
|
this.reset();
|
||||||
|
this.open = true;
|
||||||
|
this.title = "添加项目主要分布";
|
||||||
|
},
|
||||||
|
/** 修改按钮操作 */
|
||||||
|
handleUpdate(row) {
|
||||||
|
this.reset();
|
||||||
|
const id = row.id;
|
||||||
|
getDistribution(id).then(response => {
|
||||||
|
this.form = response.data;
|
||||||
|
this.open = true;
|
||||||
|
this.title = "修改项目主要分布";
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 提交按钮 */
|
||||||
|
submitForm() {
|
||||||
|
this.$refs["form"].validate(valid => {
|
||||||
|
if (!valid) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 修改的提交
|
||||||
|
if (this.form.id != null) {
|
||||||
|
updateDistribution(this.form).then(response => {
|
||||||
|
this.$modal.msgSuccess("修改成功");
|
||||||
|
this.open = false;
|
||||||
|
this.getList();
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 添加的提交
|
||||||
|
createDistribution(this.form).then(response => {
|
||||||
|
this.$modal.msgSuccess("新增成功");
|
||||||
|
this.open = false;
|
||||||
|
this.getList();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 删除按钮操作 */
|
||||||
|
handleDelete(row) {
|
||||||
|
const id = row.id;
|
||||||
|
this.$modal.confirm('是否确认删除项目主要分布编号为"' + id + '"的数据项?').then(function() {
|
||||||
|
return deleteDistribution(id);
|
||||||
|
}).then(() => {
|
||||||
|
this.getList();
|
||||||
|
this.$modal.msgSuccess("删除成功");
|
||||||
|
}).catch(() => {});
|
||||||
|
},
|
||||||
|
/** 导出按钮操作 */
|
||||||
|
handleExport() {
|
||||||
|
// 处理查询参数
|
||||||
|
let params = {...this.queryParams};
|
||||||
|
params.pageNo = undefined;
|
||||||
|
params.pageSize = undefined;
|
||||||
|
this.$modal.confirm('是否确认导出所有项目主要分布数据项?').then(() => {
|
||||||
|
this.exportLoading = true;
|
||||||
|
return exportDistributionExcel(params);
|
||||||
|
}).then(response => {
|
||||||
|
this.$download.excel(response, '项目主要分布.xls');
|
||||||
|
this.exportLoading = false;
|
||||||
|
}).catch(() => {});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
@ -0,0 +1,237 @@
|
|||||||
|
<template>
|
||||||
|
<div class="app-container">
|
||||||
|
|
||||||
|
<!-- 搜索工作栏 -->
|
||||||
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
|
<el-form-item label="区域" prop="region">
|
||||||
|
<el-select v-model="queryParams.region" placeholder="请选择区域" clearable size="small">
|
||||||
|
<el-option label="请选择字典生成" value="" />
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="政策信息" prop="policy">
|
||||||
|
<el-input v-model="queryParams.policy" placeholder="请输入政策信息" clearable @keyup.enter.native="handleQuery"/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="是否显示" prop="isshow">
|
||||||
|
<el-select v-model="queryParams.isshow" placeholder="请选择是否显示" clearable size="small">
|
||||||
|
<el-option label="请选择字典生成" value="" />
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="创建时间" prop="createTime">
|
||||||
|
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
|
||||||
|
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item>
|
||||||
|
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
||||||
|
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
|
||||||
|
<!-- 操作工具栏 -->
|
||||||
|
<el-row :gutter="10" class="mb8">
|
||||||
|
<el-col :span="1.5">
|
||||||
|
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
|
||||||
|
v-hasPermi="['bikmk:policy:create']">新增</el-button>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="1.5">
|
||||||
|
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
|
||||||
|
v-hasPermi="['bikmk:policy:export']">导出</el-button>
|
||||||
|
</el-col>
|
||||||
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
|
</el-row>
|
||||||
|
|
||||||
|
<!-- 列表 -->
|
||||||
|
<el-table v-loading="loading" :data="list">
|
||||||
|
<el-table-column label="编号" align="center" prop="id" />
|
||||||
|
<el-table-column label="区域" align="center" prop="region" />
|
||||||
|
<el-table-column label="政策信息" align="center" prop="policy" />
|
||||||
|
<el-table-column label="是否显示" align="center" prop="isshow" />
|
||||||
|
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
|
||||||
|
<template v-slot="scope">
|
||||||
|
<span>{{ parseTime(scope.row.createTime) }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
|
<template v-slot="scope">
|
||||||
|
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
|
||||||
|
v-hasPermi="['bikmk:policy:update']">修改</el-button>
|
||||||
|
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
||||||
|
v-hasPermi="['bikmk:policy:delete']">删除</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<!-- 分页组件 -->
|
||||||
|
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
|
||||||
|
@pagination="getList"/>
|
||||||
|
|
||||||
|
<!-- 对话框(添加 / 修改) -->
|
||||||
|
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
|
||||||
|
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||||
|
<el-form-item label="区域" prop="region">
|
||||||
|
<el-select v-model="form.region" placeholder="请选择区域">
|
||||||
|
<el-option label="请选择字典生成" value="" />
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="政策信息" prop="policy">
|
||||||
|
<el-input v-model="form.policy" placeholder="请输入政策信息" />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="是否显示" prop="isshow">
|
||||||
|
<el-radio-group v-model="form.isshow">
|
||||||
|
<el-radio label="1">请选择字典生成</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<div slot="footer" class="dialog-footer">
|
||||||
|
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||||
|
<el-button @click="cancel">取 消</el-button>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { createPolicy, updatePolicy, deletePolicy, getPolicy, getPolicyPage, exportPolicyExcel } from "@/api/bikmk/policy";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "Policy",
|
||||||
|
components: {
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
// 遮罩层
|
||||||
|
loading: true,
|
||||||
|
// 导出遮罩层
|
||||||
|
exportLoading: false,
|
||||||
|
// 显示搜索条件
|
||||||
|
showSearch: true,
|
||||||
|
// 总条数
|
||||||
|
total: 0,
|
||||||
|
// 政策动态列表
|
||||||
|
list: [],
|
||||||
|
// 弹出层标题
|
||||||
|
title: "",
|
||||||
|
// 是否显示弹出层
|
||||||
|
open: false,
|
||||||
|
// 查询参数
|
||||||
|
queryParams: {
|
||||||
|
pageNo: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
region: null,
|
||||||
|
policy: null,
|
||||||
|
isshow: null,
|
||||||
|
createTime: [],
|
||||||
|
},
|
||||||
|
// 表单参数
|
||||||
|
form: {},
|
||||||
|
// 表单校验
|
||||||
|
rules: {
|
||||||
|
region: [{ required: true, message: "区域不能为空", trigger: "change" }],
|
||||||
|
policy: [{ required: true, message: "政策信息不能为空", trigger: "blur" }],
|
||||||
|
isshow: [{ required: true, message: "是否显示不能为空", trigger: "blur" }],
|
||||||
|
}
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
/** 查询列表 */
|
||||||
|
getList() {
|
||||||
|
this.loading = true;
|
||||||
|
// 执行查询
|
||||||
|
getPolicyPage(this.queryParams).then(response => {
|
||||||
|
this.list = response.data.list;
|
||||||
|
this.total = response.data.total;
|
||||||
|
this.loading = false;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 取消按钮 */
|
||||||
|
cancel() {
|
||||||
|
this.open = false;
|
||||||
|
this.reset();
|
||||||
|
},
|
||||||
|
/** 表单重置 */
|
||||||
|
reset() {
|
||||||
|
this.form = {
|
||||||
|
id: undefined,
|
||||||
|
region: undefined,
|
||||||
|
policy: undefined,
|
||||||
|
isshow: undefined,
|
||||||
|
};
|
||||||
|
this.resetForm("form");
|
||||||
|
},
|
||||||
|
/** 搜索按钮操作 */
|
||||||
|
handleQuery() {
|
||||||
|
this.queryParams.pageNo = 1;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
/** 重置按钮操作 */
|
||||||
|
resetQuery() {
|
||||||
|
this.resetForm("queryForm");
|
||||||
|
this.handleQuery();
|
||||||
|
},
|
||||||
|
/** 新增按钮操作 */
|
||||||
|
handleAdd() {
|
||||||
|
this.reset();
|
||||||
|
this.open = true;
|
||||||
|
this.title = "添加政策动态";
|
||||||
|
},
|
||||||
|
/** 修改按钮操作 */
|
||||||
|
handleUpdate(row) {
|
||||||
|
this.reset();
|
||||||
|
const id = row.id;
|
||||||
|
getPolicy(id).then(response => {
|
||||||
|
this.form = response.data;
|
||||||
|
this.open = true;
|
||||||
|
this.title = "修改政策动态";
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 提交按钮 */
|
||||||
|
submitForm() {
|
||||||
|
this.$refs["form"].validate(valid => {
|
||||||
|
if (!valid) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 修改的提交
|
||||||
|
if (this.form.id != null) {
|
||||||
|
updatePolicy(this.form).then(response => {
|
||||||
|
this.$modal.msgSuccess("修改成功");
|
||||||
|
this.open = false;
|
||||||
|
this.getList();
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 添加的提交
|
||||||
|
createPolicy(this.form).then(response => {
|
||||||
|
this.$modal.msgSuccess("新增成功");
|
||||||
|
this.open = false;
|
||||||
|
this.getList();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 删除按钮操作 */
|
||||||
|
handleDelete(row) {
|
||||||
|
const id = row.id;
|
||||||
|
this.$modal.confirm('是否确认删除政策动态编号为"' + id + '"的数据项?').then(function() {
|
||||||
|
return deletePolicy(id);
|
||||||
|
}).then(() => {
|
||||||
|
this.getList();
|
||||||
|
this.$modal.msgSuccess("删除成功");
|
||||||
|
}).catch(() => {});
|
||||||
|
},
|
||||||
|
/** 导出按钮操作 */
|
||||||
|
handleExport() {
|
||||||
|
// 处理查询参数
|
||||||
|
let params = {...this.queryParams};
|
||||||
|
params.pageNo = undefined;
|
||||||
|
params.pageSize = undefined;
|
||||||
|
this.$modal.confirm('是否确认导出所有政策动态数据项?').then(() => {
|
||||||
|
this.exportLoading = true;
|
||||||
|
return exportPolicyExcel(params);
|
||||||
|
}).then(response => {
|
||||||
|
this.$download.excel(response, '政策动态.xls');
|
||||||
|
this.exportLoading = false;
|
||||||
|
}).catch(() => {});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
Loading…
Reference in new issue