提交 b508711f 编写于 作者: ibizdev's avatar ibizdev

zhujiamin 发布系统代码 [TrainSys,网页端]

上级 e410fdca
......@@ -12,14 +12,14 @@
},
"dependencies": {
"@floating-ui/dom": "^1.0.11",
"@ibiz-template/command": "^0.0.1-beta.48",
"@ibiz-template/controller": "^0.0.1-beta.48",
"@ibiz-template/core": "^0.0.1-beta.48",
"@ibiz-template/model": "^0.0.1-beta.48",
"@ibiz-template/runtime": "^0.0.1-beta.48",
"@ibiz-template/service": "^0.0.1-beta.48",
"@ibiz-template/theme": "^0.0.1-beta.48",
"@ibiz-template/vue-util": "^0.0.1-beta.48",
"@ibiz-template/command": "^0.0.1-beta.49",
"@ibiz-template/controller": "^0.0.1-beta.49",
"@ibiz-template/core": "^0.0.1-beta.49",
"@ibiz-template/model": "^0.0.1-beta.49",
"@ibiz-template/runtime": "^0.0.1-beta.49",
"@ibiz-template/service": "^0.0.1-beta.49",
"@ibiz-template/theme": "^0.0.1-beta.49",
"@ibiz-template/vue-util": "^0.0.1-beta.49",
"@ibiz/dynamic-model-api": "^2.1.11",
"dayjs": "^1.11.7",
"lodash-es": "^4.17.21",
......
......@@ -4,14 +4,14 @@ specifiers:
'@commitlint/cli': ^17.3.0
'@commitlint/config-conventional': ^17.3.0
'@floating-ui/dom': ^1.0.11
'@ibiz-template/command': ^0.0.1-beta.48
'@ibiz-template/controller': ^0.0.1-beta.48
'@ibiz-template/core': ^0.0.1-beta.48
'@ibiz-template/model': ^0.0.1-beta.48
'@ibiz-template/runtime': ^0.0.1-beta.48
'@ibiz-template/service': ^0.0.1-beta.48
'@ibiz-template/theme': ^0.0.1-beta.48
'@ibiz-template/vue-util': ^0.0.1-beta.48
'@ibiz-template/command': ^0.0.1-beta.49
'@ibiz-template/controller': ^0.0.1-beta.49
'@ibiz-template/core': ^0.0.1-beta.49
'@ibiz-template/model': ^0.0.1-beta.49
'@ibiz-template/runtime': ^0.0.1-beta.49
'@ibiz-template/service': ^0.0.1-beta.49
'@ibiz-template/theme': ^0.0.1-beta.49
'@ibiz-template/vue-util': ^0.0.1-beta.49
'@ibiz/dynamic-model-api': ^2.1.11
'@types/lodash-es': ^4.17.6
'@types/node': ^18.11.15
......@@ -63,14 +63,14 @@ specifiers:
dependencies:
'@floating-ui/dom': 1.2.3
'@ibiz-template/command': 0.0.1-beta.48
'@ibiz-template/controller': 0.0.1-beta.48_uql53fkcqv67e3qpsiw5wvkvwa
'@ibiz-template/core': 0.0.1-beta.48_r2u2pf57tdrzsloecwaklwkkci
'@ibiz-template/model': 0.0.1-beta.48_y6kbchkrnlrtpfodzmrb2uku5e
'@ibiz-template/runtime': 0.0.1-beta.48_q2qq77kj34fvafri2g726hxtzu
'@ibiz-template/service': 0.0.1-beta.48_kebrja7telx5rwvp7v4q4r6qjm
'@ibiz-template/theme': 0.0.1-beta.48
'@ibiz-template/vue-util': 0.0.1-beta.48_642gojcysn2zoo6hnvxhajtjky
'@ibiz-template/command': 0.0.1-beta.49
'@ibiz-template/controller': 0.0.1-beta.49_bjux3alwunjwl37tydsewqwf2a
'@ibiz-template/core': 0.0.1-beta.49_r2u2pf57tdrzsloecwaklwkkci
'@ibiz-template/model': 0.0.1-beta.49_y6kbchkrnlrtpfodzmrb2uku5e
'@ibiz-template/runtime': 0.0.1-beta.49_qx2bufwzienid6qyga4ze7tswy
'@ibiz-template/service': 0.0.1-beta.49_hws6ss73mbj7ldec3ehiwhqluq
'@ibiz-template/theme': 0.0.1-beta.49
'@ibiz-template/vue-util': 0.0.1-beta.49_abxhb35ktzoiv2gkxh7rpokgw4
'@ibiz/dynamic-model-api': 2.1.16_qx-util@0.4.8
dayjs: 1.11.7
lodash-es: 4.17.21
......@@ -875,14 +875,14 @@ packages:
resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==}
dev: true
/@ibiz-template/command/0.0.1-beta.48:
resolution: {integrity: sha512-5CZzkYA8n72pYMoNt9L8oGDsCDbngPHrnxSU1t+R4ttvDGNQHFrtDEVKX0iuZwjxillsFw1S3t1cdkbmZfxJCA==}
/@ibiz-template/command/0.0.1-beta.49:
resolution: {integrity: sha512-F/GbkndfnvpEAek0fNG/73pZIic2ECb6oAiG8O6NjQGR8K/iNWKWfhlDgBiWtjtbj44Ogerzox3sIh+6eh5CEw==}
dependencies:
qx-util: 0.4.8
dev: false
/@ibiz-template/controller/0.0.1-beta.48_uql53fkcqv67e3qpsiw5wvkvwa:
resolution: {integrity: sha512-zkFdc5n4G0SJcO/E+kEhW/ab8bhlTrWIXpJ08Uwj6iwcyRSJ77UaEBpeaHTsPQB72dMYrvF/MEVp9cow0F8jkg==}
/@ibiz-template/controller/0.0.1-beta.49_bjux3alwunjwl37tydsewqwf2a:
resolution: {integrity: sha512-B6NQyip0q7BDsjXb7mAK9QrCO1VeIEP3SpcE5G0J+c9NSUZd3uz13mCaa6V6FQ5tuehC3pRJsvfdOOyvk9aBfA==}
peerDependencies:
'@ibiz-template/core': ^0.0.1-beta.30
'@ibiz-template/model': ^0.0.1-beta.30
......@@ -892,10 +892,10 @@ packages:
qs: ^6.11.0
qx-util: ^0.4.4
dependencies:
'@ibiz-template/core': 0.0.1-beta.48_r2u2pf57tdrzsloecwaklwkkci
'@ibiz-template/model': 0.0.1-beta.48_y6kbchkrnlrtpfodzmrb2uku5e
'@ibiz-template/runtime': 0.0.1-beta.48_q2qq77kj34fvafri2g726hxtzu
'@ibiz-template/service': 0.0.1-beta.48_kebrja7telx5rwvp7v4q4r6qjm
'@ibiz-template/core': 0.0.1-beta.49_r2u2pf57tdrzsloecwaklwkkci
'@ibiz-template/model': 0.0.1-beta.49_y6kbchkrnlrtpfodzmrb2uku5e
'@ibiz-template/runtime': 0.0.1-beta.49_qx2bufwzienid6qyga4ze7tswy
'@ibiz-template/service': 0.0.1-beta.49_hws6ss73mbj7ldec3ehiwhqluq
async-validator: 4.2.5
dayjs: 1.11.7
lodash-es: 4.17.21
......@@ -903,8 +903,8 @@ packages:
qx-util: 0.4.8
dev: false
/@ibiz-template/core/0.0.1-beta.48_r2u2pf57tdrzsloecwaklwkkci:
resolution: {integrity: sha512-ikSdGnjLcMQh7YttSE0GRAeEqDlE6T9QCbSbSLh0ybb88HEsEtCSCcOckir3g8f0OV8UIlRRN1aE4BOtXXPcpg==}
/@ibiz-template/core/0.0.1-beta.49_r2u2pf57tdrzsloecwaklwkkci:
resolution: {integrity: sha512-9KaK6m7Ozob8dlyGi1OPqv29T9MOXr0xlG68VNBfEHxq7S0Vcmz5dgOUF48YlAwTs4UJq7s2LWj6lzVxPXgd7A==}
peerDependencies:
lodash-es: ^4.17.21
qx-util: ^0.4.4
......@@ -919,8 +919,8 @@ packages:
- debug
dev: false
/@ibiz-template/model/0.0.1-beta.48_y6kbchkrnlrtpfodzmrb2uku5e:
resolution: {integrity: sha512-N830Iph4+T2w2jRhR/eBOUOzEAUtinB0u0BXhck+wQnzaLcMmnzJIdD0Lr19wMdXnOHZ++YdGZjXQ5bZBGau+A==}
/@ibiz-template/model/0.0.1-beta.49_y6kbchkrnlrtpfodzmrb2uku5e:
resolution: {integrity: sha512-YhFmomTWplQgbaCBFMH0RT93QiVRhp5ZxApNjvw30I2THbw+/iV+aVSjvEdMHp5GsRIEQBO0Bfft/rlVds9f/g==}
peerDependencies:
'@ibiz/dynamic-model-api': ^2.1.11
lodash-es: ^4.17.21
......@@ -932,55 +932,57 @@ packages:
qx-util: 0.4.8
dev: false
/@ibiz-template/runtime/0.0.1-beta.48_q2qq77kj34fvafri2g726hxtzu:
resolution: {integrity: sha512-PKiYNv+QN2/EgY12qttATTFw+5g+O8FcBGEnuNJ4n7Y7+dDqZmjrDpTXzGwyJZef4OjBQN5wEbbnkADl6OnERw==}
/@ibiz-template/runtime/0.0.1-beta.49_qx2bufwzienid6qyga4ze7tswy:
resolution: {integrity: sha512-BlJ+Z+exyZLGDNMA3cL6WBLAgNdQyliOaFwEr3hx6hk3H13Igbj1ZZB6NGPykwL6hnnytoQ73cf12rChz87Ksw==}
peerDependencies:
'@ibiz-template/core': ^0.0.1-beta.30
'@ibiz-template/model': ^0.0.1-beta.30
'@ibiz-template/service': ^0.0.1-beta.30
qx-util: ^0.4.4
dependencies:
'@ibiz-template/command': 0.0.1-beta.48
'@ibiz-template/core': 0.0.1-beta.48_r2u2pf57tdrzsloecwaklwkkci
'@ibiz-template/model': 0.0.1-beta.48_y6kbchkrnlrtpfodzmrb2uku5e
'@ibiz-template/service': 0.0.1-beta.48_kebrja7telx5rwvp7v4q4r6qjm
'@ibiz-template/command': 0.0.1-beta.49
'@ibiz-template/core': 0.0.1-beta.49_r2u2pf57tdrzsloecwaklwkkci
'@ibiz-template/model': 0.0.1-beta.49_y6kbchkrnlrtpfodzmrb2uku5e
'@ibiz-template/service': 0.0.1-beta.49_hws6ss73mbj7ldec3ehiwhqluq
qs: 6.11.1
qx-util: 0.4.8
dev: false
/@ibiz-template/service/0.0.1-beta.48_kebrja7telx5rwvp7v4q4r6qjm:
resolution: {integrity: sha512-0dXmdXwELNtmtkj5txQ4anJbpKkI0d3F1hLGD4F2OpMUfZxb7jWViMg9RzIp/8ZvFICfTn1ToOb7oSZSpqFeQg==}
/@ibiz-template/service/0.0.1-beta.49_hws6ss73mbj7ldec3ehiwhqluq:
resolution: {integrity: sha512-0R84rSehJCDMmEH0LgcO+wlrOK9rW52/BzvtuIS+1lEqxqtqzW0x0TyynSkFppTz6Ft7RCyBeIhQj5Ivw72G9g==}
peerDependencies:
'@ibiz-template/core': ^0.0.1-beta.30
'@ibiz-template/model': ^0.0.1-beta.30
qx-util: ^0.4.4
ramda: ^0.28.0
dependencies:
'@ibiz-template/core': 0.0.1-beta.48_r2u2pf57tdrzsloecwaklwkkci
'@ibiz-template/model': 0.0.1-beta.48_y6kbchkrnlrtpfodzmrb2uku5e
'@ibiz-template/core': 0.0.1-beta.49_r2u2pf57tdrzsloecwaklwkkci
'@ibiz-template/model': 0.0.1-beta.49_y6kbchkrnlrtpfodzmrb2uku5e
qx-util: 0.4.8
ramda: 0.28.0
dev: false
/@ibiz-template/theme/0.0.1-beta.48:
resolution: {integrity: sha512-oFOM1iOLgvkPMs/h8nXXIKdaFe49n1X+uTY/ZJEp82Iup/W7m3XrGN/3hBXsfl+Jw7O6/mbjEbSkphUCKeFq4g==}
/@ibiz-template/theme/0.0.1-beta.49:
resolution: {integrity: sha512-JuGC7+04Yw7WviGv9dg4wzhhZDfWJGCpHdMIPsviX6k33gLeM56r9M0rtkHimmf4Uj8kJIbR/9bCEKeFBtUSiw==}
dev: false
/@ibiz-template/vue-util/0.0.1-beta.48_642gojcysn2zoo6hnvxhajtjky:
resolution: {integrity: sha512-H4Ak50xCBXuHQVXDTDgS0ij67kXZ4Z0fXzrh2jsB/pJJ5+mA6MrjN2Y7sNwbnvPexCvVs/fqktMo3/hc687cDQ==}
/@ibiz-template/vue-util/0.0.1-beta.49_abxhb35ktzoiv2gkxh7rpokgw4:
resolution: {integrity: sha512-9YtXQT22HKGsd/PrXFHVvbPHvlEFYLHVkfrIFPO3Rn0pF6poW3epAvboANP3g3xXmw0dRGIcbM6Sz8Zmp+MSWw==}
peerDependencies:
'@ibiz-template/controller': ^0.0.1-beta.30
'@ibiz-template/core': ^0.0.1-beta.30
'@ibiz-template/model': ^0.0.1-beta.30
'@ibiz-template/service': ^0.0.1-beta.30
qs: ^6.11.0
qx-util: ^0.4.4
ramda: ^0.28.0
vue: ^2.7.14
vue-router: ^3.6.5
dependencies:
'@ibiz-template/controller': 0.0.1-beta.48_uql53fkcqv67e3qpsiw5wvkvwa
'@ibiz-template/core': 0.0.1-beta.48_r2u2pf57tdrzsloecwaklwkkci
'@ibiz-template/model': 0.0.1-beta.48_y6kbchkrnlrtpfodzmrb2uku5e
'@ibiz-template/controller': 0.0.1-beta.49_bjux3alwunjwl37tydsewqwf2a
'@ibiz-template/core': 0.0.1-beta.49_r2u2pf57tdrzsloecwaklwkkci
'@ibiz-template/model': 0.0.1-beta.49_y6kbchkrnlrtpfodzmrb2uku5e
'@ibiz-template/service': 0.0.1-beta.49_hws6ss73mbj7ldec3ehiwhqluq
qs: 6.11.1
qx-util: 0.4.8
ramda: 0.28.0
......
......@@ -52,6 +52,10 @@ export const IBizPickerDropDown = defineComponent({
(newVal, oldVal) => {
if (newVal !== oldVal) {
refValue.value = newVal;
// 如果值项被清空了,主文本也需清空
if (newVal === null) {
emit('change', null);
}
}
},
{ immediate: true, deep: true },
......
import { defineComponent, getCurrentInstance, ref } from 'vue';
import {
defineComponent,
getCurrentInstance,
onUnmounted,
ref,
toRaw,
watch,
} from 'vue';
import { ModelUtil } from '@ibiz-template/model';
import {
IRouteViewData,
parseRouteViewData,
useRoute,
useRouter,
} from '@ibiz-template/vue-util';
import { Route } from 'vue-router';
import { IBizContext } from '@ibiz-template/core';
import { ViewMode } from '@ibiz-template/runtime';
export default defineComponent({
name: 'RouterShell',
......@@ -20,34 +28,75 @@ export default defineComponent({
const { proxy } = getCurrentInstance()!;
const route = useRoute(proxy) as Route;
const router = useRouter(proxy);
const viewData = ref<IRouteViewData>({});
const viewData = ref<{
viewPath?: string;
viewType?: string;
context?: IContext;
params?: IParams;
srfnav?: string;
}>({});
const isLoaded = ref(false);
// 销毁视图上下文
onUnmounted(() => {
if (viewData.value.context) {
const context = toRaw(viewData.value).context;
if (context) context.destroy();
}
});
// 视图初始化事件,往上抛
const onNeuronInit = (...args: IData[]) => {
ctx.emit('neuronInit', ...args);
};
const viewModal = {
mode: ViewMode.ROUTE,
level: props.level,
};
// 根据应用模型解析视图参数
ModelUtil.getModelService().then(async service => {
const calcViewData = async () => {
const service = await ModelUtil.getModelService();
const appModel = service.app;
if (appModel) {
// 获取视图
try {
viewData.value = parseRouteViewData(appModel, route, props.level);
const _viewData = parseRouteViewData(appModel, route, props.level);
// 路由绘制的视图,添加一个上下文isRouter
_viewData.context!.isRouter = true;
const _context = IBizContext.create(_viewData.context);
viewData.value = {
..._viewData,
context: _context,
};
// 确定视图组件
isLoaded.value = true;
ctx.emit('viewFound', { modelPath: viewData.value.viewPath });
} catch (error) {
router.replace(`/${route.params.view1}/404`);
router.push({ name: `404View${props.level}` });
}
}
});
// 视图初始化事件,往上抛
const onNeuronInit = (...args: IData[]) => {
ctx.emit('neuronInit', ...args);
};
calcViewData();
watch(
() => route.params.view1,
() => {
if (props.level === 1) {
// 第一级路由壳监测到view1变化后,就重新计算一遍viewData
calcViewData();
}
},
);
return {
route,
viewData,
isLoaded,
onNeuronInit,
viewModal,
};
},
render(h) {
......
import { IBizContext, Namespace } from '@ibiz-template/core';
import { Namespace } from '@ibiz-template/core';
import {
AppMenuModel,
AppMenuItemModel,
......@@ -9,6 +9,7 @@ import {
defineComponent,
getCurrentInstance,
onMounted,
PropType,
Ref,
ref,
watch,
......@@ -156,7 +157,7 @@ export const AppMenu = defineComponent({
name: 'AppMenu',
props: {
modelData: AppMenuModel,
context: IBizContext,
context: { type: Object as PropType<IContext>, required: true },
collapseChange: Boolean,
currentPath: String,
},
......
import { DashboardController } from '@ibiz-template/controller';
import { IBizContext } from '@ibiz-template/core';
import {
DashboardModel,
ContainerPortletModel,
......@@ -59,10 +58,7 @@ export const DashboardControl = defineComponent({
type: DashboardModel,
required: true,
},
context: {
type: IBizContext,
required: true,
},
context: { type: Object as PropType<IContext>, required: true },
params: { type: Object as PropType<IParams>, default: () => ({}) },
},
setup(props) {
......
import { IBizContext } from '@ibiz-template/core';
import { EditFormModel } from '@ibiz-template/model';
import { useEditFormController } from '@ibiz-template/vue-util';
import { defineComponent, getCurrentInstance, PropType } from 'vue';
......@@ -10,10 +9,7 @@ export const EditFormControl = defineComponent({
type: EditFormModel,
required: true,
},
context: {
type: IBizContext,
required: true,
},
context: { type: Object as PropType<IContext>, required: true },
params: { type: Object as PropType<IParams>, default: () => ({}) },
},
setup(props) {
......
import { FormController } from '@ibiz-template/controller';
import { IBizContext } from '@ibiz-template/core';
import {
FormDetailModel,
FormGroupPanelModel,
......@@ -58,7 +57,7 @@ export const FormControl = defineComponent({
type: FormModel,
required: true,
},
context: IBizContext,
context: { type: Object as PropType<IContext>, required: true },
controller: {
type: Object as PropType<FormController>,
required: true,
......
import { IBizContext } from '@ibiz-template/core';
import { GridModel } from '@ibiz-template/model';
import { useGridController, useNamespace } from '@ibiz-template/vue-util';
import { defineComponent, getCurrentInstance, h, PropType } from 'vue';
......@@ -13,7 +12,7 @@ import '@ibiz-template/theme/style/components/widgets/grid/grid.scss';
export const GridControl = defineComponent({
props: {
modelData: GridModel,
context: IBizContext,
context: { type: Object as PropType<IContext>, required: true },
params: { type: Object as PropType<IParams>, default: () => ({}) },
/**
* 表格行数据默认激活模式
......
import { IBizContext } from '@ibiz-template/core';
import { ListModel } from '@ibiz-template/model';
import { useListController, useNamespace } from '@ibiz-template/vue-util';
import { defineComponent, getCurrentInstance, PropType } from 'vue';
......@@ -10,10 +9,7 @@ export const ListControl = defineComponent({
type: ListModel,
required: true,
},
context: {
type: IBizContext,
required: true,
},
context: { type: Object as PropType<IContext>, required: true },
params: { type: Object as PropType<IParams>, default: () => ({}) },
},
setup(props) {
......
import { IBizContext } from '@ibiz-template/core';
import { ViewPanelModel } from '@ibiz-template/model';
import { defineComponent, getCurrentInstance, PropType } from 'vue';
import { usePickupViewPanelController } from '@ibiz-template/vue-util';
......@@ -10,10 +9,7 @@ export const PickupViewPanel = defineComponent({
type: ViewPanelModel,
required: true,
},
context: {
type: IBizContext,
required: true,
},
context: { type: Object as PropType<IContext>, required: true },
params: { type: Object as PropType<IParams>, default: () => ({}) },
},
setup(props) {
......
import { IBizContext } from '@ibiz-template/core';
import { SearchFormModel } from '@ibiz-template/model';
import { useNamespace, useSearchFormController } from '@ibiz-template/vue-util';
import { defineComponent, getCurrentInstance, PropType } from 'vue';
......@@ -11,10 +10,7 @@ export const SearchFormControl = defineComponent({
type: SearchFormModel,
required: true,
},
context: {
type: IBizContext,
required: true,
},
context: { type: Object as PropType<IContext>, required: true },
params: { type: Object as PropType<IParams>, default: () => ({}) },
},
setup(props) {
......
import { IBizContext } from '@ibiz-template/core';
import { ViewPanelModel } from '@ibiz-template/model';
import { useViewPanelController } from '@ibiz-template/vue-util';
import { defineComponent, getCurrentInstance, PropType } from 'vue';
......@@ -10,10 +9,7 @@ export const ViewPanel = defineComponent({
type: ViewPanelModel,
required: true,
},
context: {
type: IBizContext,
required: true,
},
context: { type: Object as PropType<IContext>, required: true },
params: { type: Object as PropType<IParams>, default: () => ({}) },
},
setup(props) {
......
......@@ -126,6 +126,8 @@ async function appInit(): Promise<void> {
setRefreshToken();
// 设置权限服务需要的appData里的数据
await ibiz.authority.init();
// TODO临时 多应用适配时需要修改 资源路径计算,资源路径上下文计算工具类
await ibiz.resourcePathUtil.init();
} catch (error) {
const { response } = error as IData;
if (response?.status === 401) {
......
import Router from 'vue-router';
import { Environment } from '@ibiz-template/core';
import { AuthGuard } from '../guard';
import RouterShell from '@/components/router-shell/router-shell';
import appRedirectView from '@/views/app-redirect-view/app-redirect-view';
import todoRedirect from '@/views/todo-redirect/todo-redirect';
const placeholder = Environment.routePlaceholder;
// 参数正则,占位符或者以等号相隔的参数键值对
const paramReg = `[^/]+=[^/]+|${placeholder}`;
// 视图正则,非=/的字符串
const viewReg = `[^=/]+`;
const router = new Router({
routes: [
{
path: '/',
redirect: '/index',
redirect: `/${placeholder}/index/${placeholder}`,
},
{
path: '/login',
......@@ -17,7 +24,7 @@ const router = new Router({
},
{
path: '/404',
name: '404View',
name: '404View1',
component: () => import('../views/404-view/404-view'),
},
{
......@@ -47,7 +54,7 @@ const router = new Router({
component: todoRedirect,
},
{
path: '/:view1([^=/]+)/:params1([^/]+=[^/]+)?',
path: `/:appContext(${paramReg})/:view1(${viewReg})/:params1(${paramReg})`,
props: {
level: 1,
},
......@@ -63,30 +70,61 @@ const router = new Router({
children: [
{
path: '404',
name: '404View',
name: '404View2',
component: () => import('../views/404-view/404-view'),
},
{
path: ':view2([^=/]+)/:params2([^/]+=[^/]+)?',
path: `:view2(${viewReg})/:params2(${paramReg})`,
props: {
level: 2,
},
component: RouterShell,
children: [
{
path: ':view3([^=/]+)/:params3([^/]+=[^/]+)?',
path: '404',
name: '404View3',
component: () => import('../views/404-view/404-view'),
},
{
path: `:view3(${viewReg})/:params3(${paramReg})`,
props: {
level: 3,
},
component: RouterShell,
children: [
{
path: '404',
name: '404View4',
component: () => import('../views/404-view/404-view'),
},
{
path: `:view4(${viewReg})/:params4(${paramReg})`,
props: {
level: 4,
},
component: RouterShell,
},
{
path: '*',
redirect: { name: '404View4' },
},
],
},
{
path: '*',
redirect: { name: '404View3' },
},
],
},
{
path: '*',
redirect: { name: '404View2' },
},
],
},
{
path: '*',
redirect: '/404',
path: '/*',
redirect: { name: '404View1' },
},
],
});
......
import { IBizContext } from '@ibiz-template/core';
import { IPSAppView } from '@ibiz-template/model';
import {
IModal,
......@@ -28,10 +27,10 @@ import {
export class OpenViewUtil implements IOpenViewUtil {
root(
appView: IPSAppView,
context?: IBizContext | undefined,
context: IContext,
params?: IParams | undefined,
): void {
const path = generateRoutePath(
const { path } = generateRoutePath(
appView,
router.currentRoute,
context,
......@@ -47,13 +46,13 @@ export class OpenViewUtil implements IOpenViewUtil {
* @author lxm
* @date 2022-09-12 01:09:06
* @param {IPSAppView} appView
* @param {(IBizContext | undefined)} [context]
* @param {(IContext | undefined)} [context]
* @param {(IParams | undefined)} [params]
* @returns {*} {Promise<IModalData>}
*/
async modal(
appView: IPSAppView,
context?: IBizContext | undefined,
context: IContext,
params?: IParams | undefined,
): Promise<IModalData> {
// 获取视图path
......@@ -81,7 +80,7 @@ export class OpenViewUtil implements IOpenViewUtil {
async popover(
appView: IPSAppView,
event: MouseEvent,
context?: IBizContext | undefined,
context: IContext,
params?: IParams | undefined,
): Promise<IModalData> {
// 获取视图path
......@@ -106,13 +105,13 @@ export class OpenViewUtil implements IOpenViewUtil {
* @author lxm
* @date 2022-09-15 15:09:50
* @param {IPSAppView} appView
* @param {(IBizContext | undefined)} [context]
* @param {(IContext | undefined)} [context]
* @param {(IParams | undefined)} [params]
* @returns {*} {Promise<IModalData>}
*/
async drawer(
appView: IPSAppView,
context?: IBizContext | undefined,
context: IContext,
params?: IParams | undefined,
): Promise<IModalData> {
// 获取视图path
......@@ -140,7 +139,7 @@ export class OpenViewUtil implements IOpenViewUtil {
async custom(
appView: IPSAppView,
context?: IBizContext | undefined,
context: IContext,
params?: IParams | undefined,
): Promise<IModalData> {
ibiz.log.warn('openUserCustom', appView, context, params);
......
import { defineComponent, onMounted } from 'vue';
import { defineComponent, onMounted, onUnmounted } from 'vue';
import { getModelService } from '@ibiz-template/model';
import { IBizContext } from '@ibiz-template/core';
import { toLocalOpenWFRedirectView } from '@ibiz-template/runtime';
export default defineComponent({
setup() {
const context = IBizContext.newTempContext(
{},
IBizContext.newByIContext(ibiz.appData?.context),
);
const context = IBizContext.create(ibiz.appData?.context || {});
onUnmounted(() => {
context.destroy();
});
const { href } = window.location;
......
......@@ -637,61 +637,61 @@
resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz"
integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==
"@ibiz-template/command@^0.0.1-beta.48":
version "0.0.1-beta.48"
resolved "http://npm.zhr.icu/@ibiz-template/command/-/command-0.0.1-beta.48.tgz#23c88eb58509ce887df525f8c9f329dd32364f9b"
integrity sha512-5CZzkYA8n72pYMoNt9L8oGDsCDbngPHrnxSU1t+R4ttvDGNQHFrtDEVKX0iuZwjxillsFw1S3t1cdkbmZfxJCA==
"@ibiz-template/command@^0.0.1-beta.49":
version "0.0.1-beta.49"
resolved "http://npm.zhr.icu/@ibiz-template/command/-/command-0.0.1-beta.49.tgz#7edb52efebd9126a5352b1ed5a8a6312f44a19e7"
integrity sha512-F/GbkndfnvpEAek0fNG/73pZIic2ECb6oAiG8O6NjQGR8K/iNWKWfhlDgBiWtjtbj44Ogerzox3sIh+6eh5CEw==
dependencies:
qx-util "^0.4.4"
"@ibiz-template/controller@^0.0.1-beta.48":
version "0.0.1-beta.48"
resolved "http://npm.zhr.icu/@ibiz-template/controller/-/controller-0.0.1-beta.48.tgz#59939719d9be70f7f0f6636fabd7e9eb370e03ad"
integrity sha512-zkFdc5n4G0SJcO/E+kEhW/ab8bhlTrWIXpJ08Uwj6iwcyRSJ77UaEBpeaHTsPQB72dMYrvF/MEVp9cow0F8jkg==
"@ibiz-template/controller@^0.0.1-beta.49":
version "0.0.1-beta.49"
resolved "http://npm.zhr.icu/@ibiz-template/controller/-/controller-0.0.1-beta.49.tgz#5a90941718f4b639aaa6d0010e1a705ecb1516b1"
integrity sha512-B6NQyip0q7BDsjXb7mAK9QrCO1VeIEP3SpcE5G0J+c9NSUZd3uz13mCaa6V6FQ5tuehC3pRJsvfdOOyvk9aBfA==
dependencies:
async-validator "^4.2.5"
dayjs "^1.11.5"
"@ibiz-template/core@^0.0.1-beta.48":
version "0.0.1-beta.48"
resolved "http://npm.zhr.icu/@ibiz-template/core/-/core-0.0.1-beta.48.tgz#be06fef89ffde5ad1efba29beaf8dadf0fff0724"
integrity sha512-ikSdGnjLcMQh7YttSE0GRAeEqDlE6T9QCbSbSLh0ybb88HEsEtCSCcOckir3g8f0OV8UIlRRN1aE4BOtXXPcpg==
"@ibiz-template/core@^0.0.1-beta.49":
version "0.0.1-beta.49"
resolved "http://npm.zhr.icu/@ibiz-template/core/-/core-0.0.1-beta.49.tgz#335e5c542d0890f471574660af99b64a65d3ba8e"
integrity sha512-9KaK6m7Ozob8dlyGi1OPqv29T9MOXr0xlG68VNBfEHxq7S0Vcmz5dgOUF48YlAwTs4UJq7s2LWj6lzVxPXgd7A==
dependencies:
axios "^1.2.1"
loglevel "^1.8.0"
pluralize "^8.0.0"
qs "^6.11.0"
"@ibiz-template/model@^0.0.1-beta.48":
version "0.0.1-beta.48"
resolved "http://npm.zhr.icu/@ibiz-template/model/-/model-0.0.1-beta.48.tgz#f4cfc0f41b57f18a5c6324c67ba9ad051b2a3234"
integrity sha512-N830Iph4+T2w2jRhR/eBOUOzEAUtinB0u0BXhck+wQnzaLcMmnzJIdD0Lr19wMdXnOHZ++YdGZjXQ5bZBGau+A==
"@ibiz-template/model@^0.0.1-beta.49":
version "0.0.1-beta.49"
resolved "http://npm.zhr.icu/@ibiz-template/model/-/model-0.0.1-beta.49.tgz#ba4a0331d02ae9853bd46b7a3af81286cee09102"
integrity sha512-YhFmomTWplQgbaCBFMH0RT93QiVRhp5ZxApNjvw30I2THbw+/iV+aVSjvEdMHp5GsRIEQBO0Bfft/rlVds9f/g==
dependencies:
"@ibiz/dynamic-model-api" "^2.1.11"
pluralize "^8.0.0"
"@ibiz-template/runtime@^0.0.1-beta.48":
version "0.0.1-beta.48"
resolved "http://npm.zhr.icu/@ibiz-template/runtime/-/runtime-0.0.1-beta.48.tgz#ee7136aad6ff55ab41ef54af7d4140bf16a729c6"
integrity sha512-PKiYNv+QN2/EgY12qttATTFw+5g+O8FcBGEnuNJ4n7Y7+dDqZmjrDpTXzGwyJZef4OjBQN5wEbbnkADl6OnERw==
"@ibiz-template/runtime@^0.0.1-beta.49":
version "0.0.1-beta.49"
resolved "http://npm.zhr.icu/@ibiz-template/runtime/-/runtime-0.0.1-beta.49.tgz#f666be7eaca1a4af3eb3fcbecbd1a292b5d96084"
integrity sha512-BlJ+Z+exyZLGDNMA3cL6WBLAgNdQyliOaFwEr3hx6hk3H13Igbj1ZZB6NGPykwL6hnnytoQ73cf12rChz87Ksw==
dependencies:
"@ibiz-template/command" "^0.0.1-beta.48"
"@ibiz-template/command" "^0.0.1-beta.49"
qs "^6.11.0"
"@ibiz-template/service@^0.0.1-beta.48":
version "0.0.1-beta.48"
resolved "http://npm.zhr.icu/@ibiz-template/service/-/service-0.0.1-beta.48.tgz#577e210a06c3f5ca7933c52de0ae6d1e89281d90"
integrity sha512-0dXmdXwELNtmtkj5txQ4anJbpKkI0d3F1hLGD4F2OpMUfZxb7jWViMg9RzIp/8ZvFICfTn1ToOb7oSZSpqFeQg==
"@ibiz-template/service@^0.0.1-beta.49":
version "0.0.1-beta.49"
resolved "http://npm.zhr.icu/@ibiz-template/service/-/service-0.0.1-beta.49.tgz#ce701333cabea3e456d3e729742a9270324e8ceb"
integrity sha512-0R84rSehJCDMmEH0LgcO+wlrOK9rW52/BzvtuIS+1lEqxqtqzW0x0TyynSkFppTz6Ft7RCyBeIhQj5Ivw72G9g==
"@ibiz-template/theme@^0.0.1-beta.48":
version "0.0.1-beta.48"
resolved "http://npm.zhr.icu/@ibiz-template/theme/-/theme-0.0.1-beta.48.tgz#b652cb8438be3f196650378ab537a5faeb8b0535"
integrity sha512-oFOM1iOLgvkPMs/h8nXXIKdaFe49n1X+uTY/ZJEp82Iup/W7m3XrGN/3hBXsfl+Jw7O6/mbjEbSkphUCKeFq4g==
"@ibiz-template/theme@^0.0.1-beta.49":
version "0.0.1-beta.49"
resolved "http://npm.zhr.icu/@ibiz-template/theme/-/theme-0.0.1-beta.49.tgz#9507b1c439ead32b8bc816833666fca9435bb0c4"
integrity sha512-JuGC7+04Yw7WviGv9dg4wzhhZDfWJGCpHdMIPsviX6k33gLeM56r9M0rtkHimmf4Uj8kJIbR/9bCEKeFBtUSiw==
"@ibiz-template/vue-util@^0.0.1-beta.48":
version "0.0.1-beta.48"
resolved "http://npm.zhr.icu/@ibiz-template/vue-util/-/vue-util-0.0.1-beta.48.tgz#d1055d880c12dbafe3dd7857f7af6a24b5379d0a"
integrity sha512-H4Ak50xCBXuHQVXDTDgS0ij67kXZ4Z0fXzrh2jsB/pJJ5+mA6MrjN2Y7sNwbnvPexCvVs/fqktMo3/hc687cDQ==
"@ibiz-template/vue-util@^0.0.1-beta.49":
version "0.0.1-beta.49"
resolved "http://npm.zhr.icu/@ibiz-template/vue-util/-/vue-util-0.0.1-beta.49.tgz#7edc9edbaa7f5c338c92dffd7fc81a7203ce9c7a"
integrity sha512-9YtXQT22HKGsd/PrXFHVvbPHvlEFYLHVkfrIFPO3Rn0pF6poW3epAvboANP3g3xXmw0dRGIcbM6Sz8Zmp+MSWw==
"@ibiz/dynamic-model-api@^2.1.11":
version "2.1.11"
......
......@@ -1219,16 +1219,16 @@
"mOSFilePath" : "pssysapps/TemplatePublish/psappviewmsggroups/VMGroup2",
"name" : "视图消息组2",
"getPSAppViewMsgGroupDetails" : [ {
"name" : "视图消息",
"name" : "视图消息2",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg2"
"id" : "ViewMsg3"
}
}, {
"name" : "视图消息2",
"name" : "视图消息",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg3"
"id" : "ViewMsg2"
}
} ],
"rTMOSFilePath" : "pssysapps/TemplatePublish/psappviewmsggroups/VMGroup2"
......
......@@ -37,6 +37,46 @@
}
} ],
"getPSDEFormItemVRs" : [ {
"checkMode" : 3,
"name" : "表单项值规则",
"getPSDEFValueRule" : {
"codeName" : "ValueRule5",
"mOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/FIELD4/psdefvaluerules/ValueRule5",
"name" : "field4值规则",
"getPSDEFVRGroupCondition" : {
"condOp" : "AND",
"condType" : "GROUP",
"name" : "默认组",
"getPSDEFVRConditions" : [ {
"condType" : "SYSVALUERULE",
"dEFName" : "FIELD4",
"name" : "[系统值规则]URL",
"getPSSysValueRule" : {
"codeName" : "ValueRule17",
"dynaModelFilePath" : "PSSYSVALUERULES/ValueRule17.json",
"mOSFilePath" : "pssysvaluerules/ValueRule17",
"name" : "URL",
"rTMOSFilePath" : "pssysvaluerules/ValueRule17",
"regExCode" : "[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?",
"ruleInfo" : "内容必须为有效URL格式",
"ruleType" : "REG",
"enableBackend" : true,
"enableFront" : true
},
"ruleInfo" : "内容必须为有效URL格式"
} ],
"ruleInfo" : "内容必须为有效URL格式"
},
"rTMOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/FIELD4/psdefvaluerules/ValueRule5",
"ruleInfo" : "内容必须为有效URL格式",
"checkDefault" : false,
"defaultMode" : false,
"enableBackend" : true,
"enableFront" : true
},
"getPSDEFormItemName" : "field4",
"valueRuleType" : "DEFVALUERULE"
}, {
"checkMode" : 3,
"name" : "表单项值规则",
"getPSDEFValueRule" : {
......@@ -108,6 +148,37 @@
},
"getPSDEFormItemName" : "field5",
"valueRuleType" : "DEFVALUERULE"
}, {
"checkMode" : 3,
"name" : "表单项值规则",
"getPSDEFValueRule" : {
"codeName" : "ValueRule",
"mOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/AMOUNT/psdefvaluerules/ValueRule",
"name" : "amount值规则",
"getPSDEFVRGroupCondition" : {
"condOp" : "AND",
"condType" : "GROUP",
"name" : "默认组",
"getPSDEFVRConditions" : [ {
"condOp" : "EQ",
"condType" : "SIMPLE",
"dEFName" : "AMOUNT",
"name" : "[常规条件] 等于(=) (100)",
"paramType" : "SRCENTITYFIELD",
"paramValue" : "100",
"ruleInfo" : "amount等于100"
} ],
"ruleInfo" : "amount等于100"
},
"rTMOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/AMOUNT/psdefvaluerules/ValueRule",
"ruleInfo" : "amount等于100",
"checkDefault" : false,
"defaultMode" : false,
"enableBackend" : true,
"enableFront" : true
},
"getPSDEFormItemName" : "amount",
"valueRuleType" : "DEFVALUERULE"
}, {
"checkMode" : 3,
"name" : "表单项值规则",
......@@ -320,77 +391,6 @@
},
"getPSDEFormItemName" : "field7",
"valueRuleType" : "DEFVALUERULE"
}, {
"checkMode" : 3,
"name" : "表单项值规则",
"getPSDEFValueRule" : {
"codeName" : "ValueRule",
"mOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/AMOUNT/psdefvaluerules/ValueRule",
"name" : "amount值规则",
"getPSDEFVRGroupCondition" : {
"condOp" : "AND",
"condType" : "GROUP",
"name" : "默认组",
"getPSDEFVRConditions" : [ {
"condOp" : "EQ",
"condType" : "SIMPLE",
"dEFName" : "AMOUNT",
"name" : "[常规条件] 等于(=) (100)",
"paramType" : "SRCENTITYFIELD",
"paramValue" : "100",
"ruleInfo" : "amount等于100"
} ],
"ruleInfo" : "amount等于100"
},
"rTMOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/AMOUNT/psdefvaluerules/ValueRule",
"ruleInfo" : "amount等于100",
"checkDefault" : false,
"defaultMode" : false,
"enableBackend" : true,
"enableFront" : true
},
"getPSDEFormItemName" : "amount",
"valueRuleType" : "DEFVALUERULE"
}, {
"checkMode" : 3,
"name" : "表单项值规则",
"getPSDEFValueRule" : {
"codeName" : "ValueRule5",
"mOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/FIELD4/psdefvaluerules/ValueRule5",
"name" : "field4值规则",
"getPSDEFVRGroupCondition" : {
"condOp" : "AND",
"condType" : "GROUP",
"name" : "默认组",
"getPSDEFVRConditions" : [ {
"condType" : "SYSVALUERULE",
"dEFName" : "FIELD4",
"name" : "[系统值规则]URL",
"getPSSysValueRule" : {
"codeName" : "ValueRule17",
"dynaModelFilePath" : "PSSYSVALUERULES/ValueRule17.json",
"mOSFilePath" : "pssysvaluerules/ValueRule17",
"name" : "URL",
"rTMOSFilePath" : "pssysvaluerules/ValueRule17",
"regExCode" : "[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?",
"ruleInfo" : "内容必须为有效URL格式",
"ruleType" : "REG",
"enableBackend" : true,
"enableFront" : true
},
"ruleInfo" : "内容必须为有效URL格式"
} ],
"ruleInfo" : "内容必须为有效URL格式"
},
"rTMOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/FIELD4/psdefvaluerules/ValueRule5",
"ruleInfo" : "内容必须为有效URL格式",
"checkDefault" : false,
"defaultMode" : false,
"enableBackend" : true,
"enableFront" : true
},
"getPSDEFormItemName" : "field4",
"valueRuleType" : "DEFVALUERULE"
} ],
"getPSDEFormItems" : [ {
"id" : "srfupdatedate",
......
......@@ -166,6 +166,46 @@
"id" : "FORM"
},
"getPSDEFormItemVRs" : [ {
"checkMode" : 3,
"name" : "表单项值规则",
"getPSDEFValueRule" : {
"codeName" : "ValueRule5",
"mOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/FIELD4/psdefvaluerules/ValueRule5",
"name" : "field4值规则",
"getPSDEFVRGroupCondition" : {
"condOp" : "AND",
"condType" : "GROUP",
"name" : "默认组",
"getPSDEFVRConditions" : [ {
"condType" : "SYSVALUERULE",
"dEFName" : "FIELD4",
"name" : "[系统值规则]URL",
"getPSSysValueRule" : {
"codeName" : "ValueRule17",
"dynaModelFilePath" : "PSSYSVALUERULES/ValueRule17.json",
"mOSFilePath" : "pssysvaluerules/ValueRule17",
"name" : "URL",
"rTMOSFilePath" : "pssysvaluerules/ValueRule17",
"regExCode" : "[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?",
"ruleInfo" : "内容必须为有效URL格式",
"ruleType" : "REG",
"enableBackend" : true,
"enableFront" : true
},
"ruleInfo" : "内容必须为有效URL格式"
} ],
"ruleInfo" : "内容必须为有效URL格式"
},
"rTMOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/FIELD4/psdefvaluerules/ValueRule5",
"ruleInfo" : "内容必须为有效URL格式",
"checkDefault" : false,
"defaultMode" : false,
"enableBackend" : true,
"enableFront" : true
},
"getPSDEFormItemName" : "field4",
"valueRuleType" : "DEFVALUERULE"
}, {
"checkMode" : 3,
"name" : "表单项值规则",
"getPSDEFValueRule" : {
......@@ -237,6 +277,37 @@
},
"getPSDEFormItemName" : "field5",
"valueRuleType" : "DEFVALUERULE"
}, {
"checkMode" : 3,
"name" : "表单项值规则",
"getPSDEFValueRule" : {
"codeName" : "ValueRule",
"mOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/AMOUNT/psdefvaluerules/ValueRule",
"name" : "amount值规则",
"getPSDEFVRGroupCondition" : {
"condOp" : "AND",
"condType" : "GROUP",
"name" : "默认组",
"getPSDEFVRConditions" : [ {
"condOp" : "EQ",
"condType" : "SIMPLE",
"dEFName" : "AMOUNT",
"name" : "[常规条件] 等于(=) (100)",
"paramType" : "SRCENTITYFIELD",
"paramValue" : "100",
"ruleInfo" : "amount等于100"
} ],
"ruleInfo" : "amount等于100"
},
"rTMOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/AMOUNT/psdefvaluerules/ValueRule",
"ruleInfo" : "amount等于100",
"checkDefault" : false,
"defaultMode" : false,
"enableBackend" : true,
"enableFront" : true
},
"getPSDEFormItemName" : "amount",
"valueRuleType" : "DEFVALUERULE"
}, {
"checkMode" : 3,
"name" : "表单项值规则",
......@@ -449,77 +520,6 @@
},
"getPSDEFormItemName" : "field7",
"valueRuleType" : "DEFVALUERULE"
}, {
"checkMode" : 3,
"name" : "表单项值规则",
"getPSDEFValueRule" : {
"codeName" : "ValueRule",
"mOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/AMOUNT/psdefvaluerules/ValueRule",
"name" : "amount值规则",
"getPSDEFVRGroupCondition" : {
"condOp" : "AND",
"condType" : "GROUP",
"name" : "默认组",
"getPSDEFVRConditions" : [ {
"condOp" : "EQ",
"condType" : "SIMPLE",
"dEFName" : "AMOUNT",
"name" : "[常规条件] 等于(=) (100)",
"paramType" : "SRCENTITYFIELD",
"paramValue" : "100",
"ruleInfo" : "amount等于100"
} ],
"ruleInfo" : "amount等于100"
},
"rTMOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/AMOUNT/psdefvaluerules/ValueRule",
"ruleInfo" : "amount等于100",
"checkDefault" : false,
"defaultMode" : false,
"enableBackend" : true,
"enableFront" : true
},
"getPSDEFormItemName" : "amount",
"valueRuleType" : "DEFVALUERULE"
}, {
"checkMode" : 3,
"name" : "表单项值规则",
"getPSDEFValueRule" : {
"codeName" : "ValueRule5",
"mOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/FIELD4/psdefvaluerules/ValueRule5",
"name" : "field4值规则",
"getPSDEFVRGroupCondition" : {
"condOp" : "AND",
"condType" : "GROUP",
"name" : "默认组",
"getPSDEFVRConditions" : [ {
"condType" : "SYSVALUERULE",
"dEFName" : "FIELD4",
"name" : "[系统值规则]URL",
"getPSSysValueRule" : {
"codeName" : "ValueRule17",
"dynaModelFilePath" : "PSSYSVALUERULES/ValueRule17.json",
"mOSFilePath" : "pssysvaluerules/ValueRule17",
"name" : "URL",
"rTMOSFilePath" : "pssysvaluerules/ValueRule17",
"regExCode" : "[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?",
"ruleInfo" : "内容必须为有效URL格式",
"ruleType" : "REG",
"enableBackend" : true,
"enableFront" : true
},
"ruleInfo" : "内容必须为有效URL格式"
} ],
"ruleInfo" : "内容必须为有效URL格式"
},
"rTMOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/FIELD4/psdefvaluerules/ValueRule5",
"ruleInfo" : "内容必须为有效URL格式",
"checkDefault" : false,
"defaultMode" : false,
"enableBackend" : true,
"enableFront" : true
},
"getPSDEFormItemName" : "field4",
"valueRuleType" : "DEFVALUERULE"
} ],
"getPSDEFormItems" : [ {
"id" : "srfupdatedate",
......
......@@ -2400,16 +2400,16 @@
"mOSFilePath" : "pssysapps/Web/psappviewmsggroups/VMGroup2",
"name" : "视图消息组2",
"getPSAppViewMsgGroupDetails" : [ {
"name" : "视图消息",
"name" : "视图消息2",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg2"
"id" : "ViewMsg3"
}
}, {
"name" : "视图消息2",
"name" : "视图消息",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg3"
"id" : "ViewMsg2"
}
} ],
"rTMOSFilePath" : "pssysapps/Web/psappviewmsggroups/VMGroup2"
......@@ -18007,6 +18007,46 @@
"id" : "FORM"
},
"getPSDEFormItemVRs" : [ {
"checkMode" : 3,
"name" : "表单项值规则",
"getPSDEFValueRule" : {
"codeName" : "ValueRule5",
"mOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/FIELD4/psdefvaluerules/ValueRule5",
"name" : "field4值规则",
"getPSDEFVRGroupCondition" : {
"condOp" : "AND",
"condType" : "GROUP",
"name" : "默认组",
"getPSDEFVRConditions" : [ {
"condType" : "SYSVALUERULE",
"dEFName" : "FIELD4",
"name" : "[系统值规则]URL",
"getPSSysValueRule" : {
"codeName" : "ValueRule17",
"dynaModelFilePath" : "PSSYSVALUERULES/ValueRule17.json",
"mOSFilePath" : "pssysvaluerules/ValueRule17",
"name" : "URL",
"rTMOSFilePath" : "pssysvaluerules/ValueRule17",
"regExCode" : "[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?",
"ruleInfo" : "内容必须为有效URL格式",
"ruleType" : "REG",
"enableBackend" : true,
"enableFront" : true
},
"ruleInfo" : "内容必须为有效URL格式"
} ],
"ruleInfo" : "内容必须为有效URL格式"
},
"rTMOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/FIELD4/psdefvaluerules/ValueRule5",
"ruleInfo" : "内容必须为有效URL格式",
"checkDefault" : false,
"defaultMode" : false,
"enableBackend" : true,
"enableFront" : true
},
"getPSDEFormItemName" : "field4",
"valueRuleType" : "DEFVALUERULE"
}, {
"checkMode" : 3,
"name" : "表单项值规则",
"getPSDEFValueRule" : {
......@@ -18078,6 +18118,37 @@
},
"getPSDEFormItemName" : "field5",
"valueRuleType" : "DEFVALUERULE"
}, {
"checkMode" : 3,
"name" : "表单项值规则",
"getPSDEFValueRule" : {
"codeName" : "ValueRule",
"mOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/AMOUNT/psdefvaluerules/ValueRule",
"name" : "amount值规则",
"getPSDEFVRGroupCondition" : {
"condOp" : "AND",
"condType" : "GROUP",
"name" : "默认组",
"getPSDEFVRConditions" : [ {
"condOp" : "EQ",
"condType" : "SIMPLE",
"dEFName" : "AMOUNT",
"name" : "[常规条件] 等于(=) (100)",
"paramType" : "SRCENTITYFIELD",
"paramValue" : "100",
"ruleInfo" : "amount等于100"
} ],
"ruleInfo" : "amount等于100"
},
"rTMOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/AMOUNT/psdefvaluerules/ValueRule",
"ruleInfo" : "amount等于100",
"checkDefault" : false,
"defaultMode" : false,
"enableBackend" : true,
"enableFront" : true
},
"getPSDEFormItemName" : "amount",
"valueRuleType" : "DEFVALUERULE"
}, {
"checkMode" : 3,
"name" : "表单项值规则",
......@@ -18290,77 +18361,6 @@
},
"getPSDEFormItemName" : "field7",
"valueRuleType" : "DEFVALUERULE"
}, {
"checkMode" : 3,
"name" : "表单项值规则",
"getPSDEFValueRule" : {
"codeName" : "ValueRule",
"mOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/AMOUNT/psdefvaluerules/ValueRule",
"name" : "amount值规则",
"getPSDEFVRGroupCondition" : {
"condOp" : "AND",
"condType" : "GROUP",
"name" : "默认组",
"getPSDEFVRConditions" : [ {
"condOp" : "EQ",
"condType" : "SIMPLE",
"dEFName" : "AMOUNT",
"name" : "[常规条件] 等于(=) (100)",
"paramType" : "SRCENTITYFIELD",
"paramValue" : "100",
"ruleInfo" : "amount等于100"
} ],
"ruleInfo" : "amount等于100"
},
"rTMOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/AMOUNT/psdefvaluerules/ValueRule",
"ruleInfo" : "amount等于100",
"checkDefault" : false,
"defaultMode" : false,
"enableBackend" : true,
"enableFront" : true
},
"getPSDEFormItemName" : "amount",
"valueRuleType" : "DEFVALUERULE"
}, {
"checkMode" : 3,
"name" : "表单项值规则",
"getPSDEFValueRule" : {
"codeName" : "ValueRule5",
"mOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/FIELD4/psdefvaluerules/ValueRule5",
"name" : "field4值规则",
"getPSDEFVRGroupCondition" : {
"condOp" : "AND",
"condType" : "GROUP",
"name" : "默认组",
"getPSDEFVRConditions" : [ {
"condType" : "SYSVALUERULE",
"dEFName" : "FIELD4",
"name" : "[系统值规则]URL",
"getPSSysValueRule" : {
"codeName" : "ValueRule17",
"dynaModelFilePath" : "PSSYSVALUERULES/ValueRule17.json",
"mOSFilePath" : "pssysvaluerules/ValueRule17",
"name" : "URL",
"rTMOSFilePath" : "pssysvaluerules/ValueRule17",
"regExCode" : "[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?",
"ruleInfo" : "内容必须为有效URL格式",
"ruleType" : "REG",
"enableBackend" : true,
"enableFront" : true
},
"ruleInfo" : "内容必须为有效URL格式"
} ],
"ruleInfo" : "内容必须为有效URL格式"
},
"rTMOSFilePath" : "psmodules/Test/psdataentities/TEST/psdefields/FIELD4/psdefvaluerules/ValueRule5",
"ruleInfo" : "内容必须为有效URL格式",
"checkDefault" : false,
"defaultMode" : false,
"enableBackend" : true,
"enableFront" : true
},
"getPSDEFormItemName" : "field4",
"valueRuleType" : "DEFVALUERULE"
} ],
"getPSDEFormItems" : [ {
"id" : "srfupdatedate",
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册