From e89a0bdd6041774d77408744993ba3b98a1e1c97 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期二, 22 八月 2023 14:32:02 +0800
Subject: [PATCH] #报销完善

---
 src/main/webapp/views/rule/rule.html                                          |   23 ++++++++++-
 src/main/webapp/views/reimburseOnline/reimburseOnline.html                    |   26 ++++++++++++-
 src/main/java/com/zy/crm/manager/entity/ReimburseOnlineDetl.java              |    4 +-
 src/main/java/com/zy/crm/manager/entity/ReimburseOnline.java                  |    4 +-
 src/main/webapp/static/js/reimburseOnline/reimburseOnline.js                  |   23 ++++++-----
 src/main/java/com/zy/crm/manager/entity/param/ReimburseOnlineDomainParam.java |    4 ++
 src/main/java/com/zy/crm/manager/controller/ReimburseOnlineController.java    |   27 +++++++++----
 7 files changed, 84 insertions(+), 27 deletions(-)

diff --git a/src/main/java/com/zy/crm/manager/controller/ReimburseOnlineController.java b/src/main/java/com/zy/crm/manager/controller/ReimburseOnlineController.java
index 985d3c3..47efc32 100644
--- a/src/main/java/com/zy/crm/manager/controller/ReimburseOnlineController.java
+++ b/src/main/java/com/zy/crm/manager/controller/ReimburseOnlineController.java
@@ -11,12 +11,10 @@
 import com.core.common.R;
 import com.core.domain.KeyValueVo;
 import com.zy.crm.common.web.BaseController;
-import com.zy.crm.manager.entity.Plan;
-import com.zy.crm.manager.entity.Reimburse;
-import com.zy.crm.manager.entity.ReimburseOnline;
-import com.zy.crm.manager.entity.ReimburseOnlineDetl;
+import com.zy.crm.manager.entity.*;
 import com.zy.crm.manager.entity.param.ReimburseOnlineDomainParam;
 import com.zy.crm.manager.service.*;
+import com.zy.crm.manager.utils.RuleUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.io.ClassPathResource;
 import org.springframework.transaction.annotation.Transactional;
@@ -42,6 +40,8 @@
     private PlanService planService;
     @Autowired
     private ReimburseOnlineDetlService reimburseOnlineDetlService;
+    @Autowired
+    private RuleService ruleService;
 
     @RequestMapping(value = "/reimburseOnline/{id}/auth")
     @ManagerAuth
@@ -114,11 +114,19 @@
         Date now = new Date();
         String[] split = param.getOrderNo().split("---");
         long planId = Long.parseLong(split[1]);
-        ReimburseOnline reimburseOnline = new ReimburseOnline(planId,split[1],now,getUser());
+        Rule rule = ruleService.selectById(1);
+        ReimburseOnline reimburseOnline = new ReimburseOnline(planId,RuleUtils.rule(rule),now,getUser());
+        reimburseOnline.setMemberId(getUserId());
+        reimburseOnline.setCheckData(param.getCheckData());
+        reimburseOnline.setTemplateName(param.getTemplateName());
+        if (!reimburseOnlineService.insert(reimburseOnline)){
+            return R.error("娣诲姞鎶ラ攢涓绘。澶辫触");
+        }
+        for (ReimburseOnlineDetl reimburseOnlineDetl:param.getReimburseOnlineDetls()){
+            reimburseOnlineDetl.setOrderId(reimburseOnline.getId());
+            reimburseOnlineDetlService.insert(reimburseOnlineDetl);
+        }
 
-
-
-        System.out.println(param);
         return R.ok();
     }
 
@@ -315,6 +323,9 @@
             return R.error();
         }
         reimburseOnlineService.deleteBatchIds(Arrays.asList(ids));
+        for (Long id : ids){
+            reimburseOnlineDetlService.delete(new EntityWrapper<ReimburseOnlineDetl>().eq("order_id",id));
+        }
         return R.ok();
     }
 
diff --git a/src/main/java/com/zy/crm/manager/entity/ReimburseOnline.java b/src/main/java/com/zy/crm/manager/entity/ReimburseOnline.java
index d739794..2d7ab4b 100644
--- a/src/main/java/com/zy/crm/manager/entity/ReimburseOnline.java
+++ b/src/main/java/com/zy/crm/manager/entity/ReimburseOnline.java
@@ -62,7 +62,7 @@
     @TableField("order_num")
     private String orderNum;
 
-    @ApiModelProperty(value= "妯℃澘鍚�")
+    @ApiModelProperty(value= "鎶ラ攢绫诲瀷")
     @TableField("template_name")
     private String templateName;
 
@@ -83,7 +83,7 @@
     @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
     private Date updateTime;
 
-    @ApiModelProperty(value= "涓婁紶鎶ヤ环excel鏁版嵁")
+    @ApiModelProperty(value= "鏄惁鍐茶处")
     @TableField("check_data")
     private String checkData;
 
diff --git a/src/main/java/com/zy/crm/manager/entity/ReimburseOnlineDetl.java b/src/main/java/com/zy/crm/manager/entity/ReimburseOnlineDetl.java
index cbc7803..e73a8f9 100644
--- a/src/main/java/com/zy/crm/manager/entity/ReimburseOnlineDetl.java
+++ b/src/main/java/com/zy/crm/manager/entity/ReimburseOnlineDetl.java
@@ -61,7 +61,7 @@
      */
     @ApiModelProperty(value= "椤圭洰ID锛屽叧鑱攎an_order琛ㄤ富閿�")
     @TableField("order_id")
-    private Integer orderId;
+    private Long orderId;
 
     /**
      * 绋庣巼
@@ -201,7 +201,7 @@
 
     public ReimburseOnlineDetl() {}
 
-    public ReimburseOnlineDetl(String occupation,Integer expenseType,Integer userId,Integer deptId,Integer hostId,Integer orderId,Long taxRate,Long untaxedAmountInLocalCurrency,Long untaxedAmount,Long taxAmount,Long invoiceValue,Long invoiceAmountInLocalCurrency,Long reimbursementRatio,Long reimbursementAmount,Long reimbursementAmountInLocalCurrency,Long cashierConfirmationAmount,Integer cashierCurrency,Date departureTime,Date updateTime,Integer updateUserId,String updateUserName,Date creationTime,Integer creationUserId,String creationUserName,Integer reimburseId) {
+    public ReimburseOnlineDetl(String occupation,Integer expenseType,Integer userId,Integer deptId,Integer hostId,Long orderId,Long taxRate,Long untaxedAmountInLocalCurrency,Long untaxedAmount,Long taxAmount,Long invoiceValue,Long invoiceAmountInLocalCurrency,Long reimbursementRatio,Long reimbursementAmount,Long reimbursementAmountInLocalCurrency,Long cashierConfirmationAmount,Integer cashierCurrency,Date departureTime,Date updateTime,Integer updateUserId,String updateUserName,Date creationTime,Integer creationUserId,String creationUserName,Integer reimburseId) {
         this.occupation = occupation;
         this.expenseType = expenseType;
         this.userId = userId;
diff --git a/src/main/java/com/zy/crm/manager/entity/param/ReimburseOnlineDomainParam.java b/src/main/java/com/zy/crm/manager/entity/param/ReimburseOnlineDomainParam.java
index 3f4f1bc..a436004 100644
--- a/src/main/java/com/zy/crm/manager/entity/param/ReimburseOnlineDomainParam.java
+++ b/src/main/java/com/zy/crm/manager/entity/param/ReimburseOnlineDomainParam.java
@@ -14,5 +14,9 @@
 
     private String orderNo;
 
+    private String templateName;
+
+    private String checkData;
+
     private List<ReimburseOnlineDetl> reimburseOnlineDetls;
 }
diff --git a/src/main/webapp/static/js/reimburseOnline/reimburseOnline.js b/src/main/webapp/static/js/reimburseOnline/reimburseOnline.js
index de19404..41ebe1e 100644
--- a/src/main/webapp/static/js/reimburseOnline/reimburseOnline.js
+++ b/src/main/webapp/static/js/reimburseOnline/reimburseOnline.js
@@ -82,17 +82,18 @@
         toolbar: '#toolbar',
         cellMinWidth: 150,
         cols: [[
-            {type: 'checkbox', fixed: 'left'}
-            ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80,hide: true}
+            // {type: 'checkbox', fixed: 'left'},
+            {field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80,hide: true}
             ,{field: 'templateName', align: 'center',title: '鎶ラ攢绫诲瀷',hide: false}
-            ,{field: 'orderNum', align: 'center',title: '鎶ラ攢鍗曞彿'}
-            ,{field: 'orderId$', align: 'center',title: '椤圭洰鍙�'}
-            ,{field: 'createTime$', align: 'center',title: '鍒涘缓鏃堕棿'}
-            ,{field: 'updateTime$', align: 'center',title: '鏇存柊鏃堕棿'}
-            ,{field: 'status$', align: 'center',title: '鐘舵��'}
-            ,{field: 'memberId$', align: 'center',title: '涓氬姟鍛�'}
-            ,{field: 'user$', align: 'center',title: '鍒涘缓浜哄憳'}
-            ,{field: 'updateUserId$', align: 'center',title: '鏇存柊浜哄憳'}
+            ,{field: 'checkData', align: 'center',title: '鏄惁鍐茶处',hide: false}
+            ,{field: 'orderNum', align: 'center',title: '鎶ラ攢鍗曞彿',width: 320, hide:false}
+            ,{field: 'itemId', align: 'center',title: '椤圭洰鍙�',hide: false}
+            ,{field: 'createTime$', align: 'center',title: '鍒涘缓鏃堕棿',hide: false}
+            ,{field: 'updateTime$', align: 'center',title: '鏇存柊鏃堕棿',hide: false}
+            ,{field: 'status$', align: 'center',title: '鐘舵��',hide: false}
+            ,{field: 'memberId$', align: 'center',title: '涓氬姟鍛�',hide: false}
+            ,{field: 'user$', align: 'center',title: '鍒涘缓浜哄憳',hide: false}
+            ,{field: 'updateUserId$', align: 'center',title: '鏇存柊浜哄憳',hide: false}
             // // ,{field: 'checkDataStatus$', align: 'center',title: '鎶ヤ环鏁版嵁'}
             ,{align: 'center', title: '鎶ラ攢鏄庣粏', toolbar: '#tbLook', minWidth: 160, width: 160}
             ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:350}
@@ -485,6 +486,8 @@
                             reimburseId: Number(data.field.id),
                             docType: Number(data.field.docType),
                             orderNo: data.field.planId,
+                            templateName: data.field.templateName,
+                            checkData: data.field.checkData,
                             reimburseOnlineDetls: nList
                         }),
                         contentType:'application/json;charset=UTF-8',
diff --git a/src/main/webapp/views/reimburseOnline/reimburseOnline.html b/src/main/webapp/views/reimburseOnline/reimburseOnline.html
index 313de83..43dbf0a 100644
--- a/src/main/webapp/views/reimburseOnline/reimburseOnline.html
+++ b/src/main/webapp/views/reimburseOnline/reimburseOnline.html
@@ -71,7 +71,7 @@
 <script type="text/html" id="toolbar">
   <div class="layui-btn-container">
     <button class="layui-btn layui-btn-sm" lay-event="addBlank">鐢宠鎶ラ攢</button>
-    <button class="layui-btn layui-btn-sm layui-btn-danger" lay-event="deleteData">鍒犻櫎</button>
+<!--    <button class="layui-btn layui-btn-sm layui-btn-danger" lay-event="deleteData">鍒犻櫎</button>-->
   </div>
 </script>
 
@@ -83,7 +83,7 @@
 
 <script type="text/html" id="operate">
   <a class="layui-btn layui-btn-xs btn-edit" lay-event="approval">鎻愪氦</a>
-  <a class="layui-btn layui-btn-xs btn-edit" lay-event="check">妯℃澘</a>
+<!--  <a class="layui-btn layui-btn-xs btn-edit" lay-event="check">妯℃澘</a>-->
   <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">缂栬緫</a>
 <!--  <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="upload">涓婁紶璇环</a>-->
 <!--  <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="viewCheck">鏌ョ湅璇环</a>-->
@@ -143,6 +143,28 @@
         </div>
       </div>
     </div>
+    <div class="layui-form-item">
+      <label class="layui-form-label layui-form-required">鎶ラ攢绫诲瀷: </label>
+      <div class="layui-input-inline">
+        <select class="layui-input" name="templateName" lay-vertype="tips" lay-verify="required">
+          <option style="display: none"></option>
+          <option value="椤圭洰鏈畬鎴�">椤圭洰鏈畬鎴�</option>
+          <option value="椤圭洰宸插畬鎴愬湪璐ㄤ繚鏈熷唴">椤圭洰宸插畬鎴愬湪璐ㄤ繚鏈熷唴</option>
+          <option value="闈為」鐩瀷鎶ラ攢">闈為」鐩瀷鎶ラ攢</option>
+          <option value="鍏跺畠">鍏跺畠</option>
+        </select>
+      </div>
+    </div>
+    <div class="layui-form-item">
+      <label class="layui-form-label layui-form-required">鏄惁鍐茶处: </label>
+      <div class="layui-input-inline">
+        <select class="layui-input" name="checkData" lay-vertype="tips" lay-verify="required">
+          <option style="display: none"></option>
+          <option value="鍚�">鍚�</option>
+          <option value="鏄�">鏄�</option>
+        </select>
+      </div>
+    </div>
     <div class="layui-form-item" style="position: relative;">
       <label class="layui-form-label">鎶ラ攢鏄庣粏锛�</label>
       <div class="layui-input-block">
diff --git a/src/main/webapp/views/rule/rule.html b/src/main/webapp/views/rule/rule.html
index 1f7269f..ac52e22 100644
--- a/src/main/webapp/views/rule/rule.html
+++ b/src/main/webapp/views/rule/rule.html
@@ -23,6 +23,23 @@
                             <input class="layui-input" type="text" name="id" placeholder="缂栧彿" autocomplete="off">
                         </div>
                     </div>
+                    <div class="layui-inline">
+                        <label class="layui-form-label">瑙勫垯鏂瑰紡:</label>
+                        <div class="layui-input-inline">
+                            <select class="layui-input" name="rule_type" autocomplete="off">
+                                <option style="display: none"></option>
+                                <option value="1">鐢熸垚褰撳墠鏃ユ湡鏃堕棿鎴�</option>
+                                <option value="2">鐢熸垚闀垮害涓�10鐨勯殢鏈哄瓧绗︿覆</option>
+                                <option value="3">鐢熸垚鏃ユ湡鏃堕棿瀛楃涓�</option>
+                            </select>
+                        </div>
+                    </div>
+                    <div class="layui-inline">
+                        <label class="layui-form-label">澶囨敞:</label>
+                        <div class="layui-input-inline">
+                            <input class="layui-input" type="text" name="rule_memo" placeholder="澶囨敞" autocomplete="off">
+                        </div>
+                    </div>
                     <div class="layui-inline">&emsp;
                         <button class="layui-btn icon-btn" lay-filter="search" lay-submit>
                             <i class="layui-icon">&#xe615;</i>鎼滅储
@@ -41,14 +58,14 @@
 <script type="text/html" id="toolbar">
     <div class="layui-btn-container">
         <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">鏂板</button>
-        <button class="layui-btn layui-btn-sm layui-btn-danger" id="btn-delete" lay-event="deleteData">鍒犻櫎</button>
-        <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="float: right">瀵煎嚭</button>
+<!--        <button class="layui-btn layui-btn-sm layui-btn-danger" id="btn-delete" lay-event="deleteData">鍒犻櫎</button>-->
+<!--        <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="float: right">瀵煎嚭</button>-->
     </div>
 </script>
 
 <script type="text/html" id="operate">
     <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">淇敼</a>
-    <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">鍒犻櫎</a>
+<!--    <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">鍒犻櫎</a>-->
 </script>
 
 <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>

--
Gitblit v1.9.1