package com.gkhy.exam.pay.controller; import com.gkhy.exam.pay.dto.rep.NonCoalPayPageRepDto; import com.gkhy.exam.pay.dto.req.NonCoalPayReqDto; import com.gkhy.exam.pay.dto.req.NonCoalPayStuImport; import com.gkhy.exam.pay.dto.req.NonCoalPayStudentReqDto; import com.gkhy.exam.pay.dto.req.NonCoalPayTypeEditReqDto; import com.gkhy.exam.pay.entity.NonCoalPay; import com.gkhy.exam.pay.entity.NonCoalPayStudent; import com.gkhy.exam.pay.service.NonCoalPayService; import com.gkhy.exam.pay.service.NonCoalPayStudentService; import com.ruoyi.common.annotation.Anonymous; import com.ruoyi.common.annotation.RepeatSubmit; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.utils.poi.ExcelUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.util.List; /** * 非煤缴费管理Controller * * @author hh * @date 2025-01-16 */ @RestController @Api(tags = "非煤缴费管理") @RequestMapping("/pay/nonCoalPay") public class NonCoalPayController extends BaseController { @Autowired private NonCoalPayService nonCoalPayService; @Autowired private NonCoalPayStudentService nonCoalPayStudentService; /** * 查询非煤缴费管理列表 */ @GetMapping("/list") @ApiOperation(value = "查询非煤缴费管理列表") public TableDataInfo list(NonCoalPay nonCoalPay) { startPage(); List list = nonCoalPayService.selectNonCoalPayList(nonCoalPay); return getDataTable(list); } /** * 导出非煤缴费管理列表 */ // @PostMapping("/export") // public void export(HttpServletResponse response, NonCoalPay nonCoalPay) { // List list = nonCoalPayService.selectNonCoalPayList(nonCoalPay); // ExcelUtil util = new ExcelUtil(NonCoalPay.class); // util.exportExcel(response, list, "非煤缴费管理数据"); // } /** * 获取非煤缴费管理详细信息 */ @GetMapping(value = "/getInfo/{id}") @ApiOperation(value = "获取非煤缴费管理详细信息", httpMethod = "GET") @ApiImplicitParam(name = "id", dataTypeClass = Long.class, value = "id", required = true) public AjaxResult getInfo(@PathVariable("id") Long id) { return success(nonCoalPayService.selectNonCoalPayById(id)); } @GetMapping(value = "/getNonCoalPayStudentByPayId/{id}") @ApiOperation(value = "获取非煤缴费管理学员相关详细信息", httpMethod = "GET") @ApiImplicitParam(name = "id", dataTypeClass = Long.class, value = "id", required = true) public AjaxResult getNonCoalPayStudentByPayId(@PathVariable("id") Long id) { return success(nonCoalPayService.getNonCoalPayStudentByPayId(id)); } /** * 新增非煤缴费管理 */ @PostMapping("/add") //@PreAuthorize("@ss.hasPermi('noncoal:nonpay:add')") @ApiOperation(value = "新增非煤缴费管理") public AjaxResult add(@Validated @RequestBody NonCoalPayReqDto nonCoalPay) { return toAjax(nonCoalPayService.insertNonCoalPay(nonCoalPay)); } /** * 修改非煤缴费管理 */ @PostMapping("/edit") @ApiOperation(value = "修改非煤缴费管理") public AjaxResult edit(@Validated @RequestBody NonCoalPayReqDto nonCoalPay) { return toAjax(nonCoalPayService.updateNonCoalPay(nonCoalPay)); } @PostMapping("/editPayTypeInfo") @ApiOperation(value = "修改非煤缴费类型管理信息") public AjaxResult updateNonCoalPayType(@Validated @RequestBody NonCoalPayTypeEditReqDto nonCoalPay) { return toAjax(nonCoalPayService.updateNonCoalPayType(nonCoalPay)); } @GetMapping("/editPayTypeStatus") @ApiOperation(value = "修改非煤缴费类型状态") @ApiImplicitParams({ @ApiImplicitParam(name = "payPersonType", dataTypeClass = Integer.class, value = "缴费类型1个人2团体", required = true), @ApiImplicitParam(name = "id", dataTypeClass = Long.class, value = "id", required = true), }) public AjaxResult updateNonCoalPayTypeStatus(@RequestParam("payPersonType") Integer payPersonType, @RequestParam("id") Long id) { return toAjax(nonCoalPayService.updateNonCoalPayTypeStatus(payPersonType, id)); } /** * 删除非煤缴费管理 */ @DeleteMapping("/{id}") @ApiOperation(value = "删除非煤缴费管理") @ApiImplicitParam(name = "id", dataTypeClass = Long.class, value = "id", required = true) public AjaxResult remove(@PathVariable Long id) { return toAjax(nonCoalPayService.deleteNonCoalPayById(id)); } /** * 新增【请填写功能名称】 */ @PostMapping("/addNonCoalStu") @ApiOperation(value = "新增非煤缴费学员") public AjaxResult addNonCoalStu(@Validated @RequestBody NonCoalPayStudent nonCoalPayStudent) { return toAjax(nonCoalPayStudentService.insertNonCoalPayStudent(nonCoalPayStudent)); } /** * 修改【请填写功能名称】 */ @PostMapping("/editNonCoalStu") @ApiOperation(value = "修改非煤缴费学员") public AjaxResult editNonCoalStu(@Validated @RequestBody NonCoalPayStudent nonCoalPayStudent) { return toAjax(nonCoalPayStudentService.updateNonCoalPayStudent(nonCoalPayStudent)); } /** * 删除【请填写功能名称】 */ @DeleteMapping("/delNonCalStu/{id}") @ApiOperation(value = "删除非煤缴费学员") @ApiImplicitParam(name = "id", dataTypeClass = Long.class, value = "id", required = true) public AjaxResult delNonCalStu(@PathVariable Long id) { return toAjax(nonCoalPayStudentService.deleteNonCoalPayStudentById(id)); } @PostMapping("/stuImportData") @ApiOperation(value = "导入学员") @ApiImplicitParam(name = "nonCoalPayId", dataTypeClass = Long.class, value = "nonCoalPayId", required = true) public AjaxResult importData(MultipartFile file, Long nonCoalPayId) throws Exception { ExcelUtil util = new ExcelUtil(NonCoalPayStuImport.class); List nonCoalPayStudents = util.importExcel(file.getInputStream()); String operName = getUsername(); String message = nonCoalPayStudentService.importData(nonCoalPayStudents, operName, nonCoalPayId); return success(message); } @PostMapping("/updateNonCoalStu") @ApiOperation(value = "更新财政缴款码") public AjaxResult updateNonCoalStu(@RequestBody NonCoalPayStudentReqDto nonCoalPayStudent) { return toAjax(nonCoalPayStudentService.updateNonCoalStu(nonCoalPayStudent)); } @GetMapping("/nonCoalSelectH5") @ApiOperation(value = "非煤H5查询缴费信息") @Anonymous @ApiImplicitParams({ @ApiImplicitParam(name = "phone", dataTypeClass = String.class, value = "电话", required = true), @ApiImplicitParam(name = "idCard", dataTypeClass = String.class, value = "idCard", required = true), }) @RepeatSubmit public AjaxResult nonCoalSelectH5(@RequestParam("phone") String phone, @RequestParam("idCard") String idCard) { return success(nonCoalPayService.selectNonCoalPayByStu(phone, idCard)); } @PostMapping("/sendOrder") @ApiOperation(value = "生成财政订单") @Anonymous @RepeatSubmit @ApiImplicitParams({ @ApiImplicitParam(name = "id", dataTypeClass = Long.class, value = "个人缴费学员数据id,团队缴费数据id", required = true), @ApiImplicitParam(name = "payType", dataTypeClass = String.class, value = "1个人2是团队", required = true), }) public AjaxResult sendOrder(@RequestParam("id") Long id, @RequestParam("payType") String payType) { return success(nonCoalPayStudentService.sendOrder(id, payType)); } @PostMapping("/queryOrder") @ApiOperation(value = "查询是否缴费成功") @Anonymous @ApiImplicitParams({ @ApiImplicitParam(name = "id", dataTypeClass = Long.class, value = "个人缴费学员数据id,团队缴费数据id", required = true), @ApiImplicitParam(name = "payType", dataTypeClass = String.class, value = "1个人2是团队", required = true), }) public AjaxResult queryOrder(@RequestParam("id") Long id, @RequestParam("payType") String payType) { return success(nonCoalPayStudentService.queryOrder(id, payType)); } }