/** * Created by Tony on 2017/4/20. */ var rationRepository = require("../models/repository_map"); import baseController from "../../common/base/base_controller"; import CompilationModel from "../../users/models/compilation_model"; import gljMapModel from "../../std_glj_lib/models/schemas"; import async from "async"; var callback = function(req, res, err, message, data){ res.json({error: err, message: message, data: data}); }; class RationRepositoryController extends baseController{ async getCompilationList(req, res){ try{ let compilationModel = new CompilationModel(), rst = []; let compilationList = await compilationModel.getCompilationList(); if(compilationList.length <= 0){ throw '没有数据'; } else{ compilationList.forEach(function (compilation) { rst.push({_id: compilation._id, name: compilation.name}); }); //获得相关编办下的工料机库 let parallelFucs = []; for(let i = 0; i < rst.length; i++){ parallelFucs.push((function (obj) { return function (cb) { gljMapModel.find({compilationId: obj._id, deleted: false}, function (err, result) { if(err){ cb(err); } else{ cb(null, result); } }) } })(rst[i])); } async.parallel(parallelFucs, function (err, result) { if(err){ callback(req, res, err, '没有数据', null); } else{ let gljLibsRst = []; for(let i = 0; i < result.length; i++){ for(let j = 0; j < result[i].length; j++){ gljLibsRst.push(result[i][j]); } } callback(req, res, false, '', {compilation: rst, gljLibs: gljLibsRst}); } }) } } catch(err) { callback(req, res, err, '没有数据', null); } } 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); } }) } getRationLib(req, res){ let libId = req.body.libId; rationRepository.getRationLib(libId, 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){ let oprtor = req.body.oprtor, libId = req.body.libId; rationRepository.deleteRationLib(oprtor, libId, function (err, message) { callback(req, res, err, message, null); }); } updateRationRepositoryName(req, res) { let oprtor = req.body.oprtor, renameObj = JSON.parse(req.body.renameObj); rationRepository.updateName(oprtor, renameObj, function (err, message) { callback(req, res, err, message, null); }) } } export default RationRepositoryController; /* module.exports = { addRationRepository:function(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: function(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:function(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:function(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:function(req,res){ var rationName = req.body.rationName; rationRepository.deleteRationLib(rationName,function(err,data){ if (data) { callback(req, res, err, "has data", data); } else { callback(req, res, err, "no data", null); } }) }, updateRationRepositoryName: function(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); } }); } }*/