From a88e19be56fab4f06aae0248575b55fed41eaa1e Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期四, 04 一月 2024 09:47:20 +0800
Subject: [PATCH] yxh

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailController.java |   60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 54 insertions(+), 6 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailController.java
index ac0ea3e..3f052e6 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementdetailController.java
@@ -4,11 +4,17 @@
 import java.util.Arrays;
 import java.util.List;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.bean.DtoConversionUtils;
+import com.ruoyi.project.domain.ServiceReimbursementdetailVO;
 import com.ruoyi.project.service.IServiceReimbursementdetailSharedService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 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;
@@ -69,7 +75,7 @@
     }
 
 
-    @DeleteMapping("/deleteByRBId/{rbid}")
+    @GetMapping("/deleteByRBId/{rbid}")
     public AjaxResult removeAllDetail(@PathVariable("rbid") Long rbid) {
         List<Long> ids = serviceReimbursementdetailService.getAllIds(rbid);
         Long[] arr = (Long[]) ids.toArray(new Long[ids.size()]);
@@ -95,7 +101,15 @@
     @Log(title = "鎶ラ攢鐢宠鏄庣粏", businessType = BusinessType.INSERT)
     @PostMapping
     @RepeatSubmit
-    public AjaxResult add(@RequestBody ServiceReimbursementdetail serviceReimbursementdetail) {
+    public AjaxResult add(@RequestBody ServiceReimbursementdetailVO serviceReimbursementdetailVO) {
+        ServiceReimbursementdetail serviceReimbursementdetail = DtoConversionUtils.sourceToTarget(serviceReimbursementdetailVO, ServiceReimbursementdetail.class);
+        //灏嗗墠绔紶鏉ョ殑闄勪欢闆嗗悎杞垚瀛楃涓�
+        if (!CollectionUtils.isEmpty(serviceReimbursementdetailVO.getAnnexfilesList())) {
+            serviceReimbursementdetail.setAnnexfiles(JSON.toJSONString(serviceReimbursementdetailVO.getAnnexfilesList()));
+        }
+        if (!CollectionUtils.isEmpty(serviceReimbursementdetailVO.getInvoicefilesList())) {
+            serviceReimbursementdetail.setInvoicefiles(JSON.toJSONString(serviceReimbursementdetailVO.getInvoicefilesList()));
+        }
         return toAjax(serviceReimbursementdetailService.save(serviceReimbursementdetail));
     }
 
@@ -120,9 +134,43 @@
     @ApiOperation("淇敼鎶ラ攢鐢宠鏄庣粏")
     //@PreAuthorize("@ss.hasPermi('project:reimbursementdetail:edit')")
     @Log(title = "鎶ラ攢鐢宠鏄庣粏", businessType = BusinessType.UPDATE)
-    @PutMapping
+    @PostMapping("/reimbursementdetailEdit")
     //@RepeatSubmit
-    public AjaxResult edit(@RequestBody ServiceReimbursementdetail serviceReimbursementdetail) {
+    public AjaxResult edit(@RequestBody ServiceReimbursementdetailVO serviceReimbursementdetailVO) {
+        if (serviceReimbursementdetailVO.getTrafficexpense() == null) {
+            serviceReimbursementdetailVO.setTrafficexpense(new BigDecimal(0));
+        }
+        if (serviceReimbursementdetailVO.getCityfee() == null) {
+            serviceReimbursementdetailVO.setCityfee(new BigDecimal(0));
+        }
+        if (serviceReimbursementdetailVO.getHotelexpense() == null) {
+            serviceReimbursementdetailVO.setHotelexpense(new BigDecimal(0));
+        }
+        if (serviceReimbursementdetailVO.getFoodexpenses() == null) {
+            serviceReimbursementdetailVO.setFoodexpenses(new BigDecimal(0));
+        }
+        if (serviceReimbursementdetailVO.getFoodallowance() == null) {
+            serviceReimbursementdetailVO.setFoodallowance(new BigDecimal(0));
+        }
+        if (serviceReimbursementdetailVO.getOtherexpense() == null) {
+            serviceReimbursementdetailVO.setOtherexpense(new BigDecimal(0));
+        }
+        if (serviceReimbursementdetailVO.getOtherfeeamount() == null) {
+            serviceReimbursementdetailVO.setOtherfeeamount(new BigDecimal(0));
+        }
+        ServiceReimbursementdetail serviceReimbursementdetail = DtoConversionUtils.sourceToTarget(serviceReimbursementdetailVO, ServiceReimbursementdetail.class);
+        if (!CollectionUtils.isEmpty(serviceReimbursementdetailVO.getAnnexfilesList())) {
+            //瀵瑰墠绔紶杩囨潵鐨勬暟缁勶紝杩涜JSON搴忓垪鍖栵紝骞惰祴鍊肩粰Annexfiles
+            serviceReimbursementdetail.setAnnexfiles(JSON.toJSONString(serviceReimbursementdetailVO.getAnnexfilesList()));
+        } else {
+            serviceReimbursementdetail.setAnnexfiles(null);
+        }
+        if (!CollectionUtils.isEmpty(serviceReimbursementdetailVO.getInvoicefilesList())) {
+            //瀵瑰墠绔紶杩囨潵鐨勬暟缁勶紝杩涜JSON搴忓垪鍖栵紝骞惰祴鍊肩粰Invoicefiles
+            serviceReimbursementdetail.setInvoicefiles(JSON.toJSONString(serviceReimbursementdetailVO.getInvoicefilesList()));
+        } else {
+            serviceReimbursementdetail.setInvoicefiles(null);
+        }
         return toAjax(serviceReimbursementdetailService.updateById(serviceReimbursementdetail));
     }
 
@@ -132,7 +180,7 @@
     @ApiOperation("鍒犻櫎鎶ラ攢鐢宠鏄庣粏")
     //@PreAuthorize("@ss.hasPermi('project:reimbursementdetail:remove')")
     @Log(title = "鎶ラ攢鐢宠鏄庣粏", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
+    @GetMapping("/remove/{ids}")
     public AjaxResult remove(@PathVariable Long[] ids) {
         return toAjax(serviceReimbursementdetailService.removeByIds(Arrays.asList(ids)));
     }
@@ -143,7 +191,7 @@
      */
     @ApiOperation("鍒犻櫎鎶ラ攢鐢宠鏄庣粏骞朵慨鏀归噾棰�")
     @Log(title = "鎶ラ攢鐢宠鏄庣粏", businessType = BusinessType.DELETE)
-    @DeleteMapping("/deleteDetail/{id}")
+    @GetMapping("/deleteDetail/{id}")
     public AjaxResult deleteDetail(@PathVariable Long id) {
         return AjaxResult.success(serviceReimbursementdetailService.deleteDetail(id));
     }

--
Gitblit v1.9.3