|
@@ -7,9 +7,10 @@
|
|
|
*/
|
|
|
import BaseController from "../../common/base/base_controller";
|
|
|
import billsTemplateFacade from "../facade/bills_template_facade";
|
|
|
-import {default as BillsFixedFlagConst, List as BillsFixedFlagList} from "../../common/const/bills_fixed.js";
|
|
|
-import {default as BillsTypeFlagConst, List as BillsTypeFlagList} from "../../common/const/bills_type.js";
|
|
|
+import { default as BillsFixedFlagConst, List as BillsFixedFlagList } from "../../common/const/bills_fixed.js";
|
|
|
+import { default as BillsTypeFlagConst, List as BillsTypeFlagList } from "../../common/const/bills_type.js";
|
|
|
import CompilationModel from '../../users/models/compilation_model';
|
|
|
+import { checkCompilationPermission } from '../../common/base/base_util';
|
|
|
let config = require("../../../config/config.js");
|
|
|
let logger = require('../../../logs/log_helper').logger;
|
|
|
|
|
@@ -23,11 +24,13 @@ class BillsTemplateController extends BaseController {
|
|
|
* @return {void}
|
|
|
*/
|
|
|
async main(request, response) {
|
|
|
- let filter = request.query.filter ? {compilationId: request.query.filter} : null;
|
|
|
+ let filter = request.query.filter ? { compilationId: request.query.filter } : null;
|
|
|
+ const compilationPermission = request.session.managerData.compilationPermission || [];
|
|
|
let templateLibs = await billsTemplateFacade.getAllLibs(filter);
|
|
|
+ templateLibs = templateLibs.filter(lib => compilationPermission.includes(lib.compilationId));
|
|
|
let compilationModel = new CompilationModel();
|
|
|
- let compilationList = await compilationModel.getCompilationList({_id: 1, name: 1});
|
|
|
- compilationList.unshift({_id: 'all', name: '所有'});
|
|
|
+ let compilationList = await compilationModel.getPermissionCompilationList(request, { _id: 1, name: 1 });
|
|
|
+ compilationList.unshift({ _id: 'all', name: '所有' });
|
|
|
let activeCompilation = compilationList.find(compilation => compilation._id.toString() === request.query.filter);
|
|
|
if (activeCompilation) {
|
|
|
activeCompilation.active = 'active';
|
|
@@ -35,120 +38,120 @@ class BillsTemplateController extends BaseController {
|
|
|
compilationList[0].active = 'active'
|
|
|
}
|
|
|
let randerData = {
|
|
|
- title:'清单模板',
|
|
|
+ title: '清单模板',
|
|
|
userAccount: request.session.managerData.username,
|
|
|
userID: request.session.managerData.userID,
|
|
|
- templateLibs:templateLibs,
|
|
|
+ templateLibs: templateLibs,
|
|
|
compilationList: compilationList,
|
|
|
layout: 'maintain/common/html/layout',
|
|
|
- LicenseKey:config.getLicenseKey(process.env.NODE_ENV)
|
|
|
+ LicenseKey: config.getLicenseKey(process.env.NODE_ENV)
|
|
|
};
|
|
|
|
|
|
response.render("maintain/bill_template_lib/html/main", randerData);
|
|
|
}
|
|
|
async updateBillsTemplateItem(request, response) {
|
|
|
let libID = request.params.libID;
|
|
|
- let result = {error: 1, message: '更新数据错误', data: null};
|
|
|
+ let result = { error: 1, message: '更新数据错误', data: null };
|
|
|
try {
|
|
|
let data = JSON.parse(request.body.data);
|
|
|
- if(libID){
|
|
|
- result = await await billsTemplateFacade.updateTemplateItem(libID,data);
|
|
|
+ if (libID) {
|
|
|
+ result = await await billsTemplateFacade.updateTemplateItem(libID, data);
|
|
|
if (result) {
|
|
|
- result = {error: 0, message: '', data: data};
|
|
|
+ result = { error: 0, message: '', data: data };
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- }catch (err){
|
|
|
+ } catch (err) {
|
|
|
console.log(err);
|
|
|
result.message = err.message;
|
|
|
}
|
|
|
response.json(result);
|
|
|
}
|
|
|
|
|
|
- async editTemplate(request, response){
|
|
|
+ async editTemplate(request, response) {
|
|
|
|
|
|
//先取出清单库信息:
|
|
|
let libID = request.params.libID;
|
|
|
let templateLib = await billsTemplateFacade.getLibByID(libID);
|
|
|
- if(templateLib){
|
|
|
+ if (templateLib) {
|
|
|
|
|
|
+ checkCompilationPermission(request, response, templateLib.compilationId, '/billsTemplate/main');
|
|
|
let templateDatas = await billsTemplateFacade.getTemplateDatasByLibID(libID);
|
|
|
-
|
|
|
let randerData = {
|
|
|
- title:'清单模板',
|
|
|
- mainURL:'/billsTemplate/main',
|
|
|
- libName:templateLib.name,
|
|
|
+ title: '清单模板',
|
|
|
+ mainURL: '/billsTemplate/main',
|
|
|
+ libName: templateLib.name,
|
|
|
userAccount: request.session.managerData.username,
|
|
|
userID: request.session.managerData.userID,
|
|
|
- billsTemplateData:JSON.stringify(templateDatas),
|
|
|
+ billsTemplateData: JSON.stringify(templateDatas),
|
|
|
billsFixedFlagList: JSON.stringify(BillsFixedFlagList),
|
|
|
billsTypeFlagList: JSON.stringify(BillsTypeFlagList),
|
|
|
- libID:libID,
|
|
|
- LicenseKey:config.getLicenseKey(process.env.NODE_ENV),
|
|
|
+ libID: libID,
|
|
|
+ LicenseKey: config.getLicenseKey(process.env.NODE_ENV),
|
|
|
layout: 'maintain/common/html/edit_layout'
|
|
|
};
|
|
|
response.render("maintain/bill_template_lib/html/edit", randerData);
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
response.redirect(request.headers.referer);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- async deleteLibByID(request,response){
|
|
|
+ async deleteLibByID(request, response) {
|
|
|
logger.info(`delete billsTemplateLib ${request.ip}`);
|
|
|
- let result={
|
|
|
- error:0
|
|
|
+ let result = {
|
|
|
+ error: 0
|
|
|
};
|
|
|
try {
|
|
|
let data = request.body.data;
|
|
|
data = JSON.parse(data);
|
|
|
- let resultData= await billsTemplateFacade.deleteLibByID(data.ID);
|
|
|
- result.data=resultData;
|
|
|
- }catch (err){
|
|
|
+ let resultData = await billsTemplateFacade.deleteLibByID(data.ID);
|
|
|
+ result.data = resultData;
|
|
|
+ } catch (err) {
|
|
|
console.log(err);
|
|
|
- result.error=1;
|
|
|
+ result.error = 1;
|
|
|
result.message = err.message;
|
|
|
}
|
|
|
response.json(result);
|
|
|
}
|
|
|
|
|
|
- async saveLib(request, response){
|
|
|
- let result={
|
|
|
- error:0
|
|
|
+ async saveLib(request, response) {
|
|
|
+ let result = {
|
|
|
+ error: 0
|
|
|
};
|
|
|
try {
|
|
|
let data = request.body.data;
|
|
|
data = JSON.parse(data);
|
|
|
- let resultData= await billsTemplateFacade.saveLib(data);
|
|
|
- result.data=resultData;
|
|
|
- }catch (err){
|
|
|
+ let resultData = await billsTemplateFacade.saveLib(data);
|
|
|
+ result.data = resultData;
|
|
|
+ } catch (err) {
|
|
|
console.log(err);
|
|
|
- result.error=1;
|
|
|
+ result.error = 1;
|
|
|
result.message = err.message;
|
|
|
}
|
|
|
response.json(result);
|
|
|
}
|
|
|
|
|
|
- async getLibByID(request, response){
|
|
|
- let result={
|
|
|
- error:0
|
|
|
+ async getLibByID(request, response) {
|
|
|
+ let result = {
|
|
|
+ error: 0
|
|
|
};
|
|
|
try {
|
|
|
let data = request.body.data;
|
|
|
data = JSON.parse(data);
|
|
|
- let resultData= await billsTemplateFacade.getLibByID(data.libID);
|
|
|
- result.data=resultData;
|
|
|
- }catch (err){
|
|
|
+ let resultData = await billsTemplateFacade.getLibByID(data.libID);
|
|
|
+ result.data = resultData;
|
|
|
+ } catch (err) {
|
|
|
console.log(err);
|
|
|
- result.error=1;
|
|
|
+ result.error = 1;
|
|
|
result.message = err.message;
|
|
|
}
|
|
|
response.json(result);
|
|
|
}
|
|
|
|
|
|
- async addLib(request, response){
|
|
|
+ async addLib(request, response) {
|
|
|
try {
|
|
|
await billsTemplateFacade.addLib(request.body);
|
|
|
- }catch (error) {
|
|
|
+ } catch (error) {
|
|
|
console.log(error);
|
|
|
}
|
|
|
response.redirect(request.headers.referer);
|
|
@@ -159,10 +162,10 @@ class BillsTemplateController extends BaseController {
|
|
|
const data = JSON.parse(req.body.data);
|
|
|
const userName = req.session.managerData.username;
|
|
|
await billsTemplateFacade.copyLib(data.libID, data.name, userName);
|
|
|
- res.json({error: 0, data: null, message: 'success'})
|
|
|
+ res.json({ error: 0, data: null, message: 'success' })
|
|
|
} catch (err) {
|
|
|
console.log(err);
|
|
|
- res.json({error: 1, data: null, message: 'fail'});
|
|
|
+ res.json({ error: 1, data: null, message: 'fail' });
|
|
|
}
|
|
|
}
|
|
|
}
|