| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 | /** * Created by zhang on 2018/9/3. */import BaseController from "../../common/base/base_controller";import monomerTemplateFacade from "../facade/monomer_template_facade";import { checkCompilationPermission } from '../../common/base/base_util';let config = require("../../../config/config.js");let logger = require('../../../logs/log_helper').logger;import CompilationModel from '../../users/models/compilation_model';let mongoose = require('mongoose');let monomerTemplateModel = mongoose.model('std_monomer_template');class MonomerTemplateController extends BaseController{    async main(request, response) {             let compilationModel = new CompilationModel();        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';        } else {            compilationList[0].active = 'active'        }        let filter = request.query.filter ? {compilationID: request.query.filter} : {};        let templateLibs = await monomerTemplateFacade.findByCondition(filter,{feature:0},false);        const compilationPermission = request.session.managerData.compilationPermission || [];        templateLibs = templateLibs.filter(lib => compilationPermission.includes(lib.compilationID))        let renderData = {            title:'单体模板库',            userAccount: request.session.managerData.username,            userID: request.session.managerData.userID,            templateLibs:templateLibs,            compilationList: compilationList,            layout: 'maintain/common/html/layout'        };        response.render("maintain/monomer_template_lib/html/main", renderData);    }    async addLib(request, response){        try {            await monomerTemplateFacade.addLib(request.body);        }catch (error) {            console.log(error);        }        response.redirect(request.headers.referer);    }    async findLib(request, response){        let result={            error:0        };        try {            let data = request.body.data;            data = JSON.parse(data);            let conditions={'ID' : data.ID};            let resultData = await monomerTemplateFacade.findByCondition(conditions);            result.data=resultData;        }catch (err){            console.log(err);            result.error=1;            result.message = err.message;        }        response.json(result);    }    async saveLib(request, response){        let result={            error:0        };        try {            let data = request.body.data;            data = JSON.parse(data);            console.log(data.data);            let resultData= await monomerTemplateFacade.saveLib(data);            result.data=resultData;        }catch (err){            console.log(err);            result.error=1;            result.message = err.message;        }        response.json(result);    }    async deleteLibByID(request,response){        logger.info(`delete projectFeatureLib ${request.ip}`);        let result={            error:0        };        try {            let data = request.body.data;            data = JSON.parse(data);            let resultData= await monomerTemplateFacade.deleteLibByID(data.ID);            result.data=resultData;        }catch (err){            console.log(err);            result.error=1;            result.message = err.message;        }        response.json(result);    }    async edit(request,response){        //先取出替换库信息:        let libID = request.params.libID;               let monomerTemplate = await monomerTemplateFacade.findByCondition({'ID':libID});                if(monomerTemplate){            checkCompilationPermission(request, response, monomerTemplate.compilationID, '/monomerTemplate/main');            let randerData = {                title:'单体模板库',                mainURL:'/monomerTemplate/main',                libName:monomerTemplate.name,                userAccount: request.session.managerData.username,                userID: request.session.managerData.userID,                templateLibs:JSON.stringify(monomerTemplate),                libID:libID,                LicenseKey:config.getLicenseKey(process.env.NODE_ENV),                layout: 'maintain/common/html/edit_layout'            };            response.render("maintain/monomer_template_lib/html/edit", randerData);        }else {            response.redirect(request.headers.referer);        }    }}export default MonomerTemplateController;
 |