diff --git a/fastbee-framework/src/main/java/com/fastbee/framework/config/SecurityConfig.java b/fastbee-framework/src/main/java/com/fastbee/framework/config/SecurityConfig.java index 393e257..dba933c 100644 --- a/fastbee-framework/src/main/java/com/fastbee/framework/config/SecurityConfig.java +++ b/fastbee-framework/src/main/java/com/fastbee/framework/config/SecurityConfig.java @@ -111,7 +111,8 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { // 对于登录login 注册register 验证码captchaImage 允许匿名访问 .antMatchers("/login", "/register", "/captchaImage", "/iot/tool/register", "/iot/tool/ntp", "/iot/tool/download", "/iot/tool/mqtt/auth", "/iot/tool/mqtt/authv5", "/iot/tool/mqtt/webhook", "/iot/tool/mqtt/webhookv5", "/auth/**/**", - "/wechat/mobileLogin", "/wechat/miniLogin", "/wechat/wxBind/callback").permitAll() + "/wechat/mobileLogin", "/wechat/miniLogin", "/wechat/wxBind/callback","/waterele/rechargerecord/queryUnchargeAmount", + "/waterele/rechargerecord/rechargeReply").permitAll() .antMatchers("/zlmhook/**").permitAll() .antMatchers("/ruleengine/rulemanager/**").permitAll() .antMatchers("/goview/sys/login", "/goview/project/getData").permitAll() diff --git a/fastbee-open-api/src/main/java/com/fastbee/data/controller/waterele/MaRechargerecordController.java b/fastbee-open-api/src/main/java/com/fastbee/data/controller/waterele/MaRechargerecordController.java index a83be33..79f1142 100644 --- a/fastbee-open-api/src/main/java/com/fastbee/data/controller/waterele/MaRechargerecordController.java +++ b/fastbee-open-api/src/main/java/com/fastbee/data/controller/waterele/MaRechargerecordController.java @@ -3,6 +3,7 @@ package com.fastbee.data.controller.waterele; import java.util.List; import javax.servlet.http.HttpServletResponse; +import com.fastbee.waterele.domain.vo.UnchargeAmountVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.security.access.prepost.PreAuthorize; @@ -33,19 +34,17 @@ import com.fastbee.common.core.page.TableDataInfo; @RestController @RequestMapping("/waterele/rechargerecord") @Api(tags = "充值记录") -public class MaRechargerecordController extends BaseController -{ +public class MaRechargerecordController extends BaseController { @Autowired private IMaRechargerecordService maRechargerecordService; -/** - * 查询充值记录列表 - */ -@PreAuthorize("@ss.hasPermi('waterele:rechargerecord:list')") -@GetMapping("/list") -@ApiOperation("查询充值记录列表") - public TableDataInfo list(MaRechargerecord maRechargerecord) - { + /** + * 查询充值记录列表 + */ + @PreAuthorize("@ss.hasPermi('waterele:rechargerecord:list')") + @GetMapping("/list") + @ApiOperation("查询充值记录列表") + public TableDataInfo list(MaRechargerecord maRechargerecord) { startPage(); List list = maRechargerecordService.selectMaRechargerecordList(maRechargerecord); return getDataTable(list); @@ -57,8 +56,7 @@ public class MaRechargerecordController extends BaseController @ApiOperation("导出充值记录列表") @PreAuthorize("@ss.hasPermi('waterele:rechargerecord:export')") @PostMapping("/export") - public void export(HttpServletResponse response, MaRechargerecord maRechargerecord) - { + public void export(HttpServletResponse response, MaRechargerecord maRechargerecord) { List list = maRechargerecordService.selectMaRechargerecordList(maRechargerecord); ExcelUtil util = new ExcelUtil(MaRechargerecord.class); util.exportExcel(response, list, "充值记录数据"); @@ -70,8 +68,7 @@ public class MaRechargerecordController extends BaseController @PreAuthorize("@ss.hasPermi('waterele:rechargerecord:query')") @GetMapping(value = "/{id}") @ApiOperation("获取充值记录详细信息") - public AjaxResult getInfo(@PathVariable("id") Long id) - { + public AjaxResult getInfo(@PathVariable("id") Long id) { return success(maRechargerecordService.selectMaRechargerecordById(id)); } @@ -81,8 +78,7 @@ public class MaRechargerecordController extends BaseController @PreAuthorize("@ss.hasPermi('waterele:rechargerecord:add')") @PostMapping @ApiOperation("新增充值记录") - public AjaxResult add(@RequestBody MaRechargerecord maRechargerecord) - { + public AjaxResult add(@RequestBody MaRechargerecord maRechargerecord) { return toAjax(maRechargerecordService.insertMaRechargerecord(maRechargerecord)); } @@ -92,8 +88,7 @@ public class MaRechargerecordController extends BaseController @PreAuthorize("@ss.hasPermi('waterele:rechargerecord:edit')") @PutMapping @ApiOperation("修改充值记录") - public AjaxResult edit(@RequestBody MaRechargerecord maRechargerecord) - { + public AjaxResult edit(@RequestBody MaRechargerecord maRechargerecord) { return toAjax(maRechargerecordService.updateMaRechargerecord(maRechargerecord)); } @@ -103,8 +98,26 @@ public class MaRechargerecordController extends BaseController @PreAuthorize("@ss.hasPermi('waterele:rechargerecord:remove')") @DeleteMapping("/{ids}") @ApiOperation("删除充值记录") - public AjaxResult remove(@PathVariable Long[] ids) - { + public AjaxResult remove(@PathVariable Long[] ids) { return toAjax(maRechargerecordService.deleteMaRechargerecordByIds(ids)); } + + //通过卡ID和区域号查询未充值的记录,返回总充值金额 +// @PreAuthorize("@ss.hasPermi('waterele:rechargerecord:queryUnchargeAmount')") + @GetMapping("/queryUnchargeAmount") + @ApiOperation("查询未充值的记录") + public AjaxResult queryUnchargeAmount(MaRechargerecord maRechargerecord) { + UnchargeAmountVo amount = maRechargerecordService.queryUnchargeAmount(maRechargerecord); + return AjaxResult.success(amount); + } + + + //充值成功后提交充值成功接口,修改卡ID、区域号对应的未充值记录 +// @PreAuthorize("@ss.hasPermi('waterele:rechargerecord:rechargeReply')") + @GetMapping("/rechargeReply") + @ApiOperation("充值成功反馈") + public AjaxResult rechargeReply(MaRechargerecord maRechargerecord) { + String msg = maRechargerecordService.rechargeReply(maRechargerecord); + return AjaxResult.success(msg); + } } diff --git a/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/domain/MaRechargerecord.java b/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/domain/MaRechargerecord.java index aa62def..1332be9 100644 --- a/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/domain/MaRechargerecord.java +++ b/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/domain/MaRechargerecord.java @@ -15,44 +15,64 @@ import com.fastbee.common.core.domain.BaseEntity; * @author kerwincui * @date 2024-08-12 */ -@ApiModel(value = "MaRechargerecord",description = "充值记录 ma_rechargerecord") +@ApiModel(value = "MaRechargerecord", description = "充值记录 ma_rechargerecord") @Data @EqualsAndHashCode(callSuper = true) -public class MaRechargerecord extends BaseEntity - { -private static final long serialVersionUID = 1L; +public class MaRechargerecord extends BaseEntity { + private static final long serialVersionUID = 1L; - /** 序号 */ + /** + * 序号 + */ private Long id; - /** 余额 */ - @Excel(name = "余额") - @ApiModelProperty("余额") + /** + * 余额 + */ + @Excel(name = "余额") + @ApiModelProperty("余额") private String balance; - /** 充值金额 */ - @Excel(name = "充值金额") - @ApiModelProperty("充值金额") + /** + * 充值金额 + */ + @Excel(name = "充值金额") + @ApiModelProperty("充值金额") private String investval; - /** 卡编号 */ - @Excel(name = "卡编号") - @ApiModelProperty("卡编号") + /** + * 卡编号 + */ + @Excel(name = "卡编号") + @ApiModelProperty("卡编号") private String cardNum; - /** 区域号 */ - @Excel(name = "区域号") - @ApiModelProperty("区域号") + /** + * 区域号 + */ + @Excel(name = "区域号") + @ApiModelProperty("区域号") private String areaCode; - /** 卡ID */ - @Excel(name = "卡ID") - @ApiModelProperty("卡ID") + /** + * 卡ID + */ + @Excel(name = "卡ID") + @ApiModelProperty("卡ID") private String cardId; - /** mcuSn */ - @Excel(name = "mcuSn") - @ApiModelProperty("mcuSn") + /** + * mcuSn + */ + @Excel(name = "mcuSn") + @ApiModelProperty("mcuSn") private String mcusn; + /** + * 充值状态 + */ + @Excel(name = "充值状态") + @ApiModelProperty("充值状态:0=未充值,1=充值成功") + private Integer isRecharge; + } diff --git a/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/domain/vo/UnchargeAmountVo.java b/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/domain/vo/UnchargeAmountVo.java new file mode 100644 index 0000000..b9c009d --- /dev/null +++ b/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/domain/vo/UnchargeAmountVo.java @@ -0,0 +1,15 @@ +package com.fastbee.waterele.domain.vo; + +import lombok.Data; + +@Data +public class UnchargeAmountVo { + //卡编号 + private String cardNum; + //区域号 + private String areaCode; + //充值金额 + private float investVal; + + +} diff --git a/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/mapper/MaRechargerecordMapper.java b/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/mapper/MaRechargerecordMapper.java index 644470a..85f77bf 100644 --- a/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/mapper/MaRechargerecordMapper.java +++ b/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/mapper/MaRechargerecordMapper.java @@ -58,4 +58,6 @@ public interface MaRechargerecordMapper * @return 结果 */ public int deleteMaRechargerecordByIds(Long[] ids); + + int updateByCardNumAndAreaCode(MaRechargerecord maRechargerecord); } diff --git a/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/service/IMaRechargerecordService.java b/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/service/IMaRechargerecordService.java index f62b8c5..2d0a2d9 100644 --- a/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/service/IMaRechargerecordService.java +++ b/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/service/IMaRechargerecordService.java @@ -2,6 +2,7 @@ package com.fastbee.waterele.service; import java.util.List; import com.fastbee.waterele.domain.MaRechargerecord; +import com.fastbee.waterele.domain.vo.UnchargeAmountVo; /** * 充值记录Service接口 @@ -58,4 +59,18 @@ public interface IMaRechargerecordService * @return 结果 */ public int deleteMaRechargerecordById(Long id); + + /** + * 获取未充值的总金额 + * @param maRechargerecord + * @return + */ + UnchargeAmountVo queryUnchargeAmount(MaRechargerecord maRechargerecord); + + /** + * 充值成功反馈 + * @param maRechargerecord + * @return + */ + String rechargeReply(MaRechargerecord maRechargerecord); } diff --git a/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/service/impl/MaRechargerecordServiceImpl.java b/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/service/impl/MaRechargerecordServiceImpl.java index a1e3b04..d827c0d 100644 --- a/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/service/impl/MaRechargerecordServiceImpl.java +++ b/fastbee-service/fastbee-waterele-service/src/main/java/com/fastbee/waterele/service/impl/MaRechargerecordServiceImpl.java @@ -1,7 +1,11 @@ package com.fastbee.waterele.service.impl; +import java.util.Date; import java.util.List; + import com.fastbee.common.utils.DateUtils; +import com.fastbee.common.utils.StringUtils; +import com.fastbee.waterele.domain.vo.UnchargeAmountVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.fastbee.waterele.mapper.MaRechargerecordMapper; @@ -10,87 +14,106 @@ import com.fastbee.waterele.service.IMaRechargerecordService; /** * 充值记录Service业务层处理 - * + * * @author kerwincui * @date 2024-08-12 */ @Service -public class MaRechargerecordServiceImpl implements IMaRechargerecordService -{ +public class MaRechargerecordServiceImpl implements IMaRechargerecordService { @Autowired private MaRechargerecordMapper maRechargerecordMapper; /** * 查询充值记录 - * + * * @param id 充值记录主键 * @return 充值记录 */ @Override - public MaRechargerecord selectMaRechargerecordById(Long id) - { + public MaRechargerecord selectMaRechargerecordById(Long id) { return maRechargerecordMapper.selectMaRechargerecordById(id); } /** * 查询充值记录列表 - * + * * @param maRechargerecord 充值记录 * @return 充值记录 */ @Override - public List selectMaRechargerecordList(MaRechargerecord maRechargerecord) - { + public List selectMaRechargerecordList(MaRechargerecord maRechargerecord) { return maRechargerecordMapper.selectMaRechargerecordList(maRechargerecord); } /** * 新增充值记录 - * + * * @param maRechargerecord 充值记录 * @return 结果 */ @Override - public int insertMaRechargerecord(MaRechargerecord maRechargerecord) - { + public int insertMaRechargerecord(MaRechargerecord maRechargerecord) { maRechargerecord.setCreateTime(DateUtils.getNowDate()); return maRechargerecordMapper.insertMaRechargerecord(maRechargerecord); } /** * 修改充值记录 - * + * * @param maRechargerecord 充值记录 * @return 结果 */ @Override - public int updateMaRechargerecord(MaRechargerecord maRechargerecord) - { + public int updateMaRechargerecord(MaRechargerecord maRechargerecord) { maRechargerecord.setUpdateTime(DateUtils.getNowDate()); return maRechargerecordMapper.updateMaRechargerecord(maRechargerecord); } /** * 批量删除充值记录 - * + * * @param ids 需要删除的充值记录主键 * @return 结果 */ @Override - public int deleteMaRechargerecordByIds(Long[] ids) - { + public int deleteMaRechargerecordByIds(Long[] ids) { return maRechargerecordMapper.deleteMaRechargerecordByIds(ids); } /** * 删除充值记录信息 - * + * * @param id 充值记录主键 * @return 结果 */ @Override - public int deleteMaRechargerecordById(Long id) - { + public int deleteMaRechargerecordById(Long id) { return maRechargerecordMapper.deleteMaRechargerecordById(id); } + + @Override + public UnchargeAmountVo queryUnchargeAmount(MaRechargerecord maRechargerecord) { + maRechargerecord.setIsRecharge(0); + List maRechargerecords = maRechargerecordMapper.selectMaRechargerecordList(maRechargerecord); + float total = 0; + for (MaRechargerecord record : maRechargerecords) { + total += Float.parseFloat(record.getInvestval()); + } + UnchargeAmountVo vo = new UnchargeAmountVo(); + vo.setInvestVal(total); + vo.setCardNum(maRechargerecord.getCardNum()); + vo.setAreaCode(maRechargerecord.getAreaCode()); + return vo; + } + + @Override + public String rechargeReply(MaRechargerecord maRechargerecord) { + if (StringUtils.isNotEmpty(maRechargerecord.getCardNum()) && StringUtils.isNotEmpty(maRechargerecord.getAreaCode())) { + if (maRechargerecord.getIsRecharge() == 1) { + maRechargerecord.setUpdateTime(new Date()); + int count = maRechargerecordMapper.updateByCardNumAndAreaCode(maRechargerecord); + } + } + return "更新成功"; + } } diff --git a/fastbee-service/fastbee-waterele-service/src/main/resources/mapper/waterele/MaRechargerecordMapper.xml b/fastbee-service/fastbee-waterele-service/src/main/resources/mapper/waterele/MaRechargerecordMapper.xml index bbf392f..e1c6b75 100644 --- a/fastbee-service/fastbee-waterele-service/src/main/resources/mapper/waterele/MaRechargerecordMapper.xml +++ b/fastbee-service/fastbee-waterele-service/src/main/resources/mapper/waterele/MaRechargerecordMapper.xml @@ -12,12 +12,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + - select id, balance, investVal, card_num, area_code, card_id, mcuSn, create_time, update_time from ma_rechargerecord + select * from ma_rechargerecord @@ -46,6 +48,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" area_code, card_id, mcuSn, + is_recharge, create_time, update_time, @@ -56,6 +59,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{areaCode}, #{cardId}, #{mcusn}, + #{isRecharge}, #{createTime}, #{updateTime}, @@ -70,11 +74,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" area_code = #{areaCode}, card_id = #{cardId}, mcuSn = #{mcusn}, + is_recharge = #{isRecharge}, create_time = #{createTime}, update_time = #{updateTime}, where id = #{id} + + update ma_rechargerecord + + is_recharge = #{isRecharge}, + update_time = #{updateTime}, + + where card_num = #{cardNum} and is_recharge = 0 and area_code = #{areaCode} + delete from ma_rechargerecord where id = #{id}