|  |  | 
 |  |  | package com.ruoyi.web.controller.project; | 
 |  |  |  | 
 |  |  | import java.util.ArrayList; | 
 |  |  | import java.util.Arrays; | 
 |  |  | import java.util.List; | 
 |  |  |  | 
 |  |  | import com.ruoyi.common.utils.bean.DtoConversionUtils; | 
 |  |  | import com.ruoyi.project.domain.Reimbursementpayee; | 
 |  |  | import com.ruoyi.project.domain.ServiceReimbursementpayeeShared; | 
 |  |  | import com.ruoyi.project.service.IServiceReimbursementpayeeSharedService; | 
 |  |  | import io.swagger.annotations.Api; | 
 |  |  | import io.swagger.annotations.ApiOperation; | 
 |  |  | import org.apache.commons.lang3.ObjectUtils; | 
 |  |  | import org.springframework.security.access.prepost.PreAuthorize; | 
 |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
 |  |  | import org.springframework.util.CollectionUtils; | 
 |  |  | import org.springframework.web.bind.annotation.GetMapping; | 
 |  |  | import org.springframework.web.bind.annotation.PostMapping; | 
 |  |  | import org.springframework.web.bind.annotation.PutMapping; | 
 |  |  | import org.springframework.web.bind.annotation.DeleteMapping; | 
 |  |  | import org.springframework.web.bind.annotation.PathVariable; | 
 |  |  | import org.springframework.web.bind.annotation.RequestBody; | 
 |  |  | import org.springframework.web.bind.annotation.RequestMapping; | 
 |  |  | import org.springframework.web.bind.annotation.RestController; | 
 |  |  | import com.ruoyi.common.annotation.Log; | 
 |  |  | 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.enums.BusinessType; | 
 |  |  | import com.ruoyi.common.utils.poi.ExcelUtil; | 
 |  |  | import com.ruoyi.project.domain.ServiceReimbursementpayee; | 
 |  |  | import com.ruoyi.project.service.IServiceReimbursementpayeeService; | 
 |  |  | import com.ruoyi.common.utils.poi.ExcelUtil; | 
 |  |  | import com.ruoyi.common.core.page.TableDataInfo; | 
 |  |  | 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.Arrays; | 
 |  |  | import java.util.List; | 
 |  |  |  | 
 |  |  | /** | 
 |  |  |  * 差旅报销付款信息Controller | 
 |  |  |  * | 
 |  |  |  * @author ruoyi | 
 |  |  |  * @date 2023-04-20 | 
 |  |  |  * @date 2023-05-10 | 
 |  |  |  */ | 
 |  |  | @Api("差旅报销付款信息") | 
 |  |  | @RestController | 
 |  |  | 
 |  |  |     @Autowired | 
 |  |  |     private IServiceReimbursementpayeeService serviceReimbursementpayeeService; | 
 |  |  |  | 
 |  |  |     @Autowired | 
 |  |  |     private IServiceReimbursementpayeeSharedService serviceReimbursementpayeeSharedService; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 查询差旅报销付款信息列表 | 
 |  |  |      */ | 
 |  |  |     @ApiOperation("查询差旅报销付款信息列表") | 
 |  |  |     @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:list')") | 
 |  |  |     @GetMapping("/list") | 
 |  |  |     public TableDataInfo list(ServiceReimbursementpayee serviceReimbursementpayee) { | 
 |  |  |     //// @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:list')") | 
 |  |  |     @PostMapping("/list") | 
 |  |  |     public TableDataInfo list(@RequestBody ServiceReimbursementpayee serviceReimbursementpayee) { | 
 |  |  |         startPage(); | 
 |  |  |         List<ServiceReimbursementpayee> list = serviceReimbursementpayeeService.queryList(serviceReimbursementpayee); | 
 |  |  |         List<Reimbursementpayee> reimbursementpayees = new ArrayList<>(); | 
 |  |  |         for (int i = 0; i < list.size(); i++) { | 
 |  |  |             Reimbursementpayee reimbursementpayee = new Reimbursementpayee(); | 
 |  |  |             reimbursementpayee.setCol_personname(list.get(i).getPersonname()); | 
 |  |  |             reimbursementpayee.setCol_personType(list.get(i).getPersontype()); | 
 |  |  |             reimbursementpayee.setCol_accounts(list.get(i).getBankcardno()); | 
 |  |  |             reimbursementpayee.setCol_date(list.get(i).getPaiddate()); | 
 |  |  |             reimbursementpayee.setCol_illustrate(list.get(i).getRemark()); | 
 |  |  |             reimbursementpayee.setId(list.get(i).getId()); | 
 |  |  |             reimbursementpayee.setRbid(list.get(i).getRbid()); | 
 |  |  |             reimbursementpayee.setCol_bank(list.get(i).getBankname()); | 
 |  |  |             reimbursementpayees.add(reimbursementpayee); | 
 |  |  |         } | 
 |  |  |         return getDataTable(reimbursementpayees); | 
 |  |  |         return getDataTable(list); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 导出差旅报销付款信息列表 | 
 |  |  |      */ | 
 |  |  |     @ApiOperation("导出差旅报销付款信息列表") | 
 |  |  |     @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:export')") | 
 |  |  |     //// @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:export')") | 
 |  |  |     @Log(title = "差旅报销付款信息", businessType = BusinessType.EXPORT) | 
 |  |  |     @GetMapping("/export") | 
 |  |  |     public AjaxResult export(ServiceReimbursementpayee serviceReimbursementpayee) { | 
 |  |  | 
 |  |  |      * 获取差旅报销付款信息详细信息 | 
 |  |  |      */ | 
 |  |  |     @ApiOperation("获取差旅报销付款信息详细信息") | 
 |  |  |     @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:query')") | 
 |  |  |     //// @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:query')") | 
 |  |  |     @GetMapping(value = "/{id}") | 
 |  |  |     public AjaxResult getInfo(@PathVariable("id") Long id) { | 
 |  |  |     public AjaxResult getInfo(@PathVariable("id") String id) { | 
 |  |  |         return AjaxResult.success(serviceReimbursementpayeeService.getById(id)); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 新增或修改差旅报销付款信息 | 
 |  |  |      */ | 
 |  |  |     @ApiOperation("新增或修改差旅报销付款信息") | 
 |  |  |     @PostMapping("/addOrUpdateRBpayee") | 
 |  |  |     public AjaxResult addOrUpdateRBpayee(@RequestBody List<Reimbursementpayee> reimbursementPayees) { | 
 |  |  |         List<ServiceReimbursementpayee> payees = new ArrayList<>(); | 
 |  |  |         List<ServiceReimbursementpayeeShared> payeeSareds = new ArrayList<>(); | 
 |  |  |         for (Reimbursementpayee reimbursementPayee : reimbursementPayees) { | 
 |  |  |             //封装支付数据 | 
 |  |  |             ServiceReimbursementpayee payee = new ServiceReimbursementpayee(); | 
 |  |  |             payee.setRbid(reimbursementPayee.getRbid()); | 
 |  |  |             payee.setPersonname(reimbursementPayee.getCol_personname()); | 
 |  |  |             payee.setPersontype(reimbursementPayee.getCol_personType()); | 
 |  |  |             payee.setBankname(reimbursementPayee.getCol_bank()); | 
 |  |  |             payee.setBankcardno(reimbursementPayee.getCol_accounts()); | 
 |  |  |             payee.setPaiddate(reimbursementPayee.getCol_date()); | 
 |  |  |             payee.setRemark(reimbursementPayee.getCol_illustrate()); | 
 |  |  |             payee.setId(reimbursementPayee.getId()); | 
 |  |  |             //封装支付分享数据 | 
 |  |  |             ServiceReimbursementpayeeShared payeeShared = new ServiceReimbursementpayeeShared(); | 
 |  |  |             payeeShared.setRbid(reimbursementPayee.getRbid()); | 
 |  |  |             payeeShared.setPersonname(reimbursementPayee.getCol_personname()); | 
 |  |  |             payeeShared.setPersontype(reimbursementPayee.getCol_personType()); | 
 |  |  |             payeeShared.setBankname(reimbursementPayee.getCol_bank()); | 
 |  |  |             payeeShared.setBankcardno(reimbursementPayee.getCol_accounts()); | 
 |  |  |             payeeShared.setPaiddate(reimbursementPayee.getCol_date()); | 
 |  |  |             payeeShared.setRemark(reimbursementPayee.getCol_illustrate()); | 
 |  |  |             payeeShared.setId(reimbursementPayee.getId()); | 
 |  |  |  | 
 |  |  |             payees.add(payee); | 
 |  |  |             payeeSareds.add(payeeShared); | 
 |  |  |         } | 
 |  |  |         boolean b = false; | 
 |  |  |         b = serviceReimbursementpayeeService.saveOrUpdateBatch(payees); | 
 |  |  |         b = serviceReimbursementpayeeSharedService.saveOrUpdateBatch(payeeSareds); | 
 |  |  |  | 
 |  |  |         return toAjax(b); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 新增差旅报销付款信息 | 
 |  |  |      */ | 
 |  |  |     @ApiOperation("新增差旅报销付款信息") | 
 |  |  |     @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:add')") | 
 |  |  |     //// @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:add')") | 
 |  |  |     @Log(title = "差旅报销付款信息", businessType = BusinessType.INSERT) | 
 |  |  |     @PostMapping | 
 |  |  |     @PostMapping("/add") | 
 |  |  |     @RepeatSubmit | 
 |  |  |     public AjaxResult add(@RequestBody ServiceReimbursementpayee serviceReimbursementpayee) { | 
 |  |  |         return toAjax(serviceReimbursementpayeeService.save(serviceReimbursementpayee)); | 
 |  |  |         boolean save = serviceReimbursementpayeeService.save(serviceReimbursementpayee); | 
 |  |  |         return AjaxResult.success(serviceReimbursementpayee); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 修改差旅报销付款信息 | 
 |  |  |      */ | 
 |  |  |     @ApiOperation("修改差旅报销付款信息") | 
 |  |  |     @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:edit')") | 
 |  |  |     //// @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:edit')") | 
 |  |  |     @Log(title = "差旅报销付款信息", businessType = BusinessType.UPDATE) | 
 |  |  |     @PutMapping | 
 |  |  |     @PostMapping("/reimbursementpayeeEdit") | 
 |  |  |     @RepeatSubmit | 
 |  |  |     public AjaxResult edit(@RequestBody ServiceReimbursementpayee serviceReimbursementpayee) { | 
 |  |  |         return toAjax(serviceReimbursementpayeeService.updateById(serviceReimbursementpayee)); | 
 |  |  | 
 |  |  |      * 删除差旅报销付款信息 | 
 |  |  |      */ | 
 |  |  |     @ApiOperation("删除差旅报销付款信息") | 
 |  |  |     @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:remove')") | 
 |  |  |     //// @PreAuthorize("@ss.hasPermi('project:reimbursementpayee:remove')") | 
 |  |  |     @Log(title = "差旅报销付款信息", businessType = BusinessType.DELETE) | 
 |  |  |     @DeleteMapping("/{ids}") | 
 |  |  |     public AjaxResult remove(@PathVariable Long[] ids) { | 
 |  |  |     @GetMapping("/remove/{ids}") | 
 |  |  |     public AjaxResult remove(@PathVariable String[] ids) { | 
 |  |  |         return toAjax(serviceReimbursementpayeeService.removeByIds(Arrays.asList(ids))); | 
 |  |  |     } | 
 |  |  | } |