/** * 版本控制控制器 * * @author CaiAoLin * @date 2017/7/28 * @version */ import BaseController from "../../common/base/base_controller"; import VersionModel from "../models/version_model"; class VersionController extends BaseController { /** * 版本控制页面 * * @param {object} request * @param {object} response * @return {void} */ async index(request, response) { let id = request.query.id; let versionList = []; // @todo 后续从库中获取 let province = [ {id: 1, name: '重庆省'}, {id: 2, name: '广东省'}, ]; let billList = { 1: [ {id: '1', name: '重庆2017标准清单'}, {id: '2', name: '重庆2015标准清单'} ], 2: [ {id: '3', name: '广东2017标准清单'}, {id: '4', name: '广东2015标准清单'}, ] }; let rationList = { 1: [ {id: '1', name: '重庆2017定额'}, {id: '2', name: '重庆2015定额'} ], 2: [ {id: '3', name: '广东2017定额'}, {id: '4', name: '广东2015定额'} ] }; let selectedVersion = {}; try { let versionModel = new VersionModel(); versionList = await versionModel.getVersionList(); if (versionList.length <= 0) { throw '没有数据'; } // 循环查找数据 for (let tmp of versionList) { if (tmp._id.toString() === id) { selectedVersion = tmp; break; } } selectedVersion = Object.keys(selectedVersion).length <= 0 ? versionList[0] : selectedVersion; } catch (error) { console.log(error); } let renderData = { id: id, versionList: versionList, selectedVersion: selectedVersion, billList: JSON.stringify(billList), rationList: JSON.stringify(rationList), province: JSON.stringify(province), layout: 'users/views/layout/layout' }; response.render('users/views/version/index', renderData); } /** * 新增版本操作 * * @param {object} request * @param {object} response * @return {void} */ async add(request, response) { let name = request.body.name; let standardBillId = request.body.standard_bill_id; let standardBill = request.body.standard_bill; let rationLibId = request.body.ration_lib_id; let rationLib = request.body.ration_lib; let responseData = { err: 0, msg: '' }; try { let insertData = { name: name, standard_bill: [{id: standardBillId, name: standardBill}], ration_lib: [{id: rationLibId, name: rationLib}] }; let versionModel = new VersionModel(); let result = await versionModel.add(insertData); if (!result) { throw '新增版本失败'; } } catch (error) { console.log(error); responseData.err = 1; responseData.msg = error; } response.json(responseData); } } export default VersionController;