فهرست منبع

文件只读相关

MaiXinRong 6 ماه پیش
والد
کامیت
fda96aaa54

+ 17 - 4
app/controller/sub_proj_controller.js

@@ -54,7 +54,6 @@ module.exports = app => {
                 renderData.templates = await this.ctx.service.filingTemplateList.getAllTemplate(ctx.session.sessionProject.id);
                 await this.layout('sub_proj/index.ejs', renderData, 'sub_proj/modal.ejs');
             } catch (err) {
-                console.log(err);
                 ctx.log(err);
                 ctx.session.postError = err.toString();
                 ctx.redirect(this.menu.menu.dashboard.url);
@@ -218,6 +217,12 @@ module.exports = app => {
             }
         }
 
+        _checkInfoEditPermission() {
+            if (this.ctx.subProject.permission.info_permission.indexOf(this.ctx.service.subProjPermission.PermissionConst.info.edit.value) < 0) {
+                throw '暂无权编辑项目概况信息';
+            }
+        }
+
         async info(ctx) {
             try {
                 const info = await this.ctx.service.subProjInfo.getInfo(ctx.subProject.id);
@@ -228,6 +233,7 @@ module.exports = app => {
                 const renderData = {
                     info,
                     jsFiles: this.app.jsFiles.common.concat(this.app.jsFiles.subProject.info),
+                    readOnly: ctx.subProject.permission.info_permission.indexOf(ctx.service.subProjPermission.PermissionConst.info.edit.value) < 0,
                 };
                 await this.layout('sub_proj/info.ejs', renderData);
             } catch (err) {
@@ -241,6 +247,7 @@ module.exports = app => {
                 const renderData = {
                     info,
                     jsFiles: this.app.jsFiles.common.concat(this.app.jsFiles.subProject.data),
+                    readOnly: ctx.subProject.permission.info_permission.indexOf(ctx.service.subProjPermission.PermissionConst.info.edit.value) < 0,
                 };
                 await this.layout('sub_proj/data_index.ejs', renderData);
             } catch (err) {
@@ -250,6 +257,7 @@ module.exports = app => {
 
         async saveInfo(ctx) {
             try {
+                this._checkInfoEditPermission();
                 const data = JSON.parse(ctx.request.body.data);
                 const result = await ctx.service.subProjInfo.saveInfo(ctx.subProject.id, data);
                 ctx.body = { err: 0, msg: '', data: result };
@@ -264,6 +272,7 @@ module.exports = app => {
                 const renderData = {
                     jsFiles: this.app.jsFiles.common.concat(this.app.jsFiles.subProject.progress),
                     fileReferenceList,
+                    readOnly: ctx.subProject.permission.info_permission.indexOf(ctx.service.subProjPermission.PermissionConst.info.edit.value) < 0,
                 };
                 await this.layout('sub_proj/progress.ejs', renderData, 'sub_proj/progress_modal.ejs');
             } catch (err) {
@@ -325,6 +334,7 @@ module.exports = app => {
 
         async progressUpdate(ctx) {
             try {
+                this._checkInfoEditPermission();
                 const data = JSON.parse(ctx.request.body.data);
                 if (!data.postType || !data.postData) throw '数据错误';
                 const responseData = { err: 0, msg: '', data: {} };
@@ -349,7 +359,7 @@ module.exports = app => {
                 }
                 ctx.body = responseData;
             } catch (err) {
-                this.log(err);
+                ctx.log(err);
                 ctx.body = this.ajaxErrorBody(err, '数据错误');
             }
         }
@@ -358,6 +368,7 @@ module.exports = app => {
             try {
                 const renderData = {
                     jsFiles: this.app.jsFiles.common.concat(this.app.jsFiles.subProject.push),
+                    readOnly: ctx.subProject.permission.info_permission.indexOf(ctx.service.subProjPermission.PermissionConst.info.edit.value) < 0,
                 };
                 await this.layout('sub_proj/push.ejs', renderData, 'sub_proj/push_modal.ejs');
             } catch (err) {
@@ -367,11 +378,12 @@ module.exports = app => {
 
         async pushUpdate(ctx) {
             try {
+                this._checkInfoEditPermission();
                 const data = JSON.parse(ctx.request.body.data);
                 const result = await ctx.service.subProjPush.updateDatas(data);
                 ctx.body = { err: 0, msg: '', data: result };
             } catch (error) {
-                ctx.helper.log(error);
+                ctx.log(error);
                 ctx.body = this.ajaxErrorBody(error, '提交数据失败,请重试');
             }
         }
@@ -436,7 +448,7 @@ module.exports = app => {
                 const result = await ctx.service.subProjFile.delFiles(data);
                 ctx.body = { err: 0, msg: '', data: result };
             } catch(error) {
-                this.log(error);
+                ctx.log(error);
                 ctx.ajaxErrorBody(error, '删除附件失败');
             }
         }
@@ -459,6 +471,7 @@ module.exports = app => {
                 await ctx.service.projectColSet.setProjectColSet(ctx.subProject.project_id, ctx.subProject.id, colType, colSet);
                 ctx.redirect(ctx.request.header.referer);
             } catch (err) {
+                ctx.log(err);
                 ctx.redirect(ctx.request.header.referer);
             }
         }

+ 5 - 1
app/public/js/sp_data.js

@@ -172,10 +172,12 @@ $(document).ready(() => {
             defaultRowHeight: 21,
             headerFont: '12px 微软雅黑',
             font: '12px 微软雅黑',
+            readOnly: readOnly,
         },
         data: mainQty,
         isTree: false,
         type: 'main_quantity',
+        readOnly: readOnly,
     });
     const gclQtyObj = new QtyObj({
         obj: $('#gcl_qty_spread')[0],
@@ -192,6 +194,7 @@ $(document).ready(() => {
             defaultRowHeight: 21,
             headerFont: '12px 微软雅黑',
             font: '12px 微软雅黑',
+            readOnly: readOnly,
         },
         data: gclQty,
         type: 'gcl_quantity',
@@ -203,6 +206,7 @@ $(document).ready(() => {
             level: 'level',
             fullPath: 'full_path',
             rootId: -1,
-        }
+        },
+        readOnly: readOnly,
     })
 });

+ 3 - 2
app/public/js/sp_progress.js

@@ -64,7 +64,7 @@ $(document).ready(() => {
                     key: 'sub-proj-progress',
                     colWidth: true,
                 },
-                readOnly: false,
+                readOnly: readOnly,
                 imageClick: function (data, hitinfo) {
                     if (!data) return;
 
@@ -498,7 +498,7 @@ $(document).ready(() => {
         deleteUrl: 'progress/file/delete',
         checked: false,
         zipName: `阶段进度-附件.zip`,
-        readOnly: false,
+        readOnly: readOnly,
         fileIdType: 'string',
         fileInfo: {
             user_name: 'user_name',
@@ -559,6 +559,7 @@ $(document).ready(() => {
                         },
                         page: 'sp_progress',
                         cellDoubleClick: function(updateData, stdNode, stdTree) {
+                            if (readOnly) return;
                             if (!stdNode) return;
                             const mainTree = progressObj.tree;
                             const mainNode = SpreadJsObj.getSelectObject(progressObj.sheet);

+ 2 - 1
app/public/js/sp_push.js

@@ -52,6 +52,7 @@ $(document).ready(() => {
                     colWidth: true,
                 },
                 forceLoadEmpty: true,
+                readOnly: readOnly,
                 imageClick: function (data, hitinfo) {
                     const setting = hitinfo.sheet.zh_setting;
                     if (!setting) return;
@@ -413,7 +414,7 @@ $(document).ready(() => {
         deleteUrl: 'push/file/delete',
         checked: false,
         zipName: `推进记录-附件.zip`,
-        readOnly: false,
+        readOnly: readOnly,
         fileIdType: 'string',
         fileInfo: {
             user_name: 'user_name',

+ 12 - 11
app/view/sub_proj/data_index.ejs

@@ -19,13 +19,13 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">主线公路里程(km):</label>
-                                    <input type="text" class="form-control form-control-sm" name="mainline_length" value="<%- info.mainline_length %>" org="<%- info.mainline_length %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this);">
+                                    <input type="text" class="form-control form-control-sm" name="mainline_length" value="<%- info.mainline_length %>" org="<%- info.mainline_length %>" placeholder="请输入" maxlength="20" <% if (readOnly) { %>readOnly<% } %> oninput="limitMaxLength(this)" onblur="changeInfo(this);">
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">支线里程(km):</label>
-                                    <input type="text" class="form-control form-control-sm" name="branch_length" value="<%- info.branch_length %>" org="<%- info.branch_length %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="branch_length" value="<%- info.branch_length %>" org="<%- info.branch_length %>" placeholder="请输入" maxlength="20" <% if (readOnly) { %>readOnly<% } %> oninput="limitMaxLength(this)" onblur="changeInfo(this)">
                                 </div>
                             </div>
                             <div class="col-3"></div>
@@ -35,7 +35,7 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">公路等级:</label>
-                                    <select class="form-control form-control-sm" name="road_level" value="<%- info.road_level %>" onchange="changeInfo(this);">
+                                    <select class="form-control form-control-sm" name="road_level" <% if (readOnly) { %>readOnly<% } %>  value="<%- info.road_level %>" onchange="changeInfo(this);">
                                         <option value="">请选择</option>
                                         <option value="高速公路" <%if (info.road_level === '高速公路') { %>selected<% } %>>高速公路</option>
                                         <option value="一级公路" <%if (info.road_level === '一级公路') { %>selected<% } %>>一级公路</option>
@@ -48,31 +48,31 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">公路设计速度(km/h):</label>
-                                    <input type="text" class="form-control form-control-sm" name="design_speed" value="<%- info.design_speed %>" org="<%- info.design_speed %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="design_speed" value="<%- info.design_speed %>" org="<%- info.design_speed %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %> >
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">设计荷载:</label>
-                                    <input type="text" class="form-control form-control-sm" name="design_load" value="<%- info.design_load %>" org="<%- info.design_load %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="design_load" value="<%- info.design_load %>" org="<%- info.design_load %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %> >
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">路基宽度(m):</label>
-                                    <input type="text" class="form-control form-control-sm" name="bed_width" value="<%- info.bed_width %>" org="<%- info.bed_width %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="bed_width" value="<%- info.bed_width %>" org="<%- info.bed_width %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %> >
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">隧道净宽(m):</label>
-                                    <input type="text" class="form-control form-control-sm" name="tunnel_width" value="<%- info.tunnel_width %>" org="<%- info.tunnel_width %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="tunnel_width" value="<%- info.tunnel_width %>" org="<%- info.tunnel_width %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %> >
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">地震动峰值系数(m2):</label>
-                                    <input type="text" class="form-control form-control-sm" name="quake_peak_value" value="<%- info.quake_peak_value %>" org="<%- info.quake_peak_value %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="quake_peak_value" value="<%- info.quake_peak_value %>" org="<%- info.quake_peak_value %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %> >
                                 </div>
                             </div>
                         </div>
@@ -81,19 +81,19 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">批复用地(亩):</label>
-                                    <input type="text" class="form-control form-control-sm" name="reply_land" value="<%- info.reply_land %>" org="<%- info.reply_land %>"  placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="reply_land" value="<%- info.reply_land %>" org="<%- info.reply_land %>"  placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %> >
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">永久占用土地(亩):</label>
-                                    <input type="text" class="form-control form-control-sm" name="occupy_land" value="<%- info.occupy_land %>" org="<%- info.occupy_land %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="occupy_land" value="<%- info.occupy_land %>" org="<%- info.occupy_land %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %> >
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">实际拆迁房屋(m2):</label>
-                                    <input type="text" class="form-control form-control-sm" name="demolish_building" value="<%- info.demolish_building %>" org="<%- info.demolish_building %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="demolish_building" value="<%- info.demolish_building %>" org="<%- info.demolish_building %>" placeholder="请输入" maxlength="20" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %> >
                                 </div>
                             </div>
                         </div>
@@ -116,6 +116,7 @@
     </div>
 </div>
 <script>
+    const readOnly = <%- readOnly %>;
     const mainQty = JSON.parse('<%- JSON.stringify(info.main_quantity )%>');
     const gclQty = JSON.parse('<%- JSON.stringify(info.gcl_quantity )%>');
     $.subMenu({

+ 50 - 50
app/view/sub_proj/info.ejs

@@ -21,27 +21,27 @@
                         <div class="row">
                             <div class="form-group col-6">
                                 <div class="py-2 font-weight-bold">项目概述</div>
-                                <textarea class="form-control form-control-sm" name="proj_intro" rows="5" org="<%- info.proj_intro %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)"><%- info.proj_intro %></textarea>
+                                <textarea class="form-control form-control-sm" name="proj_intro" rows="5" org="<%- info.proj_intro %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>><%- info.proj_intro %></textarea>
                             </div>
                             <div class="col">
                                 <div class="py-2 font-weight-bold">当前状态</div>
-                                <textarea class="form-control form-control-sm" name="proj_cur_status" rows="5" org="<%- info.proj_cur_status %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)"><%- info.proj_cur_status %></textarea>
+                                <textarea class="form-control form-control-sm" name="proj_cur_status" rows="5" org="<%- info.proj_cur_status %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>><%- info.proj_cur_status %></textarea>
                             </div>
                         </div>
                         <div class="py-2 font-weight-bold">项目信息</div>
                         <div class="form-group">
                             <label for="">建设项目名称:</label>
-                            <input type="text" class="form-control form-control-sm" name="proj_name" value="<%- info.proj_name %>" org="<%- info.proj_name %>" maxlength="100" placeholder="请输入建设项目名称" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                            <input type="text" class="form-control form-control-sm" name="proj_name" value="<%- info.proj_name %>" org="<%- info.proj_name %>" maxlength="100" placeholder="请输入建设项目名称" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                         </div>
                         <div class="form-group">
                             <label for="">主管部门:</label>
-                            <input type="text" class="form-control form-control-sm" name="chief_department" value="<%- info.chief_department %>" org="<%- info.chief_department %>" maxlength="100" placeholder="指建设单位的主管部门" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                            <input type="text" class="form-control form-control-sm" name="chief_department" value="<%- info.chief_department %>" org="<%- info.chief_department %>" maxlength="100" placeholder="指建设单位的主管部门" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                         </div>
                         <div class="row">
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">建设项目类型:</label>
-                                    <select class="form-control form-control-sm" name="proj_type" value="<%- info.proj_type %>" org="<%- info.proj_type %>" onchange="changeInfo(this)">
+                                    <select class="form-control form-control-sm" name="proj_type" value="<%- info.proj_type %>" org="<%- info.proj_type %>" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                         <option value="">请选择</option>
                                         <option value="大中型" <%if (info.proj_type === '大中型') { %>selected<% } %>>大中型</option>
                                         <option value="小型" <%if (info.proj_type === '小型') { %>selected<% } %>>小型</option>
@@ -51,7 +51,7 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">建设性质:</label>
-                                    <select class="form-control form-control-sm" name="proj_quality" value="<%- info.proj_quality %>" org="<%- info.proj_quality %>" onchange="changeInfo(this)">
+                                    <select class="form-control form-control-sm" name="proj_quality" value="<%- info.proj_quality %>" org="<%- info.proj_quality %>" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                         <option value="">请选择</option>
                                         <option value="新建" <%if (info.proj_quality === '新建') { %>selected<% } %>>新建</option>
                                         <option value="改建" <%if (info.proj_quality === '改建') { %>selected<% } %>>改建</option>
@@ -63,7 +63,7 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">级别:</label>
-                                    <select class="form-control form-control-sm" name="proj_level" value="<%- info.proj_level %>" org="<%- info.proj_level %>" onchange="changeInfo(this)">
+                                    <select class="form-control form-control-sm" name="proj_level" value="<%- info.proj_level %>" org="<%- info.proj_level %>" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                         <option value="">请选择</option>
                                         <option value="中央级" <%if (info.proj_level === '中央级') { %>selected<% } %>>中央级</option>
                                         <option value="地方级" <%if (info.proj_level === '地方级') { %>selected<% } %>>地方级</option>
@@ -74,7 +74,7 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">建设状态:</label>
-                                    <select class="form-control form-control-sm" name="proj_status" value="<%- info.proj_status %>" org="<%- info.proj_status%>" onchange="changeInfo(this)">
+                                    <select class="form-control form-control-sm" name="proj_status" value="<%- info.proj_status %>" org="<%- info.proj_status%>" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                         <option value="">请选择</option>
                                         <option value="在建" <%if (info.proj_status === '在建') { %>selected<% } %>>在建</option>
                                         <option value="已建" <%if (info.proj_status === '已建') { %>selected<% } %>>已建</option>
@@ -87,25 +87,25 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">计划开工:</label>
-                                    <input type="date" class="form-control form-control-sm" name="plan_start_date" value="<%- info.plan_start_date %>" org="<%- info.plan_start_date %>" placeholder="请输入" onchange="changeInfo(this)">
+                                    <input type="date" class="form-control form-control-sm" name="plan_start_date" value="<%- info.plan_start_date %>" org="<%- info.plan_start_date %>" placeholder="请输入" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">计划完成:</label>
-                                    <input type="date" class="form-control form-control-sm" name="plan_finish_date" value="<%- info.plan_finish_date %>" org="<%- info.plan_finish_date %>" placeholder="请输入" onchange="changeInfo(this)">
+                                    <input type="date" class="form-control form-control-sm" name="plan_finish_date" value="<%- info.plan_finish_date %>" org="<%- info.plan_finish_date %>" placeholder="请输入" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">实际开工:</label>
-                                    <input type="date" class="form-control form-control-sm" name="real_start_date" value="<%- info.real_start_date %>" org="<%- info.real_start_date %>" placeholder="请输入" onchange="changeInfo(this)">
+                                    <input type="date" class="form-control form-control-sm" name="real_start_date" value="<%- info.real_start_date %>" org="<%- info.real_start_date %>" placeholder="请输入" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">实际完成:</label>
-                                    <input type="date" class="form-control form-control-sm" name="real_finish_date" value="<%- info.real_finish_date %>" org="<%- info.real_finish_date %>"placeholder="请输入" onchange="changeInfo(this)">
+                                    <input type="date" class="form-control form-control-sm" name="real_finish_date" value="<%- info.real_finish_date %>" org="<%- info.real_finish_date %>"placeholder="请输入" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                         </div>
@@ -114,19 +114,19 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">部门:</label>
-                                    <input type="text" class="form-control form-control-sm" name="lx_department" value="<%- info.lx_department %>" org="<%- info.lx_department %>" maxlength="100" placeholder="请输入部门名称" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="lx_department" value="<%- info.lx_department %>" org="<%- info.lx_department %>" maxlength="100" placeholder="请输入部门名称" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">日期:</label>
-                                    <input type="date" class="form-control form-control-sm" name="lx_date" value="<%- info.lx_date %>" org="<%- info.lx_date %>" placeholder="请输入" onchange="changeInfo(this)">
+                                    <input type="date" class="form-control form-control-sm" name="lx_date" value="<%- info.lx_date %>" org="<%- info.lx_date %>" placeholder="请输入" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">文号:</label>
-                                    <input type="text" class="form-control form-control-sm" name="lx_code" value="<%- info.lx_code %>" org="<%- info.lx_code %>" placeholder="请输入文号" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="lx_code" value="<%- info.lx_code %>" org="<%- info.lx_code %>" placeholder="请输入文号" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
@@ -138,7 +138,7 @@
                             <div class="col-12">
                                 <div class="form-group">
                                     <label for="">备注:</label>
-                                    <textarea class="form-control form-control-sm" name="lx_memo" rows="2" org="<%- info.lx_memo %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)"><%- info.lx_memo %></textarea>
+                                    <textarea class="form-control form-control-sm" name="lx_memo" rows="2" org="<%- info.lx_memo %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>><%- info.lx_memo %></textarea>
                                 </div>
                             </div>
                         </div>
@@ -147,19 +147,19 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">部门:</label>
-                                    <input type="text" class="form-control form-control-sm" name="cb_department" value="<%- info.cb_department %>" org="<%- info.cb_department %>" placeholder="请输入部门名称" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="cb_department" value="<%- info.cb_department %>" org="<%- info.cb_department %>" placeholder="请输入部门名称" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">日期:</label>
-                                    <input type="date" class="form-control form-control-sm" name="cb_date" value="<%- info.cb_date %>" org="<%- info.cb_date %>" placeholder="请输入" onchange="changeInfo(this)">
+                                    <input type="date" class="form-control form-control-sm" name="cb_date" value="<%- info.cb_date %>" org="<%- info.cb_date %>" placeholder="请输入" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">文号:</label>
-                                    <input type="text" class="form-control form-control-sm" name="cb_code" value="<%- info.cb_code %>" org="<%- info.cb_code %>" placeholder="请输入文号" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="cb_code" value="<%- info.cb_code %>" org="<%- info.cb_code %>" placeholder="请输入文号" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
@@ -171,7 +171,7 @@
                             <div class="col-12">
                                 <div class="form-group">
                                     <label for="">备注:</label>
-                                    <textarea class="form-control form-control-sm" name="cb_memo" rows="2" org="<%- info.cb_memo %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)"><%- info.cb_memo %></textarea>
+                                    <textarea class="form-control form-control-sm" name="cb_memo" rows="2" org="<%- info.cb_memo %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>><%- info.cb_memo %></textarea>
                                 </div>
                             </div>
                         </div>
@@ -180,19 +180,19 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">部门:</label>
-                                    <input type="text" class="form-control form-control-sm" name="sgt_department" value="<%- info.sgt_department %>" org="<%- info.sgt_department %>" placeholder="请输入部门名称" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="sgt_department" value="<%- info.sgt_department %>" org="<%- info.sgt_department %>" placeholder="请输入部门名称" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">日期:</label>
-                                    <input type="date" class="form-control form-control-sm" name="sgt_date" value="<%- info.sgt_date %>" org="<%- info.sgt_date %>" placeholder="请输入" onchange="changeInfo(this)">
+                                    <input type="date" class="form-control form-control-sm" name="sgt_date" value="<%- info.sgt_date %>" org="<%- info.sgt_date %>" placeholder="请输入" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">文号:</label>
-                                    <input type="text" class="form-control form-control-sm" name="sgt_code" value="<%- info.sgt_code %>" org="<%- info.sgt_code %>" placeholder="请输入文号" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="sgt_code" value="<%- info.sgt_code %>" org="<%- info.sgt_code %>" placeholder="请输入文号" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
@@ -204,7 +204,7 @@
                             <div class="col-12">
                                 <div class="form-group">
                                     <label for="">备注:</label>
-                                    <textarea class="form-control form-control-sm" name="sgt_memo" rows="2" org="<%- info.sgt_memo %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)"><%- info.sgt_memo %></textarea>
+                                    <textarea class="form-control form-control-sm" name="sgt_memo" rows="2" org="<%- info.sgt_memo %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>><%- info.sgt_memo %></textarea>
                                 </div>
                             </div>
                         </div>
@@ -213,31 +213,31 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">部门:</label>
-                                    <input type="text" class="form-control form-control-sm" name="pf_department" value="<%- info.pf_department %>" org="<%- info.pf_department %>" placeholder="请输入部门名称" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="pf_department" value="<%- info.pf_department %>" org="<%- info.pf_department %>" placeholder="请输入部门名称" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">日期:</label>
-                                    <input type="date" class="form-control form-control-sm" name="pf_date" value="<%- info.pf_date %>" org="<%- info.pf_date %>" placeholder="请输入" onchange="changeInfo(this)">
+                                    <input type="date" class="form-control form-control-sm" name="pf_date" value="<%- info.pf_date %>" org="<%- info.pf_date %>" placeholder="请输入" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">文号:</label>
-                                    <input type="text" class="form-control form-control-sm" name="pf_code" value="<%- info.pf_code %>" org="<%- info.pf_code %>" placeholder="请输入文号" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="pf_code" value="<%- info.pf_code %>" org="<%- info.pf_code %>" placeholder="请输入文号" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">金额:</label>
-                                    <input type="text" class="form-control form-control-sm" name="pf_tp" value="<%- info.pf_tp %>" org="<%- info.pf_tp %>" maxlength="50" onblur="changeInfo(this, true)">
+                                    <input type="text" class="form-control form-control-sm" name="pf_tp" value="<%- info.pf_tp %>" org="<%- info.pf_tp %>" maxlength="50" onblur="changeInfo(this, true)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-12">
                                 <div class="form-group">
                                     <label for="">备注:</label>
-                                    <textarea class="form-control form-control-sm" name="pf_memo" rows="2" org="<%- info.pf_memo %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)"><%- info.pf_memo %></textarea>
+                                    <textarea class="form-control form-control-sm" name="pf_memo" rows="2" org="<%- info.pf_memo %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>><%- info.pf_memo %></textarea>
                                 </div>
                             </div>
                         </div>
@@ -246,31 +246,31 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">部门:</label>
-                                    <input type="text" class="form-control form-control-sm" name="zb_department" value="<%- info.zb_department %>" org="<%- info.zb_department %>" placeholder="请输入部门名称" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="zb_department" value="<%- info.zb_department %>" org="<%- info.zb_department %>" placeholder="请输入部门名称" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">日期:</label>
-                                    <input type="date" class="form-control form-control-sm" name="zb_date" value="<%- info.zb_date %>" org="<%- info.zb_date %>" placeholder="请输入" onchange="changeInfo(this)">
+                                    <input type="date" class="form-control form-control-sm" name="zb_date" value="<%- info.zb_date %>" org="<%- info.zb_date %>" placeholder="请输入" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">文号:</label>
-                                    <input type="text" class="form-control form-control-sm" name="zb_code" value="<%- info.zb_code %>" org="<%- info.zb_code %>" placeholder="请输入文号" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="zb_code" value="<%- info.zb_code %>" org="<%- info.zb_code %>" placeholder="请输入文号" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">金额:</label>
-                                    <input type="text" class="form-control form-control-sm" name="zb_tp" value="<%- info.zb_tp %>" org="<%- info.zb_tp %>" maxlength="50" onblur="changeInfo(this, true)">
+                                    <input type="text" class="form-control form-control-sm" name="zb_tp" value="<%- info.zb_tp %>" org="<%- info.zb_tp %>" maxlength="50" onblur="changeInfo(this, true)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-12">
                                 <div class="form-group">
                                     <label for="">备注:</label>
-                                    <textarea class="form-control form-control-sm" name="zb_memo" rows="2" org="<%- info.zb_memo %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)"><%- info.zb_memo %></textarea>
+                                    <textarea class="form-control form-control-sm" name="zb_memo" rows="2" org="<%- info.zb_memo %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>><%- info.zb_memo %></textarea>
                                 </div>
                             </div>
                         </div>
@@ -279,25 +279,25 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">部门:</label>
-                                    <input type="text" class="form-control form-control-sm" name="sg_department" value="<%- info.sg_department %>" org="<%- info.sg_department %>" placeholder="请输入部门名称" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="sg_department" value="<%- info.sg_department %>" org="<%- info.sg_department %>" placeholder="请输入部门名称" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">日期:</label>
-                                    <input type="date" class="form-control form-control-sm" name="sg_date" value="<%- info.sg_date %>" org="<%- info.sg_date %>" placeholder="请输入" onchange="changeInfo(this)">
+                                    <input type="date" class="form-control form-control-sm" name="sg_date" value="<%- info.sg_date %>" org="<%- info.sg_date %>" placeholder="请输入" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">文号:</label>
-                                    <input type="text" class="form-control form-control-sm" name="sg_code" value="<%- info.sg_code %>" org="<%- info.sg_code %>" placeholder="请输入文号" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="sg_code" value="<%- info.sg_code %>" org="<%- info.sg_code %>" placeholder="请输入文号" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-12">
                                 <div class="form-group">
                                     <label for="">备注:</label>
-                                    <textarea class="form-control form-control-sm" name="sg_memo" rows="2" org="<%- info.sg_memo %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)"><%- info.sg_memo %></textarea>
+                                    <textarea class="form-control form-control-sm" name="sg_memo" rows="2" org="<%- info.sg_memo %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>><%- info.sg_memo %></textarea>
                                 </div>
                             </div>
                         </div>
@@ -306,25 +306,25 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">部门:</label>
-                                    <input type="text" class="form-control form-control-sm" name="jg_department" value="<%- info.jg_department %>" org="<%- info.jg_department %>" placeholder="请输入部门名称" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="jg_department" value="<%- info.jg_department %>" org="<%- info.jg_department %>" placeholder="请输入部门名称" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">日期:</label>
-                                    <input type="date" class="form-control form-control-sm" name="jg_date" value="<%- info.jg_date %>" org="<%- info.jg_date %>" placeholder="请输入" onchange="changeInfo(this)">
+                                    <input type="date" class="form-control form-control-sm" name="jg_date" value="<%- info.jg_date %>" org="<%- info.jg_date %>" placeholder="请输入" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">文号:</label>
-                                    <input type="text" class="form-control form-control-sm" name="jg_code" value="<%- info.jg_code %>" org="<%- info.jg_code %>" placeholder="请输入文号" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="jg_code" value="<%- info.jg_code %>" org="<%- info.jg_code %>" placeholder="请输入文号" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">金额:</label>
-                                    <input type="text" class="form-control form-control-sm" name="jg_tp" value="<%- info.jg_tp %>" org="<%- info.jg_tp %>" maxlength="50" onblur="changeInfo(this, true)">
+                                    <input type="text" class="form-control form-control-sm" name="jg_tp" value="<%- info.jg_tp %>" org="<%- info.jg_tp %>" maxlength="50" onblur="changeInfo(this, true)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                         </div>
@@ -332,13 +332,13 @@
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">工程质量评分:</label>
-                                    <input type="text" class="form-control form-control-sm" name="jg_quality_score" value="<%- info.jg_quality_score %>" org="<%- info.jg_quality_score %>" placeholder="请输入" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="jg_quality_score" value="<%- info.jg_quality_score %>" org="<%- info.jg_quality_score %>" placeholder="请输入" maxlength="50" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-3">
                                 <div class="form-group">
                                     <label for="">等级:</label>
-                                    <select class="form-control form-control-sm" name="jg_level" value="<%- info.jg_level %>" org="<%- info.jg_level %>" onchange="changeInfo(this)">
+                                    <select class="form-control form-control-sm" name="jg_level" value="<%- info.jg_level %>" org="<%- info.jg_level %>" onchange="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                         <option value="">请选择</option>
                                         <option value="优良" <%if (info.jg_level === '优良') { %>selected<% } %>>优良</option>
                                         <option value="合格" <%if (info.jg_level === '合格') { %>selected<% } %>>合格</option>
@@ -349,7 +349,7 @@
                             <div class="col-12">
                                 <div class="form-group">
                                     <label for="">备注:</label>
-                                    <textarea class="form-control form-control-sm" name="jg_memo" rows="2" org="<%- info.jg_memo %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)"><%- info.jg_memo %></textarea>
+                                    <textarea class="form-control form-control-sm" name="jg_memo" rows="2" org="<%- info.jg_memo %>" maxlength="1000" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>><%- info.jg_memo %></textarea>
                                 </div>
                             </div>
                         </div>
@@ -358,31 +358,31 @@
                             <div class="col-6">
                                 <div class="form-group">
                                     <label for="">建设单位:</label>
-                                    <input type="text" class="form-control form-control-sm" name="unit_construction" value="<%- info.unit_construction %>" org="<%- info.unit_construction %>" placeholder="请输入" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="unit_construction" value="<%- info.unit_construction %>" org="<%- info.unit_construction %>" placeholder="请输入" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-6">
                                 <div class="form-group">
                                     <label for="">质量监督机构:</label>
-                                    <input type="text" class="form-control form-control-sm" name="unit_qa" value="<%- info.unit_qa %>" org="<%- info.unit_qa %>" placeholder="请输入" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)">
+                                    <input type="text" class="form-control form-control-sm" name="unit_qa" value="<%- info.unit_qa %>" org="<%- info.unit_qa %>" placeholder="请输入" maxlength="100" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>>
                                 </div>
                             </div>
                             <div class="col-6">
                                 <div class="form-group">
                                     <label for="">主要设计单位:</label>
-                                    <textarea class="form-control form-control-sm" name="unit_design" org="<%- info.unit_design %>" rows="3" maxlength="500" oninput="limitMaxLength(this)" onblur="changeInfo(this)"><%- info.unit_design %></textarea>
+                                    <textarea class="form-control form-control-sm" name="unit_design" org="<%- info.unit_design %>" rows="3" maxlength="500" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>><%- info.unit_design %></textarea>
                                 </div>
                             </div>
                             <div class="col-6">
                                 <div class="form-group">
                                     <label for="">主要监理单位:</label>
-                                    <textarea class="form-control form-control-sm" name="unit_supervision" org="<%- info.unit_supervision %>" rows="3" maxlength="500" oninput="limitMaxLength(this)" onblur="changeInfo(this)"><%- info.unit_supervision %></textarea>
+                                    <textarea class="form-control form-control-sm" name="unit_supervision" org="<%- info.unit_supervision %>" rows="3" maxlength="500" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>><%- info.unit_supervision %></textarea>
                                 </div>
                             </div>
                             <div class="col-6">
                                 <div class="form-group">
                                     <label for="">主要施工单位:</label>
-                                    <textarea class="form-control form-control-sm" name="unit_contract" org="<%- info.unit_contract %>" rows="3" maxlength="500" oninput="limitMaxLength(this)" onblur="changeInfo(this)"><%- info.unit_contract %></textarea>
+                                    <textarea class="form-control form-control-sm" name="unit_contract" org="<%- info.unit_contract %>" rows="3" maxlength="500" oninput="limitMaxLength(this)" onblur="changeInfo(this)" <% if (readOnly) { %>readOnly<% } %>><%- info.unit_contract %></textarea>
                                 </div>
                             </div>
                         </div>

+ 1 - 0
app/view/sub_proj/progress.ejs

@@ -111,5 +111,6 @@
     </div>
 </div>
 <script>
+    const readOnly = <%- readOnly %>;
     const fileReferenceList = JSON.parse('<%- JSON.stringify(fileReferenceList) %>');
 </script>

+ 4 - 1
app/view/sub_proj/push.ejs

@@ -82,4 +82,7 @@
     <div style="display: none">
         <img src="/public/images/ellipsis_horizontal.png" id="ellipsis-icon" />
     </div>
-</div>
+</div>
+<script>
+    const readOnly = <%- readOnly %>;
+</script>