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

ibizdev提交

上级 c30ca1db
......@@ -131,6 +131,14 @@ export default class AppFormGroup extends Vue {
*/
@Prop() public titleStyle?:string;
/**
* 分组图标
*
* @type {string}
* @memberof AppFormGroup
*/
@Prop() public iconInfo?:any;
/**
* 是否显示标题
*
......
......@@ -9,7 +9,7 @@ import { Vue, Component, Prop, Watch, Model } from 'vue-property-decorator';
import CodeListService from "@service/app/codelist-service";
@Component({})
export default class DropDownList extends Vue {
export default class AppSpan extends Vue {
/**
* 当前值
......@@ -46,21 +46,21 @@ export default class DropDownList extends Vue {
/**
* 获取或模式
* @type {boolean}
* @memberof SelectPicker
* @memberof AppSpan
*/
@Prop({default:"STR"}) public renderMode?: string;
/**
* 文本分隔符
* @type {boolean}
* @memberof SelectPicker
* @memberof AppSpan
*/
@Prop({default:"、"}) public textSeparator?: string;
/**
* 值分隔符
* @type {boolean}
* @memberof SelectPicker
* @memberof AppSpan
*/
@Prop({default:";"}) public valueSeparator?: string;
......
<template>
<div class="view-container wfgroup-edit-view">
<div class="view-container deeditview wfgroup-edit-view">
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="wfgroupeditview"></app-studioaction>
<card class='view-card ' :disHover="true" :bordered="false">
......@@ -1154,6 +1154,8 @@ export default class WFGroupEditViewBase extends Vue {
if (_this.viewdata) {
_this.$emit('viewdataschange', [{ ..._data }]);
_this.$emit('close');
}else if (this.$tabPageExp) {
this.$tabPageExp.onClose(this.$route.fullPath);
}
});
}
......
<template>
<div class='view-container wfgroup-grid-view'>
<div class='view-container degridview wfgroup-grid-view'>
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="wfgroupgridview"></app-studioaction>
<card class='view-card' :dis-hover="true" :bordered="false">
<p slot='title'>
......
<template>
<div class='view-container wfgroup-pickup-grid-view'>
<div class='view-container depickupgridview wfgroup-pickup-grid-view'>
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="wfgrouppickupgridview"></app-studioaction>
<card class='view-card view-no-caption' :dis-hover="true" :bordered="false">
<div class='content-container pickup-grid-view'>
......
<template>
<div class="view-container wfgroup-pickup-view">
<div class="view-container depickupview wfgroup-pickup-view">
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="wfgrouppickupview"></app-studioaction>
<card class='view-card' :dis-hover="true" :padding="0" :bordered="false">
<div class="content-container pickup-view">
......
<template>
<div class="view-container wfmember-edit-view">
<div class="view-container deeditview wfmember-edit-view">
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="wfmembereditview"></app-studioaction>
<card class='view-card ' :disHover="true" :bordered="false">
......@@ -1154,6 +1154,8 @@ export default class WFMemberEditViewBase extends Vue {
if (_this.viewdata) {
_this.$emit('viewdataschange', [{ ..._data }]);
_this.$emit('close');
}else if (this.$tabPageExp) {
this.$tabPageExp.onClose(this.$route.fullPath);
}
});
}
......
<template>
<div class='view-container wfmember-grid-view'>
<div class='view-container degridview wfmember-grid-view'>
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="wfmembergridview"></app-studioaction>
<card class='view-card' :dis-hover="true" :bordered="false">
<p slot='title'>
......
<template>
<div class="view-container wfprocess-definition-edit-view">
<div class="view-container deeditview wfprocess-definition-edit-view">
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="wfprocessdefinitioneditview"></app-studioaction>
<card class='view-card ' :disHover="true" :bordered="false">
......@@ -1154,6 +1154,8 @@ export default class WFProcessDefinitionEditViewBase extends Vue {
if (_this.viewdata) {
_this.$emit('viewdataschange', [{ ..._data }]);
_this.$emit('close');
}else if (this.$tabPageExp) {
this.$tabPageExp.onClose(this.$route.fullPath);
}
});
}
......
<template>
<div class='view-container wfprocess-definition-grid-view'>
<div class='view-container degridview wfprocess-definition-grid-view'>
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="wfprocessdefinitiongridview"></app-studioaction>
<card class='view-card' :dis-hover="true" :bordered="false">
<p slot='title'>
......
<template>
<div class="view-container wfuser-edit-view">
<div class="view-container deeditview wfuser-edit-view">
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="wfusereditview"></app-studioaction>
<card class='view-card ' :disHover="true" :bordered="false">
......@@ -1154,6 +1154,8 @@ export default class WFUserEditViewBase extends Vue {
if (_this.viewdata) {
_this.$emit('viewdataschange', [{ ..._data }]);
_this.$emit('close');
}else if (this.$tabPageExp) {
this.$tabPageExp.onClose(this.$route.fullPath);
}
});
}
......
<template>
<div class='view-container wfuser-grid-view'>
<div class='view-container degridview wfuser-grid-view'>
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="wfusergridview"></app-studioaction>
<card class='view-card' :dis-hover="true" :bordered="false">
<p slot='title'>
......
<template>
<div class='view-container wfuser-pickup-grid-view'>
<div class='view-container depickupgridview wfuser-pickup-grid-view'>
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="wfuserpickupgridview"></app-studioaction>
<card class='view-card view-no-caption' :dis-hover="true" :bordered="false">
<div class='content-container pickup-grid-view'>
......
<template>
<div class="view-container wfuser-pickup-view">
<div class="view-container depickupview wfuser-pickup-view">
<app-studioaction :viewTitle="$t(model.srfTitle)" viewName="wfuserpickupview"></app-studioaction>
<card class='view-card' :dis-hover="true" :padding="0" :bordered="false">
<div class="content-container pickup-view">
......
......@@ -208,4 +208,52 @@
}
/*** END:多数据视图属性布局 ***/
// 看板视图,卡片模式
.view-container.appportalview,.view-container.deportalview,.view-container.deportalview9{
>.view-card>.ivu-card-body>.content-container{
background: #efefef;
}
.dashboard{
padding: 8px;
}
.portlet-container{
background: #efefef;
}
.portlet-container::after{
content: "";
clear: both;
}
.portlet{
margin: 8px;
height: calc(100% - 16px);
width: calc(100% - 16px);
background: #fff;
border-radius: 4px;
box-shadow: 0 1px 1px rgba(0,0,0,.05), 0 2px 6px 0 rgba(0,0,0,.045);
border: 1px solid transparent;
>.portlet-with-title{
margin-bottom: 12px;
height: calc(100% - 64px);
}
>.portlet-without-title{
margin-top: 12px;
margin-bottom: 12px;
height: calc(100% - 24px);
}
}
}
// 看板视图,无缝模式
.view-container.appportalview.seamless-mode,.view-container.deportalview.seamless-mode,.view-container.deportalview9.seamless-mode{
>.view-card>.ivu-card-body>.content-container{
background: transparent;
}
.portlet-container{
background: transparent;
}
.portlet{
background: transparent;
}
}
@import './user.less';
\ No newline at end of file
......@@ -4,8 +4,7 @@
<row >
<i-col v-show="detailsModel.group1.visible" :style="{}" :lg="{ span: 24, offset: 0 }">
<app-form-group layoutType="TABLE_24COL" titleStyle="" class='' uiActionGroup="detailsModel.group1.uiActionGroup" @groupuiactionclick="groupUIActionClick($event)" :caption="$t('entities.wfgroup.main_form.details.group1')" :isShowCaption="true" uiStyle="DEFAULT" :titleBarCloseMode="0" :isInfoGroupMode="false">
<app-form-group layoutType="TABLE_24COL" titleStyle="" class='' uiActionGroup="detailsModel.group1.uiActionGroup" @groupuiactionclick="groupUIActionClick($event)" :caption="$t('entities.wfgroup.main_form.details.group1')" :isShowCaption="true" uiStyle="DEFAULT" :titleBarCloseMode="0" :isInfoGroupMode="false" >
<row>
<i-col v-show="detailsModel.groupname.visible" :style="{}" :lg="{ span: 24, offset: 0 }">
<app-form-item name='groupname' :itemRules="this.rules.groupname" class='' :caption="$t('entities.wfgroup.main_form.details.groupname')" uiStyle="DEFAULT" :labelWidth="130" :isShowCaption="true" :error="detailsModel.groupname.error" :isEmptyCaption="false" labelPos="LEFT">
......@@ -1029,8 +1028,8 @@ export default class MainBase extends Vue implements ControlInterface {
});
}
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
return;
}
if (!response || !response.status || !response.data) {
......@@ -1056,8 +1055,8 @@ export default class MainBase extends Vue implements ControlInterface {
let post: Promise<any> = this.service.loadDraft(this.loaddraftAction,JSON.parse(JSON.stringify(this.context)),{viewparams:viewparamResult}, this.showBusyIndicator);
post.then((response: any) => {
if (!response.status || response.status !== 200) {
if (response.errorMessage) {
this.$Notice.error({ title: '错误', desc: response.errorMessage });
if (response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
}
return;
}
......@@ -1083,8 +1082,8 @@ export default class MainBase extends Vue implements ControlInterface {
}
});
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
return;
}
if (!response || !response.status || !response.data) {
......@@ -1117,8 +1116,8 @@ export default class MainBase extends Vue implements ControlInterface {
const post: Promise<any> = this.service.add(action, JSON.parse(JSON.stringify(this.context)),arg, this.showBusyIndicator);
post.then((response: any) => {
if (!response.status || response.status !== 200) {
if (response.errorMessage) {
this.$Notice.error({ title: '错误', desc: response.errorMessage });
if (response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
}
return;
}
......@@ -1131,8 +1130,8 @@ export default class MainBase extends Vue implements ControlInterface {
this.formState.next({ type: 'save', data: data });
});
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
return;
}
if (!response || !response.status || !response.data) {
......@@ -1181,8 +1180,8 @@ export default class MainBase extends Vue implements ControlInterface {
const post: Promise<any> = Object.is(data.srfuf, '1')?this.service.update(action, JSON.parse(JSON.stringify(this.context)),arg, this.showBusyIndicator):this.service.add(action,JSON.parse(JSON.stringify(this.context)),arg, this.showBusyIndicator);
post.then((response: any) => {
if (!response.status || response.status !== 200) {
if (response.errorMessage) {
this.$Notice.error({ title: '错误', desc: response.errorMessage });
if (response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
}
return;
}
......@@ -1199,8 +1198,8 @@ export default class MainBase extends Vue implements ControlInterface {
}
resolve(response);
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
reject(response);
return;
}
......@@ -1269,14 +1268,16 @@ export default class MainBase extends Vue implements ControlInterface {
const result: Promise<any> = this.service.wfstart(_this.WFStartAction, JSON.parse(JSON.stringify(this.context)),arg, this.showBusyIndicator,localdata);
result.then((response: any) => {
if (!response || response.status !== 200) {
this.$Notice.error({ title: '', desc: '工作流启动失败, ' + response.info });
if(response.data){
this.$Notice.error({ title: '', desc: '工作流启动失败, ' + response.data.message });
}
return;
}
this.$Notice.info({ title: '', desc: '工作流启动成功' });
resolve(response);
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
reject(response);
return;
}
......@@ -1288,8 +1289,8 @@ export default class MainBase extends Vue implements ControlInterface {
reject(response);
});
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
reject(response);
return;
}
......@@ -1328,14 +1329,16 @@ export default class MainBase extends Vue implements ControlInterface {
const result: Promise<any> = this.service.wfsubmit(_this.WFSubmitAction, JSON.parse(JSON.stringify(this.context)),arg, this.showBusyIndicator,localdata);
result.then((response: any) => {
if (!response || response.status !== 200) {
this.$Notice.error({ title: '', desc: '工作流提交失败, ' + response.info });
if(response.data){
this.$Notice.error({ title: '', desc: '工作流提交失败, ' + response.data.message });
}
return;
}
this.$Notice.info({ title: '', desc: '工作流提交成功' });
resolve(response);
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
reject(response);
return;
}
......@@ -1347,8 +1350,8 @@ export default class MainBase extends Vue implements ControlInterface {
reject(response);
});
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
reject(response);
return;
}
......@@ -1400,8 +1403,8 @@ export default class MainBase extends Vue implements ControlInterface {
this.formState.next({ type: 'updateformitem', ufimode: arg.srfufimode, data: _data });
});
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
return;
}
if (!response || !response.status || !response.data) {
......
......@@ -668,8 +668,9 @@ export default class MainBase extends Vue implements ControlInterface {
_datas.forEach((data: any) => {
keys.push(data.srfkey);
});
let _removeAction = keys.length > 1 ? 'removeBatch' : this.removeAction ;
const context:any = JSON.parse(JSON.stringify(this.context));
const post: Promise<any> = this.service.delete(this.removeAction,Object.assign(context,{ wfgroup: keys.join(';') }),Object.assign({ id: keys.join(';') },{viewparams:this.viewparams}), this.showBusyIndicator);
const post: Promise<any> = this.service.delete(_removeAction,Object.assign(context,{ wfgroup: keys.join(';') }),Object.assign({ wfgroup: keys.join(';') },{viewparams:this.viewparams}), this.showBusyIndicator);
return new Promise((resolve: any, reject: any) => {
post.then((response: any) => {
if (!response || response.status !== 200) {
......
......@@ -4,8 +4,7 @@
<row >
<i-col v-show="detailsModel.group1.visible" :style="{}" :lg="{ span: 24, offset: 0 }">
<app-form-group layoutType="TABLE_24COL" titleStyle="" class='' uiActionGroup="detailsModel.group1.uiActionGroup" @groupuiactionclick="groupUIActionClick($event)" :caption="$t('entities.wfmember.main_form.details.group1')" :isShowCaption="true" uiStyle="DEFAULT" :titleBarCloseMode="0" :isInfoGroupMode="false">
<app-form-group layoutType="TABLE_24COL" titleStyle="" class='' uiActionGroup="detailsModel.group1.uiActionGroup" @groupuiactionclick="groupUIActionClick($event)" :caption="$t('entities.wfmember.main_form.details.group1')" :isShowCaption="true" uiStyle="DEFAULT" :titleBarCloseMode="0" :isInfoGroupMode="false" >
<row>
<i-col v-show="detailsModel.personname.visible" :style="{}" :lg="{ span: 24, offset: 0 }">
<app-form-item name='personname' :itemRules="this.rules.personname" class='' :caption="$t('entities.wfmember.main_form.details.personname')" uiStyle="DEFAULT" :labelWidth="130" :isShowCaption="true" :error="detailsModel.personname.error" :isEmptyCaption="false" labelPos="LEFT">
......@@ -1038,8 +1037,8 @@ export default class MainBase extends Vue implements ControlInterface {
});
}
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
return;
}
if (!response || !response.status || !response.data) {
......@@ -1065,8 +1064,8 @@ export default class MainBase extends Vue implements ControlInterface {
let post: Promise<any> = this.service.loadDraft(this.loaddraftAction,JSON.parse(JSON.stringify(this.context)),{viewparams:viewparamResult}, this.showBusyIndicator);
post.then((response: any) => {
if (!response.status || response.status !== 200) {
if (response.errorMessage) {
this.$Notice.error({ title: '错误', desc: response.errorMessage });
if (response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
}
return;
}
......@@ -1092,8 +1091,8 @@ export default class MainBase extends Vue implements ControlInterface {
}
});
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
return;
}
if (!response || !response.status || !response.data) {
......@@ -1126,8 +1125,8 @@ export default class MainBase extends Vue implements ControlInterface {
const post: Promise<any> = this.service.add(action, JSON.parse(JSON.stringify(this.context)),arg, this.showBusyIndicator);
post.then((response: any) => {
if (!response.status || response.status !== 200) {
if (response.errorMessage) {
this.$Notice.error({ title: '错误', desc: response.errorMessage });
if (response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
}
return;
}
......@@ -1140,8 +1139,8 @@ export default class MainBase extends Vue implements ControlInterface {
this.formState.next({ type: 'save', data: data });
});
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
return;
}
if (!response || !response.status || !response.data) {
......@@ -1190,8 +1189,8 @@ export default class MainBase extends Vue implements ControlInterface {
const post: Promise<any> = Object.is(data.srfuf, '1')?this.service.update(action, JSON.parse(JSON.stringify(this.context)),arg, this.showBusyIndicator):this.service.add(action,JSON.parse(JSON.stringify(this.context)),arg, this.showBusyIndicator);
post.then((response: any) => {
if (!response.status || response.status !== 200) {
if (response.errorMessage) {
this.$Notice.error({ title: '错误', desc: response.errorMessage });
if (response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
}
return;
}
......@@ -1208,8 +1207,8 @@ export default class MainBase extends Vue implements ControlInterface {
}
resolve(response);
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
reject(response);
return;
}
......@@ -1278,14 +1277,16 @@ export default class MainBase extends Vue implements ControlInterface {
const result: Promise<any> = this.service.wfstart(_this.WFStartAction, JSON.parse(JSON.stringify(this.context)),arg, this.showBusyIndicator,localdata);
result.then((response: any) => {
if (!response || response.status !== 200) {
this.$Notice.error({ title: '', desc: '工作流启动失败, ' + response.info });
if(response.data){
this.$Notice.error({ title: '', desc: '工作流启动失败, ' + response.data.message });
}
return;
}
this.$Notice.info({ title: '', desc: '工作流启动成功' });
resolve(response);
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
reject(response);
return;
}
......@@ -1297,8 +1298,8 @@ export default class MainBase extends Vue implements ControlInterface {
reject(response);
});
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
reject(response);
return;
}
......@@ -1337,14 +1338,16 @@ export default class MainBase extends Vue implements ControlInterface {
const result: Promise<any> = this.service.wfsubmit(_this.WFSubmitAction, JSON.parse(JSON.stringify(this.context)),arg, this.showBusyIndicator,localdata);
result.then((response: any) => {
if (!response || response.status !== 200) {
this.$Notice.error({ title: '', desc: '工作流提交失败, ' + response.info });
if(response.data){
this.$Notice.error({ title: '', desc: '工作流提交失败, ' + response.data.message });
}
return;
}
this.$Notice.info({ title: '', desc: '工作流提交成功' });
resolve(response);
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
reject(response);
return;
}
......@@ -1356,8 +1359,8 @@ export default class MainBase extends Vue implements ControlInterface {
reject(response);
});
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
reject(response);
return;
}
......@@ -1409,8 +1412,8 @@ export default class MainBase extends Vue implements ControlInterface {
this.formState.next({ type: 'updateformitem', ufimode: arg.srfufimode, data: _data });
});
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
return;
}
if (!response || !response.status || !response.data) {
......
......@@ -654,8 +654,9 @@ export default class MainBase extends Vue implements ControlInterface {
_datas.forEach((data: any) => {
keys.push(data.srfkey);
});
let _removeAction = keys.length > 1 ? 'removeBatch' : this.removeAction ;
const context:any = JSON.parse(JSON.stringify(this.context));
const post: Promise<any> = this.service.delete(this.removeAction,Object.assign(context,{ wfmember: keys.join(';') }),Object.assign({ memberid: keys.join(';') },{viewparams:this.viewparams}), this.showBusyIndicator);
const post: Promise<any> = this.service.delete(_removeAction,Object.assign(context,{ wfmember: keys.join(';') }),Object.assign({ wfmember: keys.join(';') },{viewparams:this.viewparams}), this.showBusyIndicator);
return new Promise((resolve: any, reject: any) => {
post.then((response: any) => {
if (!response || response.status !== 200) {
......
......@@ -4,8 +4,7 @@
<row >
<i-col v-show="detailsModel.group1.visible" :style="{}" :lg="{ span: 24, offset: 0 }">
<app-form-group layoutType="TABLE_24COL" titleStyle="" class='' uiActionGroup="detailsModel.group1.uiActionGroup" @groupuiactionclick="groupUIActionClick($event)" :caption="$t('entities.wfprocessdefinition.main_form.details.group1')" :isShowCaption="true" uiStyle="DEFAULT" :titleBarCloseMode="0" :isInfoGroupMode="false">
<app-form-group layoutType="TABLE_24COL" titleStyle="" class='' uiActionGroup="detailsModel.group1.uiActionGroup" @groupuiactionclick="groupUIActionClick($event)" :caption="$t('entities.wfprocessdefinition.main_form.details.group1')" :isShowCaption="true" uiStyle="DEFAULT" :titleBarCloseMode="0" :isInfoGroupMode="false" >
<row>
<i-col v-show="detailsModel.deploykey.visible" :style="{}" :lg="{ span: 24, offset: 0 }">
<app-form-item name='deploykey' :itemRules="this.rules.deploykey" class='' :caption="$t('entities.wfprocessdefinition.main_form.details.deploykey')" uiStyle="DEFAULT" :labelWidth="130" :isShowCaption="true" :error="detailsModel.deploykey.error" :isEmptyCaption="false" labelPos="LEFT">
......@@ -1143,8 +1142,8 @@ export default class MainBase extends Vue implements ControlInterface {
});
}
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
return;
}
if (!response || !response.status || !response.data) {
......@@ -1170,8 +1169,8 @@ export default class MainBase extends Vue implements ControlInterface {
let post: Promise<any> = this.service.loadDraft(this.loaddraftAction,JSON.parse(JSON.stringify(this.context)),{viewparams:viewparamResult}, this.showBusyIndicator);
post.then((response: any) => {
if (!response.status || response.status !== 200) {
if (response.errorMessage) {
this.$Notice.error({ title: '错误', desc: response.errorMessage });
if (response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
}
return;
}
......@@ -1197,8 +1196,8 @@ export default class MainBase extends Vue implements ControlInterface {
}
});
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
return;
}
if (!response || !response.status || !response.data) {
......@@ -1231,8 +1230,8 @@ export default class MainBase extends Vue implements ControlInterface {
const post: Promise<any> = this.service.add(action, JSON.parse(JSON.stringify(this.context)),arg, this.showBusyIndicator);
post.then((response: any) => {
if (!response.status || response.status !== 200) {
if (response.errorMessage) {
this.$Notice.error({ title: '错误', desc: response.errorMessage });
if (response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
}
return;
}
......@@ -1245,8 +1244,8 @@ export default class MainBase extends Vue implements ControlInterface {
this.formState.next({ type: 'save', data: data });
});
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
return;
}
if (!response || !response.status || !response.data) {
......@@ -1295,8 +1294,8 @@ export default class MainBase extends Vue implements ControlInterface {
const post: Promise<any> = Object.is(data.srfuf, '1')?this.service.update(action, JSON.parse(JSON.stringify(this.context)),arg, this.showBusyIndicator):this.service.add(action,JSON.parse(JSON.stringify(this.context)),arg, this.showBusyIndicator);
post.then((response: any) => {
if (!response.status || response.status !== 200) {
if (response.errorMessage) {
this.$Notice.error({ title: '错误', desc: response.errorMessage });
if (response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
}
return;
}
......@@ -1313,8 +1312,8 @@ export default class MainBase extends Vue implements ControlInterface {
}
resolve(response);
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
reject(response);
return;
}
......@@ -1383,14 +1382,16 @@ export default class MainBase extends Vue implements ControlInterface {
const result: Promise<any> = this.service.wfstart(_this.WFStartAction, JSON.parse(JSON.stringify(this.context)),arg, this.showBusyIndicator,localdata);
result.then((response: any) => {
if (!response || response.status !== 200) {
this.$Notice.error({ title: '', desc: '工作流启动失败, ' + response.info });
if(response.data){
this.$Notice.error({ title: '', desc: '工作流启动失败, ' + response.data.message });
}
return;
}
this.$Notice.info({ title: '', desc: '工作流启动成功' });
resolve(response);
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
reject(response);
return;
}
......@@ -1402,8 +1403,8 @@ export default class MainBase extends Vue implements ControlInterface {
reject(response);
});
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
reject(response);
return;
}
......@@ -1442,14 +1443,16 @@ export default class MainBase extends Vue implements ControlInterface {
const result: Promise<any> = this.service.wfsubmit(_this.WFSubmitAction, JSON.parse(JSON.stringify(this.context)),arg, this.showBusyIndicator,localdata);
result.then((response: any) => {
if (!response || response.status !== 200) {
this.$Notice.error({ title: '', desc: '工作流提交失败, ' + response.info });
if(response.data){
this.$Notice.error({ title: '', desc: '工作流提交失败, ' + response.data.message });
}
return;
}
this.$Notice.info({ title: '', desc: '工作流提交成功' });
resolve(response);
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
reject(response);
return;
}
......@@ -1461,8 +1464,8 @@ export default class MainBase extends Vue implements ControlInterface {
reject(response);
});
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
reject(response);
return;
}
......@@ -1514,8 +1517,8 @@ export default class MainBase extends Vue implements ControlInterface {
this.formState.next({ type: 'updateformitem', ufimode: arg.srfufimode, data: _data });
});
}).catch((response: any) => {
if (response && response.status) {
this.$Notice.error({ title: '错误', desc: response.message });
if (response && response.status && response.data) {
this.$Notice.error({ title: '错误', desc: response.data.message });
return;
}
if (!response || !response.status || !response.data) {
......
......@@ -698,8 +698,9 @@ export default class MainBase extends Vue implements ControlInterface {
_datas.forEach((data: any) => {
keys.push(data.srfkey);
});
let _removeAction = keys.length > 1 ? 'removeBatch' : this.removeAction ;
const context:any = JSON.parse(JSON.stringify(this.context));
const post: Promise<any> = this.service.delete(this.removeAction,Object.assign(context,{ wfprocessdefinition: keys.join(';') }),Object.assign({ definitionkey: keys.join(';') },{viewparams:this.viewparams}), this.showBusyIndicator);
const post: Promise<any> = this.service.delete(_removeAction,Object.assign(context,{ wfprocessdefinition: keys.join(';') }),Object.assign({ wfprocessdefinition: keys.join(';') },{viewparams:this.viewparams}), this.showBusyIndicator);
return new Promise((resolve: any, reject: any) => {
post.then((response: any) => {
if (!response || response.status !== 200) {
......
......@@ -626,8 +626,9 @@ export default class MainBase extends Vue implements ControlInterface {
_datas.forEach((data: any) => {
keys.push(data.srfkey);
});
let _removeAction = keys.length > 1 ? 'removeBatch' : this.removeAction ;
const context:any = JSON.parse(JSON.stringify(this.context));
const post: Promise<any> = this.service.delete(this.removeAction,Object.assign(context,{ wfuser: keys.join(';') }),Object.assign({ id: keys.join(';') },{viewparams:this.viewparams}), this.showBusyIndicator);
const post: Promise<any> = this.service.delete(_removeAction,Object.assign(context,{ wfuser: keys.join(';') }),Object.assign({ wfuser: keys.join(';') },{viewparams:this.viewparams}), this.showBusyIndicator);
return new Promise((resolve: any, reject: any) => {
post.then((response: any) => {
if (!response || response.status !== 200) {
......
......@@ -38,11 +38,11 @@
git clone -b master $para2 ibzwf/
export NODE_OPTIONS=--max-old-space-size=4096
cd ibzwf/
mvn clean package -Papi
cd ibzwf-provider/ibzwf-provider-api
mvn -Papi docker:build
mvn -Papi docker:push
docker -H $para1 stack deploy --compose-file=src/main/docker/ibzwf-provider-api.yaml ibzlab-rt --with-registry-auth
mvn clean package -Pweb
cd ibzwf-app/ibzwf-app-web
mvn -Pweb docker:build
mvn -Pweb docker:push
docker -H $para1 stack deploy --compose-file=src/main/docker/ibzwf-app-web.yaml ibzlab-rt --with-registry-auth
</command>
</hudson.tasks.Shell>
</builders>
......
......@@ -9,6 +9,6 @@ CMD echo "The application will start in ${IBZ_SLEEP}s..." && \
sleep ${IBZ_SLEEP} && \
java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /ibzwf-app-web.jar
EXPOSE 8080
EXPOSE 30003
ADD ibzwf-app-web.jar /ibzwf-app-web.jar
......@@ -3,9 +3,11 @@ services:
ibzwf-app-web:
image: registry.cn-shanghai.aliyuncs.com/ibizsys/ibzwf-app-web:latest
ports:
- "8080:8080"
- "30003:30003"
networks:
- agent_network
environment:
SPRING_CLOUD_NACOS_DISCOVERY_IP: 172.16.180.237
deploy:
mode: replicated
replicas: 1
......
server:
port: 8080
\ No newline at end of file
port: 30003
\ No newline at end of file
server:
port: 8080
port: 30003
#zuul网关路由设置
zuul:
......
package cn.ibizlab.core.workflow.filter;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
......
package cn.ibizlab.core.workflow.filter;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
......
package cn.ibizlab.core.workflow.filter;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
......
package cn.ibizlab.core.workflow.filter;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
......
package cn.ibizlab.core.workflow.filter;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
......
package cn.ibizlab.core.workflow.filter;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
......
package cn.ibizlab.core.workflow.filter;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
......
package cn.ibizlab.core.workflow.filter;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
......
package cn.ibizlab.core.workflow.filter;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
......
......@@ -9,6 +9,7 @@ import java.util.HashMap;
import java.util.Collection;
import java.util.Objects;
import java.util.Optional;
import java.math.BigInteger;
import lombok.extern.slf4j.Slf4j;
......@@ -48,7 +49,6 @@ public class WFGroupServiceImpl extends ServiceImpl<WFGroupMapper, WFGroup> impl
private cn.ibizlab.core.workflow.service.IWFMemberService wfmemberService;
private int batchSize = 500;
@Override
@Transactional
public boolean save(WFGroup et) {
......@@ -153,6 +153,7 @@ public class WFGroupServiceImpl extends ServiceImpl<WFGroupMapper, WFGroup> impl
}
@Override
public List<JSONObject> select(String sql){
return this.baseMapper.selectBySQL(sql);
......
......@@ -9,6 +9,7 @@ import java.util.HashMap;
import java.util.Collection;
import java.util.Objects;
import java.util.Optional;
import java.math.BigInteger;
import lombok.extern.slf4j.Slf4j;
......@@ -45,7 +46,6 @@ public class WFMemberServiceImpl extends ServiceImpl<WFMemberMapper, WFMember> i
private int batchSize = 500;
@Override
public boolean checkKey(WFMember et) {
return (!ObjectUtils.isEmpty(et.getMemberid()))&&(!Objects.isNull(this.getById(et.getMemberid())));
......@@ -195,6 +195,7 @@ public class WFMemberServiceImpl extends ServiceImpl<WFMemberMapper, WFMember> i
}
@Override
public List<JSONObject> select(String sql){
return this.baseMapper.selectBySQL(sql);
......
......@@ -9,6 +9,7 @@ import java.util.HashMap;
import java.util.Collection;
import java.util.Objects;
import java.util.Optional;
import java.math.BigInteger;
import lombok.extern.slf4j.Slf4j;
......@@ -45,7 +46,6 @@ public class WFProcessDefinitionServiceImpl extends ServiceImpl<WFProcessDefinit
private int batchSize = 500;
@Override
@Transactional
public boolean save(WFProcessDefinition et) {
......@@ -146,6 +146,7 @@ public class WFProcessDefinitionServiceImpl extends ServiceImpl<WFProcessDefinit
}
@Override
public List<JSONObject> select(String sql){
return this.baseMapper.selectBySQL(sql);
......
......@@ -9,6 +9,7 @@ import java.util.HashMap;
import java.util.Collection;
import java.util.Objects;
import java.util.Optional;
import java.math.BigInteger;
import lombok.extern.slf4j.Slf4j;
......
......@@ -9,6 +9,7 @@ import java.util.HashMap;
import java.util.Collection;
import java.util.Objects;
import java.util.Optional;
import java.math.BigInteger;
import lombok.extern.slf4j.Slf4j;
......
......@@ -9,6 +9,7 @@ import java.util.HashMap;
import java.util.Collection;
import java.util.Objects;
import java.util.Optional;
import java.math.BigInteger;
import lombok.extern.slf4j.Slf4j;
......@@ -45,7 +46,6 @@ public class WFSystemServiceImpl extends ServiceImpl<WFSystemMapper, WFSystem> i
private int batchSize = 500;
@Override
@Transactional
public boolean remove(String key) {
......@@ -146,6 +146,7 @@ public class WFSystemServiceImpl extends ServiceImpl<WFSystemMapper, WFSystem> i
}
@Override
public List<JSONObject> select(String sql){
return this.baseMapper.selectBySQL(sql);
......
......@@ -9,6 +9,7 @@ import java.util.HashMap;
import java.util.Collection;
import java.util.Objects;
import java.util.Optional;
import java.math.BigInteger;
import lombok.extern.slf4j.Slf4j;
......
......@@ -9,6 +9,7 @@ import java.util.HashMap;
import java.util.Collection;
import java.util.Objects;
import java.util.Optional;
import java.math.BigInteger;
import lombok.extern.slf4j.Slf4j;
......
......@@ -9,6 +9,7 @@ import java.util.HashMap;
import java.util.Collection;
import java.util.Objects;
import java.util.Optional;
import java.math.BigInteger;
import lombok.extern.slf4j.Slf4j;
......@@ -48,7 +49,6 @@ public class WFUserServiceImpl extends ServiceImpl<WFUserMapper, WFUser> impleme
private cn.ibizlab.core.workflow.service.IWFMemberService wfmemberService;
private int batchSize = 500;
@Override
@Transactional
public boolean remove(String key) {
......@@ -149,6 +149,7 @@ public class WFUserServiceImpl extends ServiceImpl<WFUserMapper, WFUser> impleme
}
@Override
public List<JSONObject> select(String sql){
return this.baseMapper.selectBySQL(sql);
......
......@@ -9,6 +9,6 @@ CMD echo "The application will start in ${IBZ_SLEEP}s..." && \
sleep ${IBZ_SLEEP} && \
java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /ibzwf-provider-api.jar
EXPOSE 40003
EXPOSE 8081
ADD ibzwf-provider-api.jar /ibzwf-provider-api.jar
......@@ -3,11 +3,9 @@ services:
ibzwf-provider-api:
image: registry.cn-shanghai.aliyuncs.com/ibizsys/ibzwf-provider-api:latest
ports:
- "40003:40003"
- "8081:8081"
networks:
- agent_network
environment:
SPRING_CLOUD_NACOS_DISCOVERY_IP: 172.16.180.237
deploy:
mode: replicated
replicas: 1
......
server:
port: 40003
\ No newline at end of file
port: 8081
\ No newline at end of file
package cn.ibizlab.util.client;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
public class IBZWFFallback implements IBZWFFeignClient {
@Override
public List<String> getbusinesskeys(String system, String appname, String entity, String processDefinitionKey, String taskDefinitionKey) {
return null;
}
@Override
public List<String> getbusinesskeysByUserId(String system, String userId, String entity, String processDefinitionKey, String taskDefinitionKey) {
return null;
}
}
package cn.ibizlab.util.client;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@FeignClient(value = "ibzwf-api",fallback = IBZWFFallback.class)
public interface IBZWFFeignClient
{
@RequestMapping(method = RequestMethod.GET, value = "/{system}-app-{appname}/{entity}/process-definitions/{processDefinitionKey}/usertasks/{taskDefinitionKey}/tasks")
List<String> getbusinesskeys(@PathVariable("system") String system, @PathVariable("appname") String appname,
@PathVariable("entity") String entity, @PathVariable("processDefinitionKey") String processDefinitionKey, @PathVariable("taskDefinitionKey") String taskDefinitionKey);
@RequestMapping(method = RequestMethod.POST, value = "/{system}-user-{userId}/{entity}/process-definitions/{processDefinitionKey}/usertasks/{taskDefinitionKey}/tasks")
List<String> getbusinesskeysByUserId(@PathVariable("system") String system,@PathVariable("userId") String userId,
@PathVariable("entity") String entity,@PathVariable("processDefinitionKey") String processDefinitionKey,@PathVariable("taskDefinitionKey") String taskDefinitionKey);
}
......@@ -72,6 +72,8 @@ public class EntityBase implements Serializable {
Hashtable<String,String> keys=DEFieldCacheMap.getFieldKeys(this.getClass().getName());
if(keys.containsKey(field))
return getMap().get(keys.get(field));
else if(keys.containsKey(field.replace("_","")))
return getMap().get(keys.get(field.replace("_","")));
else
return this.extensionparams.get(field);
}
......@@ -88,6 +90,8 @@ public class EntityBase implements Serializable {
Hashtable<String,String> keys=DEFieldCacheMap.getFieldKeys(this.getClass().getName());
if(keys.containsKey(field))
getMap().put(keys.get(field),value);
else if(keys.containsKey(field.replace("_","")))
getMap().put(keys.get(field.replace("_","")),value);
else
this.extensionparams.put(field,value);
}
......
......@@ -32,7 +32,7 @@ public class PermissionSyncJob implements ApplicationRunner {
@Value("${ibiz.enablePermissionValid:false}")
boolean enablePermissionValid; //是否开启权限校验
@Value("${ibiz.systemid:2C40DFCD-0DF5-47BF-91A5-C45F810B0001}")
@Value("${ibiz.systemid:0A91C1B1-3B67-4EDA-9572-5DB491871FEE}")
private String systemId;
@Override
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册