parent
97c688b29a
commit
ec47b66c3c
@ -0,0 +1,102 @@
|
||||
package cn.iocoder.yudao.module.bikmk.controller.admin.areaprojectratio;
|
||||
|
||||
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.areaprojectratio.vo.*;
|
||||
import cn.iocoder.yudao.module.bikmk.dal.dataobject.areaprojectratio.AreaProjectRatioDO;
|
||||
import cn.iocoder.yudao.module.bikmk.convert.areaprojectratio.AreaProjectRatioConvert;
|
||||
import cn.iocoder.yudao.module.bikmk.service.areaprojectratio.AreaProjectRatioService;
|
||||
|
||||
@Tag(name = "管理后台 - 项目占比")
|
||||
@RestController
|
||||
@RequestMapping("/bikmk/area-project-ratio")
|
||||
@Validated
|
||||
public class AreaProjectRatioController {
|
||||
|
||||
@Resource
|
||||
private AreaProjectRatioService areaProjectRatioService;
|
||||
|
||||
@PostMapping("/create")
|
||||
@Operation(summary = "创建项目占比")
|
||||
@PreAuthorize("@ss.hasPermission('bikmk:area-project-ratio:create')")
|
||||
public CommonResult<Long> createAreaProjectRatio(@Valid @RequestBody AreaProjectRatioCreateReqVO createReqVO) {
|
||||
return success(areaProjectRatioService.createAreaProjectRatio(createReqVO));
|
||||
}
|
||||
|
||||
@PutMapping("/update")
|
||||
@Operation(summary = "更新项目占比")
|
||||
@PreAuthorize("@ss.hasPermission('bikmk:area-project-ratio:update')")
|
||||
public CommonResult<Boolean> updateAreaProjectRatio(@Valid @RequestBody AreaProjectRatioUpdateReqVO updateReqVO) {
|
||||
areaProjectRatioService.updateAreaProjectRatio(updateReqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
@Operation(summary = "删除项目占比")
|
||||
@Parameter(name = "id", description = "编号", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('bikmk:area-project-ratio:delete')")
|
||||
public CommonResult<Boolean> deleteAreaProjectRatio(@RequestParam("id") Long id) {
|
||||
areaProjectRatioService.deleteAreaProjectRatio(id);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@GetMapping("/get")
|
||||
@Operation(summary = "获得项目占比")
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
@PreAuthorize("@ss.hasPermission('bikmk:area-project-ratio:query')")
|
||||
public CommonResult<AreaProjectRatioRespVO> getAreaProjectRatio(@RequestParam("id") Long id) {
|
||||
AreaProjectRatioDO areaProjectRatio = areaProjectRatioService.getAreaProjectRatio(id);
|
||||
return success(AreaProjectRatioConvert.INSTANCE.convert(areaProjectRatio));
|
||||
}
|
||||
|
||||
@GetMapping("/list")
|
||||
@Operation(summary = "获得项目占比列表")
|
||||
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
|
||||
@PreAuthorize("@ss.hasPermission('bikmk:area-project-ratio:query')")
|
||||
public CommonResult<List<AreaProjectRatioRespVO>> getAreaProjectRatioList(@RequestParam("ids") Collection<Long> ids) {
|
||||
List<AreaProjectRatioDO> list = areaProjectRatioService.getAreaProjectRatioList(ids);
|
||||
return success(AreaProjectRatioConvert.INSTANCE.convertList(list));
|
||||
}
|
||||
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "获得项目占比分页")
|
||||
@PreAuthorize("@ss.hasPermission('bikmk:area-project-ratio:query')")
|
||||
public CommonResult<PageResult<AreaProjectRatioRespVO>> getAreaProjectRatioPage(@Valid AreaProjectRatioPageReqVO pageVO) {
|
||||
PageResult<AreaProjectRatioDO> pageResult = areaProjectRatioService.getAreaProjectRatioPage(pageVO);
|
||||
return success(AreaProjectRatioConvert.INSTANCE.convertPage(pageResult));
|
||||
}
|
||||
|
||||
@GetMapping("/export-excel")
|
||||
@Operation(summary = "导出项目占比 Excel")
|
||||
@PreAuthorize("@ss.hasPermission('bikmk:area-project-ratio:export')")
|
||||
@OperateLog(type = EXPORT)
|
||||
public void exportAreaProjectRatioExcel(@Valid AreaProjectRatioExportReqVO exportReqVO,
|
||||
HttpServletResponse response) throws IOException {
|
||||
List<AreaProjectRatioDO> list = areaProjectRatioService.getAreaProjectRatioList(exportReqVO);
|
||||
// 导出 Excel
|
||||
List<AreaProjectRatioExcelVO> datas = AreaProjectRatioConvert.INSTANCE.convertList02(list);
|
||||
ExcelUtils.write(response, "项目占比.xls", "数据", AreaProjectRatioExcelVO.class, datas);
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
package cn.iocoder.yudao.module.bikmk.controller.admin.areaprojectratio.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 AreaProjectRatioCreateReqVO extends AreaProjectRatioBaseVO {
|
||||
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
package cn.iocoder.yudao.module.bikmk.controller.admin.areaprojectratio.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 AreaProjectRatioExcelVO {
|
||||
|
||||
@ExcelProperty("编号")
|
||||
private Long id;
|
||||
|
||||
@ExcelProperty("项目")
|
||||
private String project;
|
||||
|
||||
@ExcelProperty("金额")
|
||||
private Integer money;
|
||||
|
||||
@ExcelProperty("创建时间")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
}
|
@ -0,0 +1,28 @@
|
||||
package cn.iocoder.yudao.module.bikmk.controller.admin.areaprojectratio.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 AreaProjectRatioPageReqVO extends PageParam {
|
||||
|
||||
@Schema(description = "项目")
|
||||
private String project;
|
||||
|
||||
@Schema(description = "金额")
|
||||
private Integer money;
|
||||
|
||||
@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.areaprojectratio.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 AreaProjectRatioRespVO extends AreaProjectRatioBaseVO {
|
||||
|
||||
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "6857")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
package cn.iocoder.yudao.module.bikmk.controller.admin.areaprojectratio.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 AreaProjectRatioUpdateReqVO extends AreaProjectRatioBaseVO {
|
||||
|
||||
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "6857")
|
||||
@NotNull(message = "编号不能为空")
|
||||
private Long id;
|
||||
|
||||
}
|
@ -0,0 +1,102 @@
|
||||
package cn.iocoder.yudao.module.bikmk.controller.admin.constant;
|
||||
|
||||
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.constant.vo.*;
|
||||
import cn.iocoder.yudao.module.bikmk.dal.dataobject.constant.ConstantDO;
|
||||
import cn.iocoder.yudao.module.bikmk.convert.constant.ConstantConvert;
|
||||
import cn.iocoder.yudao.module.bikmk.service.constant.ConstantService;
|
||||
|
||||
@Tag(name = "管理后台 - 常用数据")
|
||||
@RestController
|
||||
@RequestMapping("/bikmk/constant")
|
||||
@Validated
|
||||
public class ConstantController {
|
||||
|
||||
@Resource
|
||||
private ConstantService constantService;
|
||||
|
||||
@PostMapping("/create")
|
||||
@Operation(summary = "创建常用数据")
|
||||
@PreAuthorize("@ss.hasPermission('bikmk:constant:create')")
|
||||
public CommonResult<Long> createConstant(@Valid @RequestBody ConstantCreateReqVO createReqVO) {
|
||||
return success(constantService.createConstant(createReqVO));
|
||||
}
|
||||
|
||||
@PutMapping("/update")
|
||||
@Operation(summary = "更新常用数据")
|
||||
@PreAuthorize("@ss.hasPermission('bikmk:constant:update')")
|
||||
public CommonResult<Boolean> updateConstant(@Valid @RequestBody ConstantUpdateReqVO updateReqVO) {
|
||||
constantService.updateConstant(updateReqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
@Operation(summary = "删除常用数据")
|
||||
@Parameter(name = "id", description = "编号", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('bikmk:constant:delete')")
|
||||
public CommonResult<Boolean> deleteConstant(@RequestParam("id") Long id) {
|
||||
constantService.deleteConstant(id);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@GetMapping("/get")
|
||||
@Operation(summary = "获得常用数据")
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
@PreAuthorize("@ss.hasPermission('bikmk:constant:query')")
|
||||
public CommonResult<ConstantRespVO> getConstant(@RequestParam("id") Long id) {
|
||||
ConstantDO constant = constantService.getConstant(id);
|
||||
return success(ConstantConvert.INSTANCE.convert(constant));
|
||||
}
|
||||
|
||||
@GetMapping("/list")
|
||||
@Operation(summary = "获得常用数据列表")
|
||||
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
|
||||
@PreAuthorize("@ss.hasPermission('bikmk:constant:query')")
|
||||
public CommonResult<List<ConstantRespVO>> getConstantList(@RequestParam("ids") Collection<Long> ids) {
|
||||
List<ConstantDO> list = constantService.getConstantList(ids);
|
||||
return success(ConstantConvert.INSTANCE.convertList(list));
|
||||
}
|
||||
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "获得常用数据分页")
|
||||
@PreAuthorize("@ss.hasPermission('bikmk:constant:query')")
|
||||
public CommonResult<PageResult<ConstantRespVO>> getConstantPage(@Valid ConstantPageReqVO pageVO) {
|
||||
PageResult<ConstantDO> pageResult = constantService.getConstantPage(pageVO);
|
||||
return success(ConstantConvert.INSTANCE.convertPage(pageResult));
|
||||
}
|
||||
|
||||
@GetMapping("/export-excel")
|
||||
@Operation(summary = "导出常用数据 Excel")
|
||||
@PreAuthorize("@ss.hasPermission('bikmk:constant:export')")
|
||||
@OperateLog(type = EXPORT)
|
||||
public void exportConstantExcel(@Valid ConstantExportReqVO exportReqVO,
|
||||
HttpServletResponse response) throws IOException {
|
||||
List<ConstantDO> list = constantService.getConstantList(exportReqVO);
|
||||
// 导出 Excel
|
||||
List<ConstantExcelVO> datas = ConstantConvert.INSTANCE.convertList02(list);
|
||||
ExcelUtils.write(response, "常用数据.xls", "数据", ConstantExcelVO.class, datas);
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
package cn.iocoder.yudao.module.bikmk.controller.admin.constant.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 ConstantCreateReqVO extends ConstantBaseVO {
|
||||
|
||||
}
|
@ -0,0 +1,37 @@
|
||||
package cn.iocoder.yudao.module.bikmk.controller.admin.constant.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 ConstantExcelVO {
|
||||
|
||||
@ExcelProperty("编号")
|
||||
private Long id;
|
||||
|
||||
@ExcelProperty("健康度")
|
||||
private Double health;
|
||||
|
||||
@ExcelProperty("节电度数")
|
||||
private Integer degrees;
|
||||
|
||||
@ExcelProperty("节电金额")
|
||||
private Integer money;
|
||||
|
||||
@ExcelProperty("余额")
|
||||
private Integer balance;
|
||||
|
||||
@ExcelProperty("创建时间")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
package cn.iocoder.yudao.module.bikmk.controller.admin.constant.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 ConstantPageReqVO extends PageParam {
|
||||
|
||||
@Schema(description = "健康度")
|
||||
private Double health;
|
||||
|
||||
@Schema(description = "节电度数")
|
||||
private Integer degrees;
|
||||
|
||||
@Schema(description = "节电金额")
|
||||
private Integer money;
|
||||
|
||||
@Schema(description = "余额")
|
||||
private Integer balance;
|
||||
|
||||
@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.constant.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 ConstantRespVO extends ConstantBaseVO {
|
||||
|
||||
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "13329")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
package cn.iocoder.yudao.module.bikmk.controller.admin.constant.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 ConstantUpdateReqVO extends ConstantBaseVO {
|
||||
|
||||
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "13329")
|
||||
@NotNull(message = "编号不能为空")
|
||||
private Long id;
|
||||
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
package cn.iocoder.yudao.module.bikmk.convert.areaprojectratio;
|
||||
|
||||
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.areaprojectratio.vo.*;
|
||||
import cn.iocoder.yudao.module.bikmk.dal.dataobject.areaprojectratio.AreaProjectRatioDO;
|
||||
|
||||
/**
|
||||
* 项目占比 Convert
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Mapper
|
||||
public interface AreaProjectRatioConvert {
|
||||
|
||||
AreaProjectRatioConvert INSTANCE = Mappers.getMapper(AreaProjectRatioConvert.class);
|
||||
|
||||
AreaProjectRatioDO convert(AreaProjectRatioCreateReqVO bean);
|
||||
|
||||
AreaProjectRatioDO convert(AreaProjectRatioUpdateReqVO bean);
|
||||
|
||||
AreaProjectRatioRespVO convert(AreaProjectRatioDO bean);
|
||||
|
||||
List<AreaProjectRatioRespVO> convertList(List<AreaProjectRatioDO> list);
|
||||
|
||||
PageResult<AreaProjectRatioRespVO> convertPage(PageResult<AreaProjectRatioDO> page);
|
||||
|
||||
List<AreaProjectRatioExcelVO> convertList02(List<AreaProjectRatioDO> list);
|
||||
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
package cn.iocoder.yudao.module.bikmk.convert.constant;
|
||||
|
||||
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.constant.vo.*;
|
||||
import cn.iocoder.yudao.module.bikmk.dal.dataobject.constant.ConstantDO;
|
||||
|
||||
/**
|
||||
* 常用数据 Convert
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Mapper
|
||||
public interface ConstantConvert {
|
||||
|
||||
ConstantConvert INSTANCE = Mappers.getMapper(ConstantConvert.class);
|
||||
|
||||
ConstantDO convert(ConstantCreateReqVO bean);
|
||||
|
||||
ConstantDO convert(ConstantUpdateReqVO bean);
|
||||
|
||||
ConstantRespVO convert(ConstantDO bean);
|
||||
|
||||
List<ConstantRespVO> convertList(List<ConstantDO> list);
|
||||
|
||||
PageResult<ConstantRespVO> convertPage(PageResult<ConstantDO> page);
|
||||
|
||||
List<ConstantExcelVO> convertList02(List<ConstantDO> list);
|
||||
|
||||
}
|
@ -0,0 +1,39 @@
|
||||
package cn.iocoder.yudao.module.bikmk.dal.dataobject.areaprojectratio;
|
||||
|
||||
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_area_project_ratio")
|
||||
@KeySequence("bikmk_area_project_ratio_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class AreaProjectRatioDO extends BaseDO {
|
||||
|
||||
/**
|
||||
* 编号
|
||||
*/
|
||||
@TableId
|
||||
private Long id;
|
||||
/**
|
||||
* 项目
|
||||
*/
|
||||
private String project;
|
||||
/**
|
||||
* 金额
|
||||
*/
|
||||
private Integer money;
|
||||
|
||||
}
|
@ -0,0 +1,47 @@
|
||||
package cn.iocoder.yudao.module.bikmk.dal.dataobject.constant;
|
||||
|
||||
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_constant")
|
||||
@KeySequence("bikmk_constant_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class ConstantDO extends BaseDO {
|
||||
|
||||
/**
|
||||
* 编号
|
||||
*/
|
||||
@TableId
|
||||
private Long id;
|
||||
/**
|
||||
* 健康度
|
||||
*/
|
||||
private Double health;
|
||||
/**
|
||||
* 节电度数
|
||||
*/
|
||||
private Integer degrees;
|
||||
/**
|
||||
* 节电金额
|
||||
*/
|
||||
private Integer money;
|
||||
/**
|
||||
* 余额
|
||||
*/
|
||||
private Integer balance;
|
||||
|
||||
}
|
@ -0,0 +1,36 @@
|
||||
package cn.iocoder.yudao.module.bikmk.dal.mysql.areaprojectratio;
|
||||
|
||||
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.areaprojectratio.AreaProjectRatioDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import cn.iocoder.yudao.module.bikmk.controller.admin.areaprojectratio.vo.*;
|
||||
|
||||
/**
|
||||
* 项目占比 Mapper
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Mapper
|
||||
public interface AreaProjectRatioMapper extends BaseMapperX<AreaProjectRatioDO> {
|
||||
|
||||
default PageResult<AreaProjectRatioDO> selectPage(AreaProjectRatioPageReqVO reqVO) {
|
||||
return selectPage(reqVO, new LambdaQueryWrapperX<AreaProjectRatioDO>()
|
||||
.eqIfPresent(AreaProjectRatioDO::getProject, reqVO.getProject())
|
||||
.eqIfPresent(AreaProjectRatioDO::getMoney, reqVO.getMoney())
|
||||
.betweenIfPresent(AreaProjectRatioDO::getCreateTime, reqVO.getCreateTime())
|
||||
.orderByDesc(AreaProjectRatioDO::getId));
|
||||
}
|
||||
|
||||
default List<AreaProjectRatioDO> selectList(AreaProjectRatioExportReqVO reqVO) {
|
||||
return selectList(new LambdaQueryWrapperX<AreaProjectRatioDO>()
|
||||
.eqIfPresent(AreaProjectRatioDO::getProject, reqVO.getProject())
|
||||
.eqIfPresent(AreaProjectRatioDO::getMoney, reqVO.getMoney())
|
||||
.betweenIfPresent(AreaProjectRatioDO::getCreateTime, reqVO.getCreateTime())
|
||||
.orderByDesc(AreaProjectRatioDO::getId));
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,40 @@
|
||||
package cn.iocoder.yudao.module.bikmk.dal.mysql.constant;
|
||||
|
||||
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.constant.ConstantDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import cn.iocoder.yudao.module.bikmk.controller.admin.constant.vo.*;
|
||||
|
||||
/**
|
||||
* 常用数据 Mapper
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Mapper
|
||||
public interface ConstantMapper extends BaseMapperX<ConstantDO> {
|
||||
|
||||
default PageResult<ConstantDO> selectPage(ConstantPageReqVO reqVO) {
|
||||
return selectPage(reqVO, new LambdaQueryWrapperX<ConstantDO>()
|
||||
.eqIfPresent(ConstantDO::getHealth, reqVO.getHealth())
|
||||
.eqIfPresent(ConstantDO::getDegrees, reqVO.getDegrees())
|
||||
.eqIfPresent(ConstantDO::getMoney, reqVO.getMoney())
|
||||
.eqIfPresent(ConstantDO::getBalance, reqVO.getBalance())
|
||||
.betweenIfPresent(ConstantDO::getCreateTime, reqVO.getCreateTime())
|
||||
.orderByDesc(ConstantDO::getId));
|
||||
}
|
||||
|
||||
default List<ConstantDO> selectList(ConstantExportReqVO reqVO) {
|
||||
return selectList(new LambdaQueryWrapperX<ConstantDO>()
|
||||
.eqIfPresent(ConstantDO::getHealth, reqVO.getHealth())
|
||||
.eqIfPresent(ConstantDO::getDegrees, reqVO.getDegrees())
|
||||
.eqIfPresent(ConstantDO::getMoney, reqVO.getMoney())
|
||||
.eqIfPresent(ConstantDO::getBalance, reqVO.getBalance())
|
||||
.betweenIfPresent(ConstantDO::getCreateTime, reqVO.getCreateTime())
|
||||
.orderByDesc(ConstantDO::getId));
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,70 @@
|
||||
package cn.iocoder.yudao.module.bikmk.service.areaprojectratio;
|
||||
|
||||
import java.util.*;
|
||||
import javax.validation.*;
|
||||
import cn.iocoder.yudao.module.bikmk.controller.admin.areaprojectratio.vo.*;
|
||||
import cn.iocoder.yudao.module.bikmk.dal.dataobject.areaprojectratio.AreaProjectRatioDO;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
|
||||
/**
|
||||
* 项目占比 Service 接口
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
public interface AreaProjectRatioService {
|
||||
|
||||
/**
|
||||
* 创建项目占比
|
||||
*
|
||||
* @param createReqVO 创建信息
|
||||
* @return 编号
|
||||
*/
|
||||
Long createAreaProjectRatio(@Valid AreaProjectRatioCreateReqVO createReqVO);
|
||||
|
||||
/**
|
||||
* 更新项目占比
|
||||
*
|
||||
* @param updateReqVO 更新信息
|
||||
*/
|
||||
void updateAreaProjectRatio(@Valid AreaProjectRatioUpdateReqVO updateReqVO);
|
||||
|
||||
/**
|
||||
* 删除项目占比
|
||||
*
|
||||
* @param id 编号
|
||||
*/
|
||||
void deleteAreaProjectRatio(Long id);
|
||||
|
||||
/**
|
||||
* 获得项目占比
|
||||
*
|
||||
* @param id 编号
|
||||
* @return 项目占比
|
||||
*/
|
||||
AreaProjectRatioDO getAreaProjectRatio(Long id);
|
||||
|
||||
/**
|
||||
* 获得项目占比列表
|
||||
*
|
||||
* @param ids 编号
|
||||
* @return 项目占比列表
|
||||
*/
|
||||
List<AreaProjectRatioDO> getAreaProjectRatioList(Collection<Long> ids);
|
||||
|
||||
/**
|
||||
* 获得项目占比分页
|
||||
*
|
||||
* @param pageReqVO 分页查询
|
||||
* @return 项目占比分页
|
||||
*/
|
||||
PageResult<AreaProjectRatioDO> getAreaProjectRatioPage(AreaProjectRatioPageReqVO pageReqVO);
|
||||
|
||||
/**
|
||||
* 获得项目占比列表, 用于 Excel 导出
|
||||
*
|
||||
* @param exportReqVO 查询条件
|
||||
* @return 项目占比列表
|
||||
*/
|
||||
List<AreaProjectRatioDO> getAreaProjectRatioList(AreaProjectRatioExportReqVO exportReqVO);
|
||||
|
||||
}
|
@ -0,0 +1,82 @@
|
||||
package cn.iocoder.yudao.module.bikmk.service.areaprojectratio;
|
||||
|
||||
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.areaprojectratio.vo.*;
|
||||
import cn.iocoder.yudao.module.bikmk.dal.dataobject.areaprojectratio.AreaProjectRatioDO;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
|
||||
import cn.iocoder.yudao.module.bikmk.convert.areaprojectratio.AreaProjectRatioConvert;
|
||||
import cn.iocoder.yudao.module.bikmk.dal.mysql.areaprojectratio.AreaProjectRatioMapper;
|
||||
|
||||
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 AreaProjectRatioServiceImpl implements AreaProjectRatioService {
|
||||
|
||||
@Resource
|
||||
private AreaProjectRatioMapper areaProjectRatioMapper;
|
||||
|
||||
@Override
|
||||
public Long createAreaProjectRatio(AreaProjectRatioCreateReqVO createReqVO) {
|
||||
// 插入
|
||||
AreaProjectRatioDO areaProjectRatio = AreaProjectRatioConvert.INSTANCE.convert(createReqVO);
|
||||
areaProjectRatioMapper.insert(areaProjectRatio);
|
||||
// 返回
|
||||
return areaProjectRatio.getId();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateAreaProjectRatio(AreaProjectRatioUpdateReqVO updateReqVO) {
|
||||
// 校验存在
|
||||
validateAreaProjectRatioExists(updateReqVO.getId());
|
||||
// 更新
|
||||
AreaProjectRatioDO updateObj = AreaProjectRatioConvert.INSTANCE.convert(updateReqVO);
|
||||
areaProjectRatioMapper.updateById(updateObj);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteAreaProjectRatio(Long id) {
|
||||
// 校验存在
|
||||
validateAreaProjectRatioExists(id);
|
||||
// 删除
|
||||
areaProjectRatioMapper.deleteById(id);
|
||||
}
|
||||
|
||||
private void validateAreaProjectRatioExists(Long id) {
|
||||
if (areaProjectRatioMapper.selectById(id) == null) {
|
||||
throw exception(AREA_PROJECT_RATIO_NOT_EXISTS);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public AreaProjectRatioDO getAreaProjectRatio(Long id) {
|
||||
return areaProjectRatioMapper.selectById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<AreaProjectRatioDO> getAreaProjectRatioList(Collection<Long> ids) {
|
||||
return areaProjectRatioMapper.selectBatchIds(ids);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<AreaProjectRatioDO> getAreaProjectRatioPage(AreaProjectRatioPageReqVO pageReqVO) {
|
||||
return areaProjectRatioMapper.selectPage(pageReqVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<AreaProjectRatioDO> getAreaProjectRatioList(AreaProjectRatioExportReqVO exportReqVO) {
|
||||
return areaProjectRatioMapper.selectList(exportReqVO);
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,70 @@
|
||||
package cn.iocoder.yudao.module.bikmk.service.constant;
|
||||
|
||||
import java.util.*;
|
||||
import javax.validation.*;
|
||||
import cn.iocoder.yudao.module.bikmk.controller.admin.constant.vo.*;
|
||||
import cn.iocoder.yudao.module.bikmk.dal.dataobject.constant.ConstantDO;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
|
||||
/**
|
||||
* 常用数据 Service 接口
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
public interface ConstantService {
|
||||
|
||||
/**
|
||||
* 创建常用数据
|
||||
*
|
||||
* @param createReqVO 创建信息
|
||||
* @return 编号
|
||||
*/
|
||||
Long createConstant(@Valid ConstantCreateReqVO createReqVO);
|
||||
|
||||
/**
|
||||
* 更新常用数据
|
||||
*
|
||||
* @param updateReqVO 更新信息
|
||||
*/
|
||||
void updateConstant(@Valid ConstantUpdateReqVO updateReqVO);
|
||||
|
||||
/**
|
||||
* 删除常用数据
|
||||
*
|
||||
* @param id 编号
|
||||
*/
|
||||
void deleteConstant(Long id);
|
||||
|
||||
/**
|
||||
* 获得常用数据
|
||||
*
|
||||
* @param id 编号
|
||||
* @return 常用数据
|
||||
*/
|
||||
ConstantDO getConstant(Long id);
|
||||
|
||||
/**
|
||||
* 获得常用数据列表
|
||||
*
|
||||
* @param ids 编号
|
||||
* @return 常用数据列表
|
||||
*/
|
||||
List<ConstantDO> getConstantList(Collection<Long> ids);
|
||||
|
||||
/**
|
||||
* 获得常用数据分页
|
||||
*
|
||||
* @param pageReqVO 分页查询
|
||||
* @return 常用数据分页
|
||||
*/
|
||||
PageResult<ConstantDO> getConstantPage(ConstantPageReqVO pageReqVO);
|
||||
|
||||
/**
|
||||
* 获得常用数据列表, 用于 Excel 导出
|
||||
*
|
||||
* @param exportReqVO 查询条件
|
||||
* @return 常用数据列表
|
||||
*/
|
||||
List<ConstantDO> getConstantList(ConstantExportReqVO exportReqVO);
|
||||
|
||||
}
|
@ -0,0 +1,82 @@
|
||||
package cn.iocoder.yudao.module.bikmk.service.constant;
|
||||
|
||||
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.constant.vo.*;
|
||||
import cn.iocoder.yudao.module.bikmk.dal.dataobject.constant.ConstantDO;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
|
||||
import cn.iocoder.yudao.module.bikmk.convert.constant.ConstantConvert;
|
||||
import cn.iocoder.yudao.module.bikmk.dal.mysql.constant.ConstantMapper;
|
||||
|
||||
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 ConstantServiceImpl implements ConstantService {
|
||||
|
||||
@Resource
|
||||
private ConstantMapper constantMapper;
|
||||
|
||||
@Override
|
||||
public Long createConstant(ConstantCreateReqVO createReqVO) {
|
||||
// 插入
|
||||
ConstantDO constant = ConstantConvert.INSTANCE.convert(createReqVO);
|
||||
constantMapper.insert(constant);
|
||||
// 返回
|
||||
return constant.getId();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateConstant(ConstantUpdateReqVO updateReqVO) {
|
||||
// 校验存在
|
||||
validateConstantExists(updateReqVO.getId());
|
||||
// 更新
|
||||
ConstantDO updateObj = ConstantConvert.INSTANCE.convert(updateReqVO);
|
||||
constantMapper.updateById(updateObj);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteConstant(Long id) {
|
||||
// 校验存在
|
||||
validateConstantExists(id);
|
||||
// 删除
|
||||
constantMapper.deleteById(id);
|
||||
}
|
||||
|
||||
private void validateConstantExists(Long id) {
|
||||
if (constantMapper.selectById(id) == null) {
|
||||
throw exception(CONSTANT_NOT_EXISTS);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public ConstantDO getConstant(Long id) {
|
||||
return constantMapper.selectById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ConstantDO> getConstantList(Collection<Long> ids) {
|
||||
return constantMapper.selectBatchIds(ids);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<ConstantDO> getConstantPage(ConstantPageReqVO pageReqVO) {
|
||||
return constantMapper.selectPage(pageReqVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ConstantDO> getConstantList(ConstantExportReqVO exportReqVO) {
|
||||
return constantMapper.selectList(exportReqVO);
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,167 @@
|
||||
package cn.iocoder.yudao.module.bikmk.service.areaprojectratio;
|
||||
|
||||
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.areaprojectratio.vo.*;
|
||||
import cn.iocoder.yudao.module.bikmk.dal.dataobject.areaprojectratio.AreaProjectRatioDO;
|
||||
import cn.iocoder.yudao.module.bikmk.dal.mysql.areaprojectratio.AreaProjectRatioMapper;
|
||||
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 AreaProjectRatioServiceImpl} 的单元测试类
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Import(AreaProjectRatioServiceImpl.class)
|
||||
public class AreaProjectRatioServiceImplTest extends BaseDbUnitTest {
|
||||
|
||||
@Resource
|
||||
private AreaProjectRatioServiceImpl areaProjectRatioService;
|
||||
|
||||
@Resource
|
||||
private AreaProjectRatioMapper areaProjectRatioMapper;
|
||||
|
||||
@Test
|
||||
public void testCreateAreaProjectRatio_success() {
|
||||
// 准备参数
|
||||
AreaProjectRatioCreateReqVO reqVO = randomPojo(AreaProjectRatioCreateReqVO.class);
|
||||
|
||||
// 调用
|
||||
Long areaProjectRatioId = areaProjectRatioService.createAreaProjectRatio(reqVO);
|
||||
// 断言
|
||||
assertNotNull(areaProjectRatioId);
|
||||
// 校验记录的属性是否正确
|
||||
AreaProjectRatioDO areaProjectRatio = areaProjectRatioMapper.selectById(areaProjectRatioId);
|
||||
assertPojoEquals(reqVO, areaProjectRatio);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateAreaProjectRatio_success() {
|
||||
// mock 数据
|
||||
AreaProjectRatioDO dbAreaProjectRatio = randomPojo(AreaProjectRatioDO.class);
|
||||
areaProjectRatioMapper.insert(dbAreaProjectRatio);// @Sql: 先插入出一条存在的数据
|
||||
// 准备参数
|
||||
AreaProjectRatioUpdateReqVO reqVO = randomPojo(AreaProjectRatioUpdateReqVO.class, o -> {
|
||||
o.setId(dbAreaProjectRatio.getId()); // 设置更新的 ID
|
||||
});
|
||||
|
||||
// 调用
|
||||
areaProjectRatioService.updateAreaProjectRatio(reqVO);
|
||||
// 校验是否更新正确
|
||||
AreaProjectRatioDO areaProjectRatio = areaProjectRatioMapper.selectById(reqVO.getId()); // 获取最新的
|
||||
assertPojoEquals(reqVO, areaProjectRatio);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateAreaProjectRatio_notExists() {
|
||||
// 准备参数
|
||||
AreaProjectRatioUpdateReqVO reqVO = randomPojo(AreaProjectRatioUpdateReqVO.class);
|
||||
|
||||
// 调用, 并断言异常
|
||||
assertServiceException(() -> areaProjectRatioService.updateAreaProjectRatio(reqVO), AREA_PROJECT_RATIO_NOT_EXISTS);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testDeleteAreaProjectRatio_success() {
|
||||
// mock 数据
|
||||
AreaProjectRatioDO dbAreaProjectRatio = randomPojo(AreaProjectRatioDO.class);
|
||||
areaProjectRatioMapper.insert(dbAreaProjectRatio);// @Sql: 先插入出一条存在的数据
|
||||
// 准备参数
|
||||
Long id = dbAreaProjectRatio.getId();
|
||||
|
||||
// 调用
|
||||
areaProjectRatioService.deleteAreaProjectRatio(id);
|
||||
// 校验数据不存在了
|
||||
assertNull(areaProjectRatioMapper.selectById(id));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testDeleteAreaProjectRatio_notExists() {
|
||||
// 准备参数
|
||||
Long id = randomLongId();
|
||||
|
||||
// 调用, 并断言异常
|
||||
assertServiceException(() -> areaProjectRatioService.deleteAreaProjectRatio(id), AREA_PROJECT_RATIO_NOT_EXISTS);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
|
||||
public void testGetAreaProjectRatioPage() {
|
||||
// mock 数据
|
||||
AreaProjectRatioDO dbAreaProjectRatio = randomPojo(AreaProjectRatioDO.class, o -> { // 等会查询到
|
||||
o.setProject(null);
|
||||
o.setMoney(null);
|
||||
o.setCreateTime(null);
|
||||
});
|
||||
areaProjectRatioMapper.insert(dbAreaProjectRatio);
|
||||
// 测试 project 不匹配
|
||||
areaProjectRatioMapper.insert(cloneIgnoreId(dbAreaProjectRatio, o -> o.setProject(null)));
|
||||
// 测试 money 不匹配
|
||||
areaProjectRatioMapper.insert(cloneIgnoreId(dbAreaProjectRatio, o -> o.setMoney(null)));
|
||||
// 测试 createTime 不匹配
|
||||
areaProjectRatioMapper.insert(cloneIgnoreId(dbAreaProjectRatio, o -> o.setCreateTime(null)));
|
||||
// 准备参数
|
||||
AreaProjectRatioPageReqVO reqVO = new AreaProjectRatioPageReqVO();
|
||||
reqVO.setProject(null);
|
||||
reqVO.setMoney(null);
|
||||
reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
|
||||
|
||||
// 调用
|
||||
PageResult<AreaProjectRatioDO> pageResult = areaProjectRatioService.getAreaProjectRatioPage(reqVO);
|
||||
// 断言
|
||||
assertEquals(1, pageResult.getTotal());
|
||||
assertEquals(1, pageResult.getList().size());
|
||||
assertPojoEquals(dbAreaProjectRatio, pageResult.getList().get(0));
|
||||
}
|
||||
|
||||
@Test
|
||||
@Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
|
||||
public void testGetAreaProjectRatioList() {
|
||||
// mock 数据
|
||||
AreaProjectRatioDO dbAreaProjectRatio = randomPojo(AreaProjectRatioDO.class, o -> { // 等会查询到
|
||||
o.setProject(null);
|
||||
o.setMoney(null);
|
||||
o.setCreateTime(null);
|
||||
});
|
||||
areaProjectRatioMapper.insert(dbAreaProjectRatio);
|
||||
// 测试 project 不匹配
|
||||
areaProjectRatioMapper.insert(cloneIgnoreId(dbAreaProjectRatio, o -> o.setProject(null)));
|
||||
// 测试 money 不匹配
|
||||
areaProjectRatioMapper.insert(cloneIgnoreId(dbAreaProjectRatio, o -> o.setMoney(null)));
|
||||
// 测试 createTime 不匹配
|
||||
areaProjectRatioMapper.insert(cloneIgnoreId(dbAreaProjectRatio, o -> o.setCreateTime(null)));
|
||||
// 准备参数
|
||||
AreaProjectRatioExportReqVO reqVO = new AreaProjectRatioExportReqVO();
|
||||
reqVO.setProject(null);
|
||||
reqVO.setMoney(null);
|
||||
reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
|
||||
|
||||
// 调用
|
||||
List<AreaProjectRatioDO> list = areaProjectRatioService.getAreaProjectRatioList(reqVO);
|
||||
// 断言
|
||||
assertEquals(1, list.size());
|
||||
assertPojoEquals(dbAreaProjectRatio, list.get(0));
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,183 @@
|
||||
package cn.iocoder.yudao.module.bikmk.service.constant;
|
||||
|
||||
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.constant.vo.*;
|
||||
import cn.iocoder.yudao.module.bikmk.dal.dataobject.constant.ConstantDO;
|
||||
import cn.iocoder.yudao.module.bikmk.dal.mysql.constant.ConstantMapper;
|
||||
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 ConstantServiceImpl} 的单元测试类
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Import(ConstantServiceImpl.class)
|
||||
public class ConstantServiceImplTest extends BaseDbUnitTest {
|
||||
|
||||
@Resource
|
||||
private ConstantServiceImpl constantService;
|
||||
|
||||
@Resource
|
||||
private ConstantMapper constantMapper;
|
||||
|
||||
@Test
|
||||
public void testCreateConstant_success() {
|
||||
// 准备参数
|
||||
ConstantCreateReqVO reqVO = randomPojo(ConstantCreateReqVO.class);
|
||||
|
||||
// 调用
|
||||
Long constantId = constantService.createConstant(reqVO);
|
||||
// 断言
|
||||
assertNotNull(constantId);
|
||||
// 校验记录的属性是否正确
|
||||
ConstantDO constant = constantMapper.selectById(constantId);
|
||||
assertPojoEquals(reqVO, constant);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateConstant_success() {
|
||||
// mock 数据
|
||||
ConstantDO dbConstant = randomPojo(ConstantDO.class);
|
||||
constantMapper.insert(dbConstant);// @Sql: 先插入出一条存在的数据
|
||||
// 准备参数
|
||||
ConstantUpdateReqVO reqVO = randomPojo(ConstantUpdateReqVO.class, o -> {
|
||||
o.setId(dbConstant.getId()); // 设置更新的 ID
|
||||
});
|
||||
|
||||
// 调用
|
||||
constantService.updateConstant(reqVO);
|
||||
// 校验是否更新正确
|
||||
ConstantDO constant = constantMapper.selectById(reqVO.getId()); // 获取最新的
|
||||
assertPojoEquals(reqVO, constant);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateConstant_notExists() {
|
||||
// 准备参数
|
||||
ConstantUpdateReqVO reqVO = randomPojo(ConstantUpdateReqVO.class);
|
||||
|
||||
// 调用, 并断言异常
|
||||
assertServiceException(() -> constantService.updateConstant(reqVO), CONSTANT_NOT_EXISTS);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testDeleteConstant_success() {
|
||||
// mock 数据
|
||||
ConstantDO dbConstant = randomPojo(ConstantDO.class);
|
||||
constantMapper.insert(dbConstant);// @Sql: 先插入出一条存在的数据
|
||||
// 准备参数
|
||||
Long id = dbConstant.getId();
|
||||
|
||||
// 调用
|
||||
constantService.deleteConstant(id);
|
||||
// 校验数据不存在了
|
||||
assertNull(constantMapper.selectById(id));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testDeleteConstant_notExists() {
|
||||
// 准备参数
|
||||
Long id = randomLongId();
|
||||
|
||||
// 调用, 并断言异常
|
||||
assertServiceException(() -> constantService.deleteConstant(id), CONSTANT_NOT_EXISTS);
|
||||
}
|
||||
|
||||
@Test
|
||||
@Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
|
||||
public void testGetConstantPage() {
|
||||
// mock 数据
|
||||
ConstantDO dbConstant = randomPojo(ConstantDO.class, o -> { // 等会查询到
|
||||
o.setHealth(null);
|
||||
o.setDegrees(null);
|
||||
o.setMoney(null);
|
||||
o.setBalance(null);
|
||||
o.setCreateTime(null);
|
||||
});
|
||||
constantMapper.insert(dbConstant);
|
||||
// 测试 health 不匹配
|
||||
constantMapper.insert(cloneIgnoreId(dbConstant, o -> o.setHealth(null)));
|
||||
// 测试 degrees 不匹配
|
||||
constantMapper.insert(cloneIgnoreId(dbConstant, o -> o.setDegrees(null)));
|
||||
// 测试 money 不匹配
|
||||
constantMapper.insert(cloneIgnoreId(dbConstant, o -> o.setMoney(null)));
|
||||
// 测试 balance 不匹配
|
||||
constantMapper.insert(cloneIgnoreId(dbConstant, o -> o.setBalance(null)));
|
||||
// 测试 createTime 不匹配
|
||||
constantMapper.insert(cloneIgnoreId(dbConstant, o -> o.setCreateTime(null)));
|
||||
// 准备参数
|
||||
ConstantPageReqVO reqVO = new ConstantPageReqVO();
|
||||
reqVO.setHealth(null);
|
||||
reqVO.setDegrees(null);
|
||||
reqVO.setMoney(null);
|
||||
reqVO.setBalance(null);
|
||||
reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
|
||||
|
||||
// 调用
|
||||
PageResult<ConstantDO> pageResult = constantService.getConstantPage(reqVO);
|
||||
// 断言
|
||||
assertEquals(1, pageResult.getTotal());
|
||||
assertEquals(1, pageResult.getList().size());
|
||||
assertPojoEquals(dbConstant, pageResult.getList().get(0));
|
||||
}
|
||||
|
||||
@Test
|
||||
@Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
|
||||
public void testGetConstantList() {
|
||||
// mock 数据
|
||||
ConstantDO dbConstant = randomPojo(ConstantDO.class, o -> { // 等会查询到
|
||||
o.setHealth(null);
|
||||
o.setDegrees(null);
|
||||
o.setMoney(null);
|
||||
o.setBalance(null);
|
||||
o.setCreateTime(null);
|
||||
});
|
||||
constantMapper.insert(dbConstant);
|
||||
// 测试 health 不匹配
|
||||
constantMapper.insert(cloneIgnoreId(dbConstant, o -> o.setHealth(null)));
|
||||
// 测试 degrees 不匹配
|
||||
constantMapper.insert(cloneIgnoreId(dbConstant, o -> o.setDegrees(null)));
|
||||
// 测试 money 不匹配
|
||||
constantMapper.insert(cloneIgnoreId(dbConstant, o -> o.setMoney(null)));
|
||||
// 测试 balance 不匹配
|
||||
constantMapper.insert(cloneIgnoreId(dbConstant, o -> o.setBalance(null)));
|
||||
// 测试 createTime 不匹配
|
||||
constantMapper.insert(cloneIgnoreId(dbConstant, o -> o.setCreateTime(null)));
|
||||
// 准备参数
|
||||
ConstantExportReqVO reqVO = new ConstantExportReqVO();
|
||||
reqVO.setHealth(null);
|
||||
reqVO.setDegrees(null);
|
||||
reqVO.setMoney(null);
|
||||
reqVO.setBalance(null);
|
||||
reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
|
||||
|
||||
// 调用
|
||||
List<ConstantDO> list = constantService.getConstantList(reqVO);
|
||||
// 断言
|
||||
assertEquals(1, list.size());
|
||||
assertPojoEquals(dbConstant, list.get(0));
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,54 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 创建项目占比
|
||||
export function createAreaProjectRatio(data) {
|
||||
return request({
|
||||
url: '/bikmk/area-project-ratio/create',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 更新项目占比
|
||||
export function updateAreaProjectRatio(data) {
|
||||
return request({
|
||||
url: '/bikmk/area-project-ratio/update',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除项目占比
|
||||
export function deleteAreaProjectRatio(id) {
|
||||
return request({
|
||||
url: '/bikmk/area-project-ratio/delete?id=' + id,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 获得项目占比
|
||||
export function getAreaProjectRatio(id) {
|
||||
return request({
|
||||
url: '/bikmk/area-project-ratio/get?id=' + id,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 获得项目占比分页
|
||||
export function getAreaProjectRatioPage(query) {
|
||||
return request({
|
||||
url: '/bikmk/area-project-ratio/page',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 导出项目占比 Excel
|
||||
export function exportAreaProjectRatioExcel(query) {
|
||||
return request({
|
||||
url: '/bikmk/area-project-ratio/export-excel',
|
||||
method: 'get',
|
||||
params: query,
|
||||
responseType: 'blob'
|
||||
})
|
||||
}
|
@ -0,0 +1,54 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 创建区域项目完成度
|
||||
export function createAreaProjectSchedule(data) {
|
||||
return request({
|
||||
url: '/bikmk/area-project-schedule/create',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 更新区域项目完成度
|
||||
export function updateAreaProjectSchedule(data) {
|
||||
return request({
|
||||
url: '/bikmk/area-project-schedule/update',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除区域项目完成度
|
||||
export function deleteAreaProjectSchedule(id) {
|
||||
return request({
|
||||
url: '/bikmk/area-project-schedule/delete?id=' + id,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 获得区域项目完成度
|
||||
export function getAreaProjectSchedule(id) {
|
||||
return request({
|
||||
url: '/bikmk/area-project-schedule/get?id=' + id,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 获得区域项目完成度分页
|
||||
export function getAreaProjectSchedulePage(query) {
|
||||
return request({
|
||||
url: '/bikmk/area-project-schedule/page',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 导出区域项目完成度 Excel
|
||||
export function exportAreaProjectScheduleExcel(query) {
|
||||
return request({
|
||||
url: '/bikmk/area-project-schedule/export-excel',
|
||||
method: 'get',
|
||||
params: query,
|
||||
responseType: 'blob'
|
||||
})
|
||||
}
|
@ -0,0 +1,54 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 创建常用数据
|
||||
export function createConstant(data) {
|
||||
return request({
|
||||
url: '/bikmk/constant/create',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 更新常用数据
|
||||
export function updateConstant(data) {
|
||||
return request({
|
||||
url: '/bikmk/constant/update',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除常用数据
|
||||
export function deleteConstant(id) {
|
||||
return request({
|
||||
url: '/bikmk/constant/delete?id=' + id,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 获得常用数据
|
||||
export function getConstant(id) {
|
||||
return request({
|
||||
url: '/bikmk/constant/get?id=' + id,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 获得常用数据分页
|
||||
export function getConstantPage(query) {
|
||||
return request({
|
||||
url: '/bikmk/constant/page',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 导出常用数据 Excel
|
||||
export function exportConstantExcel(query) {
|
||||
return request({
|
||||
url: '/bikmk/constant/export-excel',
|
||||
method: 'get',
|
||||
params: query,
|
||||
responseType: 'blob'
|
||||
})
|
||||
}
|
@ -0,0 +1,219 @@
|
||||
<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="project">
|
||||
<el-input v-model="queryParams.project" placeholder="请输入项目" clearable @keyup.enter.native="handleQuery"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="金额" prop="money">
|
||||
<el-input v-model="queryParams.money" 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:area-project-ratio: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:area-project-ratio: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="project" />
|
||||
<el-table-column label="金额" align="center" prop="money" />
|
||||
<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:area-project-ratio:update']">修改</el-button>
|
||||
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
||||
v-hasPermi="['bikmk:area-project-ratio: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="project">
|
||||
<el-input v-model="form.project" placeholder="请输入项目" />
|
||||
</el-form-item>
|
||||
<el-form-item label="金额" prop="money">
|
||||
<el-input v-model="form.money" 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 { createAreaProjectRatio, updateAreaProjectRatio, deleteAreaProjectRatio, getAreaProjectRatio, getAreaProjectRatioPage, exportAreaProjectRatioExcel } from "@/api/bikmk/areaProjectRatio";
|
||||
|
||||
export default {
|
||||
name: "AreaProjectRatio",
|
||||
components: {
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 导出遮罩层
|
||||
exportLoading: false,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 项目占比列表
|
||||
list: [],
|
||||
// 弹出层标题
|
||||
title: "",
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
project: null,
|
||||
money: null,
|
||||
createTime: [],
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
// 表单校验
|
||||
rules: {
|
||||
project: [{ required: true, message: "项目不能为空", trigger: "blur" }],
|
||||
money: [{ required: true, message: "金额不能为空", trigger: "blur" }],
|
||||
}
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
},
|
||||
methods: {
|
||||
/** 查询列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
// 执行查询
|
||||
getAreaProjectRatioPage(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,
|
||||
project: undefined,
|
||||
money: 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;
|
||||
getAreaProjectRatio(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) {
|
||||
updateAreaProjectRatio(this.form).then(response => {
|
||||
this.$modal.msgSuccess("修改成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
});
|
||||
return;
|
||||
}
|
||||
// 添加的提交
|
||||
createAreaProjectRatio(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 deleteAreaProjectRatio(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 exportAreaProjectRatioExcel(params);
|
||||
}).then(response => {
|
||||
this.$download.excel(response, '项目占比.xls');
|
||||
this.exportLoading = false;
|
||||
}).catch(() => {});
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
@ -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="region">
|
||||
<el-input v-model="queryParams.region" placeholder="请输入区域" clearable @keyup.enter.native="handleQuery"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="完成" prop="do">
|
||||
<el-input v-model="queryParams.do" placeholder="请输入完成" clearable @keyup.enter.native="handleQuery"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="计划" prop="plan">
|
||||
<el-input v-model="queryParams.plan" 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:area-project-schedule: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:area-project-schedule: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="do" />
|
||||
<el-table-column label="计划" align="center" prop="plan" />
|
||||
<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:area-project-schedule:update']">修改</el-button>
|
||||
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
||||
v-hasPermi="['bikmk:area-project-schedule: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-input v-model="form.region" placeholder="请输入区域" />
|
||||
</el-form-item>
|
||||
<el-form-item label="完成" prop="do">
|
||||
<el-input v-model="form.do" placeholder="请输入完成" />
|
||||
</el-form-item>
|
||||
<el-form-item label="计划" prop="plan">
|
||||
<el-input v-model="form.plan" 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 { createAreaProjectSchedule, updateAreaProjectSchedule, deleteAreaProjectSchedule, getAreaProjectSchedule, getAreaProjectSchedulePage, exportAreaProjectScheduleExcel } from "@/api/bikmk/areaProjectSchedule";
|
||||
|
||||
export default {
|
||||
name: "AreaProjectSchedule",
|
||||
components: {
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 导出遮罩层
|
||||
exportLoading: false,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 区域项目完成度列表
|
||||
list: [],
|
||||
// 弹出层标题
|
||||
title: "",
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
region: null,
|
||||
do: null,
|
||||
plan: null,
|
||||
createTime: [],
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
// 表单校验
|
||||
rules: {
|
||||
region: [{ required: true, message: "区域不能为空", trigger: "blur" }],
|
||||
do: [{ required: true, message: "完成不能为空", trigger: "blur" }],
|
||||
plan: [{ required: true, message: "计划不能为空", trigger: "blur" }],
|
||||
}
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
},
|
||||
methods: {
|
||||
/** 查询列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
// 执行查询
|
||||
getAreaProjectSchedulePage(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,
|
||||
do: undefined,
|
||||
plan: 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;
|
||||
getAreaProjectSchedule(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) {
|
||||
updateAreaProjectSchedule(this.form).then(response => {
|
||||
this.$modal.msgSuccess("修改成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
});
|
||||
return;
|
||||
}
|
||||
// 添加的提交
|
||||
createAreaProjectSchedule(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 deleteAreaProjectSchedule(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 exportAreaProjectScheduleExcel(params);
|
||||
}).then(response => {
|
||||
this.$download.excel(response, '区域项目完成度.xls');
|
||||
this.exportLoading = false;
|
||||
}).catch(() => {});
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
@ -0,0 +1,239 @@
|
||||
<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="health">
|
||||
<el-input v-model="queryParams.health" placeholder="请输入健康度" clearable @keyup.enter.native="handleQuery"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="节电度数" prop="degrees">
|
||||
<el-input v-model="queryParams.degrees" placeholder="请输入节电度数" clearable @keyup.enter.native="handleQuery"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="节电金额" prop="money">
|
||||
<el-input v-model="queryParams.money" placeholder="请输入节电金额" clearable @keyup.enter.native="handleQuery"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="余额" prop="balance">
|
||||
<el-input v-model="queryParams.balance" 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:constant: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:constant: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="health" />
|
||||
<el-table-column label="节电度数" align="center" prop="degrees" />
|
||||
<el-table-column label="节电金额" align="center" prop="money" />
|
||||
<el-table-column label="余额" align="center" prop="balance" />
|
||||
<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:constant:update']">修改</el-button>
|
||||
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
||||
v-hasPermi="['bikmk:constant: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="health">
|
||||
<el-input v-model="form.health" placeholder="请输入健康度" />
|
||||
</el-form-item>
|
||||
<el-form-item label="节电度数" prop="degrees">
|
||||
<el-input v-model="form.degrees" placeholder="请输入节电度数" />
|
||||
</el-form-item>
|
||||
<el-form-item label="节电金额" prop="money">
|
||||
<el-input v-model="form.money" placeholder="请输入节电金额" />
|
||||
</el-form-item>
|
||||
<el-form-item label="余额" prop="balance">
|
||||
<el-input v-model="form.balance" 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 { createConstant, updateConstant, deleteConstant, getConstant, getConstantPage, exportConstantExcel } from "@/api/bikmk/constant";
|
||||
|
||||
export default {
|
||||
name: "Constant",
|
||||
components: {
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 导出遮罩层
|
||||
exportLoading: false,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 常用数据列表
|
||||
list: [],
|
||||
// 弹出层标题
|
||||
title: "",
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
health: null,
|
||||
degrees: null,
|
||||
money: null,
|
||||
balance: null,
|
||||
createTime: [],
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
// 表单校验
|
||||
rules: {
|
||||
health: [{ required: true, message: "健康度不能为空", trigger: "blur" }],
|
||||
degrees: [{ required: true, message: "节电度数不能为空", trigger: "blur" }],
|
||||
money: [{ required: true, message: "节电金额不能为空", trigger: "blur" }],
|
||||
balance: [{ required: true, message: "余额不能为空", trigger: "blur" }],
|
||||
}
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
},
|
||||
methods: {
|
||||
/** 查询列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
// 执行查询
|
||||
getConstantPage(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,
|
||||
health: undefined,
|
||||
degrees: undefined,
|
||||
money: undefined,
|
||||
balance: 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;
|
||||
getConstant(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) {
|
||||
updateConstant(this.form).then(response => {
|
||||
this.$modal.msgSuccess("修改成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
});
|
||||
return;
|
||||
}
|
||||
// 添加的提交
|
||||
createConstant(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 deleteConstant(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 exportConstantExcel(params);
|
||||
}).then(response => {
|
||||
this.$download.excel(response, '常用数据.xls');
|
||||
this.exportLoading = false;
|
||||
}).catch(() => {});
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
Loading…
Reference in new issue