Parcourir la source

资金划拨编辑年月及不限制重复

ellisran il y a 1 mois
Parent
commit
2da4e7b9d5

+ 9 - 0
app/controller/financial_controller.js

@@ -244,6 +244,15 @@ module.exports = app => {
                     case 'save-transfer':
                         responseData.data = await ctx.service.financialTransfer.saveTransfer(data.postData);
                         break;
+                    case 'edit-transfer-time':
+                        if (!ctx.session.sessionUser.is_admin) throw '没有权限修改划拨年月';
+                        if (!data.postData.id || !data.postData.t_time) throw '数据错误';
+                        const node = await ctx.service.financialTransfer.getDataById(data.postData.id);
+                        if (!node) {
+                            throw '该资金划拨不存在';
+                        }
+                        await ctx.service.financialTransfer.defaultUpdate(data.postData);
+                        break;
                     default:
                         throw '未知操作';
                 }

+ 35 - 0
app/public/js/financial_transfer.js

@@ -9,6 +9,41 @@ $(function () {
         $('#add-transfer-form').submit();
     });
 
+    let editPeriod = null;
+    $('.edit-time').on('click', function () {
+        const t_time = $(this).data('time');
+        const ftid = parseInt($(this).data('ftid'));
+        console.log(t_time, ftid);
+        $('#edit-transfer-date').val('');
+        $('#edit-ftid').val(ftid);
+        $('#edit-transfer-date').val(t_time);
+        editPeriod = !editPeriod ? $('#edit-transfer-date').datepicker().data('datepicker') : editPeriod;
+        editPeriod.clear();
+        editPeriod.selectDate(new Date(t_time));
+    });
+
+    $('#edit-ok').click(function () {
+        const id = parseInt($('#edit-ftid').val());
+        if (!id) {
+            toastr.error('获取资金划拨信息失败');
+            return;
+        }
+        const trInfo = _.find(transferList, { id });
+        if (!trInfo) {
+            toastr.error('获取资金划拨信息失败');
+            return;
+        }
+        const t_time = $('#edit-transfer-date').val();
+        if (t_time === '') {
+            toastr.error('请选择划拨年月');
+            return false;
+        }
+        postData(window.location.pathname + '/update', {postType: 'edit-transfer-time', postData: { id, t_time }}, function (result) {
+            window.location.reload();
+        })
+    });
+
+
     $('body').on('click', '#transfer-list .del-transfer-btn', function () {
         const trid = $(this).data('id');
         deleteAfterHint(function () {

+ 4 - 4
app/service/financial_transfer.js

@@ -38,10 +38,10 @@ module.exports = app => {
         }
 
         async addTransfer(spid, date, remark) {
-            const node = await this.getDataByCondition({ spid, t_time: date });
-            if (node) {
-                throw '资金划拨年月已存在,请勿重复';
-            }
+            // const node = await this.getDataByCondition({ spid, t_time: date });
+            // if (node) {
+            //     throw '资金划拨年月已存在,请勿重复';
+            // }
             let pre_hb_tp = 0;
             const ftList = await this.getAllDataByCondition({ where: { spid } });
             if (ftList.length > 0) {

+ 5 - 1
app/view/financial/transfer.ejs

@@ -35,7 +35,11 @@
                     <% for (const [i, t] of transferList.entries()) { %>
                     <tr class="text-center" data-id="<%- t.id %>">
                         <td class=""><%- (transferList.length - i) %></td>
-                        <td class=""><a href="/sp/<%- ctx.subProject.id %>/financial/transfer/<%- t.id %>/tender"><%- t.t_time %></a></td>
+                        <td class=""><a href="/sp/<%- ctx.subProject.id %>/financial/transfer/<%- t.id %>/tender"><%- t.t_time %></a>
+                            <% if (ctx.session.sessionUser.is_admin) { %>
+                                <a href="#edit" class="edit-time" data-ftid="<%- t.id %>" data-time="<%- t.t_time %>" data-toggle="modal" data-target="#edit"><i class="fa fa-pencil-square-o "></i></a>
+                            <% } %>
+                        </td>
                         <td class="text-right"><%- t.total_price %></td>
                         <td class="text-right"><%- t.pre_hb_tp %></td>
                         <td class="text-right"><%- ctx.helper.add(t.total_price, t.pre_hb_tp) %></td>

+ 23 - 0
app/view/financial/transfer_modal.ejs

@@ -29,6 +29,29 @@
         </form>
     </div>
 </div>
+<% if (ctx.session.sessionUser.is_admin) { %>
+<div class="modal fade" id="edit" data-backdrop="static">
+    <div class="modal-dialog" role="document">
+        <div class="modal-content">
+            <div class="modal-header">
+                <h5 class="modal-title">划拨年月编辑</h5>
+            </div>
+            <div class="modal-body">
+                <div class="form-group">
+                    <label>划拨年月</label>
+                    <input class="datepicker-here form-control form-control-sm" name="date" id="edit-transfer-date" readonly placeholder="点击选择划拨年月" data-view="months" data-min-view="months" data-date-format="yyyy-MM" data-language="zh" type="text">
+                </div>
+            </div>
+            <div class="modal-footer">
+                <input type="hidden" name="_csrf_j" value="<%= ctx.csrf %>" />
+                <input type="hidden" name="ftid" id="edit-ftid" value="">
+                <button type="button" class="btn btn-secondary btn-sm" data-dismiss="modal">关闭</button>
+                <button type="submit" class="btn btn-primary btn-sm" id="edit-ok" >确定修改</button>
+            </div>
+        </div>
+    </div>
+</div>
+<% } %>
 <% } %>
 <!--附件-->
 <div class="modal fade" id="transfer-file" data-backdrop="static" style="z-index: 1049">