提交 b0ed50d0 authored 作者: 钟是志's avatar 钟是志

JSON调试

上级 ae986cc0
......@@ -13,13 +13,14 @@ import { HyperFormula } from 'hyperformula';
import TableCom from '../tableCompon';
import IsNewTable from './isNewMobileTable';
import maintain from '../assets/maintain.png';
import { isJSON } from "@/webPublic/one_stop_public/copy";
export default class ZdyTable extends Component {
constructor(props) {
super(props);
this.state = {
objRealTime:{},
objRealTime: {},
isChange: false,
selects: new Map(),
left: 0,
......@@ -53,16 +54,20 @@ export default class ZdyTable extends Component {
isChild, // 是否为子表单
isQRCode = false, // 是否为二维码快捷发起
formDeafault = '', // 为二维码快捷发起默认值
} = this.props;
if (isPreview || isChild) {
this.initExcel({ datas: this.props.datas, trees: this.props.trees }, () => {
this.setState(
{
this.setState({
...this.state,
...this.props,
formConfig: { ...this.state.formConfig, style: this.props.style }, isReady: true,
viewMode:this.props.currentFormKey&&this.props.data&&this.props.datas[this.props.currentFormKey]?this.props.datas[this.props.currentFormKey].viewMode:null
formConfig: { ...this.state.formConfig, style: this.props.style },
isReady: true,
viewMode:
this.props.currentFormKey &&
this.props.data &&
this.props.datas[this.props.currentFormKey]
? this.props.datas[this.props.currentFormKey].viewMode
: null,
});
});
......@@ -97,7 +102,7 @@ export default class ZdyTable extends Component {
const obj = JSON.parse(val.form.content);
const xxx = obj.datas[obj.init];
const fk = this.props.table ? val.formKey : obj.init;
this.initExcel(obj,()=>{
this.initExcel(obj, () => {
this.setState({
datas: obj.datas,
width: this.props.table ? obj.datas[val.formKey].width : xxx.width,
......@@ -114,8 +119,8 @@ export default class ZdyTable extends Component {
appId: val.appId,
isReady: true,
formConfig: xxx,
})
})
});
});
return;
}
......@@ -155,7 +160,7 @@ export default class ZdyTable extends Component {
const obj = JSON.parse(val.unifiedServicePatternModel.content);
const xxx = obj.datas[obj.init];
this.initExcel(obj,()=>{
this.initExcel(obj, () => {
this.setState({
items: xxx.items,
init: { ...this.state.init, ...JSON.parse(val.content) },
......@@ -176,8 +181,8 @@ export default class ZdyTable extends Component {
defaultBinds: this.props.table
? obj.datas[val.taskFormKey].defaultBinds
: xxx.defaultBinds,
})
})
});
});
return;
}
......@@ -185,14 +190,12 @@ export default class ZdyTable extends Component {
if (
val.unifiedServicePatternModel.isDefaultError != null &&
val.unifiedServicePatternModel.isDefaultError
)
{
) {
if (this.props.get == 'web') {
message.error('当前办理人数较多,服务繁忙,请稍后再试!');
} else {
Toast.fail('当前办理人数较多,服务繁忙,请稍后再试!');
}
router.goBack();
return;
}
......@@ -214,16 +217,18 @@ export default class ZdyTable extends Component {
for (var j = 0; j < dob.columnModels.length; j++) {
mapData[dob.columnModels[j].base52] = dob.columnModels[j];
}
}
if(!isJSON(val.unifiedServicePatternModel.content)){
console.error('unifiedServicePatternModel.content 不是一个JSON字符串 请查看配置');
}
const obj = JSON.parse(val.unifiedServicePatternModel.content);
console.log(obj, '-----content---');
const xxx = obj.datas[this.props.formKey ? this.props.formKey : obj.init]; // 是否是存在历史表单传入值
const fk = this.props.formKey
? this.props.formKey
: val.taskFormKey
? val.taskFormKey
: obj.init;
this.initExcel(obj,()=>
this.initExcel(obj, () =>
this.setState(
{
appId: val.id,
......@@ -242,14 +247,15 @@ export default class ZdyTable extends Component {
width: this.props.table ? obj.datas[val.taskFormKey].width : xxx.width,
isBorder: this.props.table ? obj.datas[val.taskFormKey].isBorder : xxx.isBorder,
isRowCol: this.props.table ? obj.datas[val.taskFormKey].isRowCol : xxx.isRowCol,
viewMode: this.props.table ? obj.datas[val.taskFormKey]. viewMode : xxx.viewMode,
viewMode: this.props.table ? obj.datas[val.taskFormKey].viewMode : xxx.viewMode,
items: this.props.table ? obj.datas[val.taskFormKey].items : xxx.items,
isReady: true,
init: { ...this.state.init, ...(val.isSecond ? this.props.obj : {}) },
formConfig: xxx,
// init:this.props.get==="mobile"?!!val.content?JSON.parse(val.content):'':{},// 移动端默认值设置
},() => {
},
() => {
/**
* 为二维码快捷发起时自动设置新默认值
*/
......@@ -257,15 +263,15 @@ export default class ZdyTable extends Component {
this.props.form.setFieldsValue(formDeafault);
}
this.initExcel(obj);
} ));
},
),
);
} catch (e) {
console.log('公式配置有误', e);
console.log('公式配置有误/Table/index-262', e);
}
}
importExcel = (res,callback) => {
importExcel = (res, callback) => {
const { datas, trees } = this.configs;
const sheets = res.sheets;
......@@ -290,14 +296,18 @@ export default class ZdyTable extends Component {
uuid: 'id_' + UUID.v4().replace(/-/g, '2'),
row: c.rowSpan,
col: c.colSpan,
content: { comName: 'Excel', initialValue: c.value, cwidth: c.width, cheight: c.height },
content: {
comName: 'Excel',
initialValue: c.value,
cwidth: c.width,
cheight: c.height,
},
});
}
}
items.push(rows);
}
const charts = sheets[s].charts;
if (charts && charts.length > 0) {
const rows = [];
......@@ -316,7 +326,6 @@ export default class ZdyTable extends Component {
});
items.push(rows);
}
}
if (datas[uuid] == null) {
trees.push({ title: sheets[s].name, key: uuid });
......@@ -327,23 +336,19 @@ export default class ZdyTable extends Component {
isBorder: true,
items: items,
};
}
this.initExcel({ datas, trees }, () =>{
this.setState({ isChange: !this.state.isChange },()=>{
if(callback)callback();
this.initExcel({ datas, trees }, () => {
this.setState({ isChange: !this.state.isChange }, () => {
if (callback) callback();
});
console.log('公式导入excel成功');
})
});
};
hfInstance;
childExcel = (sheetData, datas, tr) => {
if (tr.children == null || tr.children.length == 0) {
} else {
for (var c = 0; c < tr.children.length; c++) {
this.childExcel(sheetData, datas, tr.children[c]);
......@@ -361,26 +366,23 @@ export default class ZdyTable extends Component {
} else {
r.push('');
}
}
all.push(r);
}
sheetData[tr.title] = all;
};
configs;
initExcel = (configs, callback) => {
if (configs == null || configs.trees == null){
if (configs == null || configs.trees == null) {
if (callback) callback();
return ;
return;
}
if (configs.trees != null) this.configs = configs;
const sheetData = {};
for (var key in configs.trees) {
const tr = configs.trees[key];
this.childExcel(sheetData, configs.datas, tr);
}
......@@ -392,16 +394,18 @@ export default class ZdyTable extends Component {
getCellValue = (i, j, currentTitle) => {
let hfInstance = this.props.hfInstance ? this.props.hfInstance : this.hfInstance;
if (hfInstance && currentTitle) {
let x = hfInstance.getCellValue({ col: j, row: i, sheet: hfInstance.getSheetId(currentTitle) });
let x = hfInstance.getCellValue({
col: j,
row: i,
sheet: hfInstance.getSheetId(currentTitle),
});
if (x && x.value != null) {
x = x.value;
}
return x;
}
};
componentWillReceiveProps(nextProps) {
......@@ -411,21 +415,27 @@ export default class ZdyTable extends Component {
isForm,
isPreview, // 是否为预览模式
isChild, // 是否为子表单
} = nextProps;
if (isPreview || isChild) {
this.setState({
this.setState(
{
...this.state,
...nextProps,
isReady: true,
viewMode:nextProps.currentFormKey&&nextProps.datas&&nextProps.datas[nextProps.currentFormKey]?nextProps.datas[nextProps.currentFormKey].viewMode:null,
viewMode:
nextProps.currentFormKey && nextProps.datas && nextProps.datas[nextProps.currentFormKey]
? nextProps.datas[nextProps.currentFormKey].viewMode
: null,
formConfig: { ...this.state.formConfig, style: nextProps.style },
}, () => this.initExcel({ datas: nextProps.datas, trees: nextProps.trees }));
},
() => this.initExcel({ datas: nextProps.datas, trees: nextProps.trees }),
);
return;
}
try {
debugger;
const val = postData;
/**
* 数据源不同进行以下区别处理
......@@ -451,7 +461,7 @@ export default class ZdyTable extends Component {
}
const obj = JSON.parse(val.form.content);
const xxx = obj.datas[obj.init];
this.initExcel(obj,()=>{
this.initExcel(obj, () => {
this.setState({
datas: obj.datas,
width: this.props.table ? obj.datas[val.formKey].width : xxx.width,
......@@ -467,8 +477,8 @@ export default class ZdyTable extends Component {
appId: val.appId,
isReady: true,
formConfig: xxx,
})
})
});
});
return;
}
......@@ -494,7 +504,7 @@ export default class ZdyTable extends Component {
}
const obj = JSON.parse(val.unifiedServicePatternModel.content);
const xxx = obj.datas[obj.init];
this.initExcel(obj,()=>{
this.initExcel(obj, () => {
this.setState({
items: xxx.items,
init: { ...this.state.init, ...JSON.parse(val.content) },
......@@ -514,8 +524,8 @@ export default class ZdyTable extends Component {
defaultBinds: this.props.table
? obj.datas[val.taskFormKey].defaultBinds
: xxx.defaultBinds,
})
})
});
});
return;
}
......@@ -540,13 +550,13 @@ export default class ZdyTable extends Component {
const obj = JSON.parse(val.unifiedServicePatternModel.content);
const xxx = obj.datas[this.props.formKey ? this.props.formKey : obj.init]; // 是否是存在历史表单传入值
if(this.props.isQuery) return;
if (this.props.isQuery) return;
const fk = this.props.formKey
? this.props.formKey
: val.taskFormKey
? val.taskFormKey
: obj.init;
this.initExcel(obj,()=>{
this.initExcel(obj, () => {
this.setState({
appId: val.id,
datas: obj.datas,
......@@ -556,7 +566,9 @@ export default class ZdyTable extends Component {
isEdit: !this.props.formKey,
currentFormKey: fk,
currentFormTitle: this.getCurrentFormTitle(obj, fk),
defaultBinds: this.props.table ? obj.datas[val.taskFormKey].defaultBinds : xxx.defaultBinds,
defaultBinds: this.props.table
? obj.datas[val.taskFormKey].defaultBinds
: xxx.defaultBinds,
width: this.props.table ? obj.datas[val.taskFormKey].width : xxx.width,
isBorder: this.props.table ? obj.datas[val.taskFormKey].isBorder : xxx.isBorder,
isRowCol: this.props.table ? obj.datas[val.taskFormKey].isRowCol : xxx.isRowCol,
......@@ -565,15 +577,14 @@ export default class ZdyTable extends Component {
init: { ...this.state.init, ...(val.isSecond ? this.props.obj : {}) },
formConfig: xxx,
// init:this.props.get==="mobile"?!!val.content?JSON.parse(val.content):'':{},// 移动端默认值设置
})
})
});
});
} catch (e) {
console.log('公式配置有误', e);
console.log('公式配置有误Table/index.jsx/572', e);
}
}
checkAllHidden = row => {
checkAllHidden = (row) => {
for (var i = 0; i < row.length; i++) {
if (row[i].hidden == null || !row[i].hidden) {
return false;
......@@ -585,9 +596,9 @@ export default class ZdyTable extends Component {
return true;
};
countMax = items => {
countMax = (items) => {
let max = 0;
items.forEach(r => {
items.forEach((r) => {
if (r.length > max) {
max = r.length;
}
......@@ -595,33 +606,27 @@ export default class ZdyTable extends Component {
return max;
};
getCurrentFormTitle = (obj, key) => {
if (obj == null) return;
const { trees } = obj;
if (trees == null) return;
return this.getT(trees, key);
};
getCurrentFormTitle2 = (key) => {
if (this.configs == null) return;
const { trees } = this.configs;
if (trees == null) return;
return this.getT(trees, key);
};
setRealTimeValues=(obj)=>{
this.setState({objRealTime:obj})
}
setRealTimeValues = (obj) => {
this.setState({ objRealTime: obj });
};
getT = (trees, key) => {
for (var i = 0; i < trees.length; i++) {
if (trees[i].children == null || trees[i].children.length == 0) {
if (trees[i].key == key) {
return trees[i].title;
}
} else {
return this.getT(trees[i].children, key);
}
}
......@@ -647,7 +652,7 @@ export default class ZdyTable extends Component {
formConfig,
formCode,
formId,
viewMode
viewMode,
} = this.state;
const {
border,
......@@ -669,10 +674,10 @@ export default class ZdyTable extends Component {
trees,
} = this.props;
let get;
if(viewMode!=null&&viewMode!=""){
get= viewMode
}else{
get = this.props.get
if (viewMode != null && viewMode != '') {
get = viewMode;
} else {
get = this.props.get;
}
let style = {};
if (formConfig.style != null) {
......@@ -722,7 +727,6 @@ export default class ZdyTable extends Component {
paddingBottom: paddingBottom != null ? paddingBottom : isWebPrint ? 0 : '10px',
};
if (!isReady) return <></>;
if (this.props.postData?.isUpdate) {
updateTime = moment(+this.props.postData?.updateTime).format('llll');
......@@ -735,10 +739,7 @@ export default class ZdyTable extends Component {
{this.props.postData?.isUpdate ? (
<div style={{ margin: '100px 24px 24px' }}>
<div style={{ textAlign: 'center' }}>
<img style={{ marginRight: 30 }}
src={maintain}>
</img>
<img style={{ marginRight: 30 }} src={maintain} />
</div>
<p
style={{
......@@ -747,8 +748,7 @@ export default class ZdyTable extends Component {
fontSize: '16px',
fontWeight: 'bold',
color: '#666666',
}}
>
}}>
{updateTime !== 'Invalid date'
? `升级维护中,预计${updateTime ?? '一万年'}恢复使用,请耐心等待。`
: '请耐心等待'}
......@@ -758,7 +758,7 @@ export default class ZdyTable extends Component {
<div id="web_table">
<Form className="login-form">
{isEdit && defaultBinds
? Object.keys(defaultBinds).map(k => {
? Object.keys(defaultBinds).map((k) => {
const r = defaultBinds[k];
if (
r.columnIds == null ||
......@@ -778,7 +778,7 @@ export default class ZdyTable extends Component {
return this.props.form.getFieldDecorator(name, {
initialValue: value,
})(<Input type="hidden"/>);
})(<Input type="hidden" />);
})
: ''}
......@@ -786,10 +786,9 @@ export default class ZdyTable extends Component {
<Col span={24}>
<div
style={styleDiv}
ref={ref => {
ref={(ref) => {
this.root = ref;
}}
>
}}>
<table
style={{
overflow: 'auto',
......@@ -799,15 +798,13 @@ export default class ZdyTable extends Component {
}}
border={border}
cellSpacing="0"
cellPadding="0"
>
cellPadding="0">
<tbody>
{items.map((row, i) => {
const allhidden = this.checkAllHidden(row);
return (
<tr key={i}>
{row.map((cell, j) => {
if (!cell.content) {
return;
}
......@@ -852,8 +849,7 @@ export default class ZdyTable extends Component {
(cell.content.comName === 'InputHidden' ||
cell.content.isHidden) &&
'none',
}}
>
}}>
<TableCom
taskId={this.props.taskId}
importExcel={this.importExcel}
......@@ -883,7 +879,7 @@ export default class ZdyTable extends Component {
init={init}
get={get} // 区分移动端或wen端
json={cell.content}
obj={{...obj,...this.state.objRealTime} || {}} // 是否存在默认值
obj={{ ...obj, ...this.state.objRealTime } || {}} // 是否存在默认值
mapData={mapData}
form={this.props.form} // antd form控件
sqlData={sqlData}
......@@ -904,7 +900,7 @@ export default class ZdyTable extends Component {
</table>
{style.pageBreakAfter != null ? (
<div style={{ pageBreakAfter: style.pageBreakAfter }}></div>
<div style={{ pageBreakAfter: style.pageBreakAfter }} />
) : (
''
)}
......@@ -922,7 +918,7 @@ export default class ZdyTable extends Component {
{this.props.postData?.isUpdate ? (
<div style={{ margin: '100px 24px 24px' }}>
<div style={{ textAlign: 'center' }}>
<img style={{ width: '100%' }} src={maintain}></img>
<img style={{ width: '100%' }} src={maintain} />
</div>
<p
style={{
......@@ -931,8 +927,7 @@ export default class ZdyTable extends Component {
fontSize: '16px',
fontWeight: 'bold',
color: '#666666',
}}
>
}}>
{updateTime !== 'Invalid date'
? `升级维护中,预计${updateTime ?? '一万年'}恢复使用,请耐心等待。`
: '请耐心等待'}
......@@ -941,7 +936,7 @@ export default class ZdyTable extends Component {
) : (
<Form {...formItemLayout} id="mobile_table" className="login-form">
{defaultBinds
? Object.keys(defaultBinds).map(k => {
? Object.keys(defaultBinds).map((k) => {
const r = defaultBinds[k];
if (
r.columnIds == null ||
......@@ -961,7 +956,7 @@ export default class ZdyTable extends Component {
return this.props.form.getFieldDecorator(name, {
initialValue: value,
})(<Input type="hidden"/>);
})(<Input type="hidden" />);
})
: ''}
<IsNewTable
......@@ -989,7 +984,7 @@ export default class ZdyTable extends Component {
currentFormTitle={currentFormTitle}
init={init}
get={get}
obj={{...obj,...this.state.objRealTime}}
obj={{ ...obj, ...this.state.objRealTime }}
mapData={mapData}
form={this.props.form}
sqlData={sqlData}
......@@ -1004,7 +999,6 @@ export default class ZdyTable extends Component {
concealModel={concealModel || {}} // 场景设计器内置路由跳转函数
isDynamic={isDynamic} // 是否为场景配置器调用
/>
</Form>
)}
</>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论