|
@@ -3,7 +3,7 @@ judgeServe;
|
|
import judgeServe, { ComponentName, FormItem, TYPE } from './mapServe';
|
|
import judgeServe, { ComponentName, FormItem, TYPE } from './mapServe';
|
|
// import { Badge } from 'antd';
|
|
// import { Badge } from 'antd';
|
|
import { useXFlowApp, XFlowNodeCommands } from '@antv/xflow';
|
|
import { useXFlowApp, XFlowNodeCommands } from '@antv/xflow';
|
|
-import { JudgeType } from '../../components/judgeComponent';
|
|
|
|
|
|
+import { JudgeType, JudgeOptions, SiginOptions } from '../../components/judgeComponent';
|
|
import { connect } from 'dva';
|
|
import { connect } from 'dva';
|
|
export { judgeServe };
|
|
export { judgeServe };
|
|
|
|
|
|
@@ -13,6 +13,7 @@ const JudgeRect = props => {
|
|
const { label, stroke, fill, fontFill, fontSize, type, priority, formItems } = data;
|
|
const { label, stroke, fill, fontFill, fontSize, type, priority, formItems } = data;
|
|
|
|
|
|
const contentText = useMemo(() => {
|
|
const contentText = useMemo(() => {
|
|
|
|
+ let text = [];
|
|
const getName = (id, data) => {
|
|
const getName = (id, data) => {
|
|
let name = '';
|
|
let name = '';
|
|
for (let i = 0; i < data.length; i++) {
|
|
for (let i = 0; i < data.length; i++) {
|
|
@@ -28,10 +29,10 @@ const JudgeRect = props => {
|
|
};
|
|
};
|
|
|
|
|
|
if (formItems) {
|
|
if (formItems) {
|
|
- let text = 'XXX';
|
|
|
|
let data: FormItem[] = JSON.parse(formItems);
|
|
let data: FormItem[] = JSON.parse(formItems);
|
|
data.forEach((item: FormItem) => {
|
|
data.forEach((item: FormItem) => {
|
|
let judge: JudgeType = item.judge;
|
|
let judge: JudgeType = item.judge;
|
|
|
|
+ const label: String = item.props.label;
|
|
switch (judge?.type) {
|
|
switch (judge?.type) {
|
|
case ComponentName.Inner:
|
|
case ComponentName.Inner:
|
|
const list = judge?.values
|
|
const list = judge?.values
|
|
@@ -39,11 +40,36 @@ const JudgeRect = props => {
|
|
return getName(item.value, depUserTree);
|
|
return getName(item.value, depUserTree);
|
|
})
|
|
})
|
|
.filter(item => item);
|
|
.filter(item => item);
|
|
- text = '发起人属于:' + list.join('或');
|
|
|
|
|
|
+ text.push('发起人属于:' + list.join('或'));
|
|
|
|
+ break;
|
|
|
|
+ case ComponentName.Number:
|
|
|
|
+ const type: Number = judge.values[0];
|
|
|
|
+ const condition = judge.condition;
|
|
|
|
+ if (!condition) break;
|
|
|
|
+ if (type != 6) {
|
|
|
|
+ let JudgeLabel = JudgeOptions.find(item => item.value == type)?.label;
|
|
|
|
+
|
|
|
|
+ text.push(`${label} ${JudgeLabel} ${condition.smallValue}`);
|
|
|
|
+ } else {
|
|
|
|
+ const { smallSign, smallValue, bigSign, bigValue } = condition;
|
|
|
|
+ if (!smallSign || !smallValue || !bigSign || !bigValue) break;
|
|
|
|
+ const getSigin = (sigin: Number) =>
|
|
|
|
+ SiginOptions.find(item => item.value == sigin)?.label;
|
|
|
|
+
|
|
|
|
+ text.push(
|
|
|
|
+ `${smallValue} ${getSigin(smallSign)} ${label} ${getSigin(bigSign)} ${bigValue} `
|
|
|
|
+ );
|
|
|
|
+ }
|
|
|
|
+ break;
|
|
|
|
+ case ComponentName.Select:
|
|
|
|
+ case ComponentName.MultiSelect:
|
|
|
|
+ const values = judge.values;
|
|
|
|
+ text.push(`${label} ${values.join(' 或 ')}`);
|
|
|
|
+ break;
|
|
}
|
|
}
|
|
});
|
|
});
|
|
- return text;
|
|
|
|
}
|
|
}
|
|
|
|
+ return text;
|
|
}, [formItems]);
|
|
}, [formItems]);
|
|
|
|
|
|
return (
|
|
return (
|
|
@@ -64,7 +90,19 @@ const JudgeRect = props => {
|
|
textOverflow: 'ellipsis',
|
|
textOverflow: 'ellipsis',
|
|
}}
|
|
}}
|
|
>
|
|
>
|
|
- {contentText}
|
|
|
|
|
|
+ {(contentText || []).map((text, index) => (
|
|
|
|
+ <>
|
|
|
|
+ {index != 0 && (
|
|
|
|
+ <>
|
|
|
|
+ <br />
|
|
|
|
+ 并且
|
|
|
|
+ <br />
|
|
|
|
+ </>
|
|
|
|
+ )}
|
|
|
|
+
|
|
|
|
+ {text}
|
|
|
|
+ </>
|
|
|
|
+ ))}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
);
|
|
);
|