ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TFaultMessage.java
@@ -6,6 +6,7 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import org.hibernate.validator.constraints.Length; import java.io.Serializable; import java.time.LocalDateTime; @@ -46,6 +47,11 @@ @TableField("status") private Integer status; @ApiModelProperty(value = "故障内容") @Length(max = 200, message = "故障内容长度不能超过200") @TableField("content") private String content; @ApiModelProperty(value = "故障时间") @TableField("down_time") private LocalDateTime downTime; ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/TAccountingStrategyDetailVO.java
@@ -11,7 +11,7 @@ @ApiModel(value = "TAccountingStrategyDetailVO",description = "计费策略明细") public class TAccountingStrategyDetailVO extends TAccountingStrategyDetail { @ApiModelProperty(value = "原价服务费") @ApiModelProperty(value = "总价") private BigDecimal totalPrice; @ApiModelProperty(value = "会员折扣") ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/status/SiteStatusEnum.java
New file @@ -0,0 +1,46 @@ package com.ruoyi.common.core.enums.status; import lombok.Getter; /** * @Description * @Author xiaochen * @Date 2023/6/8 16:42 */ public enum SiteStatusEnum { NORMAL_USE(1, "正常使用"), IN_MAINTENANCE(2, "维修中"), CLOSE_OFFLINE(3, "关闭下线"); @Getter private String desc; @Getter private int code; SiteStatusEnum(int code, String desc) { this.code = code; this.desc = desc; } /** * 通过code获取枚举 * * @param code * @return */ public static SiteStatusEnum fromCode(Integer code) { SiteStatusEnum[] resultTypes = SiteStatusEnum.values(); for (SiteStatusEnum resultType : resultTypes) { if (code.equals(resultType.getCode())) { return resultType; } } return null; } } ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TAccountingStrategyDetailController.java
@@ -1,9 +1,23 @@ package com.ruoyi.chargingPile.controller; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.ruoyi.chargingPile.api.model.TAccountingStrategy; import com.ruoyi.chargingPile.api.vo.TAccountingStrategyDetailVO; import com.ruoyi.chargingPile.service.TAccountingStrategyDetailService; import com.ruoyi.chargingPile.service.TAccountingStrategyService; import com.ruoyi.common.core.exception.ServiceException; import com.ruoyi.common.core.web.domain.AjaxResult; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.List; import java.util.Objects; /** * <p> @@ -18,5 +32,34 @@ @RequestMapping("/t-accounting-strategy-detail") public class TAccountingStrategyDetailController { private final TAccountingStrategyService accountingStrategyService; private final TAccountingStrategyDetailService accountingStrategyDetailService; @Autowired public TAccountingStrategyDetailController(TAccountingStrategyService accountingStrategyService, TAccountingStrategyDetailService accountingStrategyDetailService) { this.accountingStrategyService = accountingStrategyService; this.accountingStrategyDetailService = accountingStrategyDetailService; } /** * 通过电站id查询计费策略明细列表 */ @ApiOperation(tags = {"小程序-计费策略"},value = "通过站点id查询计费策略明细列表") @GetMapping(value = "/queryAccountingStrategyDetailBySiteId") public AjaxResult<List<TAccountingStrategyDetailVO>> queryAccountingStrategyDetailBySiteId(@RequestParam Integer siteId) { TAccountingStrategy accountingStrategy = accountingStrategyService.getOne(Wrappers.lambdaQuery(TAccountingStrategy.class) .eq(TAccountingStrategy::getSiteId, siteId) .last("limit 1")); if(Objects.isNull(accountingStrategy)){ throw new ServiceException("未查询到计费策略"); } // TODO 修改 List<TAccountingStrategyDetailVO> list = accountingStrategyDetailService.queryAccountingStrategyDetailByStrategyId(accountingStrategy.getId()); list.forEach(detail -> { detail.setTotalPrice(detail.getElectrovalence().add(detail.getElectrovalence())); }); return AjaxResult.ok(list); } } ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java
@@ -1,9 +1,20 @@ package com.ruoyi.chargingPile.controller; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.ruoyi.chargingPile.api.model.TChargingPile; import com.ruoyi.chargingPile.api.query.TChargingGunQuery; import com.ruoyi.chargingPile.api.vo.TChargingGunVO; import com.ruoyi.chargingPile.service.TChargingGunService; import com.ruoyi.chargingPile.service.TChargingPileService; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.page.PageInfo; import io.swagger.annotations.Api; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; /** * <p> @@ -18,5 +29,22 @@ @RequestMapping("/t-charging-pile") public class TChargingPileController { private final TChargingPileService chargingPileService; @Autowired public TChargingPileController(TChargingPileService chargingPileService) { this.chargingPileService = chargingPileService; } /** * 查询充电桩列表 */ @ApiOperation(tags = {"小程序-充电桩"},value = "查询充电桩列表") @PostMapping(value = "/list") public AjaxResult<List<TChargingPile>> list(@RequestParam(name = "siteId",value = "站点id",required = false)Integer siteId) { return AjaxResult.ok(chargingPileService.list(Wrappers.lambdaQuery(TChargingPile.class) .eq(TChargingPile::getSiteId,siteId))); } } ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TFaultMessageController.java
@@ -1,6 +1,16 @@ package com.ruoyi.chargingPile.controller; import com.ruoyi.chargingPile.api.dto.TChargingGunDTO; import com.ruoyi.chargingPile.api.model.TFaultMessage; import com.ruoyi.chargingPile.service.TChargingPileService; import com.ruoyi.chargingPile.service.TFaultMessageService; import com.ruoyi.common.core.web.domain.AjaxResult; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -16,5 +26,22 @@ @RequestMapping("/t-fault-message") public class TFaultMessageController { private final TFaultMessageService faultMessageService; @Autowired public TFaultMessageController(TFaultMessageService faultMessageService) { this.faultMessageService = faultMessageService; } /** * 添加故障报修管理 */ @ApiOperation(tags = {"小程序-故障报修"},value = "添加故障报修管理") @PostMapping(value = "/add") public AjaxResult<Boolean> add(@Validated @RequestBody TFaultMessage dto) { return AjaxResult.ok(faultMessageService.save(dto)); } } ruoyi-service/ruoyi-chargingPile/src/main/resources/mapper/chargingPile/SiteMapper.xml
@@ -149,6 +149,7 @@ and ts.`name` like CONCAT('%', #{query.name}, '%') </if> AND ts.del_flag = ${@com.ruoyi.common.core.enums.DelFlagEnum@NO.getCode()} AND ts.status = ${@com.ruoyi.common.core.enums.SiteStatusEnum@NORMAL_USE.getCode()} </where> <if test="query.sortType != null"> <choose>