|
@@ -0,0 +1,235 @@
|
|
|
+
|
|
|
+ * 安全信息的显示
|
|
|
+ *
|
|
|
+*/
|
|
|
+export = Security
|
|
|
+class Security {
|
|
|
+ global = null;
|
|
|
+ domObj = null;
|
|
|
+ apiUrls = null;
|
|
|
+ apiRoot = null;
|
|
|
+ userToken = null;
|
|
|
+ verificationHelper = null;
|
|
|
+ sendAjax = null;
|
|
|
+ header = null;
|
|
|
+ config = null;
|
|
|
+ toast = null;
|
|
|
+ AppX = null;
|
|
|
+ scanSets = [];
|
|
|
+
|
|
|
+ _currentUnit = null;
|
|
|
+ unitDesignPaperID = "security";
|
|
|
+ constructor(global) {
|
|
|
+ this.global = global;
|
|
|
+ this.apiUrls = this.global.apiUrls;
|
|
|
+ this.apiRoot = this.global.apiRoot;
|
|
|
+ this.userToken = this.global.userToken;
|
|
|
+ this.sendAjax = this.global.sendAjax;
|
|
|
+ this.config = this.global.config;
|
|
|
+ this.verificationHelper = this.global.verificationHelper;
|
|
|
+ this.AppX = this.global.AppX;
|
|
|
+ this.toast = this.global.toast;
|
|
|
+ this.header = this.global.header;
|
|
|
+ this._currentUnit = this.global._currentUnit;
|
|
|
+ }
|
|
|
+
|
|
|
+ * 展示安全信息
|
|
|
+ * @param result
|
|
|
+ */
|
|
|
+ showhPages(result) {
|
|
|
+ this.domObj = this.global.domObj.find('#' + this.unitDesignPaperID);
|
|
|
+ let html = this.global.template.split('$$')[7];
|
|
|
+ this.domObj.empty().append(html);
|
|
|
+ this.showMissionPage(null);
|
|
|
+ this.showDangerPage(null);
|
|
|
+ this.showHiddenDangerPage(null);
|
|
|
+ }
|
|
|
+
|
|
|
+ * 展示概述页面
|
|
|
+ * @param result 请求的获取的所有数据
|
|
|
+ * @param info 展示的属性的数据
|
|
|
+ */
|
|
|
+ showMissionPage(designInfos) {
|
|
|
+ let Dhtml="";
|
|
|
+ let index=0;
|
|
|
+ designInfos=this.config.security.mission;
|
|
|
+ designInfos.forEach(item => {
|
|
|
+ if (item.value === null) item.value = "暂无";
|
|
|
+ let titleStr = this.verificationHelper.setNullAndUndefined(item.title);
|
|
|
+ let valueStr = this.verificationHelper.setNullAndUndefined(item.value);
|
|
|
+ let title = "<span class='title' title='" + titleStr + "'>" + titleStr + ":" + "</span>";
|
|
|
+ let value = "<input class='value' title='" + valueStr + "' value='"+valueStr+"' readonly='readonly' />";
|
|
|
+ Dhtml += ("<div class='item'>" + title + value + " </div>");
|
|
|
+ index++;
|
|
|
+ });
|
|
|
+ this.domObj.find('.sgInfoList').empty().append(Dhtml);
|
|
|
+ this.domObj.find('.sgInfoList').removeClass('dataHidden');
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ * 危险源
|
|
|
+ * @param infos
|
|
|
+ */
|
|
|
+ showDangerPage(infos){
|
|
|
+ let Dhtml="";
|
|
|
+ let index=0;
|
|
|
+ infos=this.config.security.danger;
|
|
|
+ infos.forEach(item => {
|
|
|
+ if (item.value === null) item.value = "暂无";
|
|
|
+ let titleStr = this.verificationHelper.setNullAndUndefined(item.title);
|
|
|
+ let valueStr = this.verificationHelper.setNullAndUndefined(item.value);
|
|
|
+ let title = "<span class='title' title='" + titleStr + "'>" + titleStr + ":" + "</span>";
|
|
|
+ let value = "<input class='value' title='" + valueStr + "' value='"+valueStr+"' readonly='readonly' />";
|
|
|
+ Dhtml += ("<div class='item'>" + title + value + " </div>");
|
|
|
+ index++;
|
|
|
+ });
|
|
|
+ this.domObj.find('.wxyInfoList').empty().append(Dhtml);
|
|
|
+ this.domObj.find('.wxyInfoList').removeClass('dataHidden');
|
|
|
+ }
|
|
|
+
|
|
|
+ * 安全隐患
|
|
|
+ * @param infos
|
|
|
+ */
|
|
|
+ showHiddenDangerPage(infos){
|
|
|
+ let Dhtml="";
|
|
|
+ let index=0;
|
|
|
+ infos=this.config.security.hiddendanger;
|
|
|
+ infos.forEach(item => {
|
|
|
+ if (item.value === null) item.value = "暂无";
|
|
|
+ let titleStr = this.verificationHelper.setNullAndUndefined(item.title);
|
|
|
+ let valueStr = this.verificationHelper.setNullAndUndefined(item.value);
|
|
|
+ let title = "<span class='title' title='" + titleStr + "'>" + titleStr + ":" + "</span>";
|
|
|
+ let value = "<input class='value' title='" + valueStr + "' value='"+valueStr+"' readonly='readonly' />";
|
|
|
+ Dhtml += ("<div class='item'>" + title + value + " </div>");
|
|
|
+ index++;
|
|
|
+ if(index==10&&index!=infos.length){
|
|
|
+ Dhtml+=("<div class='line'></div>");
|
|
|
+ index=0;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ this.domObj.find('.aqInfoList').empty().append(Dhtml);
|
|
|
+ this.domObj.find('.aqInfoList').removeClass('dataHidden');
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ * 获取合同信息
|
|
|
+ * @param result 请求的获取的所有数据
|
|
|
+ */
|
|
|
+ gethtInfo(result) {
|
|
|
+ this.sendAjax({ pbs: this._currentUnit.code }, this._currentUnit.geoType === "LINE" ? this.apiUrls.pipeContract : this.apiUrls.pointContract, "GET", resp => {
|
|
|
+ const arr = resp.result;
|
|
|
+ if (arr && arr.length > 0) {
|
|
|
+ const projectInfo = arr.map(item => {
|
|
|
+ return {
|
|
|
+ title: item.levelname,
|
|
|
+ value: item.name,
|
|
|
+ code: item.code
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ let prjStr = "";
|
|
|
+ projectInfo.forEach(item => {
|
|
|
+ prjStr += `
|
|
|
+ <div class="info-row">
|
|
|
+ <span class="info-title">${item.title}:</span>
|
|
|
+ <input class="info-content" title="${item.value}" value='${item.value}' readonly='readonly' />
|
|
|
+ <input class="info-code" title="${item.code}" value='${item.code}' />
|
|
|
+ </div>
|
|
|
+ `
|
|
|
+ });
|
|
|
+
|
|
|
+ let partscode = result.filter(item => {
|
|
|
+ return item.compare == "pipeid";
|
|
|
+ })
|
|
|
+ partscode = partscode[0].value;
|
|
|
+ if(!partscode){
|
|
|
+ partscode="/"
|
|
|
+ }
|
|
|
+ prjStr += `
|
|
|
+ <div class="info-row">
|
|
|
+ <span class="info-title">部件编码:</span>
|
|
|
+ <input class="info-content" title="${partscode}" value='${partscode}' />
|
|
|
+ <input class="info-code" title="${this._currentUnit.code}" value='${this._currentUnit.code}' />
|
|
|
+ </div>
|
|
|
+ `
|
|
|
+ let unit = [
|
|
|
+ { title: "权属单位:", compare: "ownerunit", value: undefined },
|
|
|
+ { title: "设计单位:", compare: "designunit", value: undefined },
|
|
|
+ { title: "施工单位:", compare: "buildunit", value: undefined },
|
|
|
+ { title: "监理单位:", compare: "supervisionunit", value: undefined }
|
|
|
+ ];
|
|
|
+ for (let item of result) {
|
|
|
+ for (let un of unit) {
|
|
|
+ if (item.compare === un.compare) {
|
|
|
+ un.value = item.value
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ let unitStr = "";
|
|
|
+ unit.forEach(item => {
|
|
|
+ unitStr += `
|
|
|
+ <div class="info-row">
|
|
|
+ <span class="info-title">${item.title}</span>
|
|
|
+ <input class="info-content inputContent" value='${item.value}' />
|
|
|
+ </div>
|
|
|
+ `
|
|
|
+ })
|
|
|
+ let contract = [
|
|
|
+ { title: "设计合同:", compare: "designcontract", value: undefined, code: undefined },
|
|
|
+ { title: "施工合同:", compare: "contract", value: undefined, code: undefined }
|
|
|
+ ]
|
|
|
+ for (let item of result) {
|
|
|
+ for (let un of contract) {
|
|
|
+ if (item.compare === un.compare) {
|
|
|
+ un.value = item.value;
|
|
|
+ }
|
|
|
+ if (item.compare === "designcontractcode" && un.compare === "designcontract") un.code = item.value;
|
|
|
+ if (item.compare === "contractcode" && un.compare === "contract") un.code = item.value;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ let contractStr = "";
|
|
|
+ contract.forEach(item => {
|
|
|
+ contractStr += `
|
|
|
+ <div class="info-row">
|
|
|
+ <span class="info-title">${item.title}</span>
|
|
|
+ <input class="info-content inputContent" title="${item.value}" value='${item.value}' />
|
|
|
+ </div>
|
|
|
+ `
|
|
|
+ })
|
|
|
+ const lastStr = `
|
|
|
+ ${prjStr}${unitStr}${contractStr}
|
|
|
+ `
|
|
|
+ this.domObj.find('.htInfoList').empty().append(lastStr);
|
|
|
+ this.domObj.find('.htInfoList').removeClass('dataHidden');
|
|
|
+ this.domObj.find('.noht').addClass('dataHidden');
|
|
|
+ } else {
|
|
|
+ this.domObj.find('.noht').removeClass('dataHidden');
|
|
|
+ this.domObj.find('.htInfoList').addClass('dataHidden');
|
|
|
+ }
|
|
|
+ }, 1)
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * 获取材料信息
|
|
|
+ */
|
|
|
+ getclInfo() {
|
|
|
+ this.sendAjax({ pbs: this._currentUnit.code }, this.apiUrls.materialInfo, "GET", resp => {
|
|
|
+ if (resp.result) {
|
|
|
+ let dataFiled = resp.result;
|
|
|
+ let html = "";
|
|
|
+ for (let key in this.config.clInfo) {
|
|
|
+ let title = this.config.clInfo[key];
|
|
|
+ let value = this.verificationHelper.setNullAndUndefined(dataFiled[key]);
|
|
|
+ html += ("<div class='clItem'><span class='clspan' title='" + title + "'>" + title + ":</span><input type='text' class='clInput' value='" + value + "' /></div>")
|
|
|
+ }
|
|
|
+ this.domObj.find('.clInfoList').empty().append(html);
|
|
|
+ this.domObj.find('.clInfoList').removeClass('dataHidden');
|
|
|
+ this.domObj.find('.nocl').addClass('dataHidden');
|
|
|
+ } else {
|
|
|
+ this.domObj.find('.nocl').removeClass('dataHidden');
|
|
|
+ this.domObj.find('.clInfoList').addClass('dataHidden');
|
|
|
+ }
|
|
|
+ }, 1)
|
|
|
+ }
|
|
|
+}
|