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.other.api.domain.TInvoiceType;
import com.ruoyi.other.query.InvoiceTypePageList;
import com.ruoyi.other.service.TInvoiceTypeService;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
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);
}
@ResponseBody
@PostMapping("/addInvoiceType")
@ApiOperation(value = "添加发票类型", tags = {"管理后台-发票类型管理"})
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 = {"管理后台-发票类型管理"})
public AjaxResult editInvoiceType(@RequestBody TInvoiceType invoiceType){
invoiceTypeService.updateById(invoiceType);
return AjaxResult.success();
}
@ResponseBody
@DeleteMapping("/delInvoiceType")
@ApiOperation(value = "删除发票类型", tags = {"管理后台-发票类型管理"})
public AjaxResult delInvoiceType(Integer[] id){
List tInvoiceTypes = invoiceTypeService.listByIds(Arrays.asList(id));
for (TInvoiceType invoiceType : tInvoiceTypes) {
invoiceTypeService.removeById(invoiceType);
}
return AjaxResult.success();
}
@ResponseBody
@DeleteMapping("/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);
}
}