Explorar o código

feat: 勘误记录

vian %!s(int64=2) %!d(string=hai) anos
pai
achega
00229b7c84

+ 4 - 3
modules/all_models/stdRation_section.js

@@ -6,11 +6,12 @@ const mongoose = require('mongoose');
 const Schema = mongoose.Schema;
 const rationChapterTreeSchema = new Schema({//章节树  //生成唯一id改为sectionID  改成string
     rationRepId: Number,
-    ID:Number,
-    ParentID:Number,
-    NextSiblingID:Number,
+    ID: Number,
+    ParentID: Number,
+    NextSiblingID: Number,
     name: String,
     explanation: String,//说明
+    erratumRecord: String, // 勘误记录
     ruleText: String,//计算规则,
     jobContentSituation: String,//工作内容适用情况,ALL适用本项全部定额,PARTIAL适用本项部分定额
     annotationSituation: String,//附注适用情况,ALL适用本项全部定额,PARTIAL适用本项部分定额

+ 46 - 46
modules/bills_lib/controllers/bills_permissionController.js

@@ -11,69 +11,69 @@ const excel = require("node-xlsx");
 const uuidV1 = require('uuid/v1');
 
 const shareDir = 'public/share/images';
-const imgTriggers = ['billsRecharge', 'rationExplanation', 'rationRuleText'];
+const imgTriggers = ['billsRecharge', 'rationExplanation', 'rationRuleText', 'erratumRecord'];
 
 
-class billsPermContr extends baseController{
-    getCurrentUniqId(req, res){
+class billsPermContr extends baseController {
+    getCurrentUniqId(req, res) {
         billsController.getCurrentUniqId(req, res);
     }
-    getBills(req, res){
+    getBills(req, res) {
         billsController.getBills(req, res);
     }
-    createBills(req, res){
+    createBills(req, res) {
         billsController.createBills(req, res);
     }
-    updatePNId(req, res){
+    updatePNId(req, res) {
         billsController.updatePNId(req, res);
     }
-    upMove(req, res){
+    upMove(req, res) {
         billsController.upMove(req, res);
     }
-    downMove(req, res){
+    downMove(req, res) {
         billsController.downMove(req, res);
     }
-    upLevel(req, res){
+    upLevel(req, res) {
         billsController.upLevel(req, res);
     }
-    downLevel(req, res){
+    downLevel(req, res) {
         billsController.downLevel(req, res);
     }
-    updateBills(req, res){
+    updateBills(req, res) {
         billsController.updateBills(req, res);
     }
-    updateSectionInfo(req, res){
+    updateSectionInfo(req, res) {
         billsController.updateSectionInfo(req, res);
     }
-    updateBillsArr(req, res){
+    updateBillsArr(req, res) {
         billsController.updateBillsArr(req, res);
     }
-    removeTotal(req, res){
+    removeTotal(req, res) {
         billsController.removeTotal(req, res);
     }
-    updateSerialNo(req, res){
+    updateSerialNo(req, res) {
         billsController.updateSerialNo(req, res);
     }
-    pasteBills(req, res){
+    pasteBills(req, res) {
         billsController.pasteBills(req, res);
     }
-    updateRecharge(req, res){
+    updateRecharge(req, res) {
         billsController.updateRecharge(req, res);
     }
-    pasteRel(req, res){
+    pasteRel(req, res) {
         billsController.pasteRel(req, res);
     }
-    deleteBills(req, res){
+    deleteBills(req, res) {
         billsController.deleteBills(req, res);
     }
-    isUsed(req, res){
+    isUsed(req, res) {
         billsController.isUsed(req, res);
     }
     /*
      * 导入标准清单(确定节点结构:深度数组)
      * */
-    importBills(req, res){
-        let form = new multiparty.Form({uploadDir: './public'});
+    importBills(req, res) {
+        let form = new multiparty.Form({ uploadDir: './public' });
         const allowHeader = ['application/vnd.ms-excel', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'];
         let uploadFullName;
         form.parse(req, async function (err, fields, files) {
@@ -103,18 +103,18 @@ class billsPermContr extends baseController{
                 //插入清单
                 await billsLibDao.importBills(billsLibId, sheet[0].data);
                 // 删除文件
-                if(uploadFullName && fs.existsSync(uploadFullName)){
+                if (uploadFullName && fs.existsSync(uploadFullName)) {
                     fs.unlinkSync(uploadFullName);
                 }
-                res.json({error: 0, data: null, msg: ''});
+                res.json({ error: 0, data: null, msg: '' });
 
             } catch (err) {
                 console.log(err);
                 // 删除文件
-                if(uploadFullName && fs.existsSync(uploadFullName)){
+                if (uploadFullName && fs.existsSync(uploadFullName)) {
                     fs.unlinkSync(uploadFullName);
                 }
-                res.json({error: 1, data: null, msg: err});
+                res.json({ error: 1, data: null, msg: err });
             }
         });
     }
@@ -122,13 +122,13 @@ class billsPermContr extends baseController{
     /*
     *上传图片
     * */
-    uploadImg(req, res){
+    uploadImg(req, res) {
         let uploadDir = path.join(req.app.locals.rootDir, shareDir);
-        let form = new multiparty.Form({uploadDir: uploadDir});
-        form.parse(req, async function(err, fields, files){
+        let form = new multiparty.Form({ uploadDir: uploadDir });
+        form.parse(req, async function (err, fields, files) {
             try {
                 const file = typeof files.file !== 'undefined' ? files.file[0] : null;
-                if(err || !file) {
+                if (err || !file) {
                     throw '上传失败';
                 }
                 //触发上传图片的地方
@@ -154,17 +154,17 @@ class billsPermContr extends baseController{
                 let newPath = path.join(triggerPath, newFileName);
                 fs.renameSync(file.path, newPath);
                 //返回图片域名后的url
-                res.json({error: 0, data: `${shareDir}/${trigger}/${newFileName}`, message: 'success'});
+                res.json({ error: 0, data: `${shareDir}/${trigger}/${newFileName}`, message: 'success' });
             } catch (err) {
                 console.log(err);
-                res.json({error: 1, data: null, message: err});
+                res.json({ error: 1, data: null, message: err });
             }
         });
     }
     /*
     * 删除图片
     * */
-    delImg(req, res){
+    delImg(req, res) {
         try {
             let data = JSON.parse(req.body.data),
                 trigger = data.trigger,
@@ -175,16 +175,16 @@ class billsPermContr extends baseController{
             //拼接完整的删除路径
             let delUrl = path.join(req.app.locals.rootDir, url);
             fs.unlinkSync(delUrl);
-            res.json({error: 0, data: null, message: 'success'});
-        } catch(err) {
-            res.json({error: 1, data: null, message: err});
+            res.json({ error: 0, data: null, message: 'success' });
+        } catch (err) {
+            res.json({ error: 1, data: null, message: err });
         }
     }
     /*
      *  根据页码加载图片
      *  返回总页码和当前页码的图片信息
      * */
-    loadImgs(req, res){
+    loadImgs(req, res) {
         try {
             let data = JSON.parse(req.body.data),
                 trigger = data.trigger,
@@ -204,12 +204,12 @@ class billsPermContr extends baseController{
             allImgs.sort(function (a, b) {
                 let aV = a.split('.')[0],
                     bV = b.split('.')[0];
-                    if(aV > bV) {
-                        return -1;
-                    } else if(aV < bV) {
-                        return 1;
-                    }
-                    return 0;
+                if (aV > bV) {
+                    return -1;
+                } else if (aV < bV) {
+                    return 1;
+                }
+                return 0;
             });
             let pageCount = Math.ceil(allImgs.length / perImgs) || 1;
             //当前页图片信息
@@ -217,14 +217,14 @@ class billsPermContr extends baseController{
                 endIdx = startIdx + 3,
                 currentPageArr = allImgs.slice(startIdx, endIdx),
                 currentImgsUrl = [];
-            for (let img of currentPageArr){
+            for (let img of currentPageArr) {
                 currentImgsUrl.push(`${shareDir}/${trigger}/${img}`);
             }
-            res.json({error: 0, data: {pageCount: pageCount, currentImgsUrl: currentImgsUrl}, message: 'success'});
+            res.json({ error: 0, data: { pageCount: pageCount, currentImgsUrl: currentImgsUrl }, message: 'success' });
 
         } catch (err) {
             console.log(err);
-            res.json({error: 1, data: {pageCount: 1, currentImgsUrl: []}, message: err});
+            res.json({ error: 1, data: { pageCount: 1, currentImgsUrl: [] }, message: err });
         }
     }
 }

+ 10 - 0
modules/ration_repository/controllers/ration_section_tree_controller.js

@@ -85,6 +85,16 @@ class RationChapterTreeController extends BaseController{
         });
 
     }
+    updateErratumRecord(req, res){
+        let repId = req.body.repId,
+            nodeId = req.body.nodeId,
+            erratumRecord = req.body.erratumRecord,
+            lastOpr = req.body.lastOpr;
+        rationChapterTreeData.updateErratumRecord(lastOpr, repId, nodeId, erratumRecord, function (err) {
+            callback(req, res, err, '', null);
+        });
+
+    }
     updateRuleText(req, res){
         let repId = req.body.repId,
             nodeId = req.body.nodeId,

+ 14 - 0
modules/ration_repository/models/ration_section_tree.js

@@ -148,6 +148,20 @@ rationChapterTreeDAO.prototype.updateExplanation = function (lastOpr, repId, nod
         }
     });
 };
+
+rationChapterTreeDAO.prototype.updateErratumRecord = function (lastOpr, repId, nodeId, erratumRecord, callback) {
+    rationChapterTreeModel.update({rationRepId: repId, ID: nodeId}, {$set: {erratumRecord: erratumRecord}}, function (err, result) {
+        if(err){
+            callback(err);
+        }
+        else{
+            rationRepositoryDao.updateOprArr({ID: repId}, lastOpr, moment(Date.now()).format('YYYY-MM-DD HH:mm:ss'), function (err) {
+                callback(null);
+            });
+        }
+    });
+};
+
 rationChapterTreeDAO.prototype.updateRuleText = function (lastOpr, repId, nodeId, ruleText, callback) {
     rationChapterTreeModel.update({rationRepId: repId, ID: nodeId}, {$set: {ruleText: ruleText}}, function (err, result) {
         if(err){

+ 1 - 0
modules/ration_repository/routes/ration_rep_routes.js

@@ -50,6 +50,7 @@ module.exports =  function (app) {
     apiRouter.post("/updateNodes",rationChapterTreeController.auth, rationChapterTreeController.init, rationChapterTreeController.updateNodes);
     apiRouter.post("/deleteNodes",rationChapterTreeController.auth, rationChapterTreeController.init, rationChapterTreeController.deleteNodes);
     apiRouter.post("/updateExplanation",rationChapterTreeController.auth, rationChapterTreeController.init, rationChapterTreeController.updateExplanation);
+    apiRouter.post("/updateErratumRecord",rationChapterTreeController.auth, rationChapterTreeController.init, rationChapterTreeController.updateErratumRecord);
     apiRouter.post("/updateRuleText",rationChapterTreeController.auth, rationChapterTreeController.init, rationChapterTreeController.updateRuleText);
     apiRouter.post("/updateSituation",rationChapterTreeController.auth, rationChapterTreeController.init, rationChapterTreeController.updateSituation);
     apiRouter.post("/updateAnnoSituation",rationChapterTreeController.auth, rationChapterTreeController.init, rationChapterTreeController.updateAnnoSituation);

BIN=BIN
public/share/images/erratumRecord/1681206467650.jpg


+ 12 - 0
web/maintain/ration_repository/dinge.html

@@ -89,6 +89,9 @@
                                 <a class="nav-link" data-toggle="tab" href="#tsm" role="tab" id="explanationLink">说明</a>
                             </li>
                             <li class="nav-item">
+                                <a class="nav-link" data-toggle="tab" href="#erratumRecord" role="tab" id="erratumRecordLink">勘误记录</a>
+                            </li>
+                            <li class="nav-item">
                                 <a class="nav-link" data-toggle="tab" href="#tjs" role="tab" id="ruleTextLink">计算规则</a>
                             </li>
                             <li class="nav-item">
@@ -143,6 +146,15 @@
                                 </div>
                             </div>
                             </div>
+                            <!--勘误记录-->
+                            <div class="tab-pane" id="erratumRecord" role="tabpanel">
+                                <div class="main-data">
+                                <div class="main-content m-2">
+                                    <a trigger="erratumRecord" class="mr-3 uploadImgTrigger lock-btn-control" href="javacript:void(0);" data-toggle="modal" data-target="#uploadimg" ><i class="fa fa-image"></i>上传图片</a><a href="javacript:void(0);" data-toggle="modal" data-target="#help" >html怎么写?</a></p>
+                                    <textarea id="erratumRecordShow" name="editor" class="form-control "></textarea>
+                                </div>
+                            </div>
+                            </div>
                             <!--计算规则-->
                             <div class="tab-pane" id="tjs" role="tabpanel">
                                 <div class="main-data">

+ 74 - 41
web/maintain/ration_repository/js/explanatory.js

@@ -5,9 +5,11 @@
 let explanatoryOprObj = {
     exEditor: null,
     calcEditor: null,
+    erratumEditor: null,
     preTreeNode: null,
     currentTreeNode: null,//定额章节树节点
     currentExplanation: null,
+    currentErratum: null,
     currentRuleText: null,
     // 初始化说明、计算规则编辑器
     initEditor: function () {
@@ -15,16 +17,32 @@ let explanatoryOprObj = {
         const exEditor = CodeMirror.fromTextArea(document.getElementById("explanationShow"), {
             mode: "text/html",
             lineNumbers: true,
-            theme:"material",
+            theme: "material",
             readOnly: locked
         });
-        exEditor.setSize('auto','500px');
+        exEditor.setSize('auto', '500px');
         $('#explanationLink').click(function () {
             setTimeout(function () {
                 exEditor.refresh();
             }, 100);
         });
         this.exEditor = exEditor;
+
+        const erratumEditor = CodeMirror.fromTextArea(document.getElementById("erratumRecordShow"), {
+            mode: "text/html",
+            lineNumbers: true,
+            theme: "material",
+            readOnly: locked
+        });
+        erratumEditor.setSize('auto', '500px');
+        $('#erratumRecordLink').click(function () {
+            setTimeout(function () {
+                erratumEditor.refresh();
+            }, 100);
+        });
+        this.erratumEditor = erratumEditor;
+
+
         const calcEditor = CodeMirror.fromTextArea(document.getElementById("ruleTextShow"), {
             mode: 'text/html',
             lineNumbers: true,
@@ -39,93 +57,108 @@ let explanatoryOprObj = {
         });
         this.calcEditor = calcEditor;
     },
-    setAttribute: function (preNode, currentNode, explanation, ruleText) {
+    setAttribute: function (preNode, currentNode, explanation, erratum, ruleText) {
         let me = explanatoryOprObj;
         me.preTreeNode = preNode;
         me.currentTreeNode = currentNode;
         me.currentExplanation = explanation;
+        me.currentErratum = erratum;
         me.currentRuleText = ruleText;
     },
-    clickUpdate: function (exarea, ruarea) {//解决编辑完后在未失去焦点的时候直接定额章节树
+    clickUpdate: function (exarea, errArea, ruarea) {//解决编辑完后在未失去焦点的时候直接定额章节树
         let me = explanatoryOprObj;
-        if(exarea.is(':focus')){
+        if (exarea.is(':focus')) {
             let explanation = exarea.val();
-            if(explanation !== me.currentExplanation){
+            if (explanation !== me.currentExplanation) {
                 me.preTreeNode.data.explanation = explanation;
-                me.unbindEvents(exarea, ruarea);
+                me.unbindEvents(exarea, errArea, ruarea);
                 exarea.blur();
                 me.updateExplanation(pageOprObj.rationLibId, me.preTreeNode.getID(), explanation, function () {
-                    me.bindEvents(exarea, ruarea);
+                    me.bindEvents(exarea, errArea, ruarea);
                 });
             }
         }
-        if(ruarea.is(':focus')){
+        if (errArea.is(':focus')) {
+            let erratum = errArea.val();
+            if (erratum !== me.currentErratum) {
+                me.preTreeNode.data.erratumRecord = erratum;
+                me.unbindEvents(exarea, errArea, ruarea);
+                errArea.blur();
+                me.updateErratumRecord(pageOprObj.rationLibId, me.preTreeNode.getID(), erratum, function () {
+                    me.bindEvents(exarea, errArea, ruarea);
+                });
+            }
+        }
+        if (ruarea.is(':focus')) {
             let ruleText = ruarea.val();
-            if(ruleText !== me.currentRuleText){
+            if (ruleText !== me.currentRuleText) {
                 me.preTreeNode.data.ruleText = ruleText;
-                me.unbindEvents(exarea, ruarea);
+                me.unbindEvents(exarea, errArea, ruarea);
                 ruarea.blur();
                 me.updateRuleText(pageOprObj.rationLibId, me.preTreeNode.getID(), ruleText, function () {
-                    me.bindEvents(exarea, ruarea);
+                    me.bindEvents(exarea, errArea, ruarea);
                 });
             }
         }
     },
-    unbindEvents: function (exarea, ruarea) {
+    unbindEvents: function (exarea, errArea, ruarea) {
         exarea.unbind();
+        errArea.unbind();
         ruarea.unbind();
     },
-    bindEvents: function (exEd, calcEd) {
+    bindEvents: function (exEd, errEd, calcEd) {
         let me = explanatoryOprObj;
         exEd.on('change', function () {
             let node = me.currentTreeNode;
             let newData = exEd.getValue();
-            if(node && node.data.explanation !== newData){
+            if (node && node.data.explanation !== newData) {
                 me.updateExplanation(pageOprObj.rationLibId, node.getID(), newData, function () {
                     node.data.explanation = newData;
                 });
             }
         });
+        errEd.on('change', function () {
+            let node = me.currentTreeNode;
+            let newData = errEd.getValue();
+            if (node && node.data.erratumRecord !== newData) {
+                me.updateErratumRecord(pageOprObj.rationLibId, node.getID(), newData, function () {
+                    node.data.erratumRecord = newData;
+                });
+            }
+        });
         calcEd.on('change', function () {
             let node = me.currentTreeNode;
             let newData = calcEd.getValue();
-            if(node && node.data.ruleText !== newData){
+            if (node && node.data.ruleText !== newData) {
                 me.updateRuleText(pageOprObj.rationLibId, node.getID(), newData, function () {
                     node.data.ruleText = newData;
                 });
             }
         })
-        /*exarea.bind('change', function () {
-            let explanation = exarea.val();
-            let node = me.currentTreeNode;
-            exarea.attr('disabled', true);
-            me.updateExplanation(pageOprObj.rationLibId, node.getID(), explanation, function () {
-                node.data.explanation = explanation;
-                exarea.attr('disabled', false);
-            });
-        });*/
-        /*ruarea.bind('change', function () {
-            let ruleText = ruarea.val();
-            let node = me.currentTreeNode;
-            ruarea.attr('disabled', true);
-            me.updateRuleText(pageOprObj.rationLibId, node.getID(), ruleText, function () {
-                node.data.ruleText = ruleText;
-                ruarea.attr('disabled', false);
-            });
-        });*/
     },
-    showText: function (exEd, calcEd, explanation, ruleText) {
-        exEd.setValue(explanation && explanation !== 'undefined' ? explanation : '');
-        calcEd.setValue(ruleText && ruleText !== 'undefined' ? ruleText : '');
-        //exarea.val(explanation && explanation !== 'undefined' ? explanation : '');
-        //ruarea.val(ruleText && ruleText !== 'undefined' ? ruleText : '');
+    showText: function (explanation, erratumRecord, ruleText) {
+        this.exEditor.setValue(explanation && explanation !== 'undefined' ? explanation : '');
+        this.erratumEditor.setValue(erratumRecord && erratumRecord !== 'undefined' ? erratumRecord : '');
+        this.calcEditor.setValue(ruleText && ruleText !== 'undefined' ? ruleText : '');
     },
     //更新说明
     updateExplanation: function (repId, nodeId, explanation, callback) {
         $.ajax({
             type: 'post',
             url: 'api/updateExplanation',
-            data: {lastOpr: userAccount, repId: pageOprObj.rationLibId, nodeId: nodeId, explanation: explanation},
+            data: { lastOpr: userAccount, repId: pageOprObj.rationLibId, nodeId: nodeId, explanation: explanation },
+            dataType: 'json',
+            success: function () {
+                callback();
+            }
+        });
+    },
+    //更新勘误记录
+    updateErratumRecord: function (repId, nodeId, erratumRecord, callback) {
+        $.ajax({
+            type: 'post',
+            url: 'api/updateErratumRecord',
+            data: { lastOpr: userAccount, repId: pageOprObj.rationLibId, nodeId: nodeId, erratumRecord: erratumRecord },
             dataType: 'json',
             success: function () {
                 callback();
@@ -137,7 +170,7 @@ let explanatoryOprObj = {
         $.ajax({
             type: 'post',
             url: 'api/updateRuleText',
-            data: {lastOpr: userAccount, repId: pageOprObj.rationLibId, nodeId: nodeId, ruleText: explanation},
+            data: { lastOpr: userAccount, repId: pageOprObj.rationLibId, nodeId: nodeId, ruleText: explanation },
             dataType: 'json',
             success: function () {
                 callback();

+ 25 - 23
web/maintain/ration_repository/js/global.js

@@ -1,19 +1,19 @@
 /*全局自适应高度*/
-function autoFlashHeight(){
+function autoFlashHeight() {
     var headerHeight = $(".header").height();
     var bottomContentHeight = $(".bottom-content").height();
     var toolsBar = $(".tools-bar").height();
-    $(".content").height($(window).height()-headerHeight);
-    $(".main-side").height($(window).height()-headerHeight-2);
-    $(".fluid-content").height($(window).height()-headerHeight-1);
-    $(".side-content").height($(window).height()-headerHeight );
-    $(".poj-list").height($(window).height()-headerHeight);
-    $(".form-list").height($(window).height()-headerHeight-50 );
-    $(".main-data-top").height($(window).height()-headerHeight-toolsBar-bottomContentHeight-2);
-    $(".main-data-top-fluid").height($(window).height()-headerHeight-bottomContentHeight-2);
-    $(".main-data").height($(window).height()-headerHeight);
-    $(".main-side .tab-content").height($(window).height()-headerHeight-38);
-    $('#partialBody').height($(window).height()-headerHeight-toolsBar - 60);
+    $(".content").height($(window).height() - headerHeight);
+    $(".main-side").height($(window).height() - headerHeight - 2);
+    $(".fluid-content").height($(window).height() - headerHeight - 1);
+    $(".side-content").height($(window).height() - headerHeight);
+    $(".poj-list").height($(window).height() - headerHeight);
+    $(".form-list").height($(window).height() - headerHeight - 50);
+    $(".main-data-top").height($(window).height() - headerHeight - toolsBar - bottomContentHeight - 2);
+    $(".main-data-top-fluid").height($(window).height() - headerHeight - bottomContentHeight - 2);
+    $(".main-data").height($(window).height() - headerHeight);
+    $(".main-side .tab-content").height($(window).height() - headerHeight - 38);
+    $('#partialBody').height($(window).height() - headerHeight - toolsBar - 60);
     let partialWidth = $('#tablePartial').width();
     $('#tablePartial').find('th:eq(0)').width(partialWidth * 0.06);
     $('#tablePartial').find('th:eq(1)').width(partialWidth * 0.3);
@@ -21,24 +21,26 @@ function autoFlashHeight(){
     $('#partialBody').find('tr').find('td:eq(0)').width(partialWidth * 0.06);
     $('#partialBody').find('tr').find('td:eq(1)').width(partialWidth * 0.3);
     $('#partialBody').find('tr').find('td:eq(2)').width(partialWidth * 0.64);
-//说明
-    $('#explanationShow').height($(window).height()-headerHeight-toolsBar-100);
-//计算规则
-    $('#ruleTextShow').height($(window).height()-headerHeight-toolsBar-100);
+    //说明
+    $('#explanationShow').height($(window).height() - headerHeight - toolsBar - 100);
+    // 勘误记录
+    $('#erratumRecordShow').height($(window).height() - headerHeight - toolsBar - 100);
+    //计算规则
+    $('#ruleTextShow').height($(window).height() - headerHeight - toolsBar - 100);
     typeof loadRationSubSize !== 'undefined' ? loadRationSubSize() : '';
     typeof loadZmhsAdjSize !== 'undefined' ? loadZmhsAdjSize() : '';
     typeof sectionTreeObj !== 'undefined' ? sectionTreeObj.loadRateWidth() : '';
 };
 $(window).resize(autoFlashHeight);
 /*全局自适应高度结束*/
-$(function(){
+$(function () {
     /*侧滑*/
-    $(".open-sidebar").click(function(){
-        $(".slide-sidebar").animate({width:"800"}).addClass("open");
+    $(".open-sidebar").click(function () {
+        $(".slide-sidebar").animate({ width: "800" }).addClass("open");
     });
-    $("body").click(function(event){
+    $("body").click(function (event) {
         var e = event || window.event; //浏览器兼容性
-        if(!$(event.target).is('a')) {
+        if (!$(event.target).is('a')) {
             var elem = event.target || e.srcElement;
             while (elem) { //循环判断至跟节点,防止点击的是div子元素
                 if (elem.className == "open-sidebar" || elem.className == 'slide-sidebar open') {
@@ -46,13 +48,13 @@ $(function(){
                 }
                 elem = elem.parentNode;
             }
-            $(".slide-sidebar").animate({width:"0"}).removeClass("open")// 关闭处理
+            $(".slide-sidebar").animate({ width: "0" }).removeClass("open")// 关闭处理
         }
 
     });
     /*侧滑*/
     /*工具提示*/
-    $('*[data-toggle=tooltip]').mouseover(function() {
+    $('*[data-toggle=tooltip]').mouseover(function () {
         $(this).tooltip('show');
     });
     /*工具提示*/

+ 95 - 95
web/maintain/ration_repository/js/section_tree.js

@@ -6,10 +6,10 @@ const moduleName = 'stdRation';
 //上下拖动div节点的高度
 const verticalResize = 10;
 let pageOprObj = {
-    rationLibName : null,
-    rationLibId : null,
+    rationLibName: null,
+    rationLibId: null,
     gljLibId: null,
-    initPage : function(libInfo) {
+    initPage: function (libInfo) {
         this.rationLibId = libInfo.ID;
         this.gljLibId = libInfo.gljLib;
         this.rationLibName = libInfo.dispName;
@@ -37,7 +37,7 @@ let sectionTreeObj = {
     controller: null,
     workBook: null,
     sheet: null,
-    updateType: {new: 'new', update: 'update'},
+    updateType: { new: 'new', update: 'update' },
     insertBtn: $('#tree_Insert'),
     removeBtn: $('#tree_remove'),
     upLevelBtn: $('#tree_upLevel'),
@@ -46,7 +46,7 @@ let sectionTreeObj = {
     upMoveBtn: $('#tree_upMove'),
     setting: {
         sheet: {
-            cols:[
+            cols: [
                 {
                     head: {
                         titleNames: ['ID'],
@@ -94,13 +94,13 @@ let sectionTreeObj = {
             rootId: -1
         },
         options: {
-            tabStripVisible:  false,
+            tabStripVisible: false,
             allowContextMenu: false,
-            allowCopyPasteExcelStyle : false,
+            allowCopyPasteExcelStyle: false,
             allowExtendPasteRange: false,
-            allowUserDragDrop : false,
+            allowUserDragDrop: false,
             allowUserDragFill: false,
-            scrollbarMaxAlign : true
+            scrollbarMaxAlign: true
         }
     },
 
@@ -112,7 +112,7 @@ let sectionTreeObj = {
     },
     //sheet things
     setOptions: function (workbook, opts) {
-        for(let opt in opts){
+        for (let opt in opts) {
             workbook.options[opt] = opts[opt];
         }
     },
@@ -120,7 +120,7 @@ let sectionTreeObj = {
     renderFunc: function (sheet, func) {
         sheet.suspendPaint();
         sheet.suspendEvent();
-        if(this.isFunc(func)){
+        if (this.isFunc(func)) {
             func();
         }
         sheet.resumePaint();
@@ -128,9 +128,9 @@ let sectionTreeObj = {
     },
 
     buildSheet: function () {
-        if(!this.isDef(this.workBook)){
-            this.workBook = new GC.Spread.Sheets.Workbook($('#sectionSpread')[0], {sheetCount: 1});
-            sheetCommonObj.bindEscKey(this.workBook, [{sheet: this.workBook.getSheet(0), editStarting: this.onEditStarting, editEnded: this.onEditEnded}]);
+        if (!this.isDef(this.workBook)) {
+            this.workBook = new GC.Spread.Sheets.Workbook($('#sectionSpread')[0], { sheetCount: 1 });
+            sheetCommonObj.bindEscKey(this.workBook, [{ sheet: this.workBook.getSheet(0), editStarting: this.onEditStarting, editEnded: this.onEditEnded }]);
             this.sheet = this.workBook.getActiveSheet();
             this.setOptions(this.workBook, this.setting.options);
             this.sheet.options.clipBoardOptions = GC.Spread.Sheets.ClipboardPasteOptions.values;
@@ -158,7 +158,7 @@ let sectionTreeObj = {
     onEditStarting: function (sender, args) {
         let me = sectionTreeObj;
         let dataCode = me.setting.sheet.cols[args.col]['data']['field'];
-        if(dataCode === 'ID'){
+        if (dataCode === 'ID') {
             args.cancel = true;
         }
     },
@@ -168,7 +168,7 @@ let sectionTreeObj = {
         let postData = [];
         let v = me.isDef(args.editingText) ? args.editingText.toString().trim() : '';
         let node = me.cache[args.row];
-        if(me.isDef(node) && node.data.name !== v){
+        if (me.isDef(node) && node.data.name !== v) {
             let updateObj = me.getUpdateObj(me.updateType.update, node.getID(), null, null, v, null);
             postData.push(updateObj);
             //ajax
@@ -183,37 +183,37 @@ let sectionTreeObj = {
 
     onClipboardPasting: function (sender, info) {
         let me = sectionTreeObj;
-        if(info.cellRange.col === 0){
+        if (info.cellRange.col === 0) {
             info.cancel = true;
         }
     },
 
     onClipboardPasted: function (sender, info) {
         let me = sectionTreeObj;
-        let items = sheetCommonObj.analyzePasteData({header: [{dataCode: 'ID'}, {dataCode: 'name'}]}, info);
+        let items = sheetCommonObj.analyzePasteData({ header: [{ dataCode: 'ID' }, { dataCode: 'name' }] }, info);
         let postData = [];
         let frontData = [];
-        for(let i = 0, len = items.length; i < len; i++){
+        for (let i = 0, len = items.length; i < len; i++) {
             let row = info.cellRange.row + i;
             let node = me.cache[row];
-            if(me.isDef(node) && me.isDef(items[i].name) && node.data.name !== items[i].name){
+            if (me.isDef(node) && me.isDef(items[i].name) && node.data.name !== items[i].name) {
                 let updateObj = me.getUpdateObj(me.updateType.update, node.getID(), null, null, items[i].name, null);
                 postData.push(updateObj);
-                frontData.push({row: row, name: items[i].name});
+                frontData.push({ row: row, name: items[i].name });
                 node.data.name = items[i].name;
             }
         }
-        if(postData.length > 0){
+        if (postData.length > 0) {
             //ajax
             me.sectionTreeAjax(postData, function (rstData) {
-                for(let i = 0, len = frontData.length; i < len; i++){
+                for (let i = 0, len = frontData.length; i < len; i++) {
                     let node = me.cache[frontData[i]['row']];
-                    if(me.isDef(node)){
+                    if (me.isDef(node)) {
                         node.data.name = frontData[i]['name'];
                     }
                 }
             }, function () {
-                for(let i = 0, len = frontData.length; i < len; i++){
+                for (let i = 0, len = frontData.length; i < len; i++) {
                     let node = me.cache[frontData[i]['row']];
                     me.sheet.setValue(frontData[i]['row'], 1, me.isDef(node) ? node.data.name : '');
                 }
@@ -226,7 +226,7 @@ let sectionTreeObj = {
             let spreadWidth = $('#sectionSpread').width() - 65; //65: 列头宽度和垂直滚动条宽度和
             let IDRate = 40 / spreadWidth,
                 nameRate = 1 - IDRate;
-            sheetCommonObj.setColumnWidthByRate($('#sectionSpread').width() - 65, this.workBook, [{rateWidth: IDRate}, {rateWidth: nameRate}]);
+            sheetCommonObj.setColumnWidthByRate($('#sectionSpread').width() - 65, this.workBook, [{ rateWidth: IDRate }, { rateWidth: nameRate }]);
         }
     },
     initSectionTree: function (sectionTree) {
@@ -239,7 +239,7 @@ let sectionTreeObj = {
         this.controller.showTreeData();
         this.sheet.setFormatter(-1, 0, '@');
         this.initSelection(this.tree.selected);
-        explanatoryOprObj.bindEvents(explanatoryOprObj.exEditor, explanatoryOprObj.calcEditor);
+        explanatoryOprObj.bindEvents(explanatoryOprObj.exEditor, explanatoryOprObj.erratumEditor, explanatoryOprObj.calcEditor);
         this.loadRateWidth();
         this.autoLocate();
     },
@@ -260,7 +260,7 @@ let sectionTreeObj = {
     initController: function (tree, sheet, setting) {
         this.controller = TREE_SHEET_CONTROLLER.createNew(tree, sheet, setting);
     },
-    
+
     refreshBtn: function (selected) {
         if (locked) {
             return;
@@ -272,7 +272,7 @@ let sectionTreeObj = {
         me.downLevelBtn.removeClass('disabled');
         me.downMoveBtn.removeClass('disabled');
         me.upMoveBtn.removeClass('disabled');
-        if(!me.isDef(selected)){
+        if (!me.isDef(selected)) {
             me.removeBtn.addClass('disabled');
             me.upLevelBtn.addClass('disabled');
             me.downLevelBtn.addClass('disabled');
@@ -280,26 +280,26 @@ let sectionTreeObj = {
             me.upMoveBtn.addClass('disabled');
         }
         else {
-            if(!me.isDef(selected.preSibling)){
+            if (!me.isDef(selected.preSibling)) {
                 me.downLevelBtn.addClass('disabled');
                 me.upMoveBtn.addClass('disabled');
             }
-            if(!me.isDef(selected.nextSibling)){
+            if (!me.isDef(selected.nextSibling)) {
                 me.downMoveBtn.addClass('disabled');
             }
-            if(!me.isDef(selected.parent)){
+            if (!me.isDef(selected.parent)) {
                 me.upLevelBtn.addClass('disabled');
             }
         }
     },
-    
+
     bindBtn: function () {
         let me = this;
         me.insertBtn.click(function () {
             me.insert();
         });
         $('#delConfirm').click(function () {
-            if(me.canRemoveSection){
+            if (me.canRemoveSection) {
                 me.remove(me.tree.selected);
             }
             else {
@@ -309,12 +309,12 @@ let sectionTreeObj = {
         me.removeBtn.click(function () {
             //不可删除有子节点或有定额数据的节点
             let section = me.cache[me.workBook.getActiveSheet().getActiveRowIndex()];
-            if(!section){
+            if (!section) {
                 return;
             }
             let sectionName = me.isDef(section.data.name) ? section.data.name : '';
             let sectionRations = rationOprObj.currentRations[`_SEC_ID_${section.data.ID}`];
-            if(section.children.length > 0 || (sectionRations && sectionRations.length > 0)){
+            if (section.children.length > 0 || (sectionRations && sectionRations.length > 0)) {
                 me.canRemoveSection = false;
                 $('#delAlert').find('.modal-body h5').text('当前节点下有数据,不可删除。');
             }
@@ -343,22 +343,22 @@ let sectionTreeObj = {
         me.insertBtn.addClass('disabled');
         let postData = [];
         CommonAjax.post('api/getNewRationTreeID', {}, function (newID) {
-            if(!me.isDef(newID)){
+            if (!me.isDef(newID)) {
                 return;
             }
             me.tree.maxNodeID(newID - 1);
             let selected = me.tree.selected;
             let insertObj = me.getUpdateObj(me.updateType.new, newID, -1, -1, '', null);
-            if(me.isDef(selected)) {
+            if (me.isDef(selected)) {
                 let updateObj = me.getUpdateObj(me.updateType.update, selected.getID(), newID, null, null, null);
                 postData.push(updateObj);
                 insertObj.updateData.ParentID = selected.getParentID();
-                if(me.isDef(selected.nextSibling)){
+                if (me.isDef(selected.nextSibling)) {
                     insertObj.updateData.NextSiblingID = selected.getNextSiblingID();
                 }
             }
             postData.push(insertObj);
-            if(postData.length > 0){
+            if (postData.length > 0) {
                 //ajax
                 me.sectionTreeAjax(postData, function (rstData) {
                     me.controller.insert();
@@ -375,31 +375,31 @@ let sectionTreeObj = {
         let me = this;
         me.removeBtn.addClass('disabled');
         let postData = [], IDs = [];
-        if(!selected){
+        if (!selected) {
             return;
         }
         getDelIds(selected);
-        function getDelIds(node){
-            if(me.isDef(node)){
+        function getDelIds(node) {
+            if (me.isDef(node)) {
                 IDs.push(node.getID());
-                if(node.children.length > 0){
-                    for(let i = 0, len = node.children.length; i < len; i++){
+                if (node.children.length > 0) {
+                    for (let i = 0, len = node.children.length; i < len; i++) {
                         getDelIds(node.children[i]);
                     }
                 }
             }
         }
-        if(me.isDef(selected.preSibling)){
+        if (me.isDef(selected.preSibling)) {
             let updateObj = me.getUpdateObj(me.updateType.update, selected.preSibling.getID(), selected.getNextSiblingID(), null, null, null);
             postData.push(updateObj);
         }
-        if(IDs.length > 0){
-            for(let i = 0, len = IDs.length; i < len; i++){
+        if (IDs.length > 0) {
+            for (let i = 0, len = IDs.length; i < len; i++) {
                 let delObj = me.getUpdateObj(me.updateType.update, IDs[i], null, null, null, true);
                 postData.push(delObj);
             }
         }
-        if(postData.length > 0){
+        if (postData.length > 0) {
             //ajax
             me.sectionTreeAjax(postData, function (rstData) {
                 $('#delAlert').modal('hide');
@@ -413,17 +413,17 @@ let sectionTreeObj = {
         }
     },
     removeRationsCodes: function (rations) {
-        for(let ration of rations){
+        for (let ration of rations) {
             rationOprObj.rationsCodes.splice(rationOprObj.rationsCodes.indexOf(ration.code), 1);
         }
     },
-    getSameDepthNodes: function(){
+    getSameDepthNodes: function () {
         let rst = [];
         let sel = this.sheet.getSelections()[0];
         let selectedDepth = this.tree.selected.depth();
-        for(let i = 0; i < sel.rowCount; i++){
+        for (let i = 0; i < sel.rowCount; i++) {
             let row = sel.row + i;
-            if(this.cache[row].depth() === selectedDepth){
+            if (this.cache[row].depth() === selectedDepth) {
                 rst.push(this.cache[row]);
             }
         }
@@ -434,42 +434,42 @@ let sectionTreeObj = {
         me.upLevelBtn.addClass('disabled');
         let postData = [];
         let selNodes = me.getSameDepthNodes();
-        if(selNodes.length <= 0){
-            return ;
+        if (selNodes.length <= 0) {
+            return;
         }
         let firstParent = selNodes[0].parent;
-        if(!me.isDef(firstParent)){
+        if (!me.isDef(firstParent)) {
             return;
         }
         //更新父节点
         postData.push(me.getUpdateObj(me.updateType.update, firstParent.getID(), selNodes[0].getID(), null, null, null));
         //更新前节点
-        if(me.isDef(selNodes[0].preSibling)){
+        if (me.isDef(selNodes[0].preSibling)) {
             postData.push(me.getUpdateObj(me.updateType.update, selNodes[0].preSibling.getID(), -1, null, null, null));
         }
         //更新选中节点的后兄弟节点
         let lastSelNode = selNodes[selNodes.length - 1];
         let nextIDs = [];
         getNext(lastSelNode);
-        function getNext(node){
-            if(me.isDef(node.nextSibling)){
+        function getNext(node) {
+            if (me.isDef(node.nextSibling)) {
                 nextIDs.push(node.getNextSiblingID());
                 getNext(node.nextSibling);
             }
         }
-        for(let nextID of nextIDs){
+        for (let nextID of nextIDs) {
             postData.push(me.getUpdateObj(me.updateType.update, nextID, null, lastSelNode.getID(), null, null));
         }
         //更新选中节点
-        for(let i = 0; i < selNodes.length; i++){
+        for (let i = 0; i < selNodes.length; i++) {
             let selNode = selNodes[i];
             let nid = i === selNodes.length - 1 ? firstParent.getNextSiblingID() : selNode.getNextSiblingID();
             postData.push(me.getUpdateObj(me.updateType.update, selNode.getID(), nid, firstParent.getParentID(), null, null));
         }
-        if(postData.length > 0){
+        if (postData.length > 0) {
             //ajax
             me.sectionTreeAjax(postData, function (rstData) {
-                for(let selNode of selNodes){
+                for (let selNode of selNodes) {
                     me.controller.setTreeSelected(selNode);
                     me.controller.upLevel();
                 }
@@ -483,28 +483,28 @@ let sectionTreeObj = {
         me.downLevelBtn.addClass('disabled');
         let postData = [];
         let selNodes = me.getSameDepthNodes();
-        if(selNodes.length <= 0 ){
+        if (selNodes.length <= 0) {
             return;
         }
         let firstPreSibling = selNodes[0].preSibling;
-        if(!me.isDef(firstPreSibling)){
+        if (!me.isDef(firstPreSibling)) {
             return;
         }
         //更新前节点
         postData.push(me.getUpdateObj(me.updateType.update, firstPreSibling.getID(), selNodes[selNodes.length - 1].getNextSiblingID(), null, null, null));
         //更新前节点最末子节点
-        if(firstPreSibling.children.length > 0){
+        if (firstPreSibling.children.length > 0) {
             postData.push(me.getUpdateObj(me.updateType.update, firstPreSibling.children[firstPreSibling.children.length - 1].getID(), selNodes[0].getID(), null, null, null));
         }
         //更新选中节点
-        for(let i = 0; i < selNodes.length; i++){
+        for (let i = 0; i < selNodes.length; i++) {
             let selNode = selNodes[i];
             postData.push(me.getUpdateObj(me.updateType.update, selNode.getID(), i === selNodes.length - 1 ? -1 : selNode.getNextSiblingID(), firstPreSibling.getID(), null, null));
         }
-        if(postData.length > 0){
+        if (postData.length > 0) {
             //ajax
             me.sectionTreeAjax(postData, function (rstData) {
-                for(let selNode of selNodes){
+                for (let selNode of selNodes) {
                     me.controller.setTreeSelected(selNode);
                     me.controller.downLevel();
                 }
@@ -517,21 +517,21 @@ let sectionTreeObj = {
         let me = this;
         me.upMoveBtn.addClass('disabled');
         let postData = [];
-        if(!me.isDef(selected)){
+        if (!me.isDef(selected)) {
             return;
         }
-        if(!me.isDef(selected.preSibling)){
+        if (!me.isDef(selected.preSibling)) {
             return;
         }
         let updateObj = me.getUpdateObj(me.updateType.update, selected.getID(), selected.preSibling.getID(), null, null, null);
         postData.push(updateObj);
         let updatePre = me.getUpdateObj(me.updateType.update, selected.preSibling.getID(), selected.getNextSiblingID(), null, null, null);
         postData.push(updatePre);
-        if(me.isDef(selected.preSibling.preSibling)){
+        if (me.isDef(selected.preSibling.preSibling)) {
             let updatePrepre = me.getUpdateObj(me.updateType.update, selected.preSibling.preSibling.getID(), selected.getID(), null, null, null);
             postData.push(updatePrepre);
         }
-        if(postData.length > 0){
+        if (postData.length > 0) {
             //ajax
             me.sectionTreeAjax(postData, function (rstData) {
                 me.controller.upMove();
@@ -544,13 +544,13 @@ let sectionTreeObj = {
         let me = this;
         me.downMoveBtn.addClass('disabled');
         let postData = [];
-        if(!me.isDef(selected)){
+        if (!me.isDef(selected)) {
             return;
         }
-        if(!me.isDef(selected.nextSibling)){
+        if (!me.isDef(selected.nextSibling)) {
             return;
         }
-        if(me.isDef(selected.preSibling)){
+        if (me.isDef(selected.preSibling)) {
             let updatePre = me.getUpdateObj(me.updateType.update, selected.preSibling.getID(), selected.getNextSiblingID(), null, null, null);
             postData.push(updatePre);
         }
@@ -558,7 +558,7 @@ let sectionTreeObj = {
         postData.push(updateObj);
         let updateNext = me.getUpdateObj(me.updateType.update, selected.getNextSiblingID(), selected.getID(), null, null, null);
         postData.push(updateNext);
-        if(postData.length > 0){
+        if (postData.length > 0) {
             //ajax
             me.sectionTreeAjax(postData, function (rstData) {
                 me.controller.downMove();
@@ -572,49 +572,49 @@ let sectionTreeObj = {
         updateObj.updateType = '';
         updateObj.updateData = Object.create(null);
         updateObj.updateData.rationRepId = pageOprObj.rationLibId;
-        if(this.isDef(updateType)){
+        if (this.isDef(updateType)) {
             updateObj.updateType = updateType;
         }
-        if(this.isDef(id)){
+        if (this.isDef(id)) {
             updateObj.updateData.ID = id;
         }
-        if(this.isDef(nid)){
+        if (this.isDef(nid)) {
             updateObj.updateData.NextSiblingID = nid;
         }
-        if(this.isDef(pid)){
+        if (this.isDef(pid)) {
             updateObj.updateData.ParentID = pid;
         }
-        if(this.isDef(name)){
+        if (this.isDef(name)) {
             updateObj.updateData.name = name;
         }
-        if(this.isDef(deleted)){
+        if (this.isDef(deleted)) {
             updateObj.updateData.isDeleted = true;
         }
         return updateObj;
     },
     sectionTreeAjax: function (postData, scFunc, errFunc) {
-        CommonAjax.post('api/updateNodes', {updateData: postData, lastOpr: userAccount}, scFunc, errFunc);
+        CommonAjax.post('api/updateNodes', { updateData: postData, lastOpr: userAccount }, scFunc, errFunc);
     },
     initTools: function (node) {
-        if(this.isDef(node)){
-            explanatoryOprObj.setAttribute(explanatoryOprObj.currentTreeNode ? explanatoryOprObj.currentTreeNode : node, node, node.data.explanation, node.data.ruleText);
-            explanatoryOprObj.showText(explanatoryOprObj.exEditor, explanatoryOprObj.calcEditor, node.data.explanation, node.data.ruleText);
+        if (this.isDef(node)) {
+            explanatoryOprObj.setAttribute(explanatoryOprObj.currentTreeNode ? explanatoryOprObj.currentTreeNode : node, node, node.data.explanation, node.data.erratumRecord, node.data.ruleText);
+            explanatoryOprObj.showText(node.data.explanation, node.data.erratumRecord, node.data.ruleText);
             //job
-            jobContentOprObj.currentSituation = typeof node.data.jobContentSituation !== 'undefined'? node.data.jobContentSituation : jobContentOprObj.situations.ALL;
+            jobContentOprObj.currentSituation = typeof node.data.jobContentSituation !== 'undefined' ? node.data.jobContentSituation : jobContentOprObj.situations.ALL;
             jobContentOprObj.setAttribute(jobContentOprObj.currentTreeNode ? jobContentOprObj.currentTreeNode : node, node);
             jobContentOprObj.clickUpdate($('#txtareaAll'));
             //fz
-            annotationOprObj.currentSituation = typeof node.data.annotationSituation !== 'undefined'? node.data.annotationSituation : annotationOprObj.situations.ALL;
+            annotationOprObj.currentSituation = typeof node.data.annotationSituation !== 'undefined' ? node.data.annotationSituation : annotationOprObj.situations.ALL;
             annotationOprObj.clickUpdate($('#fzTxtareaAll'));
         }
     },
     //模仿默认点击
     initSelection: function (node, doAfterGetRation = null) {
-        if (node && node.tree){
+        if (node && node.tree) {
             node.tree.selected = node ? node : null;
         }
         let me = this;
-        if(!me.isDef(node)){
+        if (!me.isDef(node)) {
             sheetCommonObj.cleanSheet(rationOprObj.workBook.getActiveSheet(), rationOprObj.setting, -1);
             sheetCommonObj.cleanSheet(rationGLJOprObj.sheet, rationGLJOprObj.setting, -1);
             sheetCommonObj.cleanSheet(rationAssistOprObj.sheet, rationAssistOprObj.setting, -1);
@@ -625,7 +625,7 @@ let sectionTreeObj = {
         //me.workBook.getActiveSheet().setActiveCell(node.serialNo(), me.workBook.getActiveSheet().getActiveColumnIndex());
         me.initTools(node);
         me.refreshBtn(node);
-        if(!me.isDef(node.children) || node.children.length === 0){
+        if (!me.isDef(node.children) || node.children.length === 0) {
             //需要根据章节树下是否含有定额数据判断是否可以删除,在异步获取定额数据前将删除按钮无效化
             me.removeBtn.addClass('disabled');
             rationOprObj.canRations = true;
@@ -668,7 +668,7 @@ let sectionTreeObj = {
         $seach.val(rationCode);
         //去后台搜索该定额
         $.bootstrapLoading.start();
-        CommonAjax.post('/rationRepository/api/getRationItem', {rationLibId: pageOprObj.rationLibId, code: rationCode}, function (rstData) {
+        CommonAjax.post('/rationRepository/api/getRationItem', { rationLibId: pageOprObj.rationLibId, code: rationCode }, function (rstData) {
             if (!rstData) {
                 alert(`不存在定额${rationCode}`);
                 $.bootstrapLoading.end();
@@ -690,7 +690,7 @@ let sectionTreeObj = {
             me.sheet.showRow(sectionRow, GC.Spread.Sheets.VerticalPosition.top);
             $.bootstrapLoading.end();
             const doAfterGetRation = function (rations) {
-                const findRation = _.find(rations, {code: rationCode});
+                const findRation = _.find(rations, { code: rationCode });
                 const rIdx = rations.indexOf(findRation);
                 const rationSheet = rationOprObj.workBook.getActiveSheet();
                 rationSheet.setActiveCell(rIdx, 0);
@@ -705,7 +705,7 @@ let sectionTreeObj = {
 };
 $(document).ready(function () {
     $('#rationSearch').keydown(function (event) {
-        if(event.keyCode === 13){
+        if (event.keyCode === 13) {
             $(this).blur();
             let rationCode = $(this).val().toUpperCase();
             if (rationCode) {