瀏覽代碼

书签,所属部位

MaiXinRong 11 月之前
父節點
當前提交
2eee8d1c9b

+ 2 - 2
app/middleware/http_header.js

@@ -8,7 +8,7 @@ module.exports = options => {
         ctx.set('X-Content-Type-Options', 'nosniff');
         // CT-638385 点击劫持相关
         // 禁止以iframe或者frame的形式嵌入 (deny/sameorign都可)
-        ctx.set('X-Frame-Options', 'deny');
+         ctx.set('X-Frame-Options', 'deny');
         // CT-638235
         // 避免钓鱼欺骗 (启用XSS过滤器。如果检测到攻击,浏览器将不会清理页面,而是完全阻止页面的渲染)
         ctx.set('X-XSS-Protection', '1; mode=block');
@@ -16,7 +16,7 @@ module.exports = options => {
         ctx.set('strict-transport-security', 'max-age=31536000; includeSubDomains; preload');
         //
         const csp = [
-            'default-src', `'self' data: 'unsafe-inline' 'unsafe-eval' https://*.smartcost.com.cn https://*.aliyuncs.com https://*.qq.com/`,
+            'default-src', `'self' data: blob: 'unsafe-inline' 'unsafe-eval' https://*.smartcost.com.cn https://*.aliyuncs.com https://*.qq.com/ https://*.baidu.com/ http://*.baidu.com/`,
         ];
         ctx.set('Content-Security-Policy', csp.join(' '));
         // IE8以上版本用户,在下载时,不显示打开选项

+ 1 - 0
app/public/js/ledger.js

@@ -101,6 +101,7 @@ $(document).ready(function() {
     const ancGclSheet = ancGclSpread.getActiveSheet();
 
     const billsTag = $.billsTag({
+        relaTree: ledgerTree,
         selector: '#bills-tag',
         relaSpread: ledgerSpread,
         relaPosSpread: posSpread,

+ 17 - 15
app/public/js/revise.js

@@ -103,21 +103,6 @@ $(document).ready(() => {
 
     const posSearch = $.posSearch({selector: '#pos-search', searchSpread: posSpread});
 
-    const billsTag = $.billsTag({
-        selector: '#bills-tag',
-        relaSpread: billsSpread,
-        updateUrl: window.location.pathname + '/tag',
-        afterModify: function (nodes) {
-            SpreadJsObj.repaintNodesRowHeader(billsSpread.getActiveSheet(), nodes);
-        },
-        afterLocated:  function () {
-            posSpreadObj.loadCurPosData();
-        },
-        afterShow: function () {
-            billsSpread.refresh();
-            if (posSpread) posSpread.refresh();
-        },
-    });
     const errorList = $.cs_errorList({
         tabSelector: '#error-list-tab',
         selector: '#error-list',
@@ -184,6 +169,23 @@ $(document).ready(() => {
     // 初始化 计量单元
     const pos = new PosData({ id: 'id', ledgerId: 'lid' });
 
+    const billsTag = $.billsTag({
+        relaTree: billsTree,
+        selector: '#bills-tag',
+        relaSpread: billsSpread,
+        updateUrl: window.location.pathname + '/tag',
+        afterModify: function (nodes) {
+            SpreadJsObj.repaintNodesRowHeader(billsSpread.getActiveSheet(), nodes);
+        },
+        afterLocated:  function () {
+            posSpreadObj.loadCurPosData();
+        },
+        afterShow: function () {
+            billsSpread.refresh();
+            if (posSpread) posSpread.refresh();
+        },
+    });
+
     // 清单 相关方法&绑定spreadjs事件
     const billsTreeSpreadObj = {
         loadExprToInput(sheet) {

+ 1 - 0
app/public/js/settle_ledger.js

@@ -194,6 +194,7 @@ $(document).ready(() => {
     };
 
     const billsTag = $.billsTag({
+        relaTree: settleTree,
         selector: '#bills-tag',
         relaSpread: slSpread,
         updateUrl: window.location.pathname + '/tag',

+ 7 - 0
app/public/js/shares/cs_tools.js

@@ -777,6 +777,7 @@ const showSelectTab = function(select, spread, afterShow) {
         if (!setting.key) setting.key = 'id';
         if (!setting.treeId) setting.treeId = 'ledger_id';
         const obj = $(setting.selector);
+        const relaTree = setting.relaTree;
         const html = [], pageLength = 15;
         let billsTags = [], classIndexes = [], billsIndexes = {}, curShow = [];
         html.push('<div class="sjs-bar d-flex justify-content-between">');
@@ -869,6 +870,12 @@ const showSelectTab = function(select, spread, afterShow) {
             tagHtml.push(`<a class="mr-1" name="bills-tag-locate" href="javascript: void(0);" lid="${lid}" pos_id="${tag.pos_id}"><i class="fa fa-crosshairs"></i> 定位</a>`);
             if (tag.uid === userID && !setting.readOnly) tagHtml.push(`<a href="javascript: void(0);" name="bills-tag-edit" tag-id="${tag.id}"><i class="fa fa-edit"></i> 编辑</a>`);
             tagHtml.push('</div>');
+            if (tag.node && relaTree) {
+                const parents = relaTree.getAllParents(tag.node);
+                const parentName = [];
+                parents.forEach(p => { if (p.code && p.level > 1) parentName.push(p.name); });
+                if(parentName.length > 0) tagHtml.push(`<div>所属部位:${parentName.join('/')}</div>`);
+            }
             tagHtml.push('<div class="card-body p-2">', '<p class="card-text">', tag.comment, '</p>', '</div>');
             tagHtml.push('</div>');
             return tagHtml.join('');

+ 1 - 0
app/public/js/sr_detail.js

@@ -327,6 +327,7 @@ $(document).ready(() => {
     SpreadJsObj.initSheet(spSpread.getActiveSheet(), posSpreadSetting);
 
     const billsTag = $.billsTag({
+        relaTree: stageTree,
         selector: '#bills-tag',
         relaSpread: slSpread,
         updateUrl: window.location.pathname + '/tag',

+ 1 - 0
app/public/js/stage.js

@@ -844,6 +844,7 @@ $(document).ready(() => {
     SpreadJsObj.initSheet(spSpread.getActiveSheet(), posSpreadSetting);
 
     const billsTag = $.billsTag({
+        relaTree: stageTree,
         selector: '#bills-tag',
         relaSpread: slSpread,
         updateUrl: window.location.pathname + '/tag',