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">  <button class="layui-btn icon-btn" lay-filter="search" lay-submit> <i class="layui-icon"></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