/** * Created by zhang on 2018/9/10. */ import BaseController from "../../common/base/base_controller"; let config = require("../../../config/config.js"); let logger = require('../../../logs/log_helper').logger; import materialFacade from "../facade/material_facade"; class MaterialController extends BaseController{ async main(request, response) { let materialLibs = await materialFacade.findByCondition({},{info:0},false); let randerData = { title:'主要工料指标库', userAccount: request.session.managerData.username, userID: request.session.managerData.userID, materialLibs:materialLibs, layout: 'maintain/common/html/layout' }; response.render("maintain/material_lib/html/main", randerData); } async addLib(request, response){ try { await materialFacade.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 materialFacade.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); let resultData= await materialFacade.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 feeRateLib ${request.ip}`); let result={ error:0 }; try { let data = request.body.data; data = JSON.parse(data); let resultData= await materialFacade.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 materialLib = await materialFacade.findByCondition({'ID':libID}); if(materialLib){ let randerData = { title:'主要工料指标库', mainURL:'/material/main', libName:materialLib.name, userAccount: request.session.managerData.username, userID: request.session.managerData.userID, originalInfo:JSON.stringify(materialLib.materials), libID:libID, LicenseKey:config.getLicenseKey(process.env.NODE_ENV), layout: 'maintain/common/html/edit_layout' }; response.render("maintain/material_lib/html/edit", randerData); }else { response.redirect(request.headers.referer); } } } export default MaterialController;