package com.ydtech.modules.inv.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.ydtech.core.page.HttpResult; import com.ydtech.modules.inv.model.InvAccount; import com.ydtech.modules.inv.model.InvAccountCard; import com.ydtech.modules.inv.model.dto.InvAccountCardQueryDto; import com.ydtech.modules.inv.model.vo.InvAccountQueryVo; import com.ydtech.modules.inv.service.InvAccountCardService; import com.ydtech.modules.inv.service.InvAccountService; import com.ydtech.modules.order.entity.BasePageResult; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; /** * @author jianlong * @date 2024-01-05 09:31 */ @Api(tags = "账户管理", value = "账户管理") @RequestMapping("/invAccount") @RestController public class InvAccountController { @Autowired private InvAccountService invAccountService; @Autowired private InvAccountCardService invAccountCardService; @PostMapping("excel") @ApiOperation("费用支出明细导出") public HttpResult excel(@RequestBody InvAccountQueryVo invAccountQueryVo) { return invAccountService.selectAccountExcel(invAccountQueryVo); } @PostMapping("look") @ApiOperation("报表查看") public HttpResult look(@RequestBody InvAccountQueryVo invAccountQueryVo) { return invAccountService.look(invAccountQueryVo); } @PostMapping("accountExcel") @ApiOperation("账户信息导出") public HttpResult accountExcel(@RequestBody InvAccountQueryVo invAccountQueryVo) { return invAccountService.selectAccountList(invAccountQueryVo); } @ApiOperation("获取账户列表") @PostMapping("getAccount") public HttpResult> getInsAccountList(@RequestBody InvAccountQueryVo invAccountQueryVo) { return HttpResult.ok("", invAccountService.selectAccountsListPage(invAccountQueryVo)); } @ApiOperation("查询账户卡列表") @PostMapping("getAccountCardList") public HttpResult getInsAccountCardList(@RequestBody InvAccountCard invAccountCard) { LambdaQueryWrapper objectLambdaQueryWrapper = new LambdaQueryWrapper<>(); objectLambdaQueryWrapper.eq(InvAccountCard::getAccountId, invAccountCard.getAccountId()); if (invAccountCard.getBankCardNum() != null) { objectLambdaQueryWrapper.eq(InvAccountCard::getBankCardNum, invAccountCard.getBankCardNum()); } else if (invAccountCard.getBank() != null) { objectLambdaQueryWrapper.eq(InvAccountCard::getBank, invAccountCard.getBank()); } return HttpResult.ok("", invAccountCardService.list(objectLambdaQueryWrapper)); } @ApiOperation("删除账户(只传一个id就行)") @DeleteMapping("{accountId}") public HttpResult deleteInsAccount(@PathVariable("accountId") String accountId) { if (accountId != null) { InvAccount invAccount = invAccountService.getById(accountId); invAccount.setDelFlag("1"); if (invAccountService.updateById(invAccount)) { return HttpResult.ok("删除成功"); } else { return HttpResult.error(); } } else { return HttpResult.error("id不能为空"); } } @ApiOperation("删除账户卡") @DeleteMapping("card/{bankCardNum}") public HttpResult deleteInsAccountCard(@PathVariable("bankCardNum") String bankCardNum) { if (bankCardNum == null) { throw new RuntimeException("卡号为空"); } if (invAccountCardService.removeById(bankCardNum)) { return HttpResult.ok("删除成功"); } else { return HttpResult.error("删除失败"); } } @ApiOperation("插入账户信息") @PostMapping("insertAccount") public HttpResult insertInsAccount(@RequestBody InvAccount invAccount) { if (invAccountService.save(invAccount)) { return HttpResult.ok(invAccount); } else { return HttpResult.error(); } } @ApiOperation("插入账户卡信息") @PostMapping("insertAccountCard") public HttpResult insertInsAccountCard(@RequestBody InvAccountCard invAccountCard) { if (invAccountCard.getAccountId() == null) { throw new RuntimeException("账户id为空"); } if (invAccountCardService.insertInsAccountCard(invAccountCard) > 0) { return HttpResult.ok(); } else { return HttpResult.error(); } } @ApiOperation("修改账户信息") @PostMapping("updateAccount") public HttpResult updateInsAccount(@RequestBody InvAccount invAccount) { if (invAccountService.updateById(invAccount)) { return HttpResult.ok(); } else { return HttpResult.error(); } } @ApiOperation("修改账户卡信息") @PostMapping("updateAccountCard") public HttpResult updateInsAccountCard(@RequestBody InvAccountCard invAccountCard) { if (invAccountCard.getBankCardNum() == null) { throw new RuntimeException("卡号不能为空"); } if (invAccountCardService.updateInsAccountCard(invAccountCard) > 0) { return HttpResult.ok(); } else { return HttpResult.error(); } } @ApiOperation("根据户名分类") @GetMapping("getAccountByAccountName") public HttpResult selectByAccountName() { return invAccountService.selectByAccountName(); } @ApiOperation("查询账户卡列表") @PostMapping("getAccountCardListByPage") public HttpResult> getAccountCardListByPage(@RequestBody InvAccountCardQueryDto invAccountCardQueryDto) { try{ BasePageResult result = invAccountService.queryPage(invAccountCardQueryDto); return HttpResult.ok("查询数据成功", result); }catch (Exception e){ return HttpResult.error("查询错误"+e.getMessage()); } } /** * * @param invAccountQueryVo * @return 返回账户列表集合 */ @ApiOperation("查询账户卡列表") @PostMapping("getInvAccountList") public HttpResult> getInvAccountList(@RequestBody InvAccountQueryVo invAccountQueryVo) { try{ List result = invAccountService.getInvAccountList(invAccountQueryVo); return HttpResult.ok("查询数据成功", result); }catch (Exception e){ return HttpResult.error("查询错误"+e.getMessage()); } } }