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

格式化代码

上级 a9f585ed
...@@ -17,1060 +17,1050 @@ import { isJSON } from '@/webPublic/one_stop_public/copy'; ...@@ -17,1060 +17,1050 @@ import { isJSON } from '@/webPublic/one_stop_public/copy';
import getActiveJson from '@/webPublic/one_stop_public/Table/getActiveJson'; import getActiveJson from '@/webPublic/one_stop_public/Table/getActiveJson';
export default class ZdyTable extends Component { export default class ZdyTable extends Component {
constructor(props) { constructor(props) {
super(props); super(props);
// console.log(props); // console.log(props);
this.state = { this.state = {
objRealTime: {}, objRealTime: {},
isChange: false, isChange: false,
selects: new Map(), selects: new Map(),
left: 0, left: 0,
top: 0, top: 0,
max: 4, max: 4,
formId: null, formId: null,
formCode: null, formCode: null,
width: 100, width: 100,
mapData: {}, mapData: {},
defaultBinds: {}, defaultBinds: {},
sqlData: {}, sqlData: {},
defaultValues: {}, defaultValues: {},
currentFormKey: null, currentFormKey: null,
currentFormTitle: null, currentFormTitle: null,
items: [], items: [],
init: this.props.init || {}, init: this.props.init || {},
datas: {}, datas: {},
isEdit: true, isEdit: true,
isRowCol: false, isRowCol: false,
isReady: false, isReady: false,
formConfig: {}, formConfig: {},
}; };
} }
componentDidMount() { componentDidMount() {
const { const {
postData, // 数据源 postData, // 数据源
isCg, // 用户点击草稿页面进入 isCg, // 用户点击草稿页面进入
isForm, isForm,
isPreview, // 是否为预览模式 isPreview, // 是否为预览模式
isChild, // 是否为子表单 isChild, // 是否为子表单
isQRCode = false, // 是否为二维码快捷发起 isQRCode = false, // 是否为二维码快捷发起
formDeafault = '', // 为二维码快捷发起默认值 formDeafault = '', // 为二维码快捷发起默认值
} = this.props; } = this.props;
// if(this.props.currentFormKey === 'aa20cdbd-2019-45ea-8cdf-715aa46e132e'){ // if(this.props.currentFormKey === 'aa20cdbd-2019-45ea-8cdf-715aa46e132e'){
// } // }
if (isPreview || isChild) { if (isPreview || isChild) {
this.initExcel({ this.initExcel(
datas: this.props.datas, {
trees: this.props.trees datas: this.props.datas,
}, () => { trees: this.props.trees,
this.setState({ },
...this.state, () => {
...this.props, this.setState({
formConfig: { ...this.state,
...this.state.formConfig, ...this.props,
style: this.props.style formConfig: {
}, ...this.state.formConfig,
isReady: true, style: this.props.style,
viewMode: },
this.props.currentFormKey && isReady: true,
this.props.datas && viewMode:
this.props.datas[this.props.currentFormKey] this.props.currentFormKey &&
? this.props.datas[this.props.currentFormKey].viewMode this.props.datas &&
: null, this.props.datas[this.props.currentFormKey]
}); ? this.props.datas[this.props.currentFormKey].viewMode
}); : null,
});
},
);
return; return;
} }
const val = postData; const val = postData;
try { try {
/** /**
* 数据源不同进行以下区别处理 * 数据源不同进行以下区别处理
* this.props.table有传入值表明需要渲染流程中最新表单 * this.props.table有传入值表明需要渲染流程中最新表单
*/ */
if (isForm) { if (isForm) {
// 由表格的操作按钮进入 // 由表格的操作按钮进入
const mapData = {}; const mapData = {};
const sqlData = {}; const sqlData = {};
const dataObjs = val.form.dataObjModels; const dataObjs = val.form.dataObjModels;
for (var i = 0; i < dataObjs.length; i++) { for (var i = 0; i < dataObjs.length; i++) {
const dob = dataObjs[i]; const dob = dataObjs[i];
for (var j = 0; j < dob.columnModels.length; j++) { for (var j = 0; j < dob.columnModels.length; j++) {
mapData[dob.columnModels[j].base52] = dob.columnModels[j]; mapData[dob.columnModels[j].base52] = dob.columnModels[j];
} }
} }
const sqls = val.form.sqlModels; const sqls = val.form.sqlModels;
for (var i = 0; i < sqls.length; i++) { for (var i = 0; i < sqls.length; i++) {
const dob = sqls[i].dataObjModel; const dob = sqls[i].dataObjModel;
for (var j = 0; j < dob.columnModels.length; j++) { for (var j = 0; j < dob.columnModels.length; j++) {
sqlData[dob.columnModels[j].base52] = dob.columnModels[j]; sqlData[dob.columnModels[j].base52] = dob.columnModels[j];
} }
} }
const obj = JSON.parse(val.form.content); const obj = JSON.parse(val.form.content);
const xxx = obj.datas[obj.init]; const xxx = obj.datas[obj.init];
const fk = this.props.table ? val.formKey : obj.init; const fk = this.props.table ? val.formKey : obj.init;
this.initExcel(obj, () => { this.initExcel(obj, () => {
this.setState({ this.setState({
datas: obj.datas, datas: obj.datas,
width: this.props.table ? obj.datas[val.formKey].width : xxx.width, width: this.props.table ? obj.datas[val.formKey].width : xxx.width,
isBorder: this.props.table ? obj.datas[val.formKey].isBorder : xxx.isBorder, isBorder: this.props.table ? obj.datas[val.formKey].isBorder : xxx.isBorder,
viewMode: this.props.table ? obj.datas[val.formKey].viewMode : xxx.viewMode, viewMode: this.props.table ? obj.datas[val.formKey].viewMode : xxx.viewMode,
isRowCol: this.props.table ? obj.datas[val.formKey].isRowCol : xxx.isRowCol, isRowCol: this.props.table ? obj.datas[val.formKey].isRowCol : xxx.isRowCol,
mapData, mapData,
currentFormKey: fk, currentFormKey: fk,
currentFormTitle: this.getCurrentFormTitle(obj, fk), currentFormTitle: this.getCurrentFormTitle(obj, fk),
sqlData, sqlData,
isEdit: !this.props.formKey, isEdit: !this.props.formKey,
items: this.props.table ? obj.datas[val.formKey].items : xxx.items, items: this.props.table ? obj.datas[val.formKey].items : xxx.items,
defaultValues: val.form.defaultValues, defaultValues: val.form.defaultValues,
appId: val.appId, appId: val.appId,
isReady: true, isReady: true,
formConfig: xxx, formConfig: xxx,
}); });
}); });
return; return;
} }
if (isCg === 'yes') { if (isCg === 'yes') {
// 用户从编辑按钮进入 // 用户从编辑按钮进入
if ( if (
val.unifiedServicePatternModel.isDefaultError != null && val.unifiedServicePatternModel.isDefaultError != null &&
val.unifiedServicePatternModel.isDefaultError val.unifiedServicePatternModel.isDefaultError
) { ) {
if (this.props.get === 'web') { if (this.props.get === 'web') {
message.error('当前办理人数较多,服务繁忙,请稍后再试!'); message.error('当前办理人数较多,服务繁忙,请稍后再试!');
} else { } else {
Toast.fail('当前办理人数较多,服务繁忙,请稍后再试!'); Toast.fail('当前办理人数较多,服务繁忙,请稍后再试!');
} }
router.goBack(); router.goBack();
return; return;
} }
const mapData = {}; const mapData = {};
const sqlData = {}; const sqlData = {};
const sqls = val.unifiedServicePatternModel.sqlModels; const sqls = val.unifiedServicePatternModel.sqlModels;
for (var i = 0; i < sqls.length; i++) { for (var i = 0; i < sqls.length; i++) {
const dob = sqls[i].dataObjModel; const dob = sqls[i].dataObjModel;
for (var j = 0; j < dob.columnModels.length; j++) { for (var j = 0; j < dob.columnModels.length; j++) {
sqlData[dob.columnModels[j].base52] = dob.columnModels[j]; sqlData[dob.columnModels[j].base52] = dob.columnModels[j];
} }
} }
const dataObjs = val.unifiedServicePatternModel.dataObjModels; const dataObjs = val.unifiedServicePatternModel.dataObjModels;
for (var i = 0; i < dataObjs.length; i++) { for (var i = 0; i < dataObjs.length; i++) {
const dob = dataObjs[i]; const dob = dataObjs[i];
for (var j = 0; j < dob.columnModels.length; j++) { for (var j = 0; j < dob.columnModels.length; j++) {
mapData[dob.columnModels[j].base52] = dob.columnModels[j]; mapData[dob.columnModels[j].base52] = dob.columnModels[j];
} }
} }
const obj = JSON.parse(val.unifiedServicePatternModel.content); const obj = JSON.parse(val.unifiedServicePatternModel.content);
const xxx = obj.datas[obj.init]; const xxx = obj.datas[obj.init];
this.initExcel(obj, () => { this.initExcel(obj, () => {
this.setState({ this.setState({
items: xxx.items, items: xxx.items,
init: { ...this.state.init, ...JSON.parse(val.content) }, init: { ...this.state.init, ...JSON.parse(val.content) },
datas: obj.datas, datas: obj.datas,
isEdit: !this.props.formKey, isEdit: !this.props.formKey,
currentFormKey: obj.init, currentFormKey: obj.init,
currentFormTitle: this.getCurrentFormTitle(obj, obj.init), currentFormTitle: this.getCurrentFormTitle(obj, obj.init),
width: xxx.width, width: xxx.width,
isBorder: xxx.isBorder, isBorder: xxx.isBorder,
viewMode: xxx.viewMode, viewMode: xxx.viewMode,
isRowCol: xxx.isRowCol, isRowCol: xxx.isRowCol,
mapData, mapData,
sqlData, sqlData,
defaultValues: val.unifiedServicePatternModel.defaultValues, defaultValues: val.unifiedServicePatternModel.defaultValues,
appId: val.appId, appId: val.appId,
isReady: true, isReady: true,
formConfig: xxx, formConfig: xxx,
defaultBinds: this.props.table defaultBinds: this.props.table
? obj.datas[val.taskFormKey].defaultBinds ? obj.datas[val.taskFormKey].defaultBinds
: xxx.defaultBinds, : xxx.defaultBinds,
}); });
}); });
return; return;
} }
if ( if (
val.unifiedServicePatternModel.isDefaultError != null && val.unifiedServicePatternModel.isDefaultError != null &&
val.unifiedServicePatternModel.isDefaultError val.unifiedServicePatternModel.isDefaultError
) { ) {
if (this.props.get == 'web') { if (this.props.get == 'web') {
message.error('当前办理人数较多,服务繁忙,请稍后再试!'); message.error('当前办理人数较多,服务繁忙,请稍后再试!');
} else { } else {
Toast.fail('当前办理人数较多,服务繁忙,请稍后再试!'); Toast.fail('当前办理人数较多,服务繁忙,请稍后再试!');
} }
router.goBack(); router.goBack();
return; return;
} }
const mapData = {}; const mapData = {};
const sqlData = {}; const sqlData = {};
const sqls = val.unifiedServicePatternModel.sqlModels; const sqls = val.unifiedServicePatternModel.sqlModels;
for (var i = 0; i < sqls.length; i++) { for (var i = 0; i < sqls.length; i++) {
const dob = sqls[i].dataObjModel; const dob = sqls[i].dataObjModel;
for (var j = 0; j < dob.columnModels.length; j++) { for (var j = 0; j < dob.columnModels.length; j++) {
sqlData[dob.columnModels[j].base52] = dob.columnModels[j]; sqlData[dob.columnModels[j].base52] = dob.columnModels[j];
} }
} }
const dataObjs = val.unifiedServicePatternModel.dataObjModels; const dataObjs = val.unifiedServicePatternModel.dataObjModels;
for (var i = 0; i < dataObjs.length; i++) { for (var i = 0; i < dataObjs.length; i++) {
const dob = dataObjs[i]; const dob = dataObjs[i];
for (var j = 0; j < dob.columnModels.length; j++) { for (var j = 0; j < dob.columnModels.length; j++) {
mapData[dob.columnModels[j].base52] = dob.columnModels[j]; mapData[dob.columnModels[j].base52] = dob.columnModels[j];
} }
} }
if (!isJSON(val.unifiedServicePatternModel.content)) { if (!isJSON(val.unifiedServicePatternModel.content)) {
console.error('unifiedServicePatternModel.content 不是一个JSON字符串 请查看配置'); console.error('unifiedServicePatternModel.content 不是一个JSON字符串 请查看配置');
} }
const obj = JSON.parse(val.unifiedServicePatternModel.content); const obj = JSON.parse(val.unifiedServicePatternModel.content);
const xxx = obj.datas[this.props.formKey ? this.props.formKey : obj.init]; // 是否是存在历史表单传入值 const xxx = obj.datas[this.props.formKey ? this.props.formKey : obj.init]; // 是否是存在历史表单传入值
const fk = this.props.formKey const fk = this.props.formKey
? this.props.formKey ? this.props.formKey
: val.taskFormKey : val.taskFormKey
? val.taskFormKey ? val.taskFormKey
: obj.init; : obj.init;
// console.log('231--------'); // console.log('231--------');
this.initExcel(obj, () => this.initExcel(obj, () =>
this.setState( this.setState(
{ {
appId: val.id, appId: val.id,
formId: val.id, formId: val.id,
formCode: val.code, formCode: val.code,
datas: obj.datas, datas: obj.datas,
mapData, mapData,
sqlData, sqlData,
defaultValues: val.unifiedServicePatternModel.defaultValues, defaultValues: val.unifiedServicePatternModel.defaultValues,
isEdit: !this.props.formKey, isEdit: !this.props.formKey,
currentFormKey: fk, currentFormKey: fk,
currentFormTitle: this.getCurrentFormTitle(obj, fk), currentFormTitle: this.getCurrentFormTitle(obj, fk),
defaultBinds: this.props.table defaultBinds: this.props.table
? obj.datas[val.taskFormKey].defaultBinds ? obj.datas[val.taskFormKey].defaultBinds
: xxx.defaultBinds, : xxx.defaultBinds,
width: this.props.table ? obj.datas[val.taskFormKey].width : xxx.width, width: this.props.table ? obj.datas[val.taskFormKey].width : xxx.width,
isBorder: this.props.table ? obj.datas[val.taskFormKey].isBorder : xxx.isBorder, isBorder: this.props.table ? obj.datas[val.taskFormKey].isBorder : xxx.isBorder,
isRowCol: this.props.table ? obj.datas[val.taskFormKey].isRowCol : xxx.isRowCol, 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, items: this.props.table ? obj.datas[val.taskFormKey].items : xxx.items,
isReady: true, isReady: true,
init: { ...this.state.init, ...(val.isSecond ? this.props.obj : {}) }, // 重新发起就拿obj 里面的值给初始值 init: { ...this.state.init, ...(val.isSecond ? this.props.obj : {}) }, // 重新发起就拿obj 里面的值给初始值
formConfig: xxx, formConfig: xxx,
// init:this.props.get==="mobile"?!!val.content?JSON.parse(val.content):'':{},// 移动端默认值设置 // init:this.props.get==="mobile"?!!val.content?JSON.parse(val.content):'':{},// 移动端默认值设置
}, },
() => { () => {
/** /**
* 为二维码快捷发起时自动设置新默认值 * 为二维码快捷发起时自动设置新默认值
*/ */
if (isQRCode) { if (isQRCode) {
this.props.form.setFieldsValue(formDeafault); this.props.form.setFieldsValue(formDeafault);
} }
this.initExcel(obj); this.initExcel(obj);
}, },
), ),
); );
} catch (e) { } catch (e) {
console.log('公式配置有误/Table/index-262', e); console.log('公式配置有误/Table/index-262', e);
} }
} }
importExcel = (res, callback) => { importExcel = (res, callback) => {
if (this.props.importExcel) { if (this.props.importExcel) {
this.props.importExcel(res, callback); this.props.importExcel(res, callback);
return; return;
} }
const { const { datas, trees } = this.configs;
datas, const sheets = res.sheets;
trees
} = this.configs;
const sheets = res.sheets;
for (var s = 0; s < sheets.length; s++) { for (var s = 0; s < sheets.length; s++) {
const uuid = sheets[s].key; const uuid = sheets[s].key;
const items = []; const items = [];
const cc = sheets[s].cells; const cc = sheets[s].cells;
for (var i = 0; i < cc.length; i++) { for (var i = 0; i < cc.length; i++) {
const rows = []; const rows = [];
const rr = cc[i]; const rr = cc[i];
for (var j = 0; j < rr.length; j++) { for (var j = 0; j < rr.length; j++) {
const c = rr[j]; const c = rr[j];
if (c.value == null || c.value == '') { if (c.value == null || c.value == '') {
rows.push({ rows.push({
uuid: 'id_' + UUID.v4() uuid: 'id_' + UUID.v4().replace(/-/g, '2'),
.replace(/-/g, '2'), row: c.rowSpan,
row: c.rowSpan, col: c.colSpan,
col: c.colSpan, content: {
content: { comName: 'Excel',
comName: 'Excel', cwidth: c.width,
cwidth: c.width, cheight: c.height,
cheight: c.height },
}, });
}); } else {
} else { rows.push({
rows.push({ uuid: 'id_' + UUID.v4().replace(/-/g, '2'),
uuid: 'id_' + UUID.v4() row: c.rowSpan,
.replace(/-/g, '2'), col: c.colSpan,
row: c.rowSpan, content: {
col: c.colSpan, comName: 'Excel',
content: { initialValue: c.value,
comName: 'Excel', cwidth: c.width,
initialValue: c.value, cheight: c.height,
cwidth: c.width, },
cheight: c.height, });
}, }
}); }
} items.push(rows);
} }
items.push(rows);
}
const charts = sheets[s].charts; const charts = sheets[s].charts;
if (charts && charts.length > 0) { if (charts && charts.length > 0) {
const rows = []; const rows = [];
for (var j = 0; j < charts.length; j++) { for (var j = 0; j < charts.length; j++) {
const chartModel = charts[j]; const chartModel = charts[j];
rows.push({ rows.push({
uuid: 'id_' + UUID.v4() uuid: 'id_' + UUID.v4().replace(/-/g, '2'),
.replace(/-/g, '2'), content: {
content: { comName: 'Echart',
comName: 'Echart', columnIds: { c1: [] },
columnIds: { c1: [] }, labelSpan: 24,
labelSpan: 24, wrapperSpan: 24,
wrapperSpan: 24, isLabel: false,
isLabel: false, formula: 'return ' + JSON.stringify(chartModel.option),
formula: 'return ' + JSON.stringify(chartModel.option), },
}, });
}); items.push(rows);
items.push(rows); }
} }
} if (datas[uuid] == null) {
if (datas[uuid] == null) { trees.push({
trees.push({ title: sheets[s].name,
title: sheets[s].name, key: uuid,
key: uuid });
}); }
} datas[uuid] = {
datas[uuid] = { width: 400,
width: 400, max: 1,
max: 1, isBorder: true,
isBorder: true, items: items,
items: items, };
}; }
} this.initExcel(
this.initExcel( {
{ datas,
datas, trees,
trees, },
}, () => {
() => { this.setState({ isChange: !this.state.isChange }, () => {
this.setState({ isChange: !this.state.isChange }, () => { if (callback) callback();
if (callback) callback(); });
});
console.log('公式导入excel成功'); console.log('公式导入excel成功');
}, },
); );
}; };
hfInstance; hfInstance;
childExcel = (sheetData, datas, tr) => { childExcel = (sheetData, datas, tr) => {
if (tr.children == null || tr.children.length == 0) { if (tr.children == null || tr.children.length == 0) {
} else { } else {
for (var c = 0; c < tr.children.length; c++) { for (var c = 0; c < tr.children.length; c++) {
this.childExcel(sheetData, datas, tr.children[c]); this.childExcel(sheetData, datas, tr.children[c]);
} }
} }
const data = datas[tr.key]; const data = datas[tr.key];
const all = []; const all = [];
if(data && data.item){ if (data && data.item) {
for (var i = 0; i < data.items.length; i++) { for (var i = 0; i < data.items.length; i++) {
const row = data.items[i]; const row = data.items[i];
const r = []; const r = [];
for (var j = 0; j < row.length; j++) { for (var j = 0; j < row.length; j++) {
const col = row[j]; const col = row[j];
if (col.content?.comName == 'Excel') { if (col.content?.comName == 'Excel') {
r.push(col.content.initialValue); r.push(col.content.initialValue);
} else { } else {
r.push(''); r.push('');
} }
} }
all.push(r); all.push(r);
} }
} }
sheetData[tr.title] = all;
};
configs;
initExcel = (configs, callback) => {
this.configs = configs;
// console.log(configs);
if (configs == null || configs.trees == null) {
if (callback) callback();
return;
}
sheetData[tr.title] = all; const sheetData = {};
}; for (var key in configs.trees) {
configs; const tr = configs.trees[key];
initExcel = (configs, callback) => { this.childExcel(sheetData, configs.datas, tr);
this.configs = configs; }
// console.log(configs); const hfInstance = HyperFormula.buildFromSheets(sheetData, {});
if (configs == null || configs.trees == null) {
if (callback) callback();
return;
}
const sheetData = {}; this.hfInstance = hfInstance;
for (var key in configs.trees) { if (callback) callback();
const tr = configs.trees[key]; };
this.childExcel(sheetData, configs.datas, tr); getCellValue = (i, j, currentTitle) => {
} let hfInstance = this.props.hfInstance ? this.props.hfInstance : this.hfInstance;
const hfInstance = HyperFormula.buildFromSheets(sheetData, {});
this.hfInstance = hfInstance; if (hfInstance && currentTitle) {
if (callback) callback(); let x = hfInstance.getCellValue({
}; col: j,
getCellValue = (i, j, currentTitle) => { row: i,
let hfInstance = this.props.hfInstance ? this.props.hfInstance : this.hfInstance; sheet: hfInstance.getSheetId(currentTitle),
});
if (hfInstance && currentTitle) { if (x && x.value != null) {
let x = hfInstance.getCellValue({ x = x.value;
col: j, }
row: i, return x;
sheet: hfInstance.getSheetId(currentTitle), }
}); };
if (x && x.value != null) { componentWillReceiveProps(nextProps) {
x = x.value; const {
} postData, // 数据源
return x; isCg, // 用户点击草稿页面进入
} isForm,
}; isPreview, // 是否为预览模式
isChild, // 是否为子表单
} = nextProps;
if (isPreview || isChild) {
this.setState(
{
...this.state,
...nextProps,
isReady: true,
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,
}),
);
return;
}
componentWillReceiveProps(nextProps) { try {
const { const val = postData;
postData, // 数据源 /**
isCg, // 用户点击草稿页面进入 * 数据源不同进行以下区别处理
isForm, * this.props.table有传入值表明需要渲染流程中最新表单
isPreview, // 是否为预览模式 */
isChild, // 是否为子表单 if (isForm) {
} = nextProps; // 由表格的操作按钮进入
if (isPreview || isChild) { const mapData = {};
this.setState( const sqlData = {};
{ const dataObjs = val.form.dataObjModels;
...this.state, for (var i = 0; i < dataObjs.length; i++) {
...nextProps, const dob = dataObjs[i];
isReady: true, for (var j = 0; j < dob.columnModels.length; j++) {
viewMode: mapData[dob.columnModels[j].base52] = dob.columnModels[j];
nextProps.currentFormKey && nextProps.datas && nextProps.datas[nextProps.currentFormKey] }
? nextProps.datas[nextProps.currentFormKey].viewMode }
: null, const sqls = val.form.sqlModels;
formConfig: { for (var i = 0; i < sqls.length; i++) {
...this.state.formConfig, const dob = sqls[i].dataObjModel;
style: nextProps.style for (var j = 0; j < dob.columnModels.length; j++) {
}, sqlData[dob.columnModels[j].base52] = dob.columnModels[j];
}, }
() => this.initExcel({ }
datas: nextProps.datas, const obj = JSON.parse(val.form.content);
trees: nextProps.trees const xxx = obj.datas[obj.init];
}), this.initExcel(obj, () => {
); this.setState({
return; datas: obj.datas,
} width: this.props.table ? obj.datas[val.formKey].width : xxx.width,
isRowCol: this.props.table ? obj.datas[val.formKey].isRowCol : xxx.isRowCol,
isBorder: this.props.table ? obj.datas[val.formKey].isBorder : xxx.isBorder,
mapData,
currentFormKey: this.props.table ? val.formKey : obj.init,
currentFormTitle: this.getCurrentFormTitle(obj, fk),
sqlData,
isEdit: !this.props.formKey,
items: this.props.table ? obj.datas[val.formKey].items : xxx.items,
defaultValues: val.form.defaultValues,
appId: val.appId,
isReady: true,
formConfig: xxx,
});
});
try { return;
const val = postData; }
/** if (isCg === 'yes') {
* 数据源不同进行以下区别处理 // 用户从编辑按钮进入
* this.props.table有传入值表明需要渲染流程中最新表单 const mapData = {};
*/ const sqlData = {};
if (isForm) { const sqls = val.unifiedServicePatternModel.sqlModels;
// 由表格的操作按钮进入 for (var i = 0; i < sqls.length; i++) {
const mapData = {}; const dob = sqls[i].dataObjModel;
const sqlData = {};
const dataObjs = val.form.dataObjModels;
for (var i = 0; i < dataObjs.length; i++) {
const dob = dataObjs[i];
for (var j = 0; j < dob.columnModels.length; j++) {
mapData[dob.columnModels[j].base52] = dob.columnModels[j];
}
}
const sqls = val.form.sqlModels;
for (var i = 0; i < sqls.length; i++) {
const dob = sqls[i].dataObjModel;
for (var j = 0; j < dob.columnModels.length; j++) {
sqlData[dob.columnModels[j].base52] = dob.columnModels[j];
}
}
const obj = JSON.parse(val.form.content);
const xxx = obj.datas[obj.init];
this.initExcel(obj, () => {
this.setState({
datas: obj.datas,
width: this.props.table ? obj.datas[val.formKey].width : xxx.width,
isRowCol: this.props.table ? obj.datas[val.formKey].isRowCol : xxx.isRowCol,
isBorder: this.props.table ? obj.datas[val.formKey].isBorder : xxx.isBorder,
mapData,
currentFormKey: this.props.table ? val.formKey : obj.init,
currentFormTitle: this.getCurrentFormTitle(obj, fk),
sqlData,
isEdit: !this.props.formKey,
items: this.props.table ? obj.datas[val.formKey].items : xxx.items,
defaultValues: val.form.defaultValues,
appId: val.appId,
isReady: true,
formConfig: xxx,
});
});
return; for (var j = 0; j < dob.columnModels.length; j++) {
} sqlData[dob.columnModels[j].base52] = dob.columnModels[j];
if (isCg === 'yes') { }
// 用户从编辑按钮进入 }
const mapData = {}; const dataObjs = val.unifiedServicePatternModel.dataObjModels;
const sqlData = {}; for (var i = 0; i < dataObjs.length; i++) {
const sqls = val.unifiedServicePatternModel.sqlModels; const dob = dataObjs[i];
for (var i = 0; i < sqls.length; i++) {
const dob = sqls[i].dataObjModel;
for (var j = 0; j < dob.columnModels.length; j++) { for (var j = 0; j < dob.columnModels.length; j++) {
sqlData[dob.columnModels[j].base52] = dob.columnModels[j]; mapData[dob.columnModels[j].base52] = dob.columnModels[j];
} }
} }
const dataObjs = val.unifiedServicePatternModel.dataObjModels; const obj = JSON.parse(val.unifiedServicePatternModel.content);
for (var i = 0; i < dataObjs.length; i++) { const xxx = obj.datas[obj.init];
const dob = dataObjs[i]; this.initExcel(obj, () => {
this.setState({
items: xxx.items,
init: { ...this.state.init, ...JSON.parse(val.content) },
datas: obj.datas,
isEdit: !this.props.formKey,
currentFormKey: obj.init,
currentFormTitle: this.getCurrentFormTitle(obj, obj.init),
width: xxx.width,
isBorder: xxx.isBorder,
isRowCol: xxx.isRowCol,
mapData,
sqlData,
defaultValues: val.unifiedServicePatternModel.defaultValues,
appId: val.appId,
isReady: true,
formConfig: xxx,
defaultBinds: this.props.table
? obj.datas[val.taskFormKey].defaultBinds
: xxx.defaultBinds,
});
});
for (var j = 0; j < dob.columnModels.length; j++) { return;
mapData[dob.columnModels[j].base52] = dob.columnModels[j]; }
} const mapData = {};
} const sqlData = {};
const obj = JSON.parse(val.unifiedServicePatternModel.content); const sqls = val.unifiedServicePatternModel.sqlModels;
const xxx = obj.datas[obj.init]; for (var i = 0; i < sqls.length; i++) {
this.initExcel(obj, () => { const dob = sqls[i].dataObjModel;
this.setState({
items: xxx.items,
init: { ...this.state.init, ...JSON.parse(val.content) },
datas: obj.datas,
isEdit: !this.props.formKey,
currentFormKey: obj.init,
currentFormTitle: this.getCurrentFormTitle(obj, obj.init),
width: xxx.width,
isBorder: xxx.isBorder,
isRowCol: xxx.isRowCol,
mapData,
sqlData,
defaultValues: val.unifiedServicePatternModel.defaultValues,
appId: val.appId,
isReady: true,
formConfig: xxx,
defaultBinds: this.props.table
? obj.datas[val.taskFormKey].defaultBinds
: xxx.defaultBinds,
});
});
return; for (var j = 0; j < dob.columnModels.length; j++) {
} sqlData[dob.columnModels[j].base52] = dob.columnModels[j];
const mapData = {}; }
const sqlData = {}; }
const sqls = val.unifiedServicePatternModel.sqlModels; const dataObjs = val.unifiedServicePatternModel.dataObjModels;
for (var i = 0; i < sqls.length; i++) { for (var i = 0; i < dataObjs.length; i++) {
const dob = sqls[i].dataObjModel; const dob = dataObjs[i];
for (var j = 0; j < dob.columnModels.length; j++) { for (var j = 0; j < dob.columnModels.length; j++) {
sqlData[dob.columnModels[j].base52] = dob.columnModels[j]; mapData[dob.columnModels[j].base52] = dob.columnModels[j];
} }
} }
const dataObjs = val.unifiedServicePatternModel.dataObjModels; const obj = JSON.parse(val.unifiedServicePatternModel.content);
for (var i = 0; i < dataObjs.length; i++) { const xxx = obj.datas[this.props.formKey ? this.props.formKey : obj.init]; // 是否是存在历史表单传入值
const dob = dataObjs[i];
for (var j = 0; j < dob.columnModels.length; j++) { if (this.props.isQuery) return;
mapData[dob.columnModels[j].base52] = dob.columnModels[j]; const fk = this.props.formKey
} ? this.props.formKey
} : val.taskFormKey
const obj = JSON.parse(val.unifiedServicePatternModel.content); ? val.taskFormKey
const xxx = obj.datas[this.props.formKey ? this.props.formKey : obj.init]; // 是否是存在历史表单传入值 : obj.init;
this.initExcel(obj, () => {
this.setState({
appId: val.id,
datas: obj.datas,
mapData,
sqlData,
defaultValues: val.unifiedServicePatternModel.defaultValues,
isEdit: !this.props.formKey,
currentFormKey: fk,
currentFormTitle: this.getCurrentFormTitle(obj, fk),
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,
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):'':{},// 移动端默认值设置
});
});
} catch (e) {
console.log('公式配置有误Table/index.jsx/572', e);
}
}
if (this.props.isQuery) return; checkAllHidden = (row) => {
const fk = this.props.formKey for (var i = 0; i < row.length; i++) {
? this.props.formKey if (row[i].hidden == null || !row[i].hidden) {
: val.taskFormKey return false;
? val.taskFormKey }
: obj.init; }
this.initExcel(obj, () => { for (var i = 0; i < row.length; i++) {
this.setState({ delete row[i].hidden;
appId: val.id, }
datas: obj.datas, return true;
mapData, };
sqlData,
defaultValues: val.unifiedServicePatternModel.defaultValues,
isEdit: !this.props.formKey,
currentFormKey: fk,
currentFormTitle: this.getCurrentFormTitle(obj, fk),
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,
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):'':{},// 移动端默认值设置
});
});
} catch (e) {
console.log('公式配置有误Table/index.jsx/572', e);
}
}
checkAllHidden = (row) => { countMax = (items) => {
for (var i = 0; i < row.length; i++) { let max = 0;
if (row[i].hidden == null || !row[i].hidden) { items.forEach((r) => {
return false; if (r.length > max) {
} max = r.length;
} }
for (var i = 0; i < row.length; i++) { });
delete row[i].hidden; return max;
} };
return true; 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 && this.configs.trees ? this.configs.trees : this.props.trees;
if (trees == null) return;
return this.getT(trees, key);
};
setRealTimeValues = (obj) => {
this.setState({ objRealTime: obj });
};
getT = (trees, key) => {
for (var i in trees) {
if (trees[i].key == key) {
return trees[i].title;
}
if (trees[i].children != null && trees[i].children.length > 0) {
const x = this.getT(trees[i].children, key);
if (x != null) return x;
}
}
return null;
};
countMax = (items) => { render() {
let max = 0; const {
items.forEach((r) => { width,
if (r.length > max) { isRowCol,
max = r.length; isBorder,
} sqlData,
}); mapData,
return max; defaultBinds,
}; defaultValues,
getCurrentFormTitle = (obj, key) => { items,
if (obj == null) return; init,
const { trees } = obj; currentFormKey,
if (trees == null) return; currentFormTitle,
return this.getT(trees, key); isEdit,
}; datas,
getCurrentFormTitle2 = (key) => { isReady,
if (this.configs == null) return; formConfig,
const trees = this.configs && this.configs.trees ? this.configs.trees : this.props.trees; formCode,
if (trees == null) return; formId,
return this.getT(trees, key); viewMode,
}; } = this.state;
setRealTimeValues = (obj) => { const {
this.setState({ objRealTime: obj }); border,
}; obj,
getT = (trees, key) => { index,
fatherCode,
routerState, // 场景设计器共享路由参数
messageData, // 场景设计器共享变量参数 设计器监听到参数发生变化后会重新渲染组件
postData,
modalInit,
concealModel, // 场景设计器内置跳转函数
paddingBottom,
taskAssignee,
userId,
isDynamic, // 是否为大数据页面
isWebPrint, // 打印界面
isWebPrintEnd,
isPreview,
} = this.props;
const trees = this.configs && this.configs.trees ? this.configs.trees : this.props.trees;
for (var i in trees) { let get;
if (trees[i].key == key) { if (viewMode != null && viewMode != '') {
return trees[i].title; get = viewMode;
} } else {
if (trees[i].children != null && trees[i].children.length > 0) { get = this.props.get;
const x = this.getT(trees[i].children, key); }
if (x != null) return x; let style = {};
} if (formConfig.style != null) {
} try {
return null; style = JSON.parse(formConfig.style);
} catch (e) {
//console.log(e);
style = {};
}
}
const formItemLayout = {
labelCol: {
xs: { span: 24 },
sm: { span: 24 },
},
wrapperCol: {
xs: { span: 24 },
sm: { span: 24 },
},
};
const max = this.countMax(items);
const borderStyle = {
borderRight: '1px solid gray',
borderTop: '1px solid gray',
borderLeft: '1px solid gray',
borderBottom: '1px solid gray',
};
let updateTime;
const styleDiv = this.props.height
? {
overflow: isDynamic ? 'hidden' : 'auto',
// overflowY: isDynamic && 'auto',
width: '100%',
height: this.props.height,
paddingBottom: paddingBottom != null ? paddingBottom : isWebPrint ? 0 : '0px',
}
: {
overflow: isDynamic ? 'hidden' : 'auto',
// overflowY: isDynamic && 'auto',
width: '100%',
paddingBottom: paddingBottom != null ? paddingBottom : isWebPrint ? 0 : '0px',
};
}; if (!isReady) return <></>;
if (this.props.postData?.isUpdate) {
updateTime = moment(+this.props.postData?.updateTime).format('llll');
}
switch (get) {
case 'web':
// this.props.form.validateFields()
// .then((values) => {
// })
// .catch(error => console.log(error));
return (
<>
{this.props.postData?.isUpdate ? (
<div style={{ margin: '100px 24px 24px' }}>
<div style={{ textAlign: 'center' }}>
<img style={{ marginRight: 30 }} src={maintain} />
</div>
<p
style={{
textAlign: 'center',
width: '100%',
fontSize: '16px',
fontWeight: 'bold',
color: '#666666',
}}>
{updateTime !== 'Invalid date'
? `升级维护中,预计${updateTime ?? '一万年'}恢复使用,请耐心等待。`
: '请耐心等待'}
</p>
</div>
) : (
<div id="web_table">
<Form className="login-form">
{isEdit && defaultBinds
? Object.keys(defaultBinds).map((k) => {
const r = defaultBinds[k];
if (
r.columnIds == null ||
r.columnIds.length < 2 ||
r.sqls == null ||
r.sqls.length < 2
) {
return '';
}
const name = r.columnIds[r.columnIds.length - 1];
const key = r.sqls[r.sqls.length - 1];
const value = defaultValues[key];
render() { if (value === null || value === undefined) {
const { return '';
width, }
isRowCol,
isBorder,
sqlData,
mapData,
defaultBinds,
defaultValues,
items,
init,
currentFormKey,
currentFormTitle,
isEdit,
datas,
isReady,
formConfig,
formCode,
formId,
viewMode,
} = this.state;
const {
border,
obj,
index,
fatherCode,
routerState, // 场景设计器共享路由参数
messageData, // 场景设计器共享变量参数 设计器监听到参数发生变化后会重新渲染组件
postData,
modalInit,
concealModel, // 场景设计器内置跳转函数
paddingBottom,
taskAssignee,
userId,
isDynamic, // 是否为大数据页面
isWebPrint, // 打印界面
isWebPrintEnd,
isPreview,
} = this.props; return this.props.form.getFieldDecorator(name, {
const trees = this.configs && this.configs.trees ? this.configs.trees : this.props.trees; initialValue: value,
})(<Input type="hidden" />);
})
: ''}
<Row>
<Col span={24}>
<div
data-page-formkey={currentFormKey}
style={styleDiv}
ref={(ref) => {
this.root = ref;
}}>
<table
style={{
overflow: 'auto',
margin: max * width > 550 ? '1px auto' : '', // 禅道 27868
marginBottom: isWebPrint ? (isWebPrintEnd ? '5px' : 0) : '1px',
...style,
}}
border={border}
cellSpacing="0"
cellPadding="0">
<tbody>
{items.map((row, i) => {
const allhidden = this.checkAllHidden(row);
// console.log(row);
return (
<tr key={i}>
{row.map((cell, j) => {
if (!cell.content) {
return;
}
if (cell.uuid) {
if (cell.content) {
cell.content = {
...cell.content,
...getActiveJson(currentFormKey, cell.uuid),
};
if (window.zdyTableTemplateWillMountProps?.allDisabled) {
cell.content.disabled = true;
}
}
// 27282 双选会报名后管理员修改举办时间 但是单位申请信息么有随着更新
}
let get; let styles = {};
if (viewMode != null && viewMode != '') { // console.log(cell.content);
get = viewMode; if (cell.content && cell.content.styles) {
} else { try {
get = this.props.get; styles = JSON.parse(cell.content.styles);
} } catch (e) {
let style = {}; console.log(`第${i}行第${j}列样式配置有误,${e}`);
if (formConfig.style != null) { }
try { }
style = JSON.parse(formConfig.style); return !allhidden && cell.hidden ? (
} catch (e) { ''
//console.log(e); ) : (
style = {}; <td
} width={
} i == 0
? (cell.content != null && cell.content.cwidth != null
? cell.content.cwidth
: width) * (cell.col ? cell.col : 1)
: width * (cell.col ? cell.col : 1)
}
rowSpan={cell.row}
colSpan={cell.col}
key={j}
data-cell-id={
cell.uuid || 'no_uuid_' + Math.random().slice(0, 6)
}
data-com-name={cell.content?.comName || 'empty'}
style={{
overflow: 'auto',
textAlign:
cell.content && cell.content.calign
? cell.content.calign
: 'left',
...(isBorder
? cell?.content?.comName == 'InputHidden' ||
!cell?.content?.comName
? {}
: borderStyle
: {}),
// position: cell.content&&cell.content.comName ==="InputHidden"&&'absolute',
...styles,
display:
cell.content &&
(cell.content.comName === 'InputHidden' ||
cell.content.isHidden) &&
'none',
}}>
<TableCom
taskId={this.props.taskId}
importExcel={this.importExcel}
getCellValue={this.getCellValue}
getCurrentFormTitle={this.getCurrentFormTitle2}
hfInstance={this.hfInstance}
isWebPrintEnd={isWebPrintEnd}
isWebPrint={isWebPrint}
isPrint={this.props.isPrint}
formCode={formCode} // 当前表单code
modalInit={modalInit}
taskAssignee={taskAssignee} // 提交人
userId={userId}
formId={formId} // 当前表单Id
i={i} // 当前组件下标
j={j} // 当前行数下班
isPreview={isPreview}
fatherCode={fatherCode}
index={index}
fatherObj={this.props.fatherObj}
datas={datas}
uuid={cell.uuid}
setRealTimeValues={this.setRealTimeValues}
isEdit={isEdit}
formKey={currentFormKey}
currentFormTitle={currentFormTitle}
init={init}
get={get} // 区分移动端或wen端
json={cell.content}
obj={{ ...obj, ...this.state.objRealTime } || {}} // 是否存在默认值
mapData={mapData}
form={this.props.form} // antd form控件
sqlData={sqlData}
defaultValues={defaultValues || {}} // 接口中的默认值
routerState={routerState} // 兼容表单设计器路由传参
messageData={messageData} // 场景设计器共享变量参数
concealModel={concealModel || {}} // 场景设计器内置路由跳转函数
isDynamic={isDynamic} // 是否为场景配置器调用
trees={trees}
/>
</td>
);
})}
</tr>
);
})}
</tbody>
</table>
const formItemLayout = { {style.pageBreakAfter != null ? (
labelCol: { <div style={{ pageBreakAfter: style.pageBreakAfter }} />
xs: { span: 24 }, ) : (
sm: { span: 24 }, ''
}, )}
wrapperCol: { </div>
xs: { span: 24 }, </Col>
sm: { span: 24 }, </Row>
}, </Form>
}; </div>
const max = this.countMax(items); )}
const borderStyle = { </>
borderRight: '1px solid gray', );
borderTop: '1px solid gray', case 'mobile':
borderLeft: '1px solid gray', return (
borderBottom: '1px solid gray', <>
}; {this.props.postData?.isUpdate ? (
let updateTime; <div style={{ margin: '100px 24px 24px' }}>
const styleDiv = this.props.height <div style={{ textAlign: 'center' }}>
? { <img style={{ width: '100%' }} src={maintain} />
overflow: isDynamic ? 'hidden' : 'auto', </div>
// overflowY: isDynamic && 'auto', <p
width: '100%', style={{
height: this.props.height, textAlign: 'center',
paddingBottom: paddingBottom != null ? paddingBottom : isWebPrint ? 0 : '0px', width: '100%',
} fontSize: '16px',
: { fontWeight: 'bold',
overflow: isDynamic ? 'hidden' : 'auto', color: '#666666',
// overflowY: isDynamic && 'auto', }}>
width: '100%', {updateTime !== 'Invalid date'
paddingBottom: paddingBottom != null ? paddingBottom : isWebPrint ? 0 : '0px', ? `升级维护中,预计${updateTime ?? '一万年'}恢复使用,请耐心等待。`
}; : '请耐心等待'}
</p>
</div>
) : (
<Form {...formItemLayout} id="mobile_table" className="login-form">
{defaultBinds
? Object.keys(defaultBinds).map((k) => {
const r = defaultBinds[k];
if (
r.columnIds == null ||
r.columnIds.length < 2 ||
r.sqls == null ||
r.sqls.length < 2
) {
return '';
}
const name = r.columnIds[r.columnIds.length - 1];
const key = r.sqls[r.sqls.length - 1];
const value = defaultValues[key];
if (!isReady) return <></>; if (value === null || value === undefined) {
if (this.props.postData?.isUpdate) { return '';
updateTime = moment(+this.props.postData?.updateTime) }
.format('llll');
}
switch (get) {
case 'web':
// this.props.form.validateFields()
// .then((values) => {
// })
// .catch(error => console.log(error));
return (
<>
{this.props.postData?.isUpdate ? (
<div style={{ margin: '100px 24px 24px' }}>
<div style={{ textAlign: 'center' }}>
<img style={{ marginRight: 30 }} src={maintain}/>
</div>
<p
style={{
textAlign: 'center',
width: '100%',
fontSize: '16px',
fontWeight: 'bold',
color: '#666666',
}}>
{updateTime !== 'Invalid date'
? `升级维护中,预计${updateTime ?? '一万年'}恢复使用,请耐心等待。`
: '请耐心等待'}
</p>
</div>
) : (
<div id="web_table">
<Form className="login-form">
{isEdit && defaultBinds
? Object.keys(defaultBinds)
.map((k) => {
const r = defaultBinds[k];
if (
r.columnIds == null ||
r.columnIds.length < 2 ||
r.sqls == null ||
r.sqls.length < 2
) {
return '';
}
const name = r.columnIds[r.columnIds.length - 1];
const key = r.sqls[r.sqls.length - 1];
const value = defaultValues[key];
if (value === null || value === undefined) { return this.props.form.getFieldDecorator(name, {
return ''; initialValue: value,
} })(<Input type="hidden" />);
})
return this.props.form.getFieldDecorator(name, { : ''}
initialValue: value, <IsNewTable
})(<Input type="hidden"/>); taskId={this.props.taskId}
}) getCellValue={this.getCellValue}
: ''} hfInstance={this.hfInstance}
<Row> getCurrentFormTitle={this.getCurrentFormTitle2}
<Col span={24}> taskAssignee={taskAssignee} // 提交人
<div userId={userId}
data-page-formkey={currentFormKey} importExcel={this.importExcel}
style={styleDiv} isPreview={isPreview}
ref={(ref) => { trees={trees}
this.root = ref; setRealTimeValues={this.setRealTimeValues}
}}> isRowCol={isRowCol}
<table modalInit={modalInit}
style={{ items={items}
overflow: 'auto', checkAllHidden={this.checkAllHidden}
margin: max * width > 550 ? '1px auto' : '', // 禅道 27868 isBorder={isBorder}
marginBottom: isWebPrint ? (isWebPrintEnd ? '5px' : 0) : '1px', borderStyle={borderStyle}
...style, fatherCode={fatherCode}
}} index={index}
border={border} datas={datas}
cellSpacing="0" isEdit={isEdit}
cellPadding="0"> currentFormKey={currentFormKey}
<tbody> currentFormTitle={currentFormTitle}
{items.map((row, i) => { init={init}
const allhidden = this.checkAllHidden(row); get={get}
// console.log(row); obj={{ ...obj, ...this.state.objRealTime }}
return ( mapData={mapData}
<tr key={i}> form={this.props.form}
{row.map((cell, j) => { sqlData={sqlData}
if (!cell.content) { defaultValues={defaultValues}
return; width={width}
} formCode={formCode}
if (cell.uuid) { style={style}
if(cell.content){ routerState={routerState} // 兼容表单设计器路由传参
cell.content = { messageData={messageData} // 场景设计器共享变量参数
...cell.content, formId={formId}
...getActiveJson(currentFormKey, cell.uuid), fatherObj={this.props.fatherObj}
concealModel={concealModel || {}} // 场景设计器内置路由跳转函数
}; isDynamic={isDynamic} // 是否为场景配置器调用
if(window.zdyTableTemplateWillMountProps?.allDisabled){ />
cell.content.disabled = true; </Form>
} )}
} </>
// 27282 双选会报名后管理员修改举办时间 但是单位申请信息么有随着更新 );
} }
}
let styles = {};
// console.log(cell.content);
if (cell.content && cell.content.styles) {
try {
styles = JSON.parse(cell.content.styles);
} catch (e) {
console.log(`第${i}行第${j}列样式配置有误,${e}`);
}
}
return !allhidden && cell.hidden ? (
''
) : (
<td
width={
i == 0
? (cell.content != null && cell.content.cwidth != null
? cell.content.cwidth
: width) * (cell.col ? cell.col : 1)
: width * (cell.col ? cell.col : 1)
}
rowSpan={cell.row}
colSpan={cell.col}
key={j}
data-cell-id={cell.uuid || 'no_uuid_' + Math.random()
.slice(0, 6)}
data-com-name={cell.content?.comName || 'empty'}
style={{
overflow: 'auto',
textAlign:
cell.content && cell.content.calign
? cell.content.calign
: 'left',
...(isBorder
? cell?.content?.comName == 'InputHidden' ||
!cell?.content?.comName
? {}
: borderStyle
: {}),
// position: cell.content&&cell.content.comName ==="InputHidden"&&'absolute',
...styles,
display:
cell.content &&
(cell.content.comName === 'InputHidden' ||
cell.content.isHidden) &&
'none',
}}>
<TableCom
taskId={this.props.taskId}
importExcel={this.importExcel}
getCellValue={this.getCellValue}
getCurrentFormTitle={this.getCurrentFormTitle2}
hfInstance={this.hfInstance}
isWebPrintEnd={isWebPrintEnd}
isWebPrint={isWebPrint}
isPrint={this.props.isPrint}
formCode={formCode} // 当前表单code
modalInit={modalInit}
taskAssignee={taskAssignee} // 提交人
userId={userId}
formId={formId} // 当前表单Id
i={i} // 当前组件下标
j={j} // 当前行数下班
isPreview={isPreview}
fatherCode={fatherCode}
index={index}
fatherObj={this.props.fatherObj}
datas={datas}
uuid={cell.uuid}
setRealTimeValues={this.setRealTimeValues}
isEdit={isEdit}
formKey={currentFormKey}
currentFormTitle={currentFormTitle}
init={init}
get={get} // 区分移动端或wen端
json={cell.content}
obj={{ ...obj, ...this.state.objRealTime } || {}} // 是否存在默认值
mapData={mapData}
form={this.props.form} // antd form控件
sqlData={sqlData}
defaultValues={defaultValues || {}} // 接口中的默认值
routerState={routerState} // 兼容表单设计器路由传参
messageData={messageData} // 场景设计器共享变量参数
concealModel={concealModel || {}} // 场景设计器内置路由跳转函数
isDynamic={isDynamic} // 是否为场景配置器调用
trees={trees}
/>
</td>
);
})}
</tr>
);
})}
</tbody>
</table>
{style.pageBreakAfter != null ? (
<div style={{ pageBreakAfter: style.pageBreakAfter }}/>
) : (
''
)}
</div>
</Col>
</Row>
</Form>
</div>
)}
</>
);
case 'mobile':
return (
<>
{this.props.postData?.isUpdate ? (
<div style={{ margin: '100px 24px 24px' }}>
<div style={{ textAlign: 'center' }}>
<img style={{ width: '100%' }} src={maintain}/>
</div>
<p
style={{
textAlign: 'center',
width: '100%',
fontSize: '16px',
fontWeight: 'bold',
color: '#666666',
}}>
{updateTime !== 'Invalid date'
? `升级维护中,预计${updateTime ?? '一万年'}恢复使用,请耐心等待。`
: '请耐心等待'}
</p>
</div>
) : (
<Form {...formItemLayout} id="mobile_table" className="login-form">
{defaultBinds
? Object.keys(defaultBinds)
.map((k) => {
const r = defaultBinds[k];
if (
r.columnIds == null ||
r.columnIds.length < 2 ||
r.sqls == null ||
r.sqls.length < 2
) {
return '';
}
const name = r.columnIds[r.columnIds.length - 1];
const key = r.sqls[r.sqls.length - 1];
const value = defaultValues[key];
if (value === null || value === undefined) {
return '';
}
return this.props.form.getFieldDecorator(name, {
initialValue: value,
})(<Input type="hidden"/>);
})
: ''}
<IsNewTable
taskId={this.props.taskId}
getCellValue={this.getCellValue}
hfInstance={this.hfInstance}
getCurrentFormTitle={this.getCurrentFormTitle2}
taskAssignee={taskAssignee} // 提交人
userId={userId}
importExcel={this.importExcel}
isPreview={isPreview}
trees={trees}
setRealTimeValues={this.setRealTimeValues}
isRowCol={isRowCol}
modalInit={modalInit}
items={items}
checkAllHidden={this.checkAllHidden}
isBorder={isBorder}
borderStyle={borderStyle}
fatherCode={fatherCode}
index={index}
datas={datas}
isEdit={isEdit}
currentFormKey={currentFormKey}
currentFormTitle={currentFormTitle}
init={init}
get={get}
obj={{ ...obj, ...this.state.objRealTime }}
mapData={mapData}
form={this.props.form}
sqlData={sqlData}
defaultValues={defaultValues}
width={width}
formCode={formCode}
style={style}
routerState={routerState} // 兼容表单设计器路由传参
messageData={messageData} // 场景设计器共享变量参数
formId={formId}
fatherObj={this.props.fatherObj}
concealModel={concealModel || {}} // 场景设计器内置路由跳转函数
isDynamic={isDynamic} // 是否为场景配置器调用
/>
</Form>
)}
</>
);
}
}
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论