/** * 工料机相关控制器 * * @author CaiAoLin * @date 2017/6/22 * @version */ import BaseController from "../../common/base/base_controller"; import GLJListModel from "../models/glj_list_model"; import UnitPriceModel from "../models/unit_price_model"; class GLJController extends BaseController { /** * 构造函数 * * @return {void} */ constructor() { let parent = super(); parent.title = '工料机'; } /** * 工料机汇总页 * * @param {object} request * @param {object} response * @return {void} */ async index(request, response) { let tenderId = request.query.tender; tenderId = parseInt(tenderId); try { if (isNaN(tenderId) || tenderId <= 0) { throw '标段id有误'; } // 先获取对应标段的项目工料机数据 let gljListModel = new GLJListModel(); // 获取指定标段的单价文件 @todo 后续需要在标段属性中加入该标段绑定的标段id let unitPriceTenderId = 1; let gljList = await gljListModel.getListByTenderId(tenderId, unitPriceTenderId); let renderData = { gljList: JSON.stringify(gljList), materialIdList: gljListModel.materialIdList }; response.render('glj/html/glj_index', renderData); } catch (error) { response.status(404).send('404 Error'); } } /** * 模拟定额插入 * * @param {object} request * @param {object} response * @return {void} */ async test(request, response) { // 从定额库获取的数据 let data = { glj_repository_id: 1, project_id: 1, tender_id: 1, code: '00010201', name: '土石方综合工日', specs: '', unit: '工日', type: 2, type_of_work: 2, base_price: 38.88, market_price: 38.88 }; try { let gljListModel = new GLJListModel(); let result = await gljListModel.addList(data); console.log(result); } catch (error) { console.log(error); } response.end('success'); } /** * 模拟定额修改单价 * * @param {object} request * @param {object} response * @return {void} */ async testModify(request, response) { let tenderId = request.query.tender; // 修改数据 let updateData = { code: '00010201', market_price: '40', name: '土石方综合工日', tender_id: tenderId, project_id: 1 }; let unitPriceTenderId = 1; try { let unitPriceModel = new UnitPriceModel(); let result = await unitPriceModel.updateUnitPrice(updateData, unitPriceTenderId); console.log(result); } catch (error) { console.log(error); } response.end('success'); } /** * 测试删除 * * @param {object} request * @param {object} response * @return {void} */ async delete(request, response) { try { let gljListModel = new GLJListModel(); let result = await gljListModel.deleteById(63); console.log(result); } catch (error) { console.log(error); } response.end('success'); } } export default GLJController;