|
@@ -0,0 +1,78 @@
|
|
|
+'use strict';
|
|
|
+
|
|
|
+/**
|
|
|
+ *
|
|
|
+ *
|
|
|
+ * @author Mai
|
|
|
+ * @date
|
|
|
+ * @version
|
|
|
+ */
|
|
|
+const sendToWormhole = require('stream-wormhole');
|
|
|
+const path = require('path');
|
|
|
+
|
|
|
+module.exports = app => {
|
|
|
+ class DrawingController extends app.BaseController {
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 图纸管理
|
|
|
+ *
|
|
|
+ * @param ctx
|
|
|
+ * @returns {Promise<void>}
|
|
|
+ */
|
|
|
+ async tender(ctx) {
|
|
|
+ try {
|
|
|
+ if (!ctx.subProject.page_show.drawing) throw '该功能已关闭或无法查看';
|
|
|
+
|
|
|
+ const renderData = {
|
|
|
+ jsFiles: this.app.jsFiles.common.concat(this.app.jsFiles.drawing.tender),
|
|
|
+ };
|
|
|
+ renderData.tenderList = await ctx.service.tender.getSpecList(ctx.service.drawingPermission, ctx.session.sessionUser.is_admin ? 'all' : '');
|
|
|
+ renderData.categoryData = await this.ctx.service.category.getAllCategory(ctx.subProject);
|
|
|
+ renderData.selfCategoryLevel = this.ctx.subProject.permission.self_category_level;
|
|
|
+ await this.layout('drawing/tender.ejs', renderData, 'drawing/tender_modal.ejs');
|
|
|
+ } catch (err) {
|
|
|
+ ctx.log(err);
|
|
|
+ ctx.postError(err, '查询图纸管理数据错误');
|
|
|
+ ctx.redirect(this.menu.menu.dashboard.url);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ async design() {
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ async built() {
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ async manageUpdate(ctx) {
|
|
|
+ try {
|
|
|
+ this.checkLock(ctx);
|
|
|
+ const data = JSON.parse(ctx.request.body.data);
|
|
|
+ if (!data.updateType) throw '数据错误';
|
|
|
+ let result;
|
|
|
+ const updateData = JSON.parse(JSON.stringify(data));
|
|
|
+ delete updateData.updateType;
|
|
|
+ if (data.updateType === 'add') {
|
|
|
+ result = await ctx.service.filing.add(updateData);
|
|
|
+ } else if (data.updateType === 'del') {
|
|
|
+ result = await ctx.service.filing.del(updateData);
|
|
|
+ } else if (data.updateType === 'save') {
|
|
|
+ result = await ctx.service.filing.save(updateData);
|
|
|
+ } else if (data.updateType === 'move') {
|
|
|
+ if (!data.id || !(data.tree_order >= 0)) throw '数据错误';
|
|
|
+ result = await ctx.service.filing.move(updateData);
|
|
|
+ } else if (data.updateType === 'multi' ) {
|
|
|
+ result = await ctx.service.filing.multiUpdate(ctx.subProject.id, data.data);
|
|
|
+ }
|
|
|
+ ctx.body = { err: 0, msg: '', data: result };
|
|
|
+ } catch (err) {
|
|
|
+ ctx.log(err);
|
|
|
+ ctx.ajaxErrorBody(err, '修改失败');
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return DrawingController;
|
|
|
+};
|
|
|
+
|