|
@@ -555,9 +555,10 @@ export default {
|
|
|
child: _.child.map(subCom => {
|
|
|
if(subCom.compId===4) {
|
|
|
let params = GetQueryString(subCom.content);
|
|
|
- let titleText = ($(`.title_iframe${params.code}`)
|
|
|
- &&$(`.title_iframe${params.code}`)[0])
|
|
|
- ?$(`.title_iframe${params.code}`)[0].innerText
|
|
|
+ let codeSuffix = params.uid?params.uid:params.code;
|
|
|
+ let titleText = ($(`.title_iframe${codeSuffix}`)
|
|
|
+ &&$(`.title_iframe${codeSuffix}`)[0])
|
|
|
+ ?$(`.title_iframe${codeSuffix}`)[0].innerText
|
|
|
:'';
|
|
|
|
|
|
return {
|
|
@@ -572,9 +573,10 @@ export default {
|
|
|
}else { //一行单个
|
|
|
if(_.compId===4) {
|
|
|
let params = GetQueryString(_.content);
|
|
|
- let titleText = ($(`.title_iframe${params.code}`)
|
|
|
- &&$(`.title_iframe${params.code}`)[0])
|
|
|
- ?$(`.title_iframe${params.code}`)[0].innerText
|
|
|
+ let codeSuffix = params.uid?params.uid:params.code;
|
|
|
+ let titleText = ($(`.title_iframe${codeSuffix}`)
|
|
|
+ &&$(`.title_iframe${codeSuffix}`)[0])
|
|
|
+ ?$(`.title_iframe${codeSuffix}`)[0].innerText
|
|
|
:'';
|
|
|
|
|
|
return {
|
|
@@ -761,15 +763,40 @@ export default {
|
|
|
|
|
|
},
|
|
|
|
|
|
+ /* 接受iframe post过来的参数 */
|
|
|
+ getIframeMessage(e) {
|
|
|
+ if(e.data.type&&e.data.type==='changeCol') { //改变行列宽
|
|
|
+ this.handleSaveIframeSheetWid(e)
|
|
|
+ }else { //init高度
|
|
|
+ this.setSheetIframeStyle(e)
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
+ /* 保存表格行列宽 */
|
|
|
+ async handleSaveIframeSheetWid(e) {
|
|
|
+ const { code,columnsWArr,rowsHArr,uid } = e.data;
|
|
|
+ let parmas = {
|
|
|
+ UniqueCode: code,
|
|
|
+ ReferencedId: Number(this.$route.query.id),
|
|
|
+ FromScene: 2,
|
|
|
+ Uuid: uid,
|
|
|
+ WidthList: columnsWArr.join(','),
|
|
|
+ HeightList: rowsHArr.join(',')
|
|
|
+ }
|
|
|
+ // console.log(parmas)
|
|
|
+ await sheetInterface.sheetUseSceneSaveWid(parmas);
|
|
|
+ },
|
|
|
+
|
|
|
// 设置sheet iframe 样式
|
|
|
setSheetIframeStyle(e){
|
|
|
- const { height, code } = e.data;
|
|
|
+ const { height, code,uid } = e.data;
|
|
|
// console.log(e.data);
|
|
|
- let iframeDom = document.getElementsByClassName(`iframe${code}`);
|
|
|
+ let iframeDom = document.getElementsByClassName(`iframe${uid||code}`);
|
|
|
// console.log(iframeDom);
|
|
|
iframeDom.forEach((ele) => {
|
|
|
- ele.height = `${height}px`;
|
|
|
+ ele.height = `${height+2}px`;
|
|
|
});
|
|
|
+ this.contentChange = true;
|
|
|
},
|
|
|
|
|
|
async handleParentAdd(e){
|
|
@@ -790,11 +817,14 @@ export default {
|
|
|
|
|
|
// 要添加的元素数据
|
|
|
const compData=JSON.parse(item.getAttribute('comp-data'))
|
|
|
+
|
|
|
+ //可拖拽表格需药后缀
|
|
|
+ let content = compData.compType==='sheet' ? this.getLinkSuffixParams(compData) : (compData.content||'')
|
|
|
const tempCompData={
|
|
|
compId:compData.compId,
|
|
|
compType:compData.compType,
|
|
|
id:this.getCompId(compData.compType),
|
|
|
- content:compData.content||'',
|
|
|
+ content,
|
|
|
titleText: compData.compId===4?compData.title:'',
|
|
|
style:compData.compType==='chart'?'height:350px':'',
|
|
|
child:[]
|
|
@@ -838,6 +868,9 @@ export default {
|
|
|
|
|
|
if(obj.child&&obj.child.length===1&&obj.id){
|
|
|
if(compData){
|
|
|
+ //可拖拽表格需药后缀
|
|
|
+ let content = compData.compType==='sheet' ? this.getLinkSuffixParams(compData) : (compData.content||'')
|
|
|
+
|
|
|
obj={
|
|
|
child:[
|
|
|
{
|
|
@@ -852,7 +885,7 @@ export default {
|
|
|
{
|
|
|
compId:compData.compId,
|
|
|
compType:compData.compType,
|
|
|
- content:compData.content||'',
|
|
|
+ content,
|
|
|
id:this.getCompId(compData.compType),
|
|
|
titleText: compData.compId===4?compData.title:'',
|
|
|
style:compData.compType==='chart'?'height:350px':'',
|
|
@@ -892,10 +925,12 @@ export default {
|
|
|
|
|
|
}else{
|
|
|
if(compData){//如果是从内容区域拖入的没有compData
|
|
|
+ let content = compData.compType==='sheet' ? this.getLinkSuffixParams(compData) : (compData.content||'')
|
|
|
+
|
|
|
obj.child.splice(newDraggableIndex,1,{
|
|
|
compId:compData.compId,
|
|
|
compType:compData.compType,
|
|
|
- content:compData.content||'',
|
|
|
+ content,
|
|
|
id:this.getCompId(compData.compType),
|
|
|
titleText: compData.compId===4?compData.title:'',
|
|
|
style:compData.compType==='chart'?'height:350px':'',
|
|
@@ -913,6 +948,15 @@ export default {
|
|
|
|
|
|
},
|
|
|
|
|
|
+ /* 表格要拖拽拼接额外参数 */
|
|
|
+ getLinkSuffixParams(compData) {
|
|
|
+ let linkParams = GetQueryString(compData.content);
|
|
|
+ let sourceId = this.$route.query.id||'';//报告id
|
|
|
+ let uid = linkParams.code+new Date().getTime(); //唯一id
|
|
|
+
|
|
|
+ return `${compData.content}&sourceId=${sourceId}&uid=${uid}`
|
|
|
+ },
|
|
|
+
|
|
|
// 移除事件
|
|
|
handleChildRemove(e,arr){
|
|
|
console.log('child-remove操作------------------->');
|
|
@@ -1456,7 +1500,7 @@ export default {
|
|
|
this.reportCoopType===1 && this.getReportDetail()
|
|
|
},
|
|
|
mounted () {
|
|
|
- window.addEventListener('message',this.setSheetIframeStyle)
|
|
|
+ window.addEventListener('message',this.getIframeMessage)
|
|
|
if(this.reportCoopType===1) {
|
|
|
this.timer = setInterval(() => {
|
|
|
this.handleSaveContent({isAutoSave:true,IsManualSave:false});
|
|
@@ -1464,7 +1508,7 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
destroyed() {
|
|
|
- window.removeEventListener('message',this.setSheetIframeStyle)
|
|
|
+ window.removeEventListener('message',this.getIframeMessage)
|
|
|
if (this.timer) {
|
|
|
clearInterval(this.timer);
|
|
|
}
|