Browse Source

定额库权限管理,清单库recentOpr

zhongzewei 8 years ago
parent
commit
97c94c15ca
24 changed files with 1896 additions and 497 deletions
  1. 2 3
      modules/bills_lib/controllers/bills_lib_controllers.js
  2. 6 3
      modules/bills_lib/controllers/views_permissionController.js
  3. 1318 349
      modules/bills_lib/models/bills_lib_interfaces.js
  4. 10 10
      modules/bills_lib/models/bills_lib_schemas.js
  5. 26 2
      modules/ration_repository/controllers/coe_controller.js
  6. 77 1
      modules/ration_repository/controllers/ration_controller.js
  7. 66 2
      modules/ration_repository/controllers/ration_repository_controller.js
  8. 44 1
      modules/ration_repository/controllers/ration_section_tree_controller.js
  9. 90 1
      modules/ration_repository/controllers/repository_glj_controller.js
  10. 37 0
      modules/ration_repository/controllers/repository_views_controller.js
  11. 28 1
      modules/ration_repository/controllers/search_controller.js
  12. 11 2
      modules/ration_repository/models/repository_map.js
  13. 63 1
      modules/ration_repository/routes/ration_rep_routes.js
  14. 5 6
      web/maintain/bills_lib/html/main.html
  15. 2 1
      web/maintain/bills_lib/html/neirong.html
  16. 4 3
      web/maintain/bills_lib/html/qingdan.html
  17. 3 2
      web/maintain/bills_lib/html/tezheng.html
  18. 61 63
      web/maintain/bills_lib/scripts/bills_lib_ajax.js
  19. 33 34
      web/maintain/bills_lib/scripts/db_controller.js
  20. 4 4
      web/maintain/bills_lib/scripts/set_sheets.js
  21. 1 7
      web/maintain/ration_repository/dinge.html
  22. 1 0
      web/maintain/ration_repository/gongliao.html
  23. 3 0
      web/maintain/ration_repository/js/main.js
  24. 1 1
      web/maintain/ration_repository/main.html

+ 2 - 3
modules/bills_lib/controllers/bills_lib_controllers.js

@@ -30,8 +30,7 @@ module.exports = {
         });
     },
     getStdBillsLib: function(req, res){
-        let data = JSON.parse(req.body.data);
-        billsLibDao.getStdBillsLib(data, function(err, message, stdBillsLib){
+        billsLibDao.getStdBillsLib(function(err, message, stdBillsLib){
             callback(req, res, err, message, stdBillsLib );
         });
     },
@@ -43,7 +42,7 @@ module.exports = {
     },
     deleteStdBillsLib: function(req, res){
         let data = JSON.parse(req.body.data);
-        billsLibDao.deleteStdBillsLib(data.billsLibId, function(err, message){
+        billsLibDao.deleteStdBillsLib(data, function(err, message){
             callback(req, res, err, message, null);
         });
     },

+ 6 - 3
modules/bills_lib/controllers/views_permissionController.js

@@ -11,13 +11,16 @@ class viewsPermContr extends baseController{
                 userID: req.session.managerData.userID});
     }
     redirectStdBills(req, res){
-        res.render("maintain/bills_lib/html/qingdan.html");
+        res.render("maintain/bills_lib/html/qingdan.html",
+            {userAccount: req.session.managerData.username});
     }
     redirectStdJobs(req, res){
-        res.render('maintain/bills_lib/html/neirong.html');
+        res.render('maintain/bills_lib/html/neirong.html',
+            {userAccount: req.session.managerData.username});
     }
     redirectStdItems(req, res){
-        res.render('maintain/bills_lib/html/tezheng.html');
+        res.render('maintain/bills_lib/html/tezheng.html',
+            {userAccount: req.session.managerData.username});
     }
 }
 

File diff suppressed because it is too large
+ 1318 - 349
modules/bills_lib/models/bills_lib_interfaces.js


+ 10 - 10
modules/bills_lib/models/bills_lib_schemas.js

@@ -1,16 +1,16 @@
 let mongoose = require('mongoose');
 
 let stdBillsLibSchema =mongoose.Schema({
-    userId: String,
-    creator: String,
-    lastOperator: String,
-    billsLibId: Number,
-    billsLibName: String,
-    lastOperateDate: Date,
-    createDate: Date,
-    localeType: Number,
-    deleted: Boolean
-},
+        creator: String,
+        createDate: String,
+        recentOpr: [],
+       /* lastOperator: String,
+        lastOperateDate: Date,*/
+        billsLibId: Number,
+        billsLibName: String,
+        localeType: Number,
+        deleted: Boolean
+    },
     {versionKey: false}
 );
 

+ 26 - 2
modules/ration_repository/controllers/coe_controller.js

@@ -2,11 +2,35 @@
  * Created by CSL on 2017/5/19.
  */
 var coeList = require("../models/coe");
-
+import BaseController from "../../common/base/base_controller";
 var callback = function(req,res,err,message, data){
     res.json({error: err, message: message, data: data});
 }
 
+class CoeListController extends BaseController{
+    getCoeList(req,res){
+        coeList.getCoesByLibID(req.body.libID, function(err,data){
+            callback(req, res, err, 'Get coes', data);
+        });
+    }
+
+    saveCoeList(req, res) {
+        coeList.saveToCoeList(JSON.parse(req.body.data), function(isErr, msg, data){
+            callback(req, res, isErr, msg, data);
+        });
+    }
+
+    getCoeItemsByIDs(req,res){
+        //console.log('传入: '+JSON.stringify(JSON.parse(req.body.data)));
+        coeList.getCoeItemsByIDs(JSON.parse(req.body.data), function(err,data){
+            //console.log('返回: '+JSON.stringify(data));
+            callback(req, res, err, 'Get coe', data);
+        });
+    }
+}
+
+export default CoeListController;
+/*
 module.exports ={
     getCoeList: function(req,res){
         coeList.getCoesByLibID(req.body.libID, function(err,data){
@@ -28,4 +52,4 @@ module.exports ={
         });
     }
 
-}
+}*/

+ 77 - 1
modules/ration_repository/controllers/ration_controller.js

@@ -3,10 +3,86 @@
  */
 
 var rationItem = require('../models/ration_item');
+import BaseController from "../../common/base/base_controller";
 var callback = function(req, res, err, message, data){
     res.json({error: err, message: message, data: data});
 };
 
+class RationController extends BaseController{
+    getRationItemsBySection(req, res){
+        var sectionId = req.body.sectionID;
+        rationItem.getRationItemsBySection(sectionId, function(err, message, rst){
+            if (err) {
+                callback(req, res, err, message, null);
+            } else {
+                callback(req, res, err, message, rst);
+            }
+        });
+    }
+    mixUpdateRationItems(req, res){
+        var sectionId = req.body.sectionID,
+            rationLibId = req.body.rationLibId,
+            updateItems = JSON.parse(req.body.updateItems),
+            addItems = JSON.parse(req.body.addItems),
+            removeIds = JSON.parse(req.body.removeIds);
+        rationItem.mixUpdateRationItems(rationLibId, sectionId, updateItems, addItems, removeIds, function(err, message, rst){
+            if (err) {
+                callback(req, res, err, message, null);
+            } else {
+                callback(req, res, err, message, rst);
+            }
+        });
+    }
+    removeRationItems(req, res){
+        var rIds = JSON.parse(req.body.updateItems);
+        if (rIds && rIds.length > 0) {
+            rationItem.removeRationItems(rIds, function(err, message, rst){
+                if (err) {
+                    callback(req, res, err, message, null);
+                } else {
+                    callback(req, res, err, message, rst);
+                }
+            });
+        }
+    }
+    updateRationBasePrc (req, res) {
+        let data = JSON.parse(req.body.data);
+        rationItem.updateRationBasePrc(data, function (err, message) {
+            if(err){
+                callback(req, res, err, message, null);
+            }
+            else{
+                callback(req, res, err, message, null);
+            }
+        })
+    }
+    getRationGljIds (req, res) {
+        let data = JSON.parse(req.body.data);
+        rationItem.getRationGljIds(data, function (err, message, ids) {
+            if(err){
+                callback(req, res, err, message, null);
+            }
+            else{
+                callback(req, res, err, message, ids);
+            }
+        })
+    }
+    getRationsCodes (req, res) {
+        let data = JSON.parse(req.body.data);
+        rationItem.getRationsCodes(data, function (err, message, codes) {
+            if(err){
+                callback(req, res, err, message, null);
+            }
+            else{
+                callback(req, res, err, message, codes);
+            }
+        })
+    }
+}
+
+export default RationController;
+
+/*
 module.exports = {
     getRationItemsBySection: function(req, res){
         var sectionId = req.body.sectionID;
@@ -77,4 +153,4 @@ module.exports = {
             }
         })
     }
-}
+}*/

+ 66 - 2
modules/ration_repository/controllers/ration_repository_controller.js

@@ -2,11 +2,75 @@
  * Created by Tony on 2017/4/20.
  */
 var rationRepository = require("../models/repository_map");
-
+import baseController from "../../common/base/base_controller";
 var callback = function(req, res, err, message, data){
     res.json({error: err, message: message, data: data});
 };
 
+class RationRepositoryController extends baseController{
+    addRationRepository(req,res){
+        var rationObj = JSON.parse(req.body.rationRepObj);
+        rationRepository.addRationRepository(rationObj,function(err,data){
+            if (data) {
+                callback(req, res, err, "has data", data);
+            } else {
+                callback(req, res, err, "no data", null);
+            }
+        })
+    }
+    getDisPlayRationLibs(req, res){
+        rationRepository.getDisplayRationLibs(function(err, data){
+            if (data) {
+                callback(req, res, err, "has data",data);
+            } else {
+                callback(req, res, err, "no data", null);
+            }
+        });
+    }
+    getRealLibName(req,res){
+        var libName = req.body.rationName;
+        rationRepository.getRealLibName(libName,function(err,data){
+            if (data) {
+                callback(req, res, err, "has data", data);
+            } else {
+                callback(req, res, err, "no data", null);
+            }
+        })
+    }
+    getLibIDByName(req,res){
+        rationRepository.getLibIDByName(req.body.libName, function(err,data){
+            if (data) {
+                callback(req, res, err, "has ID", data);
+            } else {
+                callback(req, res, err, "no ID", null);
+            }
+        })
+    }
+    deleteRationLib(req,res){
+        var rationName = req.body.rationName, needSet = {deleted: true, lastOperator: req.body.lastOperator, lastOperateDate: Date.now()}
+        rationRepository.deleteRationLib(rationName, needSet, function(err,data){
+            if (data) {
+                callback(req, res, err, "has data", data);
+            } else {
+                callback(req, res, err, "no data", null);
+            }
+        })
+    }
+    updateRationRepositoryName(req, res) {
+        var orgName = req.body.rationName;
+        var newName = req.body.newName;
+        rationRepository.updateName(orgName, newName, function(err, data){
+            if (data) {
+                callback(req, res, err, "has data", data);
+            } else {
+                callback(req, res, err, "no data", null);
+            }
+        });
+    }
+}
+
+export default RationRepositoryController;
+/*
 module.exports = {
     addRationRepository:function(req,res){
         var rationObj = JSON.parse(req.body.rationRepObj);
@@ -67,4 +131,4 @@ module.exports = {
             }
         });
     }
-}
+}*/

+ 44 - 1
modules/ration_repository/controllers/ration_section_tree_controller.js

@@ -3,9 +3,52 @@
  */
 
 var rationChapterTreeData = require('../models/ration_section_tree');
+import BaseController from "../../common/base/base_controller";
 var callback = function(req,res,err,message, data){
     res.json({error: err, message: message, data: data});
 }
+
+class RationChapterTreeController extends BaseController{
+    getRationChapterTree(req,res){
+        var rationLibId = req.body.rationLibId;
+        var repId = req.body.rationRepositoryId;
+        if (rationLibId) {
+            rationChapterTreeData.getRationChapterTree(rationLibId,function(err,data){
+                callback(req,res,err, "", data);
+            })
+        } else if (repId) {
+            rationChapterTreeData.getRationChapterTreeByRepId(repId,function(err,data){
+                callback(req,res,err,"", data)
+            })
+        }
+    }
+    createNewNode(req, res){
+        var libId = req.body.rationLibId;
+        var lastNodeId = req.body.lastNodeId;
+        var nodeData = JSON.parse(req.body.rawNodeData);
+        rationChapterTreeData.createNewNode(libId, lastNodeId, nodeData, function(err,data){
+            callback(req,res,err,"", data)
+        });
+    }
+    updateNodes(req, res) {
+        var nodes = JSON.parse(req.body.nodes);
+        rationChapterTreeData.updateNodes(nodes, function(err,results){
+            callback(req,res, err, "", results)
+        });
+    }
+    deleteNodes(req, res) {
+        var nodes = JSON.parse(req.body.nodes);
+        var preNodeId = req.body.preNodeId;
+        var preNodeNextId = req.body.preNodeNextId;
+        rationChapterTreeData.removeNodes(nodes, preNodeId, preNodeNextId, function(err,results){
+            callback(req,res, err, "", results)
+        });
+    }
+}
+
+export default RationChapterTreeController;
+
+/*
 module.exports ={
     getRationChapterTree: function(req,res){
         var rationLibId = req.body.rationLibId;
@@ -42,4 +85,4 @@ module.exports ={
             callback(req,res, err, "", results)
         });
     }
-}
+}*/

+ 90 - 1
modules/ration_repository/controllers/repository_glj_controller.js

@@ -3,10 +3,99 @@
  */
 var gljRepository = require("../models/glj_repository");
 let stdgljutil = require("../../../public/cache/std_glj_type_util");
+import BaseController from "../../common/base/base_controller";
 
 var callback = function(req,res,err,message, data){
     res.json({error: err, message: message, data: data});
 }
+
+class RepositoryGljController extends BaseController{
+    getGljDistType (req, res) {
+        let gljDistTypeCache = stdgljutil.getStdGljTypeCacheObj().toArray();
+        if(gljDistTypeCache.length >0 ){
+            callback(req, res, null, '', gljDistTypeCache);
+        }
+        else {
+            callback(req, res, 1, 'Error', null);
+        }
+    }
+    getGljTree(req,res){
+        var rationLibId = req.body.rationLibId;
+        gljRepository.getGljTypes(rationLibId,function(err,data){
+            callback(req,res,err, 'Get Tree', data)
+        });
+    }
+    createNewGljTypeNode(req, res) {
+        var repId = req.body.repositoryId;
+        var lastNodeId = req.body.lastNodeId;
+        var nodeData = JSON.parse(req.body.rawNodeData);
+        gljRepository.createNewNode(repId, lastNodeId, nodeData, function(err, msg, data){
+            callback(req,res,err,msg, data)
+        });
+    }
+    updateGljNodes(req, res) {
+        var nodes = JSON.parse(req.body.nodes);
+        gljRepository.updateNodes(nodes, function(err,results){
+            callback(req,res, err, results)
+        });
+    }
+    deleteGljNodes(req, res) {
+        var nodes = JSON.parse(req.body.nodes);
+        var preNodeId = req.body.preNodeId;
+        var preNodeNextId = req.body.preNodeNextId;
+        gljRepository.removeNodes(nodes, preNodeId, preNodeNextId, function(err,results){
+            callback(req,res, err, results)
+        });
+    }
+    getGljItems(req, res) {
+        var repId = req.body.repositoryId,
+            gljType = req.body.type,
+            gljCode = req.body.code;
+        if (gljCode) {
+            gljRepository.getGljItem(repId, gljCode, function(err, data){
+                callback(req,res,err,'Get Items', data)
+            });
+        } else if (gljType) {
+            gljRepository.getGljItemByType(repId, gljType, function(err, data){
+                callback(req,res,err,'Get Types', data)
+            });
+        } else {
+            gljRepository.getGljItemsByRep(repId, function(err, data){
+                callback(req,res,err,'Get Items',data)
+            });
+        }
+    }
+    getGljItemsByIds(req, res) {
+        var gljIds = JSON.parse(req.body.gljIds);
+        gljRepository.getGljItems(gljIds, function(err, data){
+            callback(req,res,err,'Get Items',data)
+        });
+    }
+    getGljItemsByCodes(req, res) {
+        var gljCodes = JSON.parse(req.body.gljCodes),
+            repId = req.body.repId;
+        gljRepository.getGljItemsByCode(repId, gljCodes, function(err, data){
+            callback(req,res,err,'Get Items',data)
+        });
+    }
+    mixUpdateGljItems(req, res){
+        var repId = req.body.repositoryId,
+            updateItems = JSON.parse(req.body.updateItems),
+            addItems = JSON.parse(req.body.addItems),
+            removeIds = JSON.parse(req.body.removeIds);
+        gljRepository.mixUpdateGljItems(repId, updateItems, addItems, removeIds, function(err, message, rst){
+            if (err) {
+                callback(req, res, err, message, null);
+            } else {
+                callback(req, res, err, message, rst);
+            }
+        });
+    }
+}
+
+export default RepositoryGljController;
+
+/*
 module.exports ={
     getGljDistType: function (req, res) {
         let gljDistTypeCache = stdgljutil.getStdGljTypeCacheObj().toArray();
@@ -89,4 +178,4 @@ module.exports ={
             }
         });
     }
-}
+}*/

+ 37 - 0
modules/ration_repository/controllers/repository_views_controller.js

@@ -0,0 +1,37 @@
+/**
+ * Created by Zhong on 2017/8/3.
+ */
+import BaseController from "../../common/base/base_controller";
+
+class ViewsController extends BaseController{
+    redirectMain(req, res){
+        res.render('maintain/ration_repository/main.html',
+            {
+                userAccount: req.session.managerData.username,
+                userID: req.session.managerData.userID
+            });
+    }
+    redirectRation(req, res){
+        res.render('maintain/ration_repository/dinge.html',
+            {
+                userAccount: req.session.managerData.username,
+                userID: req.session.managerData.userID
+            });
+    }
+    redirectGlj(req, res){
+        res.render('maintain/ration_repository/gongliao.html',
+            {
+                userAccount: req.session.managerData.username,
+                userID: req.session.managerData.userID
+            });
+    }
+    redirectCoeList(req, res){
+        res.render('maintain/ration_repository/fuzhu.html',
+            {
+                userAccount: req.session.managerData.username,
+                userID: req.session.managerData.userID
+            });
+    }
+}
+
+export default ViewsController;

+ 28 - 1
modules/ration_repository/controllers/search_controller.js

@@ -2,10 +2,37 @@
  * Created by Mai on 2017/6/5.
  */
 var rationItem = require('../models/ration_item');
+import BaseController from "../../common/base/base_controller";
 var callback = function(req, res, err, message, data){
     res.json({error: err, message: message, data: data});
 };
 
+class SearchController extends BaseController{
+    getRationItem (req, res) {
+        var rId = req.body.rationLibId, code = req.body.code;
+        var rationData = {}
+        rationItem.getRationItem(rId, code).then(function (result) {
+            rationData = result._doc;
+            callback(req, res, null, '', rationData);
+        }).catch(function (err, message) {
+            callback(req, res, err, message, null);
+        })
+    }
+    findRation (req, res) {
+        var rId = req.body.rationLibId, keyword = req.body.keyword;
+        rationItem.findRation(rId, keyword, function (err, message, rst) {
+            if (err) {
+                callback(req, res, err, message, null);
+            } else {
+                callback(req, res, 0, '', rst);
+            }
+        });
+    }
+}
+
+export default SearchController;
+
+/*
 module.exports = {
     getRationItem: function (req, res) {
         var rId = req.body.rationLibId, code = req.body.code;
@@ -27,4 +54,4 @@ module.exports = {
             }
         });
     }
-};
+};*/

+ 11 - 2
modules/ration_repository/models/repository_map.js

@@ -4,6 +4,7 @@
  */
 var mongoose = require('mongoose');
 var dbm = require("../../../config/db/db_manager");
+let async = require("async");
 //var stringUtil = require('../../../public/stringUtil');
 var rationLibdb = dbm.getCfgConnection("scConstruct");
 var Schema = mongoose.Schema;
@@ -13,6 +14,10 @@ var RepositoryMapSchema = new Schema({
     "appType" : String, //如:"建筑" / "公路"
     "localeType": Number, //如 各个省份 / 部颁
     "descr" : String,
+    "creator": String,
+    "createDate": Date,
+    "lastOperator": String,
+    "lastOperateDate": Date,
     "deleted": Boolean
 });
 var counter = require('../../../public/counter/counter');
@@ -25,6 +30,10 @@ function createNewLibModel(rationLibObj){
     rst.appType = rationLibObj.appType?rationLibObj.appType:'construct';
     rst.localeType = rationLibObj.localeType?rationLibObj.localeType:'';
     rst.descr = rationLibObj.descr;
+    rst.creator = rationLibObj.creator;
+    rst.lastOperator = rationLibObj.lastOperator;
+    rst.createDate = Date.now();
+    rst.lastOperateDate = Date.now();
     rst.deleted = false;
     return rst;
 }
@@ -105,10 +114,10 @@ rationRepositoryDao.prototype.updateName = function(orgName,newName,callback){
     });
 }
 
-rationRepositoryDao.prototype.deleteRationLib = function(rationName,callback){
+rationRepositoryDao.prototype.deleteRationLib = function(rationName, needSet,  callback){
     rationRepository.find({"dispName":rationName, "deleted": false}, function(err, data){
         if (data.length == 1) {
-            rationRepository.update({dispName:rationName},{$set:{deleted: true}},function(err){
+            rationRepository.update({dispName:rationName, deleted: false},{$set: needSet},function(err){
                 if(err) callback("err",false);
                 else callback(false,"ok")
             })

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

@@ -4,17 +4,79 @@
 var express = require("express");
 var apiRouter =express.Router();
 //var _rootDir = __dirname;
+import ViewsController from "../controllers/repository_views_controller";
+import RationRepositoryController from "../controllers/ration_repository_controller";
+import RationChapterTreeController from "../controllers/ration_section_tree_controller";
+import RationController from "../controllers/ration_controller";
+import RepositoryGljController from "../controllers/repository_glj_controller";
+import CoeListController from "../controllers/coe_controller";
+import SearchController from "../controllers/search_controller";
+let viewsController = new ViewsController();
+let rationRepositoryController = new RationRepositoryController();
+let rationChapterTreeController = new RationChapterTreeController();
+let rationController = new RationController();
+let coeListController = new CoeListController();
+let searchController = new SearchController();
+let repositoryGljController = new RepositoryGljController();
 
+/*
 var rationRepositoryController = require("../controllers/ration_repository_controller");
 var rationChapterTreeController = require("../controllers/ration_section_tree_controller");
 var rationController = require("../controllers/ration_controller");
 var repositoryGljController = require("../controllers/repository_glj_controller");
 var coeListController = require("../controllers/coe_controller");
 var searchController = require('../controllers/search_controller');
+*/
 
 
 module.exports =  function (app) {
 
+    app.get('/rationRepository/main', viewsController.auth, viewsController.init, viewsController.redirectMain);
+    app.get('/rationRepository/ration',viewsController.auth, viewsController.init, viewsController.redirectRation);
+    app.get('/rationRepository/lmm', viewsController.auth, viewsController.init, viewsController.redirectGlj);
+
+    app.get('/rationRepository/coeList', viewsController.auth, viewsController.init, viewsController.redirectCoeList);
+
+    apiRouter.post("/getRationDisplayNames",rationRepositoryController.auth, rationRepositoryController.init, rationRepositoryController.getDisPlayRationLibs);
+    apiRouter.post("/editRationLibs",rationRepositoryController.auth, rationRepositoryController.init, rationRepositoryController.updateRationRepositoryName);
+    apiRouter.post("/addRationRepository",rationRepositoryController.auth, rationRepositoryController.init, rationRepositoryController.addRationRepository);
+    apiRouter.post("/deleteRationLibs",rationRepositoryController.auth, rationRepositoryController.init, rationRepositoryController.deleteRationLib);
+    apiRouter.post("/getRealLibName",rationRepositoryController.auth, rationRepositoryController.init, rationRepositoryController.getRealLibName);
+    apiRouter.post("/getLibIDByName",rationRepositoryController.auth, rationRepositoryController.init, rationRepositoryController.getLibIDByName);
+
+    apiRouter.post("/getRationTree",rationChapterTreeController.auth, rationChapterTreeController.init, rationChapterTreeController.getRationChapterTree);
+    apiRouter.post("/createNewNode",rationChapterTreeController.auth, rationChapterTreeController.init, rationChapterTreeController.createNewNode);
+    apiRouter.post("/updateNodes",rationChapterTreeController.auth, rationChapterTreeController.init, rationChapterTreeController.updateNodes);
+    apiRouter.post("/deleteNodes",rationChapterTreeController.auth, rationChapterTreeController.init, rationChapterTreeController.deleteNodes);
+
+    apiRouter.post("/getRationItems",rationController.auth, rationController.init, rationController.getRationItemsBySection);
+    apiRouter.post("/mixUpdateRationItems",rationController.auth, rationController.init, rationController.mixUpdateRationItems);
+    apiRouter.post("/updateRationBasePrc",rationController.auth, rationController.init, rationController.updateRationBasePrc);
+    apiRouter.post("/getRationGljIds",rationController.auth, rationController.init, rationController.getRationGljIds);
+    apiRouter.post("/getRationsCodes",rationController.auth, rationController.init, rationController.getRationsCodes);
+
+    apiRouter.post("/createNewGljTypeNode",repositoryGljController.auth, repositoryGljController.init, repositoryGljController.createNewGljTypeNode);
+    apiRouter.post("/updateGljNodes",repositoryGljController.auth, repositoryGljController.init, repositoryGljController.updateGljNodes);
+    apiRouter.post("/deleteGljNodes",repositoryGljController.auth, repositoryGljController.init, repositoryGljController.deleteGljNodes);
+    apiRouter.post("/getGljDistType",repositoryGljController.auth, repositoryGljController.init, repositoryGljController.getGljDistType);
+    apiRouter.post("/getGljTree",repositoryGljController.auth, repositoryGljController.init, repositoryGljController.getGljTree);
+    apiRouter.post("/getGljItems",repositoryGljController.auth, repositoryGljController.init, repositoryGljController.getGljItems);
+    apiRouter.post("/mixUpdateGljItems",repositoryGljController.auth, repositoryGljController.init, repositoryGljController.mixUpdateGljItems);
+    apiRouter.post("/getGljItemsByIds",repositoryGljController.auth, repositoryGljController.init, repositoryGljController.getGljItemsByIds);
+    apiRouter.post("/getGljItemsByCodes",repositoryGljController.auth, repositoryGljController.init, repositoryGljController.getGljItemsByCodes);
+
+    apiRouter.post("/getCoeList",coeListController.auth, coeListController.init, coeListController.getCoeList);
+    apiRouter.post("/saveCoeList",coeListController.auth, coeListController.init, coeListController.saveCoeList);
+    apiRouter.post("/getCoeItemsByIDs",coeListController.auth, coeListController.init, coeListController.getCoeItemsByIDs);
+
+    apiRouter.post('/getRationItem',searchController.auth, searchController.init, searchController.getRationItem);
+    apiRouter.post('/findRation', searchController.auth, searchController.init, searchController.findRation);
+
+    app.use("/rationRepository/api",apiRouter);
+}
+
+/*module.exports =  function (app) {
+
     app.get('/rationRepository/main', function(req, res) {
         res.render('maintain/ration_repository/main.html',
             {
@@ -81,4 +143,4 @@ module.exports =  function (app) {
     apiRouter.post('/findRation', searchController.findRation);
 
     app.use("/rationRepository/api",apiRouter);
-}
+}*/

+ 5 - 6
web/maintain/bills_lib/html/main.html

@@ -129,15 +129,14 @@
     autoFlashHeight();
 </script>
 <script>
-    let userId = '<%= userID %>';
-    //let userAccount = '<%= userAccount %>';
-    mainAjax.getStdBillsLib(userId);
+    let userAccount = '<%= userAccount %>';
+    mainAjax.getStdBillsLib();
     $(document).ready(function(){
         //main 增删改
         $("#createA").click(function(){
             let billsLibName = $("#createText").val();
             if(billsLibName){
-                mainAjax.createStdBillsLib(userId, billsLibName);
+                mainAjax.createStdBillsLib(userAccount, billsLibName);
                 $("#createText").val("");
             }
             else{
@@ -151,7 +150,7 @@
        });
         $("#deleteA").click(function(){
             let deleteId = $(this).attr("deleteId");
-            mainAjax.deleteStdBillsLib(deleteId);
+            mainAjax.deleteStdBillsLib(userAccount, deleteId);
         });
 
        $("#showArea").on("click", "[data-target = '#edit']", function(){
@@ -164,7 +163,7 @@
             let newName = $("#renameText").val();
             let renameId = $(this).attr("renameId");
             if(newName){
-                mainAjax.renameStdBillsLib(renameId, newName);
+                mainAjax.renameStdBillsLib(userAccount, renameId, newName);
                 $("#renameText").val("");
             }
             else {

+ 2 - 1
web/maintain/bills_lib/html/neirong.html

@@ -201,6 +201,7 @@
     <SCRIPT type="text/javascript">
         let billsLibId = getQueryString("billsLibId");
         tools.redirect(billsLibId, 'stdBillsmain');
+        let userAccount = '<%= userAccount%>'
         let spreadAllJobs = new GC.Spread.Sheets.Workbook($('#spreadAllJobs')[0], {sheetCount: 1});
         let orgJobData;
         let maxJobNumer;
@@ -310,7 +311,7 @@
                 }
                 let encapDatas = tools.encapTotalJobsDatas(sheet, totalJobs, uncrossedDatas, crossedDatas);
                 if(encapDatas.updateDatas.length > 0 || encapDatas.createDatas.length >0){
-                    jobsAjax.pasteJobs(encapDatas, function(datas){
+                    jobsAjax.pasteJobs(userAccount, billsLibId, encapDatas, function(datas){
                         pasteController.pasteJobsFront(sheet, totalJobs,datas);
                     });
                 }

+ 4 - 3
web/maintain/bills_lib/html/qingdan.html

@@ -243,6 +243,7 @@
 </body>
 <script type="text/javascript">
     autoFlashHeight();
+    let userAccount = '<%= userAccount %>';
     let maxJobsNumber;
     let maxItemsNumber;
     let orgJobData;
@@ -669,7 +670,7 @@
                     sheet.clear(i, 0, 1, sheet.getColumnCount(), GC.Spread.Sheets.SheetArea.viewport,GC.Spread.Sheets.StorageType.data);
                 }
             }
-            billsAjax.pasteBills(billsLibId, validDatas);
+            billsAjax.pasteBills(userAccount, billsLibId, validDatas);
             setSheet.setMaxRowCount(sheet, sheetBillsDatas);
         });
     }
@@ -716,7 +717,7 @@
                 }
                 let pasteDatas = tools.encapData(uncrossedDatas, crossedDatas, controller, totalJobs);
                 if(pasteDatas.updateDatas.length > 0 || pasteDatas.createDatas.length > 0){
-                    billsAjax.pasteRel(pasteDatas.updateDatas, pasteDatas.createDatas, 'jobs', function(datas){
+                    billsAjax.pasteRel(userAccount, billsLibId, pasteDatas.updateDatas, pasteDatas.createDatas, 'jobs', function(datas){
                         pasteController.frontOperator(sheet, setting, controller, totalJobs, datas);
                     });
                 }
@@ -774,7 +775,7 @@
                 }
                 let pasteDatas = tools.encapItemsData(uncrossedDatas, crossedDatas, controller, totalItems);
                 if(pasteDatas.updateDatas.length > 0 || pasteDatas.createDatas.length > 0){
-                    billsAjax.pasteRel(pasteDatas.updateDatas, pasteDatas.createDatas, 'items', function(datas){
+                    billsAjax.pasteRel(userAccount, billsLibId, pasteDatas.updateDatas, pasteDatas.createDatas, 'items', function(datas){
                         pasteController.frontItemsRelOperator(sheet, setting, controller, totalItems, datas);
                     });
                 }

+ 3 - 2
web/maintain/bills_lib/html/tezheng.html

@@ -205,6 +205,7 @@
         let spreadVal = new GC.Spread.Sheets.Workbook($('#spreadEigenvalue')[0], {sheetCount: 1});
         let billsLibId = getQueryString('billsLibId');
         tools.redirect(billsLibId, 'stdBillsmain');
+        let userAccount = '<%= userAccount%>'
         let selectedId;
         let orgValue;
         let orgItemData;
@@ -359,7 +360,7 @@
                 }
                 let encapDatas = tools.encapTotalItemsDatas(sheet, totalItems, uncrossedDatas, crossedDatas);
                 if(encapDatas.updateDatas.length > 0 || encapDatas.createDatas.length > 0){
-                    itemsAjax.pasteItems(encapDatas, function(datas){
+                    itemsAjax.pasteItems(userAccount, billsLibId, encapDatas, function(datas){
                         pasteController.pasteItemsFront(sheet, totalItems, datas);
                     });
                 }
@@ -419,7 +420,7 @@
                 }
                 let encapDatas = tools.encapValues(sheet, totalItems, uncrossedDatas, crossedDatas);
                 if(encapDatas.updateDatas.length > 0 || encapDatas.createDatas.length > 0){
-                    itemsAjax.pasteValues(encapDatas, function(datas){
+                    itemsAjax.pasteValues(userAccount, billsLibId, encapDatas, function(datas){
                         pasteController.pasteValueFront(sheet, totalItems, datas);
                     });
                 }

+ 61 - 63
web/maintain/bills_lib/scripts/bills_lib_ajax.js

@@ -32,11 +32,10 @@ var mainAjax = {
             }
         });
     },
-    getStdBillsLib: function(userId){
+    getStdBillsLib: function(){
         $.ajax({
             type: "post",
             url: "/stdBillsEditor/getStdBillsLib",
-            data: {data: JSON.stringify({userId: userId})},
             dataType: "json",
             success: function(result){
                 if(result.data){
@@ -61,11 +60,11 @@ var mainAjax = {
             }
         });
     },
-    createStdBillsLib: function(userId, billsLibName){
+    createStdBillsLib: function(userAccount, billsLibName){
         $.ajax({
             type: "POST",
             url: "/stdBillsEditor/createStdBillsLib",
-            data: {data: JSON.stringify({userId: userId, name: billsLibName}) },
+            data: {data: JSON.stringify({userAccount: userAccount, name: billsLibName}) },
             dataType: "json",
             success: function(result){
                 if(!result.error){
@@ -84,11 +83,11 @@ var mainAjax = {
             }
         });
     },
-    deleteStdBillsLib: function(billsLibId){
+    deleteStdBillsLib: function(lastOperator, billsLibId){
         $.ajax({
             type: "POST",
             url: "/stdBillsEditor/deleteStdBillsLib",
-            data: {data: JSON.stringify({billsLibId: billsLibId})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId})},
             dataType: "json",
             success: function(result){
                 if(!result.error){
@@ -98,11 +97,11 @@ var mainAjax = {
             }
         });
     },
-    renameStdBillsLib: function(billsLibId, newName){
+    renameStdBillsLib: function(lastOperator, billsLibId, newName){
         $.ajax({
             type: "post",
             url: "/stdBillsEditor/renameStdbillsLib",
-            data: {data: JSON.stringify({id: billsLibId, value: newName})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, id: billsLibId, value: newName})},
             dataType: "json",
             success: function(result){
                 if(!result.error){
@@ -156,11 +155,11 @@ var billsAjax = {
             }
         });
     },
-    createBills: function(billsLibId, newId, pid, nid, updatePreData, callback){
+    createBills: function(lastOperator, billsLibId, newId, pid, nid, updatePreData, callback){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/createBills',
-            data: {data: JSON.stringify({billsLibId: billsLibId, newId: newId, ParentID: pid, NextSiblingID: nid, updatePreData: updatePreData})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, newId: newId, ParentID: pid, NextSiblingID: nid, updatePreData: updatePreData})},
             dataType: 'json',
             success: function(result){
                 if(!result.error){
@@ -171,11 +170,11 @@ var billsAjax = {
             }
         });
     },
-    upMove: function(billsLibId, updateDatas, callback){
+    upMove: function(lastOperator, billsLibId, updateDatas, callback){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/upMove',
-            data: {data: JSON.stringify({billsLibId: billsLibId, updateDatas: updateDatas})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateDatas: updateDatas})},
             dataType: 'json',
             success: function(result){
                 if(!result.error && callback){
@@ -184,11 +183,11 @@ var billsAjax = {
             }
         });
     },
-    downMove: function (billsLibId, updateDatas, callback) {
+    downMove: function (lastOperator, billsLibId, updateDatas, callback) {
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/downMove',
-            data: {data: JSON.stringify({billsLibId: billsLibId, updateDatas: updateDatas})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateDatas: updateDatas})},
             dataType: 'json',
             success: function(result){
                 if(!result.error && callback){
@@ -218,25 +217,24 @@ var billsAjax = {
             }
         });
     },
-    upLevel: function(billsLibId, updateDatas, callback){
+    upLevel: function(lastOperator, billsLibId, updateDatas, callback){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/upLevel',
-            data: {data: JSON.stringify({billsLibId: billsLibId, updateDatas: updateDatas})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateDatas: updateDatas})},
             dataType: 'json',
             success: function (result) {
-                console.log(`ssc`);
                 if(!result.error && callback){
                     callback();
                 }
             }
         })
     },
-    downLevel: function (billsLibId, updateDatas, callback) {
+    downLevel: function (lastOperator, billsLibId, updateDatas, callback) {
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/downLevel',
-            data: {data: JSON.stringify({billsLibId: billsLibId, updateDatas: updateDatas})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateDatas: updateDatas})},
             dataType: 'json',
             success: function (result) {
                 if(!result.error && callback){
@@ -245,11 +243,11 @@ var billsAjax = {
             }
         })
     },
-    deleteBills: function(billsLibId, deleteIds, updateNode, callback){
+    deleteBills: function(lastOperator, billsLibId, deleteIds, updateNode, callback){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/deleteBills',
-            data: {data: JSON.stringify({billsLibId: billsLibId, deleteIds: deleteIds, updateNode: updateNode})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, deleteIds: deleteIds, updateNode: updateNode})},
             dataType: 'json',
             success: function(result){
                 if(!result.error){
@@ -262,33 +260,33 @@ var billsAjax = {
 
         });
     },
-    updateBills: function(billsLibId, updateId, field, data){
+    updateBills: function(lastOperator, billsLibId, updateId, field, data){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/updateBills',
-            data: {data: JSON.stringify({billsLibId: billsLibId, updateId: updateId, field: field, data: data})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateId: updateId, field: field, data: data})},
             dataType: 'json',
             success: function(result){
 
             }
         });
     },
-    removeTotal: function (billsLibId, billsIds, delIds, field) {
+    removeTotal: function (lastOperator, billsLibId, billsIds, delIds, field) {
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/removeTotal',
-            data: {data: JSON.stringify({billsLibId: billsLibId, billsIds: billsIds, delIds: delIds, field: field})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, billsIds: billsIds, delIds: delIds, field: field})},
             dataType: 'json',
             success: function(result){
 
             }
         })
     },
-    updateSerialNo: function (billsLibId, billsId, updateArr, field, callback) {
+    updateSerialNo: function (lastOperator, billsLibId, billsId, updateArr, field, callback) {
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/updateSerialNo',
-            data: {data: JSON.stringify({billsLibId: billsLibId, billsId: billsId, updateArr: updateArr, field: field})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, billsId: billsId, updateArr: updateArr, field: field})},
             dataType: 'json',
             success: function (result) {
                 if(!result.error && callback){
@@ -297,11 +295,11 @@ var billsAjax = {
             }
         });
     },
-    updateBillsArr: function(billsLibId, updateId, orgId, newId, type, classify, callback){
+    updateBillsArr: function(lastOperator, billsLibId, updateId, orgId, newId, type, classify, callback){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/updateBillsArr',
-            data: {data: JSON.stringify({billsLibId: billsLibId, updateId: updateId, orgId: orgId, newId: newId, type: type, classify: classify})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateId: updateId, orgId: orgId, newId: newId, type: type, classify: classify})},
             dataType: 'json',
             success: function(result){
                 if(!result.error && callback){
@@ -310,33 +308,33 @@ var billsAjax = {
             }
         });
     },
-    pasteBills: function(billsLibId, datas){
+    pasteBills: function(lastOperator, billsLibId, datas){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/pasteBills',
-            data: {data: JSON.stringify({billsLibId: billsLibId, datas: datas})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, datas: datas})},
             dataType: 'json',
             success: function(result){
 
             }
         });
     },
-    updateRecharge: function(billsLibId, updateId, data){
+    updateRecharge: function(lastOperator, billsLibId, updateId, data){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/updateRecharge',
-            data: {data: JSON.stringify({billsLibId: billsLibId, updateId: updateId, data: data})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateId: updateId, data: data})},
             dataType: 'json',
             success: function(result){
 
             }
         });
     },
-    pasteRel: function (updateDatas, createDatas, field, callback) {
+    pasteRel: function (lastOperator, billsLibId, updateDatas, createDatas, field, callback) {
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/pasteRel',
-            data: {data:JSON.stringify({updateDatas: updateDatas, createDatas: createDatas, field: field})},
+            data: {data:JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateDatas: updateDatas, createDatas: createDatas, field: field})},
             dataType: 'json',
             success: function(result){
                 if(!result.error && callback){
@@ -374,11 +372,11 @@ var jobsAjax = {
             }
         });
     },
-    createJobContent: function(billsLibId, data, serialNo, callback){
+    createJobContent: function(lastOperator, billsLibId, data, serialNo, callback){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/createJobContent',
-            data: {data: JSON.stringify({billsLibId: billsLibId, data: data, serialNo: serialNo})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, data: data, serialNo: serialNo})},
             dataType: 'json',
             success: function(result){
                 if(!result.error && callback){
@@ -387,33 +385,33 @@ var jobsAjax = {
             }
         });
     },
-    updateJobContent: function(billsLibId, id, field, data){
+    updateJobContent: function(lastOperator, billsLibId, id, field, data){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/updateJobContent',
-            data: {data: JSON.stringify({billsLibId: billsLibId, updateId: id, field: field, data: data })},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateId: id, field: field, data: data })},
             dataType: 'json',
             success: function(result){
 
             }
         });
     },
-    deleteJobContent: function(billsLibId, ids){
+    deleteJobContent: function(lastOperator, billsLibId, ids){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/deleteJobContent',
-            data: {data: JSON.stringify({billsLibId: billsLibId, ids: ids})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, ids: ids})},
             dataType: 'json',
             success: function(result){
 
             }
         });
     },
-    pasteJobs: function(pasteDatas, callback){
+    pasteJobs: function(lastOperator, billsLibId, pasteDatas, callback){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/pasteJobs',
-            data: {data: JSON.stringify({pasteDatas: pasteDatas})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, pasteDatas: pasteDatas})},
             dataType: 'json',
             success: function(result){
                 if(!result.error && callback){
@@ -423,11 +421,11 @@ var jobsAjax = {
 
         });
     },
-    edCreateJob: function(billsLibId, billsId, data, code, serialNo, callback){
+    edCreateJob: function(lastOperator, billsLibId, billsId, data, code, serialNo, callback){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/edCreateJob',
-            data: {data: JSON.stringify({billsLibId: billsLibId, billsId:billsId, data: data, code: code, serialNo: serialNo})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, billsId:billsId, data: data, code: code, serialNo: serialNo})},
             dataType: 'json',
             success: function(result){
                 if(!result.error && callback){
@@ -436,11 +434,11 @@ var jobsAjax = {
             }
         });
     },
-    edUpdateJob: function(billsLibId, billsId, content, code, orgJobId, callback){
+    edUpdateJob: function(lastOperator, billsLibId, billsId, content, code, orgJobId, callback){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/edUpdateJob',
-            data: {data: JSON.stringify({billsLibId: billsLibId, billsId:billsId, content: content, code: code, orgJobId: orgJobId})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, billsId:billsId, content: content, code: code, orgJobId: orgJobId})},
             dataType: 'json',
             success: function(result){
                 if(!result.error && callback){
@@ -467,11 +465,11 @@ var itemsAjax = {
             }
         });
     },
-    createItemCharacter: function(billsLibId,  data, code, callback){
+    createItemCharacter: function(lastOperator, billsLibId,  data, code, callback){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/createItemCharacter',
-            data: {data: JSON.stringify({billsLibId: billsLibId, data: data, code: code})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, data: data, code: code})},
             dataType: 'json',
             success: function(result){
                 if(!result.error && callback){
@@ -480,44 +478,44 @@ var itemsAjax = {
             }
         });
     },
-    updateItemCharacter: function(billsLibId, id, field, data){
+    updateItemCharacter: function(lastOperator, billsLibId, id, field, data){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/updateItemCharacter',
-            data: {data: JSON.stringify({billsLibId: billsLibId, updateId: id, field: field, data: data })},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateId: id, field: field, data: data })},
             dataType: 'json',
             success: function(result){
 
             }
         });
     },
-    updateValue: function(billsLibId, id, data, deleteCodes, type){
+    updateValue: function(lastOperator, billsLibId, id, data, deleteCodes, type){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/updateValue',
-            data: {data: JSON.stringify({billsLibId: billsLibId, updateId: id, data: data, type: type, deleteCodes: deleteCodes})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateId: id, data: data, type: type, deleteCodes: deleteCodes})},
             dataType: 'json',
             success: function(reslut){
 
             }
         });
     },
-    deleteItemCharacter: function(billsLibId, ids){
+    deleteItemCharacter: function(lastOperator, billsLibId, ids){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/deleteItemCharacter',
-            data: {data: JSON.stringify({billsLibId: billsLibId, ids: ids})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, ids: ids})},
             dataType: 'json',
             success: function(result){
 
             }
         });
     },
-    pasteItems: function(pasteDatas, callback){
+    pasteItems: function(lastOperator, billsLibId, pasteDatas, callback){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/pasteItems',
-            data: {data: JSON.stringify({pasteDatas: pasteDatas})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, pasteDatas: pasteDatas})},
             dataType: 'json',
             success: function(result){
                 if(!result.error && callback){
@@ -527,11 +525,11 @@ var itemsAjax = {
 
         });
     },
-    pasteValues: function(pasteDatas, callback){
+    pasteValues: function(lastOperator, billsLibId, pasteDatas, callback){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/pasteValues',
-            data: {data: JSON.stringify({pasteDatas: pasteDatas})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, pasteDatas: pasteDatas})},
             dataType: 'json',
             success: function(result){
                 if(!result.error && callback){
@@ -540,11 +538,11 @@ var itemsAjax = {
             }
         });
     },
-    edCreateItem: function(billsLibId, billsId, data, code, serialNo, callback){
+    edCreateItem: function(lastOperator, billsLibId, billsId, data, code, serialNo, callback){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/edCreateItem',
-            data: {data: JSON.stringify({billsLibId: billsLibId, billsId:billsId, data: data, code: code, serialNo: serialNo})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, billsId:billsId, data: data, code: code, serialNo: serialNo})},
             dataType: 'json',
             success: function(result){
                 if(!result.error && callback){
@@ -553,11 +551,11 @@ var itemsAjax = {
             }
         });
     },
-    edUpdateItem: function(billsLibId, billsId, content, code, orgItemId, callback){
+    edUpdateItem: function(lastOperator, billsLibId, billsId, content, code, orgItemId, callback){
         $.ajax({
             type: 'post',
             url: 'stdBillsEditor/edUpdateItem',
-            data: {data: JSON.stringify({billsLibId: billsLibId, billsId:billsId, content: content, code: code, orgItemId: orgItemId})},
+            data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, billsId:billsId, content: content, code: code, orgItemId: orgItemId})},
             dataType: 'json',
             success: function(result){
                 if(!result.error && callback){

+ 33 - 34
web/maintain/bills_lib/scripts/db_controller.js

@@ -8,11 +8,12 @@ var dbController = {
         if(controller.tree.items.length === 0){
             controller.tree.maxNodeID(0);
             let newNodeId = controller.tree.newNodeID();
-            billsAjax.createBills(billsLibId, newNodeId, -1 , -1, null, function(){
+            billsAjax.createBills(userAccount, billsLibId, newNodeId, -1 , -1, null, function(){
                 controller.insert();
                 controller.tree.selected.jobs = new Array();
                 controller.tree.selected.items = new Array();
                 controller.sheet.setTag(controller.tree.selected.serialNo(), 0, newNodeId);
+                sheetBillsDatas = tools.getsheetDatas(controller.sheet, 'bills', controller);
                 tools.btnAction(btn);
                 btn.attr('doing', 'false');
             });
@@ -23,7 +24,7 @@ var dbController = {
                 var updateId = node.getID(), createpid = node.getParentID(), createnid = node.getNextSiblingID();
                 let newNodeId = controller.tree.newNodeID();
                 let updatePreData = {ID: updateId, NextSiblingID: newNodeId};
-                billsAjax.createBills(billsLibId, newNodeId, createpid, createnid, updatePreData, function(){
+                billsAjax.createBills(userAccount, billsLibId, newNodeId, createpid, createnid, updatePreData, function(){
                     controller.insert();
                     controller.tree.selected.jobs = new Array();
                     controller.tree.selected.items = new Array();
@@ -38,7 +39,7 @@ var dbController = {
                 let updateId = updateNode.getID();
                 let newNodeId = controller.tree.newNodeID();
                 let updatePreData = {ID: updateId, NextSiblingID: newNodeId};
-                billsAjax.createBills(billsLibId, newNodeId, -1, -1, updatePreData, function(){
+                billsAjax.createBills(userAccount, billsLibId, newNodeId, -1, -1, updatePreData, function(){
                     controller.insert();
                     controller.tree.selected.jobs = new Array();
                     controller.tree.selected.items = new Array();
@@ -97,8 +98,7 @@ var dbController = {
                     }
                     updateData.push(updateD);
                 }
-                billsAjax.upLevel(billsLibId, updateData, function(){
-                    console.log(`enter upL`);
+                billsAjax.upLevel(userAccount, billsLibId, updateData, function(){
                     tools.btnAction(btn);
                     btn.attr('doing', 'false');
                     controller.upLevel();
@@ -137,7 +137,7 @@ var dbController = {
                     }
                     updateData.push(updateC);
                 }
-                billsAjax.downLevel(billsLibId, updateData, function(){
+                billsAjax.downLevel(userAccount, billsLibId, updateData, function(){
                     tools.btnAction(btn);
                     btn.attr('doing', 'false');
                     controller.downLevel();
@@ -168,7 +168,7 @@ var dbController = {
             };
             getDeleteIds(node);
             let updateNode = node.preSibling ? {ID: node.preSibling.getID(), NextSiblingID: node.getNextSiblingID()} : null;
-            billsAjax.deleteBills(billsLibId, deleteIds, updateNode, function(){
+            billsAjax.deleteBills(userAccount, billsLibId, deleteIds, updateNode, function(){
                 tools.btnAction(btn);
                 btn.attr('doing', 'false');
                 controller.delete();
@@ -228,7 +228,7 @@ var dbController = {
                     }
                     updateData.push(updateC);
                 }
-                billsAjax.upMove(billsLibId, updateData, function(){
+                billsAjax.upMove(userAccount, billsLibId, updateData, function(){
                     tools.btnAction(btn);
                     btn.attr('doing', 'false');
                     controller.upMove();
@@ -265,7 +265,7 @@ var dbController = {
                     };
                     updateData.push(updateC);
                 }
-                billsAjax.downMove(billsLibId, updateData);
+                billsAjax.downMove(userAccount, billsLibId, updateData);
                 tools.btnAction(btn);
                 btn.attr('doing', 'false');
                 controller.downMove();
@@ -286,7 +286,7 @@ var dbController = {
                         sheetBillsDatas.datasIdx['rowIdx'+ args.row][field] = args.editingText;
                     }
                 });
-                billsAjax.updateBills(billsLibId, updateId, field, args.editingText);
+                billsAjax.updateBills(userAccount, billsLibId, updateId, field, args.editingText);
                 //sheetBillsDatas = tools.getsheetDatas(controller.sheet, 'bills', controller);
             }
             else {
@@ -633,7 +633,7 @@ var tools = {
                     delJobsIds.push(obj.job.data.id)
                 }
             });
-            jobsAjax.deleteJobContent(delJobsIds);
+            jobsAjax.deleteJobContent(userAccount, billsLibId, delJobsIds);
             tools.clearData(jobsSheet);
             tools.orderReshowData(jobsSheet, controller.tree.selected.jobs, jobsSetting, 'job', true);
         }
@@ -645,7 +645,7 @@ var tools = {
                     delItemsIds.push(obj.item.data.id)
                 }
             });
-            itemsAjax.deleteItemCharacter(delItemsIds);
+            itemsAjax.deleteItemCharacter(userAccount, billsLibId, delItemsIds);
             tools.clearData(itemsSheet);
             tools.orderReshowData(itemsSheet, controller.tree.selected.items, itemsSetting, 'item', true);
         }
@@ -1676,7 +1676,7 @@ var jobsController = {
             //update--
             let serialNo = tools.getSerialNo(controller.tree.selected.jobs);
             //--
-            jobsAjax.edCreateJob(billsLibId, controller.tree.selected.getID(), newData, maxJobsNumber, serialNo, function(newJobId){
+            jobsAjax.edCreateJob(userAccount, billsLibId, controller.tree.selected.getID(), newData, maxJobsNumber, serialNo, function(newJobId){
                 var newJobData, newJob;
                 newJobData = {id: newJobId, content: newData, code: maxJobsNumber};
                 newJob = createObj.newJob(newJobData);
@@ -1723,7 +1723,7 @@ var jobsController = {
                     job.count++;
                     controller.tree.selected.jobs.splice(index, 1);
                     controller.tree.selected.jobs.splice(index, 0, {job: job, serialNo: serialNo});//update--
-                    billsAjax.updateBillsArr(billsLibId, controller.tree.selected.getID(), id, job.data.id, 'update', 'jobs');
+                    billsAjax.updateBillsArr(userAccount, billsLibId, controller.tree.selected.getID(), id, job.data.id, 'update', 'jobs');
                     tools.orderReshowData(sheet, controller.tree.selected.jobs, setting, 'job', true);
                 }
                 if(field === 'content' && job.data[field] === newData){
@@ -1732,7 +1732,7 @@ var jobsController = {
                     job.count++;
                     controller.tree.selected.jobs.splice(index, 1);
                     controller.tree.selected.jobs.splice(index, 0, {job: job, serialNo: serialNo});//update--
-                    billsAjax.updateBillsArr(billsLibId, controller.tree.selected.getID(), id, job.data.id, 'update', 'jobs');
+                    billsAjax.updateBillsArr(userAccount, billsLibId, controller.tree.selected.getID(), id, job.data.id, 'update', 'jobs');
                    // tools.reshowData(sheet, controller.tree.selected.jobs, setting, true);//update--
                     tools.orderReshowData(sheet,controller.tree.selected.jobs, setting, 'job', true);
                 }
@@ -1743,8 +1743,7 @@ var jobsController = {
                 maxJobsNumber++;
                 //let serialNo = tools.getSerialNo(controller.tree.selected.jobs);//update--
                 let serialNo = tools.getObj(controller.tree.selected.jobs, id, 'job').serialNo;
-                console.log(`upNe: serialNo: ${serialNo}`);
-                jobsAjax.edUpdateJob(billsLibId, controller.tree.selected.getID(), newData, maxJobsNumber, id, function(newJobId){//update--
+                jobsAjax.edUpdateJob(userAccount, billsLibId, controller.tree.selected.getID(), newData, maxJobsNumber, id, function(newJobId){//update--
                     var newJobData, newJob;
                     newJobData = {id: newJobId, content: newData, code: maxJobsNumber};
                     newJob = createObj.newJob(newJobData);
@@ -1888,7 +1887,7 @@ var itemsController = {
             maxItemsNumber++;
             let serialNo = tools.getSerialNo(controller.tree.selected.items);
             console.log(`billsLibId: ${billsLibId} billsId: ${controller.tree.selected.getID()} content: ${newData} code: ${maxItemsNumber}`);
-            itemsAjax.edCreateItem(billsLibId, controller.tree.selected.getID(), newData, maxItemsNumber, serialNo, function(newItemId){
+            itemsAjax.edCreateItem(userAccount, billsLibId, controller.tree.selected.getID(), newData, maxItemsNumber, serialNo, function(newItemId){
                 let newItemData, newItem;
                 newItemData = {id: newItemId, content: newData, code: maxItemsNumber};
                 newItem = createObj.newItem(newItemData);
@@ -1933,7 +1932,7 @@ var itemsController = {
                     item.count++;
                     controller.tree.selected.items.splice(index, 1);
                     controller.tree.selected.items.splice(index, 0, {item: item, serialNo: serialNo});
-                    billsAjax.updateBillsArr(billsLibId, controller.tree.selected.getID(), id, item.data.id, 'update', 'items');
+                    billsAjax.updateBillsArr(userAccount, billsLibId, controller.tree.selected.getID(), id, item.data.id, 'update', 'items');
                     tools.orderReshowData(sheet, controller.tree.selected.items, setting, 'item', true);
                 }
                 if(field === 'content' && item.data[field] === newData){
@@ -1942,7 +1941,7 @@ var itemsController = {
                     item.count++;
                     controller.tree.selected.items.splice(index, 1);
                     controller.tree.selected.items.splice(index, 0, {item: item, serialNo: serialNo});
-                    billsAjax.updateBillsArr(billsLibId, controller.tree.selected.getID(), id, item.data.id, 'update', 'items');
+                    billsAjax.updateBillsArr(userAccount, billsLibId, controller.tree.selected.getID(), id, item.data.id, 'update', 'items');
                     tools.orderReshowData(sheet, controller.tree.selected.items, setting, 'item', true);
                 }
             });
@@ -1951,7 +1950,7 @@ var itemsController = {
             if(field === 'content'){
                 maxItemsNumber++;
                 let serialNo = tools.getObj(controller.tree.selected.items, id, 'item').serialNo;
-                itemsAjax.edUpdateItem(billsLibId, controller.tree.selected.getID(), newData, maxItemsNumber, id, function(newItemId){
+                itemsAjax.edUpdateItem(userAccount, billsLibId, controller.tree.selected.getID(), newData, maxItemsNumber, id, function(newItemId){
                     var newItemData, newItem;
                     newItemData = {id: newItemId, content: newData, code: maxItemsNumber};
                     newItem = createObj.newItem(newItemData);
@@ -2017,7 +2016,7 @@ var itemsController = {
         controller.tree.selected.items[controller.tree.selected.args.row + 1].serialNo = tempSerialNo;
         updateSelArr.push({id: controller.tree.selected.items[controller.tree.selected.args.row].item.data.id, serialNo: controller.tree.selected.items[controller.tree.selected.args.row].serialNo});
         updateSelArr.push({id: controller.tree.selected.items[controller.tree.selected.args.row + 1].item.data.id, serialNo: controller.tree.selected.items[controller.tree.selected.args.row +1].serialNo});
-        billsAjax.updateSerialNo(billsLibId, controller.tree.selected.getID(), updateSelArr, 'items', function () {
+        billsAjax.updateSerialNo(userAccount, billsLibId, controller.tree.selected.getID(), updateSelArr, 'items', function () {
             tools.orderReshowData(sheet, controller.tree.selected.items, itemsSetting, 'item', true);
             sheet.setActiveCell(controller.tree.selected.args.row +1, controller.tree.selected.args.col);
             controller.tree.selected.args.row = controller.tree.selected.args.row +1;
@@ -2060,7 +2059,7 @@ var valueController = {
                         valueController.createValue(sheet, totalItems, selectedId, field, newValue);
                 }
                 else if(tagId && !isRepeat && newValue !== orgValue){//update
-                        valueController.updateValue(totalItems, tagId, newValue, field);
+                        valueController.updateValue(userAccount, totalItems, tagId, newValue, field);
                 }
                 if(isRepeat){
                     if(tagId && newValue){
@@ -2093,7 +2092,7 @@ var valueController = {
         console.log(`finItem`);
         console.log(totalItems.findItem(id).data);
         totalItems.findItem(id).data.itemValue.push(newData);
-        itemsAjax.updateValue(billsLibId, id, newData, null, 'create');
+        itemsAjax.updateValue(userAccount, billsLibId, id, newData, null, 'create');
     },
 
     updateValue: function(totalItems, tagId, newData, field){
@@ -2111,7 +2110,7 @@ var valueController = {
                 });
                 itemVals.splice(index, 0, updateEle);
             }
-            itemsAjax.updateValue(billsLibId, selectedId, updateData, null, 'update');
+            itemsAjax.updateValue(userAccount, billsLibId, selectedId, updateData, null, 'update');
         }
         else {
             if(typeof newData === 'number'){
@@ -2127,7 +2126,7 @@ var valueController = {
                     });
                     itemVals.splice(index, 0, updateEle);
                 }
-                itemsAjax.updateValue(billsLibId, selectedId, updateData, null, 'update');
+                itemsAjax.updateValue(userAccount, billsLibId, selectedId, updateData, null, 'update');
             }
             else {
                 //编号只能为数字!
@@ -2196,7 +2195,7 @@ var totalJobsController = {
         if(field === 'content'){
             maxJobsNumber++;
             let code = maxJobsNumber;
-            jobsAjax.createJobContent(billsLibId, newData, code, function(newJobId){
+            jobsAjax.createJobContent(userAccount, billsLibId, newData, code, function(newJobId){
                 let newJobData, newJob;
                 newJobData = {id: newJobId, content: newData, code: code};
                 newJob = createObj.newJob(newJobData);
@@ -2211,7 +2210,7 @@ var totalJobsController = {
             //if(typeof newData === 'number'){
             if(!isNaN(parseNum)){
                 maxJobsNumber = maxJobsNumber >= newData ? maxJobsNumber : newData;
-                jobsAjax.createJobContent(billsLibId, '', newData, function(newJobId){
+                jobsAjax.createJobContent(userAccount, billsLibId, '', newData, function(newJobId){
                     let newJobData, newJob;
                     newJobData = {id: newJobId, content: '', code: newData};
                     newJob = createObj.newJob(newJobData);
@@ -2241,7 +2240,7 @@ var totalJobsController = {
                 }
             });
             tools.reshowData(args.sheet, totalJobs.jobsArr, totalJobsSetting, true);
-            jobsAjax.updateJobContent(billsLibId, id, field, newData);
+            jobsAjax.updateJobContent(userAccount, billsLibId, id, field, newData);
         }
     }
 };
@@ -2275,7 +2274,7 @@ var totalItemsController = {
         if(field === 'content'){
             maxItemsNumber++;
             let code = maxItemsNumber;
-            itemsAjax.createItemCharacter(billsLibId, newData, code, function(newItemId){
+            itemsAjax.createItemCharacter(userAccount, billsLibId, newData, code, function(newItemId){
                 var newItemData, newItem;
                 newItemData = {id: newItemId, content: newData, code: code, itemValue: []};
                 newItem = createObj.newItem(newItemData);
@@ -2289,7 +2288,7 @@ var totalItemsController = {
         else {
             if(!isNaN(parseInt(newData))){
                 maxItemsNumber = maxItemsNumber >= newData ? maxItemsNumber : newData;
-                itemsAjax.createItemCharacter(billsLibId, '', newData, function(newItemId){
+                itemsAjax.createItemCharacter(userAccount, billsLibId, '', newData, function(newItemId){
                     var newItemData, newItem;
                     newItemData = {id: newItemId, content: '', code: newData, itemValue: []};
                     newItem = createObj.newItem(newItemData);
@@ -2317,7 +2316,7 @@ var totalItemsController = {
                 }
             });
             tools.reshowData(args.sheet, totalItems.itemsArr, totalItemsSetting, true);
-            itemsAjax.updateItemCharacter(billsLibId, id, field, newData);
+            itemsAjax.updateItemCharacter(userAccount, billsLibId, id, field, newData);
         }
     }
 };
@@ -2337,7 +2336,7 @@ var rechargeController = {
                 }
             }
             getupdateIds(tools.getRoot(selectedNode));*/
-            billsAjax.updateRecharge(billsLibId, updateId, newData);
+            billsAjax.updateRecharge(userAccount, billsLibId, updateId, newData);
         }
         else {
             $('exampleTextarea').val('');
@@ -2349,7 +2348,7 @@ var rechargeController = {
             tempId.push(node.getID());
             var rootNode = tools.getRoot(node);
             if(rootNode.data.recharge && rootNode !== node){
-                billsAjax.updateRecharge(billsLibId, tempId, rootNode.data.recharge);
+                billsAjax.updateRecharge(userAccount, billsLibId, tempId, rootNode.data.recharge);
                 node.data.recharge = rootNode.data.recharge;
                 $('#exampleTextarea').val(node.data.recharge);
             }

+ 4 - 4
web/maintain/bills_lib/scripts/set_sheets.js

@@ -120,7 +120,7 @@ var myKey = {
                     //deleteFrontData
                     //tools.reshowData(sheet, controller.tree.selected[classify], setting, true);
                     //deleteDB
-                    billsAjax.updateBillsArr(billsLibId, controller.tree.selected.getID(), ids, null, 'delete', classify, function(){
+                    billsAjax.updateBillsArr(userAccount, billsLibId, controller.tree.selected.getID(), ids, null, 'delete', classify, function(){
                         tools.orderReshowData(sheet, controller.tree.selected[classify], setting, classifyStr, true);
                     });
                     /*if(result.length > 0){
@@ -178,7 +178,7 @@ var myKey = {
                     totalJobs.jobsArr.sort(myCompareCode);
                     maxJobsNumber = totalJobs.jobsArr.length > 0 ? totalJobs.jobsArr[0].data.code : 0;
                     tools.reshowData(sheet, totalJobs.jobsArr, setting, true);
-                    billsAjax.removeTotal(billsLibId, billsIds, ids, 'jobs');
+                    billsAjax.removeTotal(userAccount, billsLibId, billsIds, ids, 'jobs');
                 }
                 spread.resumeEvent();
             });
@@ -204,7 +204,7 @@ var myKey = {
                     totalItems.itemsArr.sort(myCompareCode);
                     maxItemsNumber = totalItems.itemsArr.length > 0 ? totalItems.itemsArr[0].code : 0;
                     tools.reshowData(sheet, totalItems.itemsArr, setting, true);
-                    billsAjax.removeTotal(billsLibId, billsIds, ids, 'items');
+                    billsAjax.removeTotal(userAccount, billsLibId, billsIds, ids, 'items');
                     //reshowVal
                     if(totalItems.itemsArr.length > 0){
                         selectedId = totalItems.itemsArr[0].data.id;
@@ -236,7 +236,7 @@ var myKey = {
                 });
                 tools.reshowValue(sheet, valsArr, setting, true);
                 //deleteDb
-                itemsAjax.updateValue(billsLibId, selectedId, null, ids, 'delete');
+                itemsAjax.updateValue(userAccount, billsLibId, selectedId, null, ids, 'delete');
                 spread.resumeEvent();
             });
             spread.commandManager().setShortcutKey(null, GC.Spread.Commands.Key.del, false, false, false, false);

+ 1 - 7
web/maintain/ration_repository/dinge.html

@@ -481,13 +481,6 @@
                 </div>
             </div>
         </div>
-        <!--contextMenu-->
-        <div class="contextMenu" id="myMenu">
-            <ul>
-                <li id="insert">添加</li>
-                <li id="delete">删除</li>
-            </ul>
-        </div>
         <!-- JS. -->
         <script src = "/lib/spreadjs/sheets/gc.spread.sheets.all.10.0.1.min.js"></script>
         <script>GC.Spread.Sheets.LicenseKey = "559432293813965#A0y3iTOzEDOzkjMyMDN9UTNiojIklkI1pjIEJCLi4TPB9mM5AFNTd4cvZ7SaJUVy3CWKtWYXx4VVhjMpp7dYNGdx2ia9sEVlZGOTh7NRlTUwkWR9wEV4gmbjBDZ4ElR8N7cGdHVvEWVBtCOwIGW0ZmeYVWVr3mI0IyUiwCMzETN8kzNzYTM0IicfJye&Qf35VfiEzRwEkI0IyQiwiIwEjL6ByUKBCZhVmcwNlI0IiTis7W0ICZyBlIsIyNyMzM5ADI5ADNwcTMwIjI0ICdyNkIsIibj9SbvNmL4N7bjRnch56ciojIz5GRiwiI8+Y9sWY9QmZ0Jyp96uL9v6L0wap9biY9qiq95q197Wr9g+89iojIh94Wiqi";</script>
@@ -513,6 +506,7 @@
         <script type="text/javascript" src="/public/web/QueryParam.js"></script>
         <script type="text/javascript" src="/public/web/storageUtil.js"></script>
         <script type="text/javascript">
+            let userAccount = '<%=userAccount %>';
             var setting = {
                 view: {
                     addHoverDom: zTreeOprObj.addHoverDom,

+ 1 - 0
web/maintain/ration_repository/gongliao.html

@@ -226,6 +226,7 @@
     <script type="text/javascript" src="/public/web/sheet/sheet_common.js"></script>
     <script type="text/javascript" src="/public/web/storageUtil.js"></script>
     <script type="text/javascript">
+        let userAccount = '<%=userAccount %>';
         var gljSetting = {
             view: {
                 addHoverDom: gljTypeTreeOprObj.addHoverDom,

+ 3 - 0
web/maintain/ration_repository/js/main.js

@@ -44,6 +44,7 @@ function addEvent_EditLib(){
 
 $("#deleteLib").click(function(){
     var rationLibName = $("#did").val();
+    //let lastOperator = userAccount;
     $.ajax({
         type:"POST",
         url:"api/deleteRationLibs",
@@ -134,6 +135,8 @@ $("#rationAdd").click(function(){
     newRationRepObj.dispName = str;
     newRationRepObj.appType = "建筑";
     newRationRepObj.descr = "";
+    newRationRepObj.creator = userAccount;
+    newRationRepObj.lastOperator = userAccount;
     addRationRepository(newRationRepObj, $tdId);
 });
 

+ 1 - 1
web/maintain/ration_repository/main.html

@@ -130,7 +130,7 @@
     <script type="text/javascript" src="/public/web/storageUtil.js"></script>
 </body>
 <script type="text/javascript">
-
+let userAccount = '<%=userAccount %>';
 </script>
 
 </html>