package com.ruoyi.other.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.page.PageInfo; import com.ruoyi.common.log.annotation.Log; import com.ruoyi.common.log.enums.BusinessType; import com.ruoyi.other.api.domain.TInvoiceType; import com.ruoyi.other.query.InvoiceTypePageList; import com.ruoyi.other.service.TInvoiceTypeService; import io.swagger.annotations.ApiOperation; import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** *

* 前端控制器 *

* * @author 无关风月 * @since 2024-08-06 */ @RestController @RequestMapping("/t-invoice-type") public class TInvoiceTypeController { @Resource private TInvoiceTypeService invoiceTypeService; @ResponseBody @GetMapping("/pageList") @ApiOperation(value = "获取发票类型列表", tags = {"管理后台-发票类型管理"}) public AjaxResult> pageList(InvoiceTypePageList pageList){ PageInfo pageInfo = invoiceTypeService.pageList(pageList); return AjaxResult.success(pageInfo); } @GetMapping("/pageListR") @ApiOperation(value = "获取开票公司和类型列表", tags = {"管理后台-发票管理"}) public R> pageListR(String invoicingCompany ){ List list = new ArrayList<>(); if (StringUtils.hasLength(invoicingCompany )){ list = invoiceTypeService.lambdaQuery().eq(TInvoiceType::getInvoicingCompany, invoicingCompany).list(); }else{ list = invoiceTypeService.lambdaQuery().list(); } return R.ok(list); } @ResponseBody @PostMapping("/addInvoiceType") @ApiOperation(value = "添加发票类型", tags = {"管理后台-发票类型管理"}) @Log(title = "【发票类型管理】添加发票类型", businessType = BusinessType.INSERT) public AjaxResult addInvoiceType(@RequestBody TInvoiceType invoiceType){ invoiceTypeService.save(invoiceType); return AjaxResult.success(); } @ResponseBody @GetMapping("/getInvoiceTypeInfo/{id}") @ApiOperation(value = "获取发票类型详情", tags = {"管理后台-发票类型管理"}) public AjaxResult getInvoiceTypeInfo(@PathVariable Integer id){ TInvoiceType invoiceType = invoiceTypeService.getById(id); return AjaxResult.success(invoiceType); } @ResponseBody @PostMapping("/editInvoiceType") @ApiOperation(value = "编辑发票类型", tags = {"管理后台-发票类型管理"}) @Log(title = "【发票类型管理】编辑发票类型", businessType = BusinessType.UPDATE) public AjaxResult editInvoiceType(@RequestBody TInvoiceType invoiceType){ invoiceTypeService.updateById(invoiceType); return AjaxResult.success(); } @ResponseBody @DeleteMapping("/delInvoiceType") @ApiOperation(value = "删除发票类型", tags = {"管理后台-发票类型管理"}) @Log(title = "【发票类型管理】删除发票类型", businessType = BusinessType.DELETE) public AjaxResult delInvoiceType(Integer[] id){ List tInvoiceTypes = invoiceTypeService.listByIds(Arrays.asList(id)); for (TInvoiceType invoiceType : tInvoiceTypes) { invoiceTypeService.removeById(invoiceType); } return AjaxResult.success(); } @ResponseBody @GetMapping("/getInvoiceTypeList") @ApiOperation(value = "获取开票类型", tags = {"小程序-充电发票"}) public AjaxResult> getInvoiceTypeList(){ List list = invoiceTypeService.list(new LambdaQueryWrapper() .eq(TInvoiceType::getDelFlag, 0).orderByAsc(TInvoiceType::getCreateTime)); return AjaxResult.success(list); } /** * 根据id获取发票类型 * @param id * @return */ @ResponseBody @PostMapping("/getInvoiceType/{id}") public R getInvoiceType(@PathVariable Integer id){ TInvoiceType invoiceType = invoiceTypeService.getById(id); return R.ok(invoiceType); } }