提交 9794bf21 编写于 作者: laizhilong's avatar laizhilong

Merge remote-tracking branch 'origin/master'

...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
"id": "1", "id": "1",
"label": "是", "label": "是",
"text": "是", "text": "是",
"class":"",
"data":"", "data":"",
"codename":"Item_1", "codename":"Item_1",
"value": "1", "value": "1",
...@@ -18,6 +19,7 @@ ...@@ -18,6 +19,7 @@
"id": "0", "id": "0",
"label": "否", "label": "否",
"text": "否", "text": "否",
"class":"",
"data":"", "data":"",
"codename":"Item_0", "codename":"Item_0",
"value": "0", "value": "0",
...@@ -35,6 +37,7 @@ ...@@ -35,6 +37,7 @@
"id": "INNER", "id": "INNER",
"label": "内置应用", "label": "内置应用",
"text": "内置应用", "text": "内置应用",
"class":"",
"data":"", "data":"",
"codename":"Inner", "codename":"Inner",
"value": "INNER", "value": "INNER",
...@@ -45,6 +48,7 @@ ...@@ -45,6 +48,7 @@
"id": "THIRD-PARTY", "id": "THIRD-PARTY",
"label": "第三方应用", "label": "第三方应用",
"text": "第三方应用", "text": "第三方应用",
"class":"",
"data":"", "data":"",
"codename":"Third_SUB_party", "codename":"Third_SUB_party",
"value": "THIRD-PARTY", "value": "THIRD-PARTY",
...@@ -62,6 +66,7 @@ ...@@ -62,6 +66,7 @@
"id": "aliyun", "id": "aliyun",
"label": "阿里云", "label": "阿里云",
"text": "阿里云", "text": "阿里云",
"class":"",
"data":"", "data":"",
"codename":"Aliyun", "codename":"Aliyun",
"value": "aliyun", "value": "aliyun",
...@@ -72,6 +77,7 @@ ...@@ -72,6 +77,7 @@
"id": "wechat", "id": "wechat",
"label": "微信开放平台", "label": "微信开放平台",
"text": "微信开放平台", "text": "微信开放平台",
"class":"",
"data":"", "data":"",
"codename":"Wechat", "codename":"Wechat",
"value": "wechat", "value": "wechat",
...@@ -82,6 +88,7 @@ ...@@ -82,6 +88,7 @@
"id": "qq", "id": "qq",
"label": "QQ互联", "label": "QQ互联",
"text": "QQ互联", "text": "QQ互联",
"class":"",
"data":"", "data":"",
"codename":"Qq", "codename":"Qq",
"value": "qq", "value": "qq",
...@@ -92,6 +99,7 @@ ...@@ -92,6 +99,7 @@
"id": "dingtalk", "id": "dingtalk",
"label": "钉钉开放平台", "label": "钉钉开放平台",
"text": "钉钉开放平台", "text": "钉钉开放平台",
"class":"",
"data":"", "data":"",
"codename":"Dingtalk", "codename":"Dingtalk",
"value": "dingtalk", "value": "dingtalk",
...@@ -109,6 +117,7 @@ ...@@ -109,6 +117,7 @@
"id": "200", "id": "200",
"label": "成功", "label": "成功",
"text": "成功", "text": "成功",
"class":"",
"data":"", "data":"",
"codename":"Item_200", "codename":"Item_200",
"color": "rgba(0, 255, 0, 0)", "color": "rgba(0, 255, 0, 0)",
...@@ -120,6 +129,7 @@ ...@@ -120,6 +129,7 @@
"id": "400", "id": "400",
"label": "用户不存在", "label": "用户不存在",
"text": "用户不存在", "text": "用户不存在",
"class":"",
"data":"", "data":"",
"codename":"Item_400", "codename":"Item_400",
"value": "400", "value": "400",
...@@ -130,6 +140,7 @@ ...@@ -130,6 +140,7 @@
"id": "401.1", "id": "401.1",
"label": "密码错误", "label": "密码错误",
"text": "密码错误", "text": "密码错误",
"class":"",
"data":"", "data":"",
"codename":"Item_3", "codename":"Item_3",
"value": "401.1", "value": "401.1",
...@@ -140,6 +151,7 @@ ...@@ -140,6 +151,7 @@
"id": "401.2", "id": "401.2",
"label": "配置错误", "label": "配置错误",
"text": "配置错误", "text": "配置错误",
"class":"",
"data":"", "data":"",
"codename":"Item_4", "codename":"Item_4",
"color": "rgba(22, 9, 170, 1)", "color": "rgba(22, 9, 170, 1)",
...@@ -151,6 +163,7 @@ ...@@ -151,6 +163,7 @@
"id": "403.6", "id": "403.6",
"label": "地址被拒绝", "label": "地址被拒绝",
"text": "地址被拒绝", "text": "地址被拒绝",
"class":"",
"data":"", "data":"",
"codename":"Item_5", "codename":"Item_5",
"color": "rgba(0, 72, 255, 1)", "color": "rgba(0, 72, 255, 1)",
......
window.Environment = {
// 应用基础路径
BaseUrl: '',
// 是否为开发模式
devMode: true,
// 是否为pc端应用
isAppMode:true,
// 是否开启权限认证
enablePermissionValid:false,
// 打开目标工具,可选参数:sln、mos
debugOpenMode:'mos',
// 配置平台地址
StudioUrl: "http://172.16.170.145/mos/",
// 中心标识
SlnId: "B4BF5C84-D020-4D9A-A986-8FA4FD72816C",
// 系统标识
SysId: "B428B5BE-EA90-4101-A493-BA7085D89F0A",
// 前端应用标识
AppId: "6e0b7357169ef4eba84e1347ed94bd84",
}
\ No newline at end of file
...@@ -112,6 +112,9 @@ export default class AuthService { ...@@ -112,6 +112,9 @@ export default class AuthService {
* @memberof AuthService * @memberof AuthService
*/ */
public getMenusPermission(item: any): boolean { public getMenusPermission(item: any): boolean {
if(!this.$store.getters['authresource/getEnablePermissionValid']) {
return true;
}
return this.$store.getters['authresource/getAuthMenu'](item); return this.$store.getters['authresource/getAuthMenu'](item);
} }
...@@ -123,6 +126,9 @@ export default class AuthService { ...@@ -123,6 +126,9 @@ export default class AuthService {
* @memberof AuthService * @memberof AuthService
*/ */
public getResourcePermission(tag: any): boolean { public getResourcePermission(tag: any): boolean {
if(!this.$store.getters['authresource/getEnablePermissionValid']) {
return true;
}
return this.$store.getters['authresource/getResourceData'](tag); return this.$store.getters['authresource/getResourceData'](tag);
} }
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
<script lang="ts"> <script lang="ts">
import { Vue, Component, Prop, Model, Emit,Inject, Watch } from "vue-property-decorator"; import { Vue, Component, Prop, Model, Emit,Inject, Watch } from "vue-property-decorator";
import { Subject,Subscription } from "rxjs"; import { Subject,Subscription } from "rxjs";
import { Environment } from '@/environments/environment';
@Component({}) @Component({})
export default class AppActionBar extends Vue { export default class AppActionBar extends Vue {
......
...@@ -18,4 +18,7 @@ ...@@ -18,4 +18,7 @@
font-family: '微软雅黑','黑体','宋体'; font-family: '微软雅黑','黑体','宋体';
font-size: 16px; font-size: 16px;
} }
.progress {
margin-top: -15px;
}
} }
\ No newline at end of file
<template> <template>
<div class="app-data-upload-view"> <div class="app-data-upload-view" v-loading.fullscreen="isUploading" element-loading-background="rgba(57, 57, 57, 0.2)">
<el-row style="margin-top:24px" :gutter="20"> <el-row style="margin-top:24px" :gutter="20">
<el-col :span="4"> <el-col :span="4">
<el-button type="primary" @click="handleUpLoad">{{$t('components.appDataUploadView.selectfile')}}</el-button> <el-button type="primary" @click="handleUpLoad">{{$t('components.appDataUploadView.selectfile')}}</el-button>
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
</el-col> </el-col>
</el-row> </el-row>
<el-divider></el-divider> <el-divider></el-divider>
<el-progress class="progress" v-show="isUploading" :text-inside="true" :stroke-width="14" :percentage="uploadProgress"></el-progress>
<el-row style="height:480px;padding: 0px 12px;"> <el-row style="height:480px;padding: 0px 12px;">
<div class="data-info-content" > <div class="data-info-content" >
<template v-if="importDataArray.length >0 && isUploading === false"> <template v-if="importDataArray.length >0 && isUploading === false">
...@@ -50,6 +51,7 @@ import XLSX from 'xlsx'; ...@@ -50,6 +51,7 @@ import XLSX from 'xlsx';
import CodeListService from "@service/app/codelist-service"; import CodeListService from "@service/app/codelist-service";
import EntityService from '@/service/entity-service'; import EntityService from '@/service/entity-service';
import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Provide, Emit, Watch } from 'vue-property-decorator';
import { Environment } from '@/environments/environment';
@Component({ @Component({
}) })
...@@ -191,6 +193,22 @@ export default class AppDataUploadView extends Vue { ...@@ -191,6 +193,22 @@ export default class AppDataUploadView extends Vue {
* @memberof AppDataUploadView * @memberof AppDataUploadView
*/ */
public allFieldMap:Map<string,any> = new Map(); public allFieldMap:Map<string,any> = new Map();
/**
* 上传服务器数据切片数
*
* @type {number}
* @memberof AppDataUploadView
*/
public sliceUploadCnt: number = Environment.sliceUploadCnt;
/**
* 上传服务器进度条百分比
*
* @type {number}
* @memberof AppDataUploadView
*/
public uploadProgress: number = 0;
/** /**
* 视图参数变化 * 视图参数变化
...@@ -282,10 +300,29 @@ export default class AppDataUploadView extends Vue { ...@@ -282,10 +300,29 @@ export default class AppDataUploadView extends Vue {
this.transformData(this.importDataArray,tempDataArray); this.transformData(this.importDataArray,tempDataArray);
this.hasImported = true; this.hasImported = true;
this.isUploading = true; this.isUploading = true;
this.uploadProgress = 0;
this.importDataArray = []; this.importDataArray = [];
this.sliceUploadService(tempDataArray, 0);
}
/**
* 数据切片上传
*
* @memberof AppDataUploadView
*/
public sliceUploadService(dataArray: Array<any>, cnt: number) {
if(cnt > dataArray.length) {
this.isUploading = false;
this.uploadProgress = 100;
return;
}
let sliceArray: Array<any> = [];
if(dataArray) {
sliceArray = dataArray.slice(cnt, cnt+this.sliceUploadCnt);
}
try{ try{
this.entityService.getService(this.viewparams.serviceName).then((service:any) =>{ this.entityService.getService(this.viewparams.serviceName).then((service:any) =>{
service.ImportData(this.viewdata,{name:this.importId,importData:tempDataArray}).then((res:any) =>{ service.ImportData(this.viewdata,{name:this.importId,importData:sliceArray}).then((res:any) =>{
const result:any = res.data; const result:any = res.data;
if(result && result.rst !== 0){ if(result && result.rst !== 0){
this.promptInfo = (this.$t('components.appDataUploadView.importfailed') as string); this.promptInfo = (this.$t('components.appDataUploadView.importfailed') as string);
...@@ -294,7 +331,8 @@ export default class AppDataUploadView extends Vue { ...@@ -294,7 +331,8 @@ export default class AppDataUploadView extends Vue {
} }
this.importSuccessData = result.data; this.importSuccessData = result.data;
this.promptInfo = (this.$t('components.appDataUploadView.completed') as string); this.promptInfo = (this.$t('components.appDataUploadView.completed') as string);
this.isUploading = false; this.uploadProgress = Number((cnt / dataArray.length * 100).toFixed(2));
this.sliceUploadService(dataArray, cnt + this.sliceUploadCnt);
}).catch((error:any) =>{ }).catch((error:any) =>{
this.isUploading = false; this.isUploading = false;
this.promptInfo = (this.$t('components.appDataUploadView.importfailed') as string); this.promptInfo = (this.$t('components.appDataUploadView.importfailed') as string);
...@@ -311,7 +349,6 @@ export default class AppDataUploadView extends Vue { ...@@ -311,7 +349,6 @@ export default class AppDataUploadView extends Vue {
console.error(error); console.error(error);
}; };
} }
/** /**
* 导出excel * 导出excel
* *
......
...@@ -222,7 +222,12 @@ export default class AppEmbedPicker extends Vue { ...@@ -222,7 +222,12 @@ export default class AppEmbedPicker extends Vue {
if(Object.is(newFormData[this.refreshitems], oldDormData[this.refreshitems])) { if(Object.is(newFormData[this.refreshitems], oldDormData[this.refreshitems])) {
return; return;
} }
this.setValue([{srfmajortext: null, srfkey: null}]); if (this.valueItem) {
this.$emit('formitemvaluechange', { name: this.valueItem, value: null });
}
if (this.name) {
this.$emit('formitemvaluechange', { name: this.name, value: null });
}
} }
/** /**
...@@ -231,6 +236,7 @@ export default class AppEmbedPicker extends Vue { ...@@ -231,6 +236,7 @@ export default class AppEmbedPicker extends Vue {
* @memberof AppEmbedPicker * @memberof AppEmbedPicker
*/ */
public created() { public created() {
this.setViewParam();
if(this.formState) { if(this.formState) {
this.formStateEvent = this.formState.subscribe(({ tag, action, data }) => { this.formStateEvent = this.formState.subscribe(({ tag, action, data }) => {
if (Object.is('load', action)) { if (Object.is('load', action)) {
......
...@@ -108,6 +108,7 @@ ...@@ -108,6 +108,7 @@
<script lang="ts"> <script lang="ts">
import { Vue, Component, Prop, Watch } from 'vue-property-decorator'; import { Vue, Component, Prop, Watch } from 'vue-property-decorator';
import { Environment } from '@/environments/environment';
@Component({}) @Component({})
export default class AppFormGroup extends Vue { export default class AppFormGroup extends Vue {
......
...@@ -41,7 +41,7 @@ export default class AppHeaderMenus extends Vue { ...@@ -41,7 +41,7 @@ export default class AppHeaderMenus extends Vue {
{ {
name: "ibizstudio", name: "ibizstudio",
title: "components.appHeaderMenus.ibizstudio.title", title: "components.appHeaderMenus.ibizstudio.title",
url: `${Environment.StudioUrl}?#/common_slnindex/srfkeys=${Environment.SlnId}/sysdesign_psdevslnsysmodeltreeexpview`, url: `${Environment.StudioUrl}?#/common_mosindex/srfkeys=${Environment.SysId}`,
iconcls: 'fa fa-wrench', iconcls: 'fa fa-wrench',
}, },
{ {
......
.app-panel-field {
height: 100%;
width: 100%;
display: flex;
padding: 0 6px;
.editor{
flex-grow: 1;
.editorstyle{
.ivu-input.ivu-input-default{
border-color: red;
}
}
.errorstyle{
color:red !important;
}
}
.app-panel-field-label {
height: 34px !important;
line-height: 25px;
flex-shrink: 0;
padding: 6px 10px 6px 0px;
}
}
.app-panel-field.label-top {
flex-flow: column;
}
.app-panel-field.label-bottom{
flex-flow: column-reverse;
}
.app-panel-field.label-left {
.app-panel-field-label {
text-align: right;
}
}
.app-panel-field.label-right {
flex-flow: row-reverse;
.app-panel-field-label {
padding: 6px 0px 6px 10px;
}
}
.app-panel-field.label-none {
.app-panel-field-label {
display: none !important;
}
}
<template>
<div :class="classes">
<div v-if="Object.is(labelPos,'NONE') || !labelPos" class="editor">
<div :class="valueCheck == true ?'':'editorstyle'">
<slot ></slot>
<span :class="error ? 'errorstyle':''">{{error}}</span>
</div>
</div>
<div v-if="!Object.is(labelPos,'NONE')" class="app-panel-field-label">
<span v-if="required" style="color:red;">* </span>
{{isEmptyCaption ? '' : caption}}
</div>
<div v-if="Object.is(labelPos,'BOTTOM') || Object.is(labelPos,'TOP') || Object.is(labelPos,'LEFT') || Object.is(labelPos,'RIGHT')" class="editor">
<div :class="valueCheck == true ?'':'editorstyle'">
<slot ></slot>
<span :class="error ? 'errorstyle':''">{{error}}</span>
</div>
</div>
</div>
</template>
<script lang="ts">
import { Vue, Component, Prop, Watch } from "vue-property-decorator";
@Component({})
export default class AppPanelField extends Vue {
/**
* 名称
*
* @type {string}
* @memberof AppPanelField
*/
@Prop() public caption!: string;
/**
* 错误信息
*
* @type {string}
* @memberof AppPanelField
*/
@Prop() public error?: string;
/**
* 标签位置
*
* @type {(string | 'BOTTOM' | 'LEFT' | 'NONE' | 'RIGHT' | 'TOP')}
* @memberof AppPanelField
*/
@Prop() public labelPos?:
| string
| "BOTTOM"
| "LEFT"
| "NONE"
| "RIGHT"
| "TOP";
/**
* 标签是否空白
*
* @type {boolean}
* @memberof AppPanelField
*/
@Prop() public isEmptyCaption?: boolean;
/**
* 列表项名称
*
* @type {string}
* @memberof AppPanelField
*/
@Prop() public name!: string;
/**
* 面板数据
*
* @type {any}
* @memberof AppPanelField
*/
@Prop() public data!: any;
/**
* 编辑器值
*
* @type {any}
* @memberof AppPanelField
*/
@Prop() public value !: any;
/**
* 值规则
*
* @type {string}
* @memberof AppPanelField
*/
@Prop() public itemRules!: any;
/**
* 是否必填
*
* @type {boolean}
* @memberof AppPanelField
*/
public required: boolean = false;
/**
* 值规则数组
*
* @type {any[]}
* @memberof AppPanelField
*/
public rules: any[] = [];
/**
* 值规则监控
*
* @param {*} newVal
* @param {*} oldVal
* @memberof AppPanelField
*/
@Watch("itemRules", { deep: true })
onItemRulesChange(newVal: any, oldVal: any) {
if (newVal) {
try {
this.rules = [];
const _rules: any[] = newVal;
this.rules = [..._rules];
this.rules.some((rule: any) => {
if (rule.hasOwnProperty("required")) {
this.required = rule.required;
return true;
}
return false;
});
} catch (error) {}
}
}
/**
* 编辑器样式
*
* @type {boolean}
* @memberof AppPanelField
*/
public valueCheck: boolean = true;
/**
* 编辑器值监控
*
* @param {*} newVal
* @param {*} oldVal
* @memberof AppPanelField
*/
@Watch("value")
ItemValueRules(newVal: any, oldVal: any) {
if(this.required && !newVal) {
this.valueCheck = false;
}else{
this.valueCheck = true;
}
}
/**
* 计算样式
*
* @readonly
* @type {string []}
* @memberof AppPanelField
*/
get classes(): string[] {
let posClass = "";
switch (this.labelPos) {
case "TOP":
posClass = "label-top";
break;
case "LEFT":
posClass = "label-left";
break;
case "BOTTOM":
posClass = "label-bottom";
break;
case "RIGHT":
posClass = "label-right";
break;
case "NONE":
posClass = "label-none";
break;
}
return [ "app-panel-field", posClass ];
}
/**
* vue 生命周期
*
* @memberof AppPanelField
*/
public mounted() {
if (this.itemRules) {
try {
const _rules: any[] = this.itemRules;
this.rules = [..._rules];
this.rules.some((rule: any) => {
if (rule.hasOwnProperty("required")) {
this.required = rule.required;
return true;
}
return false;
});
} catch (error) {}
}
}
}
</script>
<style lang='less'>
@import "./app-panel-field.less";
</style>
\ No newline at end of file
.app-panel-item{
.app-panel-item-rawitem{
padding-right: 10px;
}
}
\ No newline at end of file
<template>
<div class="app-panel-item">
<div v-if="Object.is(itemType,'BUTTON')" >
<Button type="primary" long @click="onClick">
<i v-if="icon" :class="icon"></i>
<span v-if="showCaption" :class="lableStyle">{{caption ? caption : ''}}</span>
</Button>
</div>
<div v-if="Object.is(itemType,'RAWITEM')">
<i v-if="icon" :class="icon"></i>
<span v-if="caption" class="app-panel-item-rawitem">{{caption}}</span>
<div :class="contentStyle">
<slot></slot>
</div>
</div>
</div>
</template>
<script lang="ts">
import { Vue, Component, Prop, Watch } from "vue-property-decorator";
@Component({})
export default class AppPanelItem extends Vue {
/**
* 面板成员类型
*
* @type {string}
* @memberof AppPanelItem
*/
@Prop() public itemType!: string;
/**
* 图标
*
* @type {string}
* @memberof AppPanelItem
*/
@Prop() public icon?: string;
/**
* 标题
*
* @type {string}
* @memberof AppPanelItem
*/
@Prop() public caption?: string;
/**
* 显示标题
*
* @type {boolean}
* @memberof AppPanelItem
*/
@Prop() public showCaption?: boolean;
/**
* 标题样式
*
* @type {boolean}
* @memberof AppPanelItem
*/
@Prop() public lableStyle?: string;
/**
* 内容样式
*
* @type {boolean}
* @memberof AppPanelItem
*/
@Prop() public contentStyle?: string;
/**
* 部件样式
*
* @type {boolean}
* @memberof AppPanelItem
*/
@Prop() public partsStyle?: string;
/**
* 点击按钮
*
* @param {*} $event
* @memberof AppPanelItem
*/
public onClick($event: any){
this.$emit('onClick',$event);
}
}
</script>
<style lang='less'>
@import "./app-panel-item.less";
</style>
\ No newline at end of file
...@@ -214,7 +214,8 @@ export default class AppSpan extends Vue { ...@@ -214,7 +214,8 @@ export default class AppSpan extends Vue {
this.text = Number(number.toFixed(this.precision)).toLocaleString('en-US')+ ' '+ this.unitName; this.text = Number(number.toFixed(this.precision)).toLocaleString('en-US')+ ' '+ this.unitName;
}else if(Object.is(this.dataType,"FLOAT") || Object.is(this.dataType,"DECIMAL")){ }else if(Object.is(this.dataType,"FLOAT") || Object.is(this.dataType,"DECIMAL")){
let number:any = Number(this.value); let number:any = Number(this.value);
this.text = number.toFixed(this.precision); const decimalCnt:number = this.value.toString().split('.').length > 1 ? this.value.toString().split('.')[1].length : 0;
this.text = (Number(this.precision) === 0 && decimalCnt !== 0) ? number.toFixed(decimalCnt) : number.toFixed(this.precision);
}else { }else {
this.text = this.value; this.text = this.value;
} }
......
...@@ -5,11 +5,21 @@ ...@@ -5,11 +5,21 @@
display: none; display: none;
} }
.el-transfer{ .el-transfer{
max-height: 200px;
min-width: 100% !important; min-width: 100% !important;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
.el-transfer-panel{ .el-transfer-panel{
min-width: 25%; min-width: 25%;
.el-transfer-panel__body{
max-height: 160px;
.el-checkbox-group{
max-height: 160px;
.el-checkbox+.el-checkbox {
margin-left: 0px;
}
}
}
} }
.el-transfer__buttons{ .el-transfer__buttons{
align-self: center; align-self: center;
......
...@@ -5,30 +5,35 @@ ...@@ -5,30 +5,35 @@
<span>{{data.startUserName}}{{$t('components.appWFApproval.commit')}}</span> <span>{{data.startUserName}}{{$t('components.appWFApproval.commit')}}</span>
</div> </div>
<div class="app-wf-approval-content" v-if="data.usertasks && data.usertasks.length >0"> <div class="app-wf-approval-content" v-if="data.usertasks && data.usertasks.length >0">
<div class="approval-content-item" v-for="(usertask,index) in data.usertasks" :key="index"> <template v-for="(usertask,index) in data.usertasks" >
<div class="approval-content-item-left"> <template v-if="usertask.identitylinks.length >0">
{{usertask.userTaskName}} <div class="approval-content-item" :key="index">
</div> <div class="approval-content-item-left">
<div class="approval-content-item-right"> {{usertask.userTaskName}}
<div class="approval-content-item-wait" v-if="usertask.identitylinks.length >0"> </div>
{{$t('components.appWFApproval.wait')}}<span v-for="(identitylink,inx) in usertask.identitylinks" :key="inx">{{identitylink.displayname}}<span v-if="inx >0"></span></span>{{$t('components.appWFApproval.handle')}} <div class="approval-content-item-right">
</div> <div class="approval-content-item-wait" v-if="usertask.identitylinks.length >0">
<div class="approval-content-item-info" v-if="usertask.comments.length >0"> {{$t('components.appWFApproval.wait')}}<span v-for="(identitylink,inx) in usertask.identitylinks" :key="inx">{{identitylink.displayname}}<span v-if="inx >0"></span></span>{{$t('components.appWFApproval.handle')}}
<div v-for="(comment,commentInx) in usertask.comments" :key="commentInx">
<div class="approval-content-item-info-item approval-content-item-info-top">
{{`【${comment.type}】${comment.fullMessage}`}}
</div> </div>
<div class="approval-content-item-info-item approval-content-item-info-bottom"> <div class="approval-content-item-info" v-if="usertask.comments.length >0">
<span class="info-bottom-name">{{comment.authorName}}</span> <div v-for="(comment,commentInx) in usertask.comments" :key="commentInx">
<span>{{comment.time}}</span> <div class="approval-content-item-info-item approval-content-item-info-top">
{{`【${comment.type}】${comment.fullMessage}`}}
</div>
<div class="approval-content-item-info-item approval-content-item-info-bottom">
<span class="info-bottom-name">{{comment.authorName}}</span>
<span>{{comment.time}}</span>
</div>
</div>
</div>
<div class="approval-content-item-memo" v-if="usertask.userTaskId === viewparams.userTaskId">
<el-input type="textarea" v-model="initmemo" :rows="2" @blur="handleBlur" :placeholder="$t('components.appWFApproval.placeholder')"></el-input>
</div> </div>
</div> </div>
</div> </div>
<div class="approval-content-item-memo" v-if="usertask.userTaskId === viewparams.userTaskId"> </template>
<el-input type="textarea" v-model="initmemo" :rows="2" @blur="handleBlur" :placeholder="$t('components.appWFApproval.placeholder')"></el-input> </template>
</div>
</div>
</div>
</div> </div>
<div class="app-wf-approval-bottom"> <div class="app-wf-approval-bottom">
<span v-if="data.endTime">{{data.endTime}}{{$t('components.appWFApproval.end')}}</span> <span v-if="data.endTime">{{data.endTime}}{{$t('components.appWFApproval.end')}}</span>
......
...@@ -293,12 +293,13 @@ export default class ContextMenuDrag extends Vue { ...@@ -293,12 +293,13 @@ export default class ContextMenuDrag extends Vue {
mounted() { mounted() {
let that: any = this; let that: any = this;
const get: Promise<any> = this.entityService.getAllApp(null,{}); const get: Promise<any> = this.entityService.getAllApp(null,{});
get get.then((response: any) => {
.then((response: any) => {
if (response) { if (response) {
that.list = response.data.model; that.list = response.data.model;
that.listFilter(); that.listFilter();
} }
}).catch((error:any) =>{
console.warn("加载数据错误")
}); });
} }
} }
......
...@@ -92,6 +92,14 @@ export default class ContextMenu extends Vue { ...@@ -92,6 +92,14 @@ export default class ContextMenu extends Vue {
*/ */
@Prop() @Prop()
public menus?: any[] public menus?: any[]
/**
* 是否阻止默认绘制上下文菜单
*
* @type {any}
* @memberof ContextMenu
*/
@Prop({default:false})
public isBlocked?:any;
/** /**
* 显示右键菜单 * 显示右键菜单
...@@ -195,7 +203,10 @@ export default class ContextMenu extends Vue { ...@@ -195,7 +203,10 @@ export default class ContextMenu extends Vue {
if (contextRef) { if (contextRef) {
contextRef.oncontextmenu = (event: MouseEvent) => { contextRef.oncontextmenu = (event: MouseEvent) => {
event.preventDefault(); event.preventDefault();
this.showContextMenu(event.clientX, event.clientY); if(!this.isBlocked){
this.showContextMenu(event.clientX, event.clientY);
}
this.$emit("showContext",event);
}; };
} }
} }
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
:filterable="filterable" :filterable="filterable"
@on-open-change="onClick" @on-open-change="onClick"
:placeholder="$t('components.dropDownListDynamic.placeholder')"> :placeholder="$t('components.dropDownListDynamic.placeholder')">
<i-option v-for="(item, index) in items" :key="index" :value="item.value">{{($t('userCustom.'+tag+'.'+item.value)!== ('userCustom.'+tag+'.'+item.value))?$t('userCustom.'+tag+'.'+item.value) : item.text}}</i-option> <i-option v-for="(item, index) in items" :key="index" :class="item.class" :value="item.value">{{($t('userCustom.'+tag+'.'+item.value)!== ('userCustom.'+tag+'.'+item.value))?$t('userCustom.'+tag+'.'+item.value) : item.text}}</i-option>
</i-select> </i-select>
</template> </template>
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
:filterable="filterable" :filterable="filterable"
@on-open-change="onClick" @on-open-change="onClick"
:placeholder="$t('components.dropDownListMpicker.placeholder')"> :placeholder="$t('components.dropDownListMpicker.placeholder')">
<i-option v-for="(item, index) in items" :key="index" :value="item.value.toString()" :label="item.text"> <i-option v-for="(item, index) in items" :key="index" :class="item.class" :value="item.value.toString()" :label="item.text">
<Checkbox :value = "(currentVal.indexOf(item.value.toString()))==-1?false:true"> <Checkbox :value = "(currentVal.indexOf(item.value.toString()))==-1?false:true">
{{Object.is(codelistType,'STATIC') ? $t('codelist.'+tag+'.'+item.value) : item.text}} {{Object.is(codelistType,'STATIC') ? $t('codelist.'+tag+'.'+item.value) : item.text}}
</Checkbox> </Checkbox>
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
:filterable="filterable" :filterable="filterable"
@on-open-change="onClick" @on-open-change="onClick"
:placeholder="$t('components.dropDownList.placeholder')"> :placeholder="$t('components.dropDownList.placeholder')">
<i-option v-for="(item, index) in items" :key="index" :value="item.value">{{($t('codelist.'+tag+'.'+item.value)!== ('codelist.'+tag+'.'+item.value))?$t('codelist.'+tag+'.'+item.value) : item.text}}</i-option> <i-option v-for="(item, index) in items" :key="index" :class="item.class" :value="item.value">{{($t('codelist.'+tag+'.'+item.value)!== ('codelist.'+tag+'.'+item.value))?$t('codelist.'+tag+'.'+item.value) : item.text}}</i-option>
</i-select> </i-select>
<ibiz-select-tree v-if="hasChildren" class="tree-dropdown-list" :disabled="disabled" :NodesData="items" v-model="currentVal" :multiple="false"></ibiz-select-tree> <ibiz-select-tree v-if="hasChildren" class="tree-dropdown-list" :disabled="disabled" :NodesData="items" v-model="currentVal" :multiple="false"></ibiz-select-tree>
</div> </div>
......
import { Environment } from '@/environments/environment';
/** /**
* *
* *
......
...@@ -15,6 +15,8 @@ export const Environment = { ...@@ -15,6 +15,8 @@ export const Environment = {
ExportFile: '/ibizutil/download', ExportFile: '/ibizutil/download',
// 文件上传 // 文件上传
UploadFile: '/ibizutil/upload', UploadFile: '/ibizutil/upload',
// 数据导入单次上传最大数量
sliceUploadCnt: 100,
// 是否为pc端应用 // 是否为pc端应用
isAppMode:true, isAppMode:true,
//统一地址 //统一地址
...@@ -25,8 +27,10 @@ export const Environment = { ...@@ -25,8 +27,10 @@ export const Environment = {
enablePermissionValid:false, enablePermissionValid:false,
// 项目模板地址 // 项目模板地址
ProjectUrl: "http://demo.ibizlab.cn/ibizr7pfstdtempl/ibizvuer7", ProjectUrl: "http://demo.ibizlab.cn/ibizr7pfstdtempl/ibizvuer7",
// 打开目标工具,可选参数:sln、mos
debugOpenMode:'mos',
// 配置平台地址 // 配置平台地址
StudioUrl: "http://172.16.170.145/slnstudio/", StudioUrl: "http://172.16.170.145/mos/",
// 中心标识 // 中心标识
SlnId: "B4BF5C84-D020-4D9A-A986-8FA4FD72816C", SlnId: "B4BF5C84-D020-4D9A-A986-8FA4FD72816C",
// 系统标识 // 系统标识
...@@ -39,4 +43,8 @@ export const Environment = { ...@@ -39,4 +43,8 @@ export const Environment = {
ibizlabtUrl: 'https://www.ibizlab.cn', ibizlabtUrl: 'https://www.ibizlab.cn',
// ibiz论坛地址 // ibiz论坛地址
ibizbbstUrl: 'https://bbs.ibizlab.cn', ibizbbstUrl: 'https://bbs.ibizlab.cn',
}; };
\ No newline at end of file // 挂载外部配置文件
if ((window as any).Environment) {
Object.assign(Environment, (window as any).Environment);
}
\ No newline at end of file
...@@ -33,6 +33,7 @@ mock.onGet('/appdata').reply((config: any) => { ...@@ -33,6 +33,7 @@ mock.onGet('/appdata').reply((config: any) => {
// 当前用户条线代码 // 当前用户条线代码
srfsectorbc:"" srfsectorbc:""
}, },
enablepermissionvalid:false,
unires:["RESOURCE1","RESOURCE2"], unires:["RESOURCE1","RESOURCE2"],
//当前用户所有组织部门标识 //当前用户所有组织部门标识
srforgsections:[{"srforgsectorid":"5bd1ecf4d3c31e31cb66373df56b852f","srforgsectorname":"项目一部"},{"srforgsectorid":"2ad1ecf4d3c31e31cb66373df56b852f","srforgsectorname":"项目二部"}] srforgsections:[{"srforgsectorid":"5bd1ecf4d3c31e31cb66373df56b852f","srforgsectorname":"项目一部"},{"srforgsectorid":"2ad1ecf4d3c31e31cb66373df56b852f","srforgsectorname":"项目二部"}]
......
...@@ -16,6 +16,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => { ...@@ -16,6 +16,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
id: "1", id: "1",
label: "是", label: "是",
text: "是", text: "是",
"class":"",
"data":"", "data":"",
"codename":"Item_1", "codename":"Item_1",
value: "1", value: "1",
...@@ -26,6 +27,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => { ...@@ -26,6 +27,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
id: "0", id: "0",
label: "否", label: "否",
text: "否", text: "否",
"class":"",
"data":"", "data":"",
"codename":"Item_0", "codename":"Item_0",
value: "0", value: "0",
...@@ -43,6 +45,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => { ...@@ -43,6 +45,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
id: "INNER", id: "INNER",
label: "内置应用", label: "内置应用",
text: "内置应用", text: "内置应用",
"class":"",
"data":"", "data":"",
"codename":"Inner", "codename":"Inner",
value: "INNER", value: "INNER",
...@@ -53,6 +56,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => { ...@@ -53,6 +56,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
id: "THIRD-PARTY", id: "THIRD-PARTY",
label: "第三方应用", label: "第三方应用",
text: "第三方应用", text: "第三方应用",
"class":"",
"data":"", "data":"",
"codename":"Third_SUB_party", "codename":"Third_SUB_party",
value: "THIRD-PARTY", value: "THIRD-PARTY",
...@@ -70,6 +74,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => { ...@@ -70,6 +74,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
id: "aliyun", id: "aliyun",
label: "阿里云", label: "阿里云",
text: "阿里云", text: "阿里云",
"class":"",
"data":"", "data":"",
"codename":"Aliyun", "codename":"Aliyun",
value: "aliyun", value: "aliyun",
...@@ -80,6 +85,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => { ...@@ -80,6 +85,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
id: "wechat", id: "wechat",
label: "微信开放平台", label: "微信开放平台",
text: "微信开放平台", text: "微信开放平台",
"class":"",
"data":"", "data":"",
"codename":"Wechat", "codename":"Wechat",
value: "wechat", value: "wechat",
...@@ -90,6 +96,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => { ...@@ -90,6 +96,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
id: "qq", id: "qq",
label: "QQ互联", label: "QQ互联",
text: "QQ互联", text: "QQ互联",
"class":"",
"data":"", "data":"",
"codename":"Qq", "codename":"Qq",
value: "qq", value: "qq",
...@@ -100,6 +107,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => { ...@@ -100,6 +107,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
id: "dingtalk", id: "dingtalk",
label: "钉钉开放平台", label: "钉钉开放平台",
text: "钉钉开放平台", text: "钉钉开放平台",
"class":"",
"data":"", "data":"",
"codename":"Dingtalk", "codename":"Dingtalk",
value: "dingtalk", value: "dingtalk",
...@@ -117,6 +125,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => { ...@@ -117,6 +125,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
id: "200", id: "200",
label: "成功", label: "成功",
text: "成功", text: "成功",
"class":"",
"data":"", "data":"",
"codename":"Item_200", "codename":"Item_200",
"color": "rgba(0, 255, 0, 0)", "color": "rgba(0, 255, 0, 0)",
...@@ -128,6 +137,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => { ...@@ -128,6 +137,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
id: "400", id: "400",
label: "用户不存在", label: "用户不存在",
text: "用户不存在", text: "用户不存在",
"class":"",
"data":"", "data":"",
"codename":"Item_400", "codename":"Item_400",
value: "400", value: "400",
...@@ -138,6 +148,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => { ...@@ -138,6 +148,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
id: "401.1", id: "401.1",
label: "密码错误", label: "密码错误",
text: "密码错误", text: "密码错误",
"class":"",
"data":"", "data":"",
"codename":"Item_3", "codename":"Item_3",
value: "401.1", value: "401.1",
...@@ -148,6 +159,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => { ...@@ -148,6 +159,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
id: "401.2", id: "401.2",
label: "配置错误", label: "配置错误",
text: "配置错误", text: "配置错误",
"class":"",
"data":"", "data":"",
"codename":"Item_4", "codename":"Item_4",
"color": "rgba(22, 9, 170, 1)", "color": "rgba(22, 9, 170, 1)",
...@@ -159,6 +171,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => { ...@@ -159,6 +171,7 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
id: "403.6", id: "403.6",
label: "地址被拒绝", label: "地址被拒绝",
text: "地址被拒绝", text: "地址被拒绝",
"class":"",
"data":"", "data":"",
"codename":"Item_5", "codename":"Item_5",
"color": "rgba(0, 72, 255, 1)", "color": "rgba(0, 72, 255, 1)",
......
...@@ -11,7 +11,7 @@ export class FormButtonModel extends FormDetailModel { ...@@ -11,7 +11,7 @@ export class FormButtonModel extends FormDetailModel {
constructor(opts: any = {}) { constructor(opts: any = {}) {
super(opts); super(opts);
this.disabled = opts.disabled; this.$disabled = opts.disabled;
this.uiaction = opts.uiaction; this.uiaction = opts.uiaction;
} }
...@@ -21,7 +21,7 @@ export class FormButtonModel extends FormDetailModel { ...@@ -21,7 +21,7 @@ export class FormButtonModel extends FormDetailModel {
* @type {boolean} * @type {boolean}
* @memberof FormButtonModel * @memberof FormButtonModel
*/ */
public disabled:boolean = false; private $disabled:boolean = false;
/** /**
* 按钮对应的界面行为 * 按钮对应的界面行为
...@@ -31,4 +31,26 @@ export class FormButtonModel extends FormDetailModel { ...@@ -31,4 +31,26 @@ export class FormButtonModel extends FormDetailModel {
*/ */
public uiaction:any; public uiaction:any;
/**
* 是否启用
*
* @type {boolean}
* @memberof FormButtonModel
*/
public get disabled(): boolean {
return this.$disabled;
}
/**
* 设置是否启用
*
* @memberof FormButtonModel
*/
public set disabled(val: boolean) {
if(this.isPower) {
this.$disabled = val;
}
}
} }
\ No newline at end of file
...@@ -6,6 +6,14 @@ ...@@ -6,6 +6,14 @@
*/ */
export class FormDetailModel { export class FormDetailModel {
/**
* 是否有权限
*
* @type {boolean}
* @memberof FormDetailModel
*/
public isPower: boolean = true;
/** /**
* 成员标题 * 成员标题
* *
...@@ -44,7 +52,7 @@ export class FormDetailModel { ...@@ -44,7 +52,7 @@ export class FormDetailModel {
* @type {boolean} * @type {boolean}
* @memberof FormDetailModel * @memberof FormDetailModel
*/ */
public visible: boolean = true; public $visible: boolean = true;
/** /**
* 成员是否显示(旧) * 成员是否显示(旧)
...@@ -83,12 +91,33 @@ export class FormDetailModel { ...@@ -83,12 +91,33 @@ export class FormDetailModel {
this.detailType = !Object.is(opts.detailType, '') ? opts.detailType : ''; this.detailType = !Object.is(opts.detailType, '') ? opts.detailType : '';
this.form = opts.form ? opts.form : {}; this.form = opts.form ? opts.form : {};
this.name = !Object.is(opts.name, '') ? opts.name : ''; this.name = !Object.is(opts.name, '') ? opts.name : '';
this.visible = opts.visible ? true : false; this.$visible = opts.visible ? true : false;
this.oldVisible = opts.visible ? true : false; this.oldVisible = opts.visible ? true : false;
this.isShowCaption = opts.isShowCaption ? true : false; this.isShowCaption = opts.isShowCaption ? true : false;
this.isControlledContent = opts.isControlledContent ? true : false; this.isControlledContent = opts.isControlledContent ? true : false;
} }
/**
* 设置成员是否隐藏
*
* @memberof FormDetailModel
*/
public set visible(val: boolean) {
if(this.isPower) {
this.$visible = val;
}
}
/**
* 获取成员是否隐藏
*
* @memberof FormDetailModel
*/
public get visible() {
return this.$visible;
}
/** /**
* 设置显示与隐藏 * 设置显示与隐藏
* *
...@@ -96,7 +125,9 @@ export class FormDetailModel { ...@@ -96,7 +125,9 @@ export class FormDetailModel {
* @memberof FormDetailModel * @memberof FormDetailModel
*/ */
public setVisible(state: boolean): void { public setVisible(state: boolean): void {
this.visible = state; if(this.isPower) {
this.visible = state;
}
} }
/** /**
......
export { PanelDetailModel } from './panel-detail';
export { PanelRawitemModel } from './panel-row-item';
export { PanelTabPanelModel } from './panel-tab-panel';
export { PanelTabPageModel } from './panel-tab-page';
export { PanelFieldModel } from './panel-field';
export { PanelContainerModel } from './panel-container';
export { PanelControlModel } from './panel-control';
export { PanelUserControlModel } from './panel-user-control';
export { PanelButtonModel } from './panel-button';
\ No newline at end of file
import { PanelDetailModel } from './panel-detail';
/**
* 按钮模型
*
* @export
* @class PanelButtonModel
* @extends {PanelDetailModel}
*/
export class PanelButtonModel extends PanelDetailModel {
constructor(opts: any = {}) {
super(opts);
this.$disabled = opts.disabled;
this.uiaction = opts.uiaction;
}
/**
* 是否禁用
*
* @type {boolean}
* @memberof PanelButtonModel
*/
private $disabled:boolean = false;
/**
* 按钮对应的界面行为
*
* @type {*}
* @memberof PanelButtonModel
*/
public uiaction:any;
/**
* 是否启用
*
* @type {boolean}
* @memberof PanelButtonModel
*/
public get disabled(): boolean {
return this.$disabled;
}
/**
* 设置是否启用
*
* @memberof PanelButtonModel
*/
public set disabled(val: boolean) {
if(this.isPower) {
this.$disabled = val;
}
}
}
\ No newline at end of file
import { PanelDetailModel } from './panel-detail';
/**
* 面板容器模型
*
* @export
* @class PanelContainerModel
* @extends {PanelDetailModel}
*/
export class PanelContainerModel extends PanelDetailModel {
constructor(opts: any = {}) {
super(opts);
}
}
\ No newline at end of file
import { PanelDetailModel } from './panel-detail';
/**
* 用户控件模型
*
* @export
* @class PanelControlModel
* @extends {PanelDetailModel}
*/
export class PanelControlModel extends PanelDetailModel {
constructor(otps:any = {}) {
super(otps);
}
}
\ No newline at end of file
/**
* 表单成员模型
*
* @export
* @class PanelDetailModel
*/
export class PanelDetailModel {
/**
* 是否有权限
*
* @type {boolean}
* @memberof PanelDetailModel
*/
public isPower: boolean = true;
/**
* 成员标题
*
* @type {string}
* @memberof PanelDetailModel
*/
public caption: string = '';
/**
* 成员类型
*
* @type {string}
* @memberof PanelDetailModel
*/
public itemType: string = '';
/**
* 面板对象
*
* @type {*}
* @memberof PanelDetailModel
*/
public panel: any = null;
/**
* 成员名称
*
* @type {string}
* @memberof PanelDetailModel
*/
public name: string = '';
/**
* 成员是否显示
*
* @type {boolean}
* @memberof PanelDetailModel
*/
public $visible: boolean = true;
/**
* 成员是否显示(旧)
*
* @type {boolean}
* @memberof PanelDetailModel
*/
public oldVisible: boolean = true;
/**
* 成员是否显示标题
*
* @type {boolean}
* @memberof PanelDetailModel
*/
public isShowCaption: boolean = true;
/**
* Creates an instance of PanelDetailModel.
* PanelDetailModel 实例
*
* @param {*} [opts={}]
* @memberof PanelDetailModel
*/
constructor(opts: any = {}) {
this.caption = !Object.is(opts.caption, '') ? opts.caption : '';
this.itemType = !Object.is(opts.itemType, '') ? opts.itemType : '';
this.panel = opts.panel ? opts.panel : {};
this.name = !Object.is(opts.name, '') ? opts.name : '';
this.$visible = opts.visible ? true : false;
this.oldVisible = opts.visible ? true : false;
this.isShowCaption = opts.isShowCaption ? true : false;
}
/**
* 设置成员是否隐藏
*
* @memberof PanelDetailModel
*/
public set visible(val: boolean) {
if(this.isPower) {
this.$visible = val;
}
}
/**
* 获取成员是否隐藏
*
* @memberof PanelDetailModel
*/
public get visible() {
return this.$visible;
}
/**
* 设置显示与隐藏
*
* @param {boolean} state
* @memberof PanelDetailModel
*/
public setVisible(state: boolean): void {
if(this.isPower) {
this.visible = state;
}
}
/**
* 设置显示标题栏
*
* @param {boolean} state
* @memberof PanelDetailModel
*/
public setShowCaption(state: boolean): void {
this.isShowCaption = state;
}
}
\ No newline at end of file
import { PanelDetailModel } from './panel-detail';
/**
* 面板属性项模型
*
* @export
* @class PanelFieldModel
* @extends {PanelDetailModel}
*/
export class PanelFieldModel extends PanelDetailModel {
/**
* 是否启用
*
* @type {boolean}
* @memberof PanelFieldModel
*/
public disabled: boolean = false;
/**
* 错误信息
*
* @type {string}
* @memberof PanelFieldModel
*/
public error: string = '';
/**
* 表单项启用条件
*
* 0 不启用
* 1 新建
* 2 更新
* 3 全部启用
*
* @type {(number | 0 | 1 | 2 | 3)}
* @memberof PanelFieldModel
*/
public enableCond: number | 0 | 1 | 2 | 3 = 3;
/**
* Creates an instance of PanelFieldModel.
* PanelFieldModel 实例
*
* @param {*} [opts={}]
* @memberof PanelFieldModel
*/
constructor(opts: any = {}) {
super(opts);
this.disabled = opts.disabled ? true : false;
this.enableCond = opts.enableCond;
}
/**
* 设置是否启用
*
* @param {boolean} state
* @memberof PanelFieldModel
*/
public setDisabled(state: boolean): void {
this.disabled = state;
}
/**
* 设置信息内容
*
* @param {string} error
* @memberof PanelFieldModel
*/
public setError(error: string): void {
this.error = error;
}
/**
* 设置是否启用
*
* @param {string} srfuf
* @memberof PanelFieldModel
*/
public setEnableCond(srfuf: string): void {
// 是否有权限
const isReadOk: boolean = true;
const _srfuf: number = parseInt(srfuf, 10);
let state: boolean = true;
if (isReadOk) {
if (_srfuf === 1) {
if ((this.enableCond & 2) === 2) {
state = false;
}
} else {
if ((this.enableCond & 1) === 1) {
state = false;
}
}
}
this.setDisabled(state);
}
}
\ No newline at end of file
import { PanelDetailModel } from './panel-detail';
/**
* 直接内容模型
*
* @export
* @class PanelRawitemModel
* @extends {PanelDetailModel}
*/
export class PanelRawitemModel extends PanelDetailModel {
constructor(opts: any = {}) {
super(opts);
}
}
\ No newline at end of file
import { PanelDetailModel } from './panel-detail';
import { PanelTabPanelModel } from './panel-tab-panel';
/**
* 分页面板模型
*
* @export
* @class PanelTabPageModel
* @extends {PanelDetailModel}
*/
export class PanelTabPageModel extends PanelDetailModel {
/**
* Creates an instance of PanelTabPageModel.
* PanelTabPageModel 实例
*
* @param {*} [opts={}]
* @memberof PanelTabPageModel
*/
constructor(opts: any = {}) {
super(opts);
}
/**
* 设置分页是否启用
*
* @param {boolean} state
* @memberof PanelTabPageModel
*/
public setVisible(state: boolean): void {
this.visible = state;
const tabPanel = this.getTabPanelModel();
if (tabPanel) {
tabPanel.setActiviePage();
}
}
/**
* 获取分页面板
*
* @returns {(PanelTabPanelModel | null)}
* @memberof PanelTabPageModel
*/
public getTabPanelModel(): PanelTabPanelModel | null {
if (!this.panel) {
return null;
}
const tabPanels: any[] = Object.values(this.panel.detailsModel).filter((model: any) => Object.is(model.itemType, 'TABPANEL'));
let index = tabPanels.findIndex((tabPanel: any) => {
return tabPanel.tabPages.some((tabPag: any) => Object.is(tabPag.name, this.name));
});
if (index === -1) {
return null;
}
const tabPanel: PanelTabPanelModel = tabPanels[index];
return tabPanel;
}
}
\ No newline at end of file
import { PanelDetailModel } from './panel-detail';
/**
* 分页部件模型
*
* @export
* @class PanelTabPanelModel
* @extends {PanelDetailModel}
*/
export class PanelTabPanelModel extends PanelDetailModel {
/**
* 被激活分页
*
* @type {string}
* @memberof PanelTabPanelModel
*/
public activiedPage: string = '';
/**
* 选中激活状态
*
* @type {string}
* @memberof PanelTabPanelModel
*/
public clickActiviePage: string = '';
/**
* 分页子成员
*
* @type {any[]}
* @memberof PanelTabPanelModel
*/
public tabPages: any[] = [];
/**
* Creates an instance of PanelTabPanelModel.
* PanelTabPanelModel 实例
*
* @param {*} [opts={}]
* @memberof PanelTabPanelModel
*/
constructor(opts: any = {}) {
super(opts);
this.tabPages = [...opts.tabPages];
if (this.tabPages.length > 0) {
this.activiedPage = this.tabPages[0].name;
}
}
/**
* 设置激活分页
*
* @memberof PanelTabPanelModel
*/
public setActiviePage(): void {
if (!this.panel) {
return;
}
const detailsModel: any = this.panel.detailsModel;
const index = this.tabPages.findIndex((tabpage: any) => Object.is(tabpage.name, this.clickActiviePage) && Object.is(tabpage.name, this.activiedPage) && detailsModel[tabpage.name].visible);
if (index !== - 1) {
return;
}
this.tabPages.some((tabpage: any) => {
if (detailsModel[tabpage.name].visible) {
this.activiedPage = tabpage.name;
return true;
}
return false;
});
}
/**
* 选中页面
*
* @param {*} $event
* @returns {void}
* @memberof PanelTabPanelModel
*/
public clickPage($event: any): void {
if (!$event) {
return;
}
this.clickActiviePage = $event;
this.activiedPage = $event;
}
}
\ No newline at end of file
import { PanelDetailModel } from './panel-detail';
/**
* 用户控件模型
*
* @export
* @class PanelUserControlModel
* @extends {PanelDetailModel}
*/
export class PanelUserControlModel extends PanelDetailModel {
constructor(otps:any = {}) {
super(otps);
}
}
\ No newline at end of file
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
@import '../theme/blue.theme.less'; @import '../theme/blue.theme.less';
@import '../theme/dark-blue.theme.less'; @import '../theme/dark-blue.theme.less';
@import '../theme/default.theme.less'; @import '../theme/default.theme.less';
@import './app-code-list.less';
@import './var.css'; @import './var.css';
.ibiz-page-tag .tags-body .tags-container .ivu-tag.tag-is-active .ivu-tag-text { .ibiz-page-tag .tags-body .tags-container .ivu-tag.tag-is-active .ivu-tag-text {
......
...@@ -119,8 +119,12 @@ export class StudioActionUtil { ...@@ -119,8 +119,12 @@ export class StudioActionUtil {
}, '*'); }, '*');
Vue.prototype.$message.warning('请在已打开的配置平台查看!'); Vue.prototype.$message.warning('请在已打开的配置平台查看!');
} else { } else {
console.log(`${Environment.StudioUrl}?ov=${JSON.stringify(params)}#/common_slnindex/srfkeys=${Environment.SlnId}/sysdesign_psdevslnsysmodeltreeexpview/srfkey=${Environment.SysId}`); if(Environment.debugOpenMode === 'sln'){
this.studioWin = window.open(`${Environment.StudioUrl}?ov=${encodeURIComponent(JSON.stringify(params))}#/common_slnindex/srfkeys=${Environment.SlnId}/sysdesign_psdevslnsysmodeltreeexpview/srfkey=${Environment.SysId}`, '_blank'); console.log("打开sln未支持");
// this.studioWin = window.open(`${Environment.StudioUrl}?ov=${encodeURIComponent(JSON.stringify(params))}#/common_slnindex/srfkeys=${Environment.SlnId}/sysdesign_psdevslnsysmodeltreeexpview/srfkey=${Environment.SysId}`, '_blank');
}else{
this.studioWin = window.open(`${Environment.StudioUrl}?ov=${encodeURIComponent(JSON.stringify(params))}#/common_mosindex/srfkeys=${Environment.SysId}`, '_blank');
}
} }
} }
} }
......
...@@ -252,9 +252,10 @@ export class ViewTool { ...@@ -252,9 +252,10 @@ export class ViewTool {
* @memberof ViewTool * @memberof ViewTool
*/ */
public static calcActionItemAuthState(data:any,ActionModel:any,UIService:any){ public static calcActionItemAuthState(data:any,ActionModel:any,UIService:any){
let result: any[] = [];
for (const key in ActionModel) { for (const key in ActionModel) {
if (!ActionModel.hasOwnProperty(key)) { if (!ActionModel.hasOwnProperty(key)) {
return; return result;
} }
const _item = ActionModel[key]; const _item = ActionModel[key];
if(_item && _item['dataaccaction'] && UIService){ if(_item && _item['dataaccaction'] && UIService){
...@@ -282,7 +283,9 @@ export class ViewTool { ...@@ -282,7 +283,9 @@ export class ViewTool {
_item.visabled = true; _item.visabled = true;
_item.disabled = false; _item.disabled = false;
} }
result.push(dataActionResult);
} }
} }
return result;
} }
} }
\ No newline at end of file
...@@ -736,7 +736,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -736,7 +736,7 @@ export default class MainBase extends Vue implements ControlInterface {
* @memberof MainBase * @memberof MainBase
*/ */
public handleMenusResource(inputMenus:Array<any>){ public handleMenusResource(inputMenus:Array<any>){
if(Environment.enablePermissionValid){ if(this.$store.getters['authresource/getEnablePermissionValid']){
this.computedEffectiveMenus(inputMenus); this.computedEffectiveMenus(inputMenus);
this.computeParentMenus(inputMenus); this.computeParentMenus(inputMenus);
} }
......
...@@ -142,6 +142,7 @@ import SysAppUIService from '@/uiservice/sys-app/sys-app-ui-service'; ...@@ -142,6 +142,7 @@ import SysAppUIService from '@/uiservice/sys-app/sys-app-ui-service';
import { FormButtonModel, FormPageModel, FormItemModel, FormDRUIPartModel, FormPartModel, FormGroupPanelModel, FormIFrameModel, FormRowItemModel, FormTabPageModel, FormTabPanelModel, FormUserControlModel } from '@/model/form-detail'; import { FormButtonModel, FormPageModel, FormItemModel, FormDRUIPartModel, FormPartModel, FormGroupPanelModel, FormIFrameModel, FormRowItemModel, FormTabPageModel, FormTabPanelModel, FormUserControlModel } from '@/model/form-detail';
import { debounceTime, distinctUntilChanged } from 'rxjs/operators'; import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
import schema from 'async-validator'; import schema from 'async-validator';
import { Environment } from '@/environments/environment';
@Component({ @Component({
...@@ -1051,6 +1052,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1051,6 +1052,7 @@ export default class MainBase extends Vue implements ControlInterface {
Object.assign(this.context,{sysapp:data.sysapp}) Object.assign(this.context,{sysapp:data.sysapp})
} }
this.setFormEnableCond(data); this.setFormEnableCond(data);
this.computeButtonState(data);
this.fillForm(data,action); this.fillForm(data,action);
this.oldData = {}; this.oldData = {};
Object.assign(this.oldData, JSON.parse(JSON.stringify(this.data))); Object.assign(this.oldData, JSON.parse(JSON.stringify(this.data)));
...@@ -1228,10 +1230,12 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1228,10 +1230,12 @@ export default class MainBase extends Vue implements ControlInterface {
if(this.detailsModel && Object.keys(this.detailsModel).length >0){ if(this.detailsModel && Object.keys(this.detailsModel).length >0){
Object.keys(this.detailsModel).forEach((name:any) =>{ Object.keys(this.detailsModel).forEach((name:any) =>{
if(this.detailsModel[name] && this.detailsModel[name].uiaction && this.detailsModel[name].uiaction.dataaccaction && Object.is(this.detailsModel[name].detailType,"BUTTON")){ if(this.detailsModel[name] && this.detailsModel[name].uiaction && this.detailsModel[name].uiaction.dataaccaction && Object.is(this.detailsModel[name].detailType,"BUTTON")){
this.detailsModel[name].isPower = true;
let tempUIAction:any = JSON.parse(JSON.stringify(this.detailsModel[name].uiaction)); let tempUIAction:any = JSON.parse(JSON.stringify(this.detailsModel[name].uiaction));
ViewTool.calcActionItemAuthState(targetData,[tempUIAction],this.appUIService); let result: any[] = ViewTool.calcActionItemAuthState(targetData,[tempUIAction],this.appUIService);
this.detailsModel[name].visible = tempUIAction.visabled; this.detailsModel[name].visible = tempUIAction.visabled;
this.detailsModel[name].disabled = tempUIAction.disabled; this.detailsModel[name].disabled = tempUIAction.disabled;
this.detailsModel[name].isPower = result[0] === 1 ? true : false;
} }
}) })
} }
...@@ -1300,7 +1304,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1300,7 +1304,7 @@ export default class MainBase extends Vue implements ControlInterface {
this.refresh(data); this.refresh(data);
} }
if (Object.is('panelaction', action)) { if (Object.is('panelaction', action)) {
this.panelAction(data.action,data.emitAction,data); this.panelAction(data.action,data.emitAction,data.data);
} }
}); });
} }
...@@ -1411,7 +1415,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1411,7 +1415,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'load'); this.onFormLoad(data,'load');
this.$emit('load', data); this.$emit('load', data);
this.computeButtonState(data);
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'load', data: data }); this.formState.next({ type: 'load', data: data });
}); });
...@@ -1456,7 +1459,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1456,7 +1459,6 @@ export default class MainBase extends Vue implements ControlInterface {
this.data.appid = null; this.data.appid = null;
data.sysapp = null; data.sysapp = null;
this.$emit('load', data); this.$emit('load', data);
this.computeButtonState(data);
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'load', data: data }); this.formState.next({ type: 'load', data: data });
}); });
...@@ -1514,7 +1516,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1514,7 +1516,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'autoSave'); this.onFormLoad(data,'autoSave');
this.$emit('save', data); this.$emit('save', data);
this.computeButtonState(data);
AppCenterService.notifyMessage({name:"SysApp",action:'appRefresh',data:data}); AppCenterService.notifyMessage({name:"SysApp",action:'appRefresh',data:data});
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'save', data: data }); this.formState.next({ type: 'save', data: data });
...@@ -1593,7 +1594,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1593,7 +1594,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'save'); this.onFormLoad(data,'save');
this.$emit('save', data); this.$emit('save', data);
this.computeButtonState(data);
AppCenterService.notifyMessage({name:"SysApp",action:'appRefresh',data:data}); AppCenterService.notifyMessage({name:"SysApp",action:'appRefresh',data:data});
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'save', data: data }); this.formState.next({ type: 'save', data: data });
......
...@@ -40,10 +40,14 @@ ...@@ -40,10 +40,14 @@
} }
} }
} }
// 表单行间距
.app-form{ .app-form{
// 表单行间距
.app-form-item{ .app-form-item{
margin-bottom: 20px; margin-bottom: 20px;
} }
// 表单按钮margin
.app-form-button{
margin:0 6px;
}
} }
// this is less // this is less
...@@ -292,6 +292,7 @@ import MainService from './main-grid-service'; ...@@ -292,6 +292,7 @@ import MainService from './main-grid-service';
import SysAppUIService from '@/uiservice/sys-app/sys-app-ui-service'; import SysAppUIService from '@/uiservice/sys-app/sys-app-ui-service';
import CodeListService from "@service/app/codelist-service"; import CodeListService from "@service/app/codelist-service";
import { FormItemModel } from '@/model/form-detail'; import { FormItemModel } from '@/model/form-detail';
import { Environment } from '@/environments/environment';
@Component({ @Component({
...@@ -866,8 +867,8 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -866,8 +867,8 @@ export default class MainBase extends Vue implements ControlInterface {
* @memberof MainBase * @memberof MainBase
*/ */
public getActionState(data:any){ public getActionState(data:any){
let targetData:any = this.transformData(data);
let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel)); let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel));
let targetData:any = this.transformData(data);
ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService); ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService);
return tempActionModel; return tempActionModel;
} }
......
...@@ -173,6 +173,7 @@ import MainService from './main-grid-service'; ...@@ -173,6 +173,7 @@ import MainService from './main-grid-service';
import SysAuthLogUIService from '@/uiservice/sys-auth-log/sys-auth-log-ui-service'; import SysAuthLogUIService from '@/uiservice/sys-auth-log/sys-auth-log-ui-service';
import CodeListService from "@service/app/codelist-service"; import CodeListService from "@service/app/codelist-service";
import { FormItemModel } from '@/model/form-detail'; import { FormItemModel } from '@/model/form-detail';
import { Environment } from '@/environments/environment';
@Component({ @Component({
...@@ -739,8 +740,8 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -739,8 +740,8 @@ export default class MainBase extends Vue implements ControlInterface {
* @memberof MainBase * @memberof MainBase
*/ */
public getActionState(data:any){ public getActionState(data:any){
let targetData:any = this.transformData(data);
let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel)); let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel));
let targetData:any = this.transformData(data);
ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService); ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService);
return tempActionModel; return tempActionModel;
} }
......
...@@ -111,10 +111,7 @@ ...@@ -111,10 +111,7 @@
</i-col> </i-col>
<i-col v-show="detailsModel.lic.visible" :style="{}" :lg="{ span: 24, offset: 0 }"> <i-col v-show="detailsModel.lic.visible" :style="{}" :lg="{ span: 24, offset: 0 }">
<app-form-item name='lic' :itemRules="this.rules().lic" class='' :caption="$t('entities.sysopenaccess.main_form.details.lic')" uiStyle="DEFAULT" :labelWidth="130" :isShowCaption="true" :error="detailsModel.lic.error" :isEmptyCaption="false" labelPos="LEFT"> <ibiz-file-upload @formitemvaluechange="onFormItemValueChange" :data="data"></ibiz-file-upload>
<app-file-upload :formState="formState" :ignorefieldvaluechange="ignorefieldvaluechange" @formitemvaluechange="onFormItemValueChange" :data="JSON.stringify(this.data)" name='lic' :value="data.lic" :disabled="detailsModel.lic.disabled" :uploadparams='{}' :exportparams='{}' style="overflow: auto;"></app-file-upload>
</app-form-item>
</i-col> </i-col>
...@@ -142,6 +139,7 @@ import SysOpenAccessUIService from '@/uiservice/sys-open-access/sys-open-access- ...@@ -142,6 +139,7 @@ import SysOpenAccessUIService from '@/uiservice/sys-open-access/sys-open-access-
import { FormButtonModel, FormPageModel, FormItemModel, FormDRUIPartModel, FormPartModel, FormGroupPanelModel, FormIFrameModel, FormRowItemModel, FormTabPageModel, FormTabPanelModel, FormUserControlModel } from '@/model/form-detail'; import { FormButtonModel, FormPageModel, FormItemModel, FormDRUIPartModel, FormPartModel, FormGroupPanelModel, FormIFrameModel, FormRowItemModel, FormTabPageModel, FormTabPanelModel, FormUserControlModel } from '@/model/form-detail';
import { debounceTime, distinctUntilChanged } from 'rxjs/operators'; import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
import schema from 'async-validator'; import schema from 'async-validator';
import { Environment } from '@/environments/environment';
@Component({ @Component({
...@@ -1051,6 +1049,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1051,6 +1049,7 @@ export default class MainBase extends Vue implements ControlInterface {
Object.assign(this.context,{sysopenaccess:data.sysopenaccess}) Object.assign(this.context,{sysopenaccess:data.sysopenaccess})
} }
this.setFormEnableCond(data); this.setFormEnableCond(data);
this.computeButtonState(data);
this.fillForm(data,action); this.fillForm(data,action);
this.oldData = {}; this.oldData = {};
Object.assign(this.oldData, JSON.parse(JSON.stringify(this.data))); Object.assign(this.oldData, JSON.parse(JSON.stringify(this.data)));
...@@ -1228,10 +1227,12 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1228,10 +1227,12 @@ export default class MainBase extends Vue implements ControlInterface {
if(this.detailsModel && Object.keys(this.detailsModel).length >0){ if(this.detailsModel && Object.keys(this.detailsModel).length >0){
Object.keys(this.detailsModel).forEach((name:any) =>{ Object.keys(this.detailsModel).forEach((name:any) =>{
if(this.detailsModel[name] && this.detailsModel[name].uiaction && this.detailsModel[name].uiaction.dataaccaction && Object.is(this.detailsModel[name].detailType,"BUTTON")){ if(this.detailsModel[name] && this.detailsModel[name].uiaction && this.detailsModel[name].uiaction.dataaccaction && Object.is(this.detailsModel[name].detailType,"BUTTON")){
this.detailsModel[name].isPower = true;
let tempUIAction:any = JSON.parse(JSON.stringify(this.detailsModel[name].uiaction)); let tempUIAction:any = JSON.parse(JSON.stringify(this.detailsModel[name].uiaction));
ViewTool.calcActionItemAuthState(targetData,[tempUIAction],this.appUIService); let result: any[] = ViewTool.calcActionItemAuthState(targetData,[tempUIAction],this.appUIService);
this.detailsModel[name].visible = tempUIAction.visabled; this.detailsModel[name].visible = tempUIAction.visabled;
this.detailsModel[name].disabled = tempUIAction.disabled; this.detailsModel[name].disabled = tempUIAction.disabled;
this.detailsModel[name].isPower = result[0] === 1 ? true : false;
} }
}) })
} }
...@@ -1300,7 +1301,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1300,7 +1301,7 @@ export default class MainBase extends Vue implements ControlInterface {
this.refresh(data); this.refresh(data);
} }
if (Object.is('panelaction', action)) { if (Object.is('panelaction', action)) {
this.panelAction(data.action,data.emitAction,data); this.panelAction(data.action,data.emitAction,data.data);
} }
}); });
} }
...@@ -1411,7 +1412,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1411,7 +1412,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'load'); this.onFormLoad(data,'load');
this.$emit('load', data); this.$emit('load', data);
this.computeButtonState(data);
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'load', data: data }); this.formState.next({ type: 'load', data: data });
}); });
...@@ -1455,7 +1455,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1455,7 +1455,6 @@ export default class MainBase extends Vue implements ControlInterface {
this.onFormLoad(data,'loadDraft'); this.onFormLoad(data,'loadDraft');
data.sysopenaccess = null; data.sysopenaccess = null;
this.$emit('load', data); this.$emit('load', data);
this.computeButtonState(data);
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'load', data: data }); this.formState.next({ type: 'load', data: data });
}); });
...@@ -1513,7 +1512,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1513,7 +1512,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'autoSave'); this.onFormLoad(data,'autoSave');
this.$emit('save', data); this.$emit('save', data);
this.computeButtonState(data);
AppCenterService.notifyMessage({name:"SysOpenAccess",action:'appRefresh',data:data}); AppCenterService.notifyMessage({name:"SysOpenAccess",action:'appRefresh',data:data});
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'save', data: data }); this.formState.next({ type: 'save', data: data });
...@@ -1592,7 +1590,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1592,7 +1590,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'save'); this.onFormLoad(data,'save');
this.$emit('save', data); this.$emit('save', data);
this.computeButtonState(data);
AppCenterService.notifyMessage({name:"SysOpenAccess",action:'appRefresh',data:data}); AppCenterService.notifyMessage({name:"SysOpenAccess",action:'appRefresh',data:data});
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'save', data: data }); this.formState.next({ type: 'save', data: data });
......
...@@ -40,10 +40,14 @@ ...@@ -40,10 +40,14 @@
} }
} }
} }
// 表单行间距
.app-form{ .app-form{
// 表单行间距
.app-form-item{ .app-form-item{
margin-bottom: 20px; margin-bottom: 20px;
} }
// 表单按钮margin
.app-form-button{
margin:0 6px;
}
} }
// this is less // this is less
...@@ -163,6 +163,7 @@ import MainService from './main-grid-service'; ...@@ -163,6 +163,7 @@ import MainService from './main-grid-service';
import SysOpenAccessUIService from '@/uiservice/sys-open-access/sys-open-access-ui-service'; import SysOpenAccessUIService from '@/uiservice/sys-open-access/sys-open-access-ui-service';
import CodeListService from "@service/app/codelist-service"; import CodeListService from "@service/app/codelist-service";
import { FormItemModel } from '@/model/form-detail'; import { FormItemModel } from '@/model/form-detail';
import { Environment } from '@/environments/environment';
@Component({ @Component({
...@@ -721,8 +722,8 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -721,8 +722,8 @@ export default class MainBase extends Vue implements ControlInterface {
* @memberof MainBase * @memberof MainBase
*/ */
public getActionState(data:any){ public getActionState(data:any){
let targetData:any = this.transformData(data);
let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel)); let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel));
let targetData:any = this.transformData(data);
ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService); ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService);
return tempActionModel; return tempActionModel;
} }
......
...@@ -37,6 +37,7 @@ import SysPermissionUIService from '@/uiservice/sys-permission/sys-permission-ui ...@@ -37,6 +37,7 @@ import SysPermissionUIService from '@/uiservice/sys-permission/sys-permission-ui
import { FormButtonModel, FormPageModel, FormItemModel, FormDRUIPartModel, FormPartModel, FormGroupPanelModel, FormIFrameModel, FormRowItemModel, FormTabPageModel, FormTabPanelModel, FormUserControlModel } from '@/model/form-detail'; import { FormButtonModel, FormPageModel, FormItemModel, FormDRUIPartModel, FormPartModel, FormGroupPanelModel, FormIFrameModel, FormRowItemModel, FormTabPageModel, FormTabPanelModel, FormUserControlModel } from '@/model/form-detail';
import { debounceTime, distinctUntilChanged } from 'rxjs/operators'; import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
import schema from 'async-validator'; import schema from 'async-validator';
import { Environment } from '@/environments/environment';
@Component({ @Component({
...@@ -811,6 +812,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -811,6 +812,7 @@ export default class MainBase extends Vue implements ControlInterface {
Object.assign(this.context,{syspermission:data.syspermission}) Object.assign(this.context,{syspermission:data.syspermission})
} }
this.setFormEnableCond(data); this.setFormEnableCond(data);
this.computeButtonState(data);
this.fillForm(data,action); this.fillForm(data,action);
this.oldData = {}; this.oldData = {};
Object.assign(this.oldData, JSON.parse(JSON.stringify(this.data))); Object.assign(this.oldData, JSON.parse(JSON.stringify(this.data)));
...@@ -988,10 +990,12 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -988,10 +990,12 @@ export default class MainBase extends Vue implements ControlInterface {
if(this.detailsModel && Object.keys(this.detailsModel).length >0){ if(this.detailsModel && Object.keys(this.detailsModel).length >0){
Object.keys(this.detailsModel).forEach((name:any) =>{ Object.keys(this.detailsModel).forEach((name:any) =>{
if(this.detailsModel[name] && this.detailsModel[name].uiaction && this.detailsModel[name].uiaction.dataaccaction && Object.is(this.detailsModel[name].detailType,"BUTTON")){ if(this.detailsModel[name] && this.detailsModel[name].uiaction && this.detailsModel[name].uiaction.dataaccaction && Object.is(this.detailsModel[name].detailType,"BUTTON")){
this.detailsModel[name].isPower = true;
let tempUIAction:any = JSON.parse(JSON.stringify(this.detailsModel[name].uiaction)); let tempUIAction:any = JSON.parse(JSON.stringify(this.detailsModel[name].uiaction));
ViewTool.calcActionItemAuthState(targetData,[tempUIAction],this.appUIService); let result: any[] = ViewTool.calcActionItemAuthState(targetData,[tempUIAction],this.appUIService);
this.detailsModel[name].visible = tempUIAction.visabled; this.detailsModel[name].visible = tempUIAction.visabled;
this.detailsModel[name].disabled = tempUIAction.disabled; this.detailsModel[name].disabled = tempUIAction.disabled;
this.detailsModel[name].isPower = result[0] === 1 ? true : false;
} }
}) })
} }
...@@ -1060,7 +1064,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1060,7 +1064,7 @@ export default class MainBase extends Vue implements ControlInterface {
this.refresh(data); this.refresh(data);
} }
if (Object.is('panelaction', action)) { if (Object.is('panelaction', action)) {
this.panelAction(data.action,data.emitAction,data); this.panelAction(data.action,data.emitAction,data.data);
} }
}); });
} }
...@@ -1171,7 +1175,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1171,7 +1175,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'load'); this.onFormLoad(data,'load');
this.$emit('load', data); this.$emit('load', data);
this.computeButtonState(data);
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'load', data: data }); this.formState.next({ type: 'load', data: data });
}); });
...@@ -1215,7 +1218,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1215,7 +1218,6 @@ export default class MainBase extends Vue implements ControlInterface {
this.onFormLoad(data,'loadDraft'); this.onFormLoad(data,'loadDraft');
data.syspermission = null; data.syspermission = null;
this.$emit('load', data); this.$emit('load', data);
this.computeButtonState(data);
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'load', data: data }); this.formState.next({ type: 'load', data: data });
}); });
...@@ -1273,7 +1275,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1273,7 +1275,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'autoSave'); this.onFormLoad(data,'autoSave');
this.$emit('save', data); this.$emit('save', data);
this.computeButtonState(data);
AppCenterService.notifyMessage({name:"SysPermission",action:'appRefresh',data:data}); AppCenterService.notifyMessage({name:"SysPermission",action:'appRefresh',data:data});
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'save', data: data }); this.formState.next({ type: 'save', data: data });
...@@ -1352,7 +1353,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1352,7 +1353,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'save'); this.onFormLoad(data,'save');
this.$emit('save', data); this.$emit('save', data);
this.computeButtonState(data);
AppCenterService.notifyMessage({name:"SysPermission",action:'appRefresh',data:data}); AppCenterService.notifyMessage({name:"SysPermission",action:'appRefresh',data:data});
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'save', data: data }); this.formState.next({ type: 'save', data: data });
......
...@@ -40,10 +40,14 @@ ...@@ -40,10 +40,14 @@
} }
} }
} }
// 表单行间距
.app-form{ .app-form{
// 表单行间距
.app-form-item{ .app-form-item{
margin-bottom: 20px; margin-bottom: 20px;
} }
// 表单按钮margin
.app-form-button{
margin:0 6px;
}
} }
// this is less // this is less
...@@ -99,6 +99,7 @@ import MainService from './main-grid-service'; ...@@ -99,6 +99,7 @@ import MainService from './main-grid-service';
import SysPermissionUIService from '@/uiservice/sys-permission/sys-permission-ui-service'; import SysPermissionUIService from '@/uiservice/sys-permission/sys-permission-ui-service';
import CodeListService from "@service/app/codelist-service"; import CodeListService from "@service/app/codelist-service";
import { FormItemModel } from '@/model/form-detail'; import { FormItemModel } from '@/model/form-detail';
import { Environment } from '@/environments/environment';
@Component({ @Component({
...@@ -603,8 +604,8 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -603,8 +604,8 @@ export default class MainBase extends Vue implements ControlInterface {
* @memberof MainBase * @memberof MainBase
*/ */
public getActionState(data:any){ public getActionState(data:any){
let targetData:any = this.transformData(data);
let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel)); let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel));
let targetData:any = this.transformData(data);
ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService); ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService);
return tempActionModel; return tempActionModel;
} }
......
...@@ -85,6 +85,7 @@ import SysRolePermissionUIService from '@/uiservice/sys-role-permission/sys-role ...@@ -85,6 +85,7 @@ import SysRolePermissionUIService from '@/uiservice/sys-role-permission/sys-role
import { FormButtonModel, FormPageModel, FormItemModel, FormDRUIPartModel, FormPartModel, FormGroupPanelModel, FormIFrameModel, FormRowItemModel, FormTabPageModel, FormTabPanelModel, FormUserControlModel } from '@/model/form-detail'; import { FormButtonModel, FormPageModel, FormItemModel, FormDRUIPartModel, FormPartModel, FormGroupPanelModel, FormIFrameModel, FormRowItemModel, FormTabPageModel, FormTabPanelModel, FormUserControlModel } from '@/model/form-detail';
import { debounceTime, distinctUntilChanged } from 'rxjs/operators'; import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
import schema from 'async-validator'; import schema from 'async-validator';
import { Environment } from '@/environments/environment';
@Component({ @Component({
...@@ -928,6 +929,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -928,6 +929,7 @@ export default class MainBase extends Vue implements ControlInterface {
Object.assign(this.context,{sysrolepermission:data.sysrolepermission}) Object.assign(this.context,{sysrolepermission:data.sysrolepermission})
} }
this.setFormEnableCond(data); this.setFormEnableCond(data);
this.computeButtonState(data);
this.fillForm(data,action); this.fillForm(data,action);
this.oldData = {}; this.oldData = {};
Object.assign(this.oldData, JSON.parse(JSON.stringify(this.data))); Object.assign(this.oldData, JSON.parse(JSON.stringify(this.data)));
...@@ -1105,10 +1107,12 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1105,10 +1107,12 @@ export default class MainBase extends Vue implements ControlInterface {
if(this.detailsModel && Object.keys(this.detailsModel).length >0){ if(this.detailsModel && Object.keys(this.detailsModel).length >0){
Object.keys(this.detailsModel).forEach((name:any) =>{ Object.keys(this.detailsModel).forEach((name:any) =>{
if(this.detailsModel[name] && this.detailsModel[name].uiaction && this.detailsModel[name].uiaction.dataaccaction && Object.is(this.detailsModel[name].detailType,"BUTTON")){ if(this.detailsModel[name] && this.detailsModel[name].uiaction && this.detailsModel[name].uiaction.dataaccaction && Object.is(this.detailsModel[name].detailType,"BUTTON")){
this.detailsModel[name].isPower = true;
let tempUIAction:any = JSON.parse(JSON.stringify(this.detailsModel[name].uiaction)); let tempUIAction:any = JSON.parse(JSON.stringify(this.detailsModel[name].uiaction));
ViewTool.calcActionItemAuthState(targetData,[tempUIAction],this.appUIService); let result: any[] = ViewTool.calcActionItemAuthState(targetData,[tempUIAction],this.appUIService);
this.detailsModel[name].visible = tempUIAction.visabled; this.detailsModel[name].visible = tempUIAction.visabled;
this.detailsModel[name].disabled = tempUIAction.disabled; this.detailsModel[name].disabled = tempUIAction.disabled;
this.detailsModel[name].isPower = result[0] === 1 ? true : false;
} }
}) })
} }
...@@ -1177,7 +1181,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1177,7 +1181,7 @@ export default class MainBase extends Vue implements ControlInterface {
this.refresh(data); this.refresh(data);
} }
if (Object.is('panelaction', action)) { if (Object.is('panelaction', action)) {
this.panelAction(data.action,data.emitAction,data); this.panelAction(data.action,data.emitAction,data.data);
} }
}); });
} }
...@@ -1288,7 +1292,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1288,7 +1292,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'load'); this.onFormLoad(data,'load');
this.$emit('load', data); this.$emit('load', data);
this.computeButtonState(data);
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'load', data: data }); this.formState.next({ type: 'load', data: data });
}); });
...@@ -1332,7 +1335,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1332,7 +1335,6 @@ export default class MainBase extends Vue implements ControlInterface {
this.onFormLoad(data,'loadDraft'); this.onFormLoad(data,'loadDraft');
data.sysrolepermission = null; data.sysrolepermission = null;
this.$emit('load', data); this.$emit('load', data);
this.computeButtonState(data);
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'load', data: data }); this.formState.next({ type: 'load', data: data });
}); });
...@@ -1390,7 +1392,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1390,7 +1392,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'autoSave'); this.onFormLoad(data,'autoSave');
this.$emit('save', data); this.$emit('save', data);
this.computeButtonState(data);
AppCenterService.notifyMessage({name:"SysRolePermission",action:'appRefresh',data:data}); AppCenterService.notifyMessage({name:"SysRolePermission",action:'appRefresh',data:data});
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'save', data: data }); this.formState.next({ type: 'save', data: data });
...@@ -1469,7 +1470,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1469,7 +1470,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'save'); this.onFormLoad(data,'save');
this.$emit('save', data); this.$emit('save', data);
this.computeButtonState(data);
AppCenterService.notifyMessage({name:"SysRolePermission",action:'appRefresh',data:data}); AppCenterService.notifyMessage({name:"SysRolePermission",action:'appRefresh',data:data});
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'save', data: data }); this.formState.next({ type: 'save', data: data });
......
...@@ -40,10 +40,14 @@ ...@@ -40,10 +40,14 @@
} }
} }
} }
// 表单行间距
.app-form{ .app-form{
// 表单行间距
.app-form-item{ .app-form-item{
margin-bottom: 20px; margin-bottom: 20px;
} }
// 表单按钮margin
.app-form-button{
margin:0 6px;
}
} }
// this is less // this is less
...@@ -125,6 +125,7 @@ import MainService from './main-grid-service'; ...@@ -125,6 +125,7 @@ import MainService from './main-grid-service';
import SysRolePermissionUIService from '@/uiservice/sys-role-permission/sys-role-permission-ui-service'; import SysRolePermissionUIService from '@/uiservice/sys-role-permission/sys-role-permission-ui-service';
import CodeListService from "@service/app/codelist-service"; import CodeListService from "@service/app/codelist-service";
import { FormItemModel } from '@/model/form-detail'; import { FormItemModel } from '@/model/form-detail';
import { Environment } from '@/environments/environment';
@Component({ @Component({
...@@ -637,8 +638,8 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -637,8 +638,8 @@ export default class MainBase extends Vue implements ControlInterface {
* @memberof MainBase * @memberof MainBase
*/ */
public getActionState(data:any){ public getActionState(data:any){
let targetData:any = this.transformData(data);
let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel)); let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel));
let targetData:any = this.transformData(data);
ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService); ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService);
return tempActionModel; return tempActionModel;
} }
......
...@@ -169,6 +169,7 @@ import SysRoleUIService from '@/uiservice/sys-role/sys-role-ui-service'; ...@@ -169,6 +169,7 @@ import SysRoleUIService from '@/uiservice/sys-role/sys-role-ui-service';
import { FormButtonModel, FormPageModel, FormItemModel, FormDRUIPartModel, FormPartModel, FormGroupPanelModel, FormIFrameModel, FormRowItemModel, FormTabPageModel, FormTabPanelModel, FormUserControlModel } from '@/model/form-detail'; import { FormButtonModel, FormPageModel, FormItemModel, FormDRUIPartModel, FormPartModel, FormGroupPanelModel, FormIFrameModel, FormRowItemModel, FormTabPageModel, FormTabPanelModel, FormUserControlModel } from '@/model/form-detail';
import { debounceTime, distinctUntilChanged } from 'rxjs/operators'; import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
import schema from 'async-validator'; import schema from 'async-validator';
import { Environment } from '@/environments/environment';
@Component({ @Component({
...@@ -1027,6 +1028,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1027,6 +1028,7 @@ export default class MainBase extends Vue implements ControlInterface {
Object.assign(this.context,{sysrole:data.sysrole}) Object.assign(this.context,{sysrole:data.sysrole})
} }
this.setFormEnableCond(data); this.setFormEnableCond(data);
this.computeButtonState(data);
this.fillForm(data,action); this.fillForm(data,action);
this.oldData = {}; this.oldData = {};
Object.assign(this.oldData, JSON.parse(JSON.stringify(this.data))); Object.assign(this.oldData, JSON.parse(JSON.stringify(this.data)));
...@@ -1204,10 +1206,12 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1204,10 +1206,12 @@ export default class MainBase extends Vue implements ControlInterface {
if(this.detailsModel && Object.keys(this.detailsModel).length >0){ if(this.detailsModel && Object.keys(this.detailsModel).length >0){
Object.keys(this.detailsModel).forEach((name:any) =>{ Object.keys(this.detailsModel).forEach((name:any) =>{
if(this.detailsModel[name] && this.detailsModel[name].uiaction && this.detailsModel[name].uiaction.dataaccaction && Object.is(this.detailsModel[name].detailType,"BUTTON")){ if(this.detailsModel[name] && this.detailsModel[name].uiaction && this.detailsModel[name].uiaction.dataaccaction && Object.is(this.detailsModel[name].detailType,"BUTTON")){
this.detailsModel[name].isPower = true;
let tempUIAction:any = JSON.parse(JSON.stringify(this.detailsModel[name].uiaction)); let tempUIAction:any = JSON.parse(JSON.stringify(this.detailsModel[name].uiaction));
ViewTool.calcActionItemAuthState(targetData,[tempUIAction],this.appUIService); let result: any[] = ViewTool.calcActionItemAuthState(targetData,[tempUIAction],this.appUIService);
this.detailsModel[name].visible = tempUIAction.visabled; this.detailsModel[name].visible = tempUIAction.visabled;
this.detailsModel[name].disabled = tempUIAction.disabled; this.detailsModel[name].disabled = tempUIAction.disabled;
this.detailsModel[name].isPower = result[0] === 1 ? true : false;
} }
}) })
} }
...@@ -1276,7 +1280,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1276,7 +1280,7 @@ export default class MainBase extends Vue implements ControlInterface {
this.refresh(data); this.refresh(data);
} }
if (Object.is('panelaction', action)) { if (Object.is('panelaction', action)) {
this.panelAction(data.action,data.emitAction,data); this.panelAction(data.action,data.emitAction,data.data);
} }
}); });
} }
...@@ -1387,7 +1391,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1387,7 +1391,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'load'); this.onFormLoad(data,'load');
this.$emit('load', data); this.$emit('load', data);
this.computeButtonState(data);
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'load', data: data }); this.formState.next({ type: 'load', data: data });
}); });
...@@ -1431,7 +1434,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1431,7 +1434,6 @@ export default class MainBase extends Vue implements ControlInterface {
this.onFormLoad(data,'loadDraft'); this.onFormLoad(data,'loadDraft');
data.sysrole = null; data.sysrole = null;
this.$emit('load', data); this.$emit('load', data);
this.computeButtonState(data);
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'load', data: data }); this.formState.next({ type: 'load', data: data });
}); });
...@@ -1489,7 +1491,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1489,7 +1491,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'autoSave'); this.onFormLoad(data,'autoSave');
this.$emit('save', data); this.$emit('save', data);
this.computeButtonState(data);
AppCenterService.notifyMessage({name:"SysRole",action:'appRefresh',data:data}); AppCenterService.notifyMessage({name:"SysRole",action:'appRefresh',data:data});
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'save', data: data }); this.formState.next({ type: 'save', data: data });
...@@ -1568,7 +1569,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1568,7 +1569,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'save'); this.onFormLoad(data,'save');
this.$emit('save', data); this.$emit('save', data);
this.computeButtonState(data);
AppCenterService.notifyMessage({name:"SysRole",action:'appRefresh',data:data}); AppCenterService.notifyMessage({name:"SysRole",action:'appRefresh',data:data});
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'save', data: data }); this.formState.next({ type: 'save', data: data });
......
...@@ -40,10 +40,14 @@ ...@@ -40,10 +40,14 @@
} }
} }
} }
// 表单行间距
.app-form{ .app-form{
// 表单行间距
.app-form-item{ .app-form-item{
margin-bottom: 20px; margin-bottom: 20px;
} }
// 表单按钮margin
.app-form-button{
margin:0 6px;
}
} }
// this is less // this is less
...@@ -154,6 +154,7 @@ import MainService from './main-grid-service'; ...@@ -154,6 +154,7 @@ import MainService from './main-grid-service';
import SysRoleUIService from '@/uiservice/sys-role/sys-role-ui-service'; import SysRoleUIService from '@/uiservice/sys-role/sys-role-ui-service';
import CodeListService from "@service/app/codelist-service"; import CodeListService from "@service/app/codelist-service";
import { FormItemModel } from '@/model/form-detail'; import { FormItemModel } from '@/model/form-detail';
import { Environment } from '@/environments/environment';
@Component({ @Component({
...@@ -704,8 +705,8 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -704,8 +705,8 @@ export default class MainBase extends Vue implements ControlInterface {
* @memberof MainBase * @memberof MainBase
*/ */
public getActionState(data:any){ public getActionState(data:any){
let targetData:any = this.transformData(data);
let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel)); let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel));
let targetData:any = this.transformData(data);
ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService); ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService);
return tempActionModel; return tempActionModel;
} }
......
...@@ -109,6 +109,7 @@ import SysUserRoleUIService from '@/uiservice/sys-user-role/sys-user-role-ui-ser ...@@ -109,6 +109,7 @@ import SysUserRoleUIService from '@/uiservice/sys-user-role/sys-user-role-ui-ser
import { FormButtonModel, FormPageModel, FormItemModel, FormDRUIPartModel, FormPartModel, FormGroupPanelModel, FormIFrameModel, FormRowItemModel, FormTabPageModel, FormTabPanelModel, FormUserControlModel } from '@/model/form-detail'; import { FormButtonModel, FormPageModel, FormItemModel, FormDRUIPartModel, FormPartModel, FormGroupPanelModel, FormIFrameModel, FormRowItemModel, FormTabPageModel, FormTabPanelModel, FormUserControlModel } from '@/model/form-detail';
import { debounceTime, distinctUntilChanged } from 'rxjs/operators'; import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
import schema from 'async-validator'; import schema from 'async-validator';
import { Environment } from '@/environments/environment';
@Component({ @Component({
...@@ -952,6 +953,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -952,6 +953,7 @@ export default class MainBase extends Vue implements ControlInterface {
Object.assign(this.context,{sysuserrole:data.sysuserrole}) Object.assign(this.context,{sysuserrole:data.sysuserrole})
} }
this.setFormEnableCond(data); this.setFormEnableCond(data);
this.computeButtonState(data);
this.fillForm(data,action); this.fillForm(data,action);
this.oldData = {}; this.oldData = {};
Object.assign(this.oldData, JSON.parse(JSON.stringify(this.data))); Object.assign(this.oldData, JSON.parse(JSON.stringify(this.data)));
...@@ -1129,10 +1131,12 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1129,10 +1131,12 @@ export default class MainBase extends Vue implements ControlInterface {
if(this.detailsModel && Object.keys(this.detailsModel).length >0){ if(this.detailsModel && Object.keys(this.detailsModel).length >0){
Object.keys(this.detailsModel).forEach((name:any) =>{ Object.keys(this.detailsModel).forEach((name:any) =>{
if(this.detailsModel[name] && this.detailsModel[name].uiaction && this.detailsModel[name].uiaction.dataaccaction && Object.is(this.detailsModel[name].detailType,"BUTTON")){ if(this.detailsModel[name] && this.detailsModel[name].uiaction && this.detailsModel[name].uiaction.dataaccaction && Object.is(this.detailsModel[name].detailType,"BUTTON")){
this.detailsModel[name].isPower = true;
let tempUIAction:any = JSON.parse(JSON.stringify(this.detailsModel[name].uiaction)); let tempUIAction:any = JSON.parse(JSON.stringify(this.detailsModel[name].uiaction));
ViewTool.calcActionItemAuthState(targetData,[tempUIAction],this.appUIService); let result: any[] = ViewTool.calcActionItemAuthState(targetData,[tempUIAction],this.appUIService);
this.detailsModel[name].visible = tempUIAction.visabled; this.detailsModel[name].visible = tempUIAction.visabled;
this.detailsModel[name].disabled = tempUIAction.disabled; this.detailsModel[name].disabled = tempUIAction.disabled;
this.detailsModel[name].isPower = result[0] === 1 ? true : false;
} }
}) })
} }
...@@ -1201,7 +1205,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1201,7 +1205,7 @@ export default class MainBase extends Vue implements ControlInterface {
this.refresh(data); this.refresh(data);
} }
if (Object.is('panelaction', action)) { if (Object.is('panelaction', action)) {
this.panelAction(data.action,data.emitAction,data); this.panelAction(data.action,data.emitAction,data.data);
} }
}); });
} }
...@@ -1312,7 +1316,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1312,7 +1316,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'load'); this.onFormLoad(data,'load');
this.$emit('load', data); this.$emit('load', data);
this.computeButtonState(data);
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'load', data: data }); this.formState.next({ type: 'load', data: data });
}); });
...@@ -1357,7 +1360,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1357,7 +1360,6 @@ export default class MainBase extends Vue implements ControlInterface {
this.data.sys_user_roleid = null; this.data.sys_user_roleid = null;
data.sysuserrole = null; data.sysuserrole = null;
this.$emit('load', data); this.$emit('load', data);
this.computeButtonState(data);
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'load', data: data }); this.formState.next({ type: 'load', data: data });
}); });
...@@ -1415,7 +1417,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1415,7 +1417,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'autoSave'); this.onFormLoad(data,'autoSave');
this.$emit('save', data); this.$emit('save', data);
this.computeButtonState(data);
AppCenterService.notifyMessage({name:"SysUserRole",action:'appRefresh',data:data}); AppCenterService.notifyMessage({name:"SysUserRole",action:'appRefresh',data:data});
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'save', data: data }); this.formState.next({ type: 'save', data: data });
...@@ -1494,7 +1495,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1494,7 +1495,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'save'); this.onFormLoad(data,'save');
this.$emit('save', data); this.$emit('save', data);
this.computeButtonState(data);
AppCenterService.notifyMessage({name:"SysUserRole",action:'appRefresh',data:data}); AppCenterService.notifyMessage({name:"SysUserRole",action:'appRefresh',data:data});
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'save', data: data }); this.formState.next({ type: 'save', data: data });
......
...@@ -40,10 +40,14 @@ ...@@ -40,10 +40,14 @@
} }
} }
} }
// 表单行间距
.app-form{ .app-form{
// 表单行间距
.app-form-item{ .app-form-item{
margin-bottom: 20px; margin-bottom: 20px;
} }
// 表单按钮margin
.app-form-button{
margin:0 6px;
}
} }
// this is less // this is less
...@@ -149,6 +149,7 @@ import MainService from './main-grid-service'; ...@@ -149,6 +149,7 @@ import MainService from './main-grid-service';
import SysUserRoleUIService from '@/uiservice/sys-user-role/sys-user-role-ui-service'; import SysUserRoleUIService from '@/uiservice/sys-user-role/sys-user-role-ui-service';
import CodeListService from "@service/app/codelist-service"; import CodeListService from "@service/app/codelist-service";
import { FormItemModel } from '@/model/form-detail'; import { FormItemModel } from '@/model/form-detail';
import { Environment } from '@/environments/environment';
@Component({ @Component({
...@@ -691,8 +692,8 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -691,8 +692,8 @@ export default class MainBase extends Vue implements ControlInterface {
* @memberof MainBase * @memberof MainBase
*/ */
public getActionState(data:any){ public getActionState(data:any){
let targetData:any = this.transformData(data);
let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel)); let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel));
let targetData:any = this.transformData(data);
ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService); ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService);
return tempActionModel; return tempActionModel;
} }
......
...@@ -134,6 +134,7 @@ import SysUserUIService from '@/uiservice/sys-user/sys-user-ui-service'; ...@@ -134,6 +134,7 @@ import SysUserUIService from '@/uiservice/sys-user/sys-user-ui-service';
import { FormButtonModel, FormPageModel, FormItemModel, FormDRUIPartModel, FormPartModel, FormGroupPanelModel, FormIFrameModel, FormRowItemModel, FormTabPageModel, FormTabPanelModel, FormUserControlModel } from '@/model/form-detail'; import { FormButtonModel, FormPageModel, FormItemModel, FormDRUIPartModel, FormPartModel, FormGroupPanelModel, FormIFrameModel, FormRowItemModel, FormTabPageModel, FormTabPanelModel, FormUserControlModel } from '@/model/form-detail';
import { debounceTime, distinctUntilChanged } from 'rxjs/operators'; import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
import schema from 'async-validator'; import schema from 'async-validator';
import { Environment } from '@/environments/environment';
@Component({ @Component({
...@@ -977,6 +978,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -977,6 +978,7 @@ export default class MainBase extends Vue implements ControlInterface {
Object.assign(this.context,{sysuser:data.sysuser}) Object.assign(this.context,{sysuser:data.sysuser})
} }
this.setFormEnableCond(data); this.setFormEnableCond(data);
this.computeButtonState(data);
this.fillForm(data,action); this.fillForm(data,action);
this.oldData = {}; this.oldData = {};
Object.assign(this.oldData, JSON.parse(JSON.stringify(this.data))); Object.assign(this.oldData, JSON.parse(JSON.stringify(this.data)));
...@@ -1154,10 +1156,12 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1154,10 +1156,12 @@ export default class MainBase extends Vue implements ControlInterface {
if(this.detailsModel && Object.keys(this.detailsModel).length >0){ if(this.detailsModel && Object.keys(this.detailsModel).length >0){
Object.keys(this.detailsModel).forEach((name:any) =>{ Object.keys(this.detailsModel).forEach((name:any) =>{
if(this.detailsModel[name] && this.detailsModel[name].uiaction && this.detailsModel[name].uiaction.dataaccaction && Object.is(this.detailsModel[name].detailType,"BUTTON")){ if(this.detailsModel[name] && this.detailsModel[name].uiaction && this.detailsModel[name].uiaction.dataaccaction && Object.is(this.detailsModel[name].detailType,"BUTTON")){
this.detailsModel[name].isPower = true;
let tempUIAction:any = JSON.parse(JSON.stringify(this.detailsModel[name].uiaction)); let tempUIAction:any = JSON.parse(JSON.stringify(this.detailsModel[name].uiaction));
ViewTool.calcActionItemAuthState(targetData,[tempUIAction],this.appUIService); let result: any[] = ViewTool.calcActionItemAuthState(targetData,[tempUIAction],this.appUIService);
this.detailsModel[name].visible = tempUIAction.visabled; this.detailsModel[name].visible = tempUIAction.visabled;
this.detailsModel[name].disabled = tempUIAction.disabled; this.detailsModel[name].disabled = tempUIAction.disabled;
this.detailsModel[name].isPower = result[0] === 1 ? true : false;
} }
}) })
} }
...@@ -1226,7 +1230,7 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1226,7 +1230,7 @@ export default class MainBase extends Vue implements ControlInterface {
this.refresh(data); this.refresh(data);
} }
if (Object.is('panelaction', action)) { if (Object.is('panelaction', action)) {
this.panelAction(data.action,data.emitAction,data); this.panelAction(data.action,data.emitAction,data.data);
} }
}); });
} }
...@@ -1337,7 +1341,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1337,7 +1341,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'load'); this.onFormLoad(data,'load');
this.$emit('load', data); this.$emit('load', data);
this.computeButtonState(data);
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'load', data: data }); this.formState.next({ type: 'load', data: data });
}); });
...@@ -1382,7 +1385,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1382,7 +1385,6 @@ export default class MainBase extends Vue implements ControlInterface {
this.data.userid = null; this.data.userid = null;
data.sysuser = null; data.sysuser = null;
this.$emit('load', data); this.$emit('load', data);
this.computeButtonState(data);
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'load', data: data }); this.formState.next({ type: 'load', data: data });
}); });
...@@ -1440,7 +1442,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1440,7 +1442,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'autoSave'); this.onFormLoad(data,'autoSave');
this.$emit('save', data); this.$emit('save', data);
this.computeButtonState(data);
AppCenterService.notifyMessage({name:"SysUser",action:'appRefresh',data:data}); AppCenterService.notifyMessage({name:"SysUser",action:'appRefresh',data:data});
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'save', data: data }); this.formState.next({ type: 'save', data: data });
...@@ -1519,7 +1520,6 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -1519,7 +1520,6 @@ export default class MainBase extends Vue implements ControlInterface {
const data = response.data; const data = response.data;
this.onFormLoad(data,'save'); this.onFormLoad(data,'save');
this.$emit('save', data); this.$emit('save', data);
this.computeButtonState(data);
AppCenterService.notifyMessage({name:"SysUser",action:'appRefresh',data:data}); AppCenterService.notifyMessage({name:"SysUser",action:'appRefresh',data:data});
this.$nextTick(() => { this.$nextTick(() => {
this.formState.next({ type: 'save', data: data }); this.formState.next({ type: 'save', data: data });
......
...@@ -40,10 +40,14 @@ ...@@ -40,10 +40,14 @@
} }
} }
} }
// 表单行间距
.app-form{ .app-form{
// 表单行间距
.app-form-item{ .app-form-item{
margin-bottom: 20px; margin-bottom: 20px;
} }
// 表单按钮margin
.app-form-button{
margin:0 6px;
}
} }
// this is less // this is less
...@@ -147,6 +147,7 @@ import MainService from './main-grid-service'; ...@@ -147,6 +147,7 @@ import MainService from './main-grid-service';
import SysUserUIService from '@/uiservice/sys-user/sys-user-ui-service'; import SysUserUIService from '@/uiservice/sys-user/sys-user-ui-service';
import CodeListService from "@service/app/codelist-service"; import CodeListService from "@service/app/codelist-service";
import { FormItemModel } from '@/model/form-detail'; import { FormItemModel } from '@/model/form-detail';
import { Environment } from '@/environments/environment';
@Component({ @Component({
...@@ -697,8 +698,8 @@ export default class MainBase extends Vue implements ControlInterface { ...@@ -697,8 +698,8 @@ export default class MainBase extends Vue implements ControlInterface {
* @memberof MainBase * @memberof MainBase
*/ */
public getActionState(data:any){ public getActionState(data:any){
let targetData:any = this.transformData(data);
let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel)); let tempActionModel:any = JSON.parse(JSON.stringify(this.ActionModel));
let targetData:any = this.transformData(data);
ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService); ViewTool.calcActionItemAuthState(targetData,tempActionModel,this.appUIService);
return tempActionModel; return tempActionModel;
} }
......
...@@ -11,6 +11,7 @@ import java.math.BigInteger; ...@@ -11,6 +11,7 @@ import java.math.BigInteger;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.scheduling.annotation.Async;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.CacheEvict;
......
...@@ -11,6 +11,7 @@ import java.math.BigInteger; ...@@ -11,6 +11,7 @@ import java.math.BigInteger;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.scheduling.annotation.Async;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.CacheEvict;
......
...@@ -11,6 +11,7 @@ import java.math.BigInteger; ...@@ -11,6 +11,7 @@ import java.math.BigInteger;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.scheduling.annotation.Async;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.CacheEvict;
......
...@@ -11,6 +11,7 @@ import java.math.BigInteger; ...@@ -11,6 +11,7 @@ import java.math.BigInteger;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.scheduling.annotation.Async;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.CacheEvict;
......
...@@ -11,6 +11,7 @@ import java.math.BigInteger; ...@@ -11,6 +11,7 @@ import java.math.BigInteger;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.scheduling.annotation.Async;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.CacheEvict;
......
...@@ -11,6 +11,7 @@ import java.math.BigInteger; ...@@ -11,6 +11,7 @@ import java.math.BigInteger;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.scheduling.annotation.Async;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.CacheEvict;
......
...@@ -11,6 +11,7 @@ import java.math.BigInteger; ...@@ -11,6 +11,7 @@ import java.math.BigInteger;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.scheduling.annotation.Async;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.CacheEvict;
......
...@@ -11,6 +11,7 @@ import java.math.BigInteger; ...@@ -11,6 +11,7 @@ import java.math.BigInteger;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.scheduling.annotation.Async;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.CacheEvict;
......
...@@ -11,6 +11,7 @@ import java.math.BigInteger; ...@@ -11,6 +11,7 @@ import java.math.BigInteger;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.scheduling.annotation.Async;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.CacheEvict;
......
...@@ -11,6 +11,7 @@ import java.math.BigInteger; ...@@ -11,6 +11,7 @@ import java.math.BigInteger;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.scheduling.annotation.Async;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.CacheEvict;
......
...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page; ...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl; import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import cn.ibizlab.core.uaa.domain.SysApp; import cn.ibizlab.core.uaa.domain.SysApp;
......
...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page; ...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl; import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import cn.ibizlab.core.uaa.domain.SysAuthLog; import cn.ibizlab.core.uaa.domain.SysAuthLog;
......
...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page; ...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl; import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import cn.ibizlab.core.uaa.domain.SysOpenAccess; import cn.ibizlab.core.uaa.domain.SysOpenAccess;
......
...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page; ...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl; import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import cn.ibizlab.core.uaa.domain.SysPSSystem; import cn.ibizlab.core.uaa.domain.SysPSSystem;
......
...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page; ...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl; import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import cn.ibizlab.core.uaa.domain.SysPermission; import cn.ibizlab.core.uaa.domain.SysPermission;
......
...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page; ...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl; import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import cn.ibizlab.core.uaa.domain.SysRolePermission; import cn.ibizlab.core.uaa.domain.SysRolePermission;
......
...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page; ...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl; import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import cn.ibizlab.core.uaa.domain.SysRole; import cn.ibizlab.core.uaa.domain.SysRole;
......
...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page; ...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl; import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import cn.ibizlab.core.uaa.domain.SysUserAuth; import cn.ibizlab.core.uaa.domain.SysUserAuth;
......
...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page; ...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl; import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import cn.ibizlab.core.uaa.domain.SysUserRole; import cn.ibizlab.core.uaa.domain.SysUserRole;
......
...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page; ...@@ -21,6 +21,7 @@ import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl; import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import cn.ibizlab.core.uaa.domain.SysUser; import cn.ibizlab.core.uaa.domain.SysUser;
......
<?xml version="1.1" encoding="UTF-8" standalone="no"?> !!!!模版产生代码错误:----
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.6.xsd"> Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----
----
FTL stack trace ("~" means nesting-related):
- Failed at: ${dbinst.getUserName()} [in template "CODETEMPL_zh_CN" at line 28, column 24]
<!--输出实体[SYS_AUTHLOG]数据结构 --> ----
<changeSet author="a_A_5d9d78509" id="tab-sys_authlog-62-1"> \ No newline at end of file
<createTable tableName="IBZAUTHLOG">
<column name="LOGID" remarks="" type="VARCHAR(100)">
<constraints primaryKey="true" primaryKeyName="PK_SYS_AUTHLOG_LOGID"/>
</column>
<column name="USERNAME" remarks="" type="VARCHAR(100)">
</column>
<column name="PERSONNAME" remarks="" type="VARCHAR(100)">
</column>
<column name="DOMAIN" remarks="" type="VARCHAR(100)">
</column>
<column name="AUTHTIME" remarks="" type="DATETIME">
</column>
<column name="IPADDR" remarks="" type="VARCHAR(100)">
</column>
<column name="MACADDR" remarks="" type="VARCHAR(100)">
</column>
<column name="USERAGENT" remarks="" type="VARCHAR(100)">
</column>
<column name="AUTHCODE" remarks="" type="VARCHAR(15)">
</column>
</createTable>
</changeSet>
<!--输出实体[SYS_OPEN_ACCESS]数据结构 -->
<changeSet author="a_A_5d9d78509" id="tab-sys_open_access-30-2">
<createTable tableName="IBZOPENACCESS">
<column name="ACCESSID" remarks="" type="VARCHAR(100)">
<constraints primaryKey="true" primaryKeyName="PK_SYS_OPEN_ACCESS_ACCESSID"/>
</column>
<column name="ACCESSNAME" remarks="" type="VARCHAR(100)">
</column>
<column name="OPEN_TYPE" remarks="" type="VARCHAR(100)">
</column>
<column name="ACCESS_KEY" remarks="" type="VARCHAR(100)">
</column>
<column name="SECRET_KEY" remarks="" type="VARCHAR(100)">
</column>
<column name="REGION_ID" remarks="" type="VARCHAR(100)">
</column>
<column name="ACCESS_TOKEN" remarks="" type="VARCHAR(1000)">
</column>
<column name="EXPIRES_TIME" remarks="" type="DATETIME">
</column>
<column name="DISABLED" remarks="" type="INT">
</column>
<column name="REDIRECT_URI" remarks="" type="VARCHAR(500)">
</column>
</createTable>
</changeSet>
<!--输出实体[SYS_PSSYSTEM]数据结构 -->
<changeSet author="a_A_5d9d78509" id="tab-sys_pssystem-55-3">
<createTable tableName="IBZPSSYSTEM">
<column name="PSSYSTEMID" remarks="" type="VARCHAR(100)">
<constraints primaryKey="true" primaryKeyName="PK_SYS_PSSYSTEM_PSSYSTEMID"/>
</column>
<column name="PSSYSTEMNAME" remarks="" type="VARCHAR(100)">
</column>
<column name="SYSSTRUCTURE" remarks="" type="TEXT(1048576)">
</column>
<column name="APPS" remarks="" type="TEXT(1048576)">
</column>
<column name="MD5CHECK" remarks="" type="VARCHAR(100)">
</column>
<column name="SHOWORDER" remarks="" type="INT">
</column>
</createTable>
</changeSet>
<!--输出实体[SYS_PERMISSION]数据结构 -->
<changeSet author="a_A_5d9d78509" id="tab-sys_permission-253-4">
<createTable tableName="IBZPERMISSION">
<column name="SYS_PERMISSIONID" remarks="" type="VARCHAR(200)">
<constraints primaryKey="true" primaryKeyName="PK_SYS_PERMISSION_SYS_PERMISSI"/>
</column>
<column name="SYS_PERMISSIONNAME" remarks="" type="VARCHAR(200)">
</column>
<column name="PERMISSIONTYPE" remarks="" type="VARCHAR(60)">
</column>
<column name="PSSYSTEMID" remarks="" type="VARCHAR(100)">
</column>
<column name="ENABLE" remarks="" type="INT">
</column>
<column name="CREATEDATE" remarks="" type="DATETIME">
</column>
<column name="UPDATEDATE" remarks="" type="DATETIME">
</column>
</createTable>
</changeSet>
<!--输出实体[SYS_ROLE]数据结构 -->
<changeSet author="a_A_5d9d78509" id="tab-sys_role-135-5">
<createTable tableName="IBZROLE">
<column name="SYS_ROLEID" remarks="" type="VARCHAR(100)">
<constraints primaryKey="true" primaryKeyName="PK_SYS_ROLE_SYS_ROLEID"/>
</column>
<column name="SYS_ROLENAME" remarks="" type="VARCHAR(200)">
</column>
<column name="MEMO" remarks="" type="VARCHAR(100)">
</column>
<column name="PROLEID" remarks="" type="VARCHAR(100)">
</column>
<column name="CREATEDATE" remarks="" type="DATETIME">
</column>
<column name="UPDATEDATE" remarks="" type="DATETIME">
</column>
<column name="CREATEMAN" remarks="" type="VARCHAR(60)">
</column>
<column name="UPDATEMAN" remarks="" type="VARCHAR(60)">
</column>
</createTable>
</changeSet>
<!--输出实体[SYS_ROLE_PERMISSION]数据结构 -->
<changeSet author="a_A_5d9d78509" id="tab-sys_role_permission-132-6">
<createTable tableName="IBZROLE_PERMISSION">
<column name="SYS_ROLE_PERMISSIONID" remarks="" type="VARCHAR(100)">
<constraints primaryKey="true" primaryKeyName="PK_SYS_ROLE_PERMISSION_SYS_ROL"/>
</column>
<column name="SYS_ROLEID" remarks="" type="VARCHAR(100)">
</column>
<column name="SYS_PERMISSIONID" remarks="" type="VARCHAR(200)">
</column>
<column name="CREATEDATE" remarks="" type="DATETIME">
</column>
<column name="UPDATEDATE" remarks="" type="DATETIME">
</column>
</createTable>
</changeSet>
<!--输出实体[SYS_USER_AUTH]数据结构 -->
<changeSet author="a_A_5d9d78509" id="tab-sys_user_auth-14-7">
<createTable tableName="IBZUSERAUTH">
<column name="AUTHID" remarks="" type="VARCHAR(100)">
<constraints primaryKey="true" primaryKeyName="PK_SYS_USER_AUTH_AUTHID"/>
</column>
<column name="USERID" remarks="" type="VARCHAR(100)">
</column>
<column name="IDENTITY_TYPE" remarks="" type="VARCHAR(100)">
</column>
<column name="IDENTIFIER" remarks="" type="VARCHAR(200)">
</column>
<column name="CREDENTIAL" remarks="" type="VARCHAR(500)">
</column>
</createTable>
</changeSet>
<!--输出实体[SYS_USER_ROLE]数据结构 -->
<changeSet author="a_A_5d9d78509" id="tab-sys_user_role-98-8">
<createTable tableName="IBZUSER_ROLE">
<column name="SYS_USER_ROLEID" remarks="" type="VARCHAR(100)">
<constraints primaryKey="true" primaryKeyName="PK_SYS_USER_ROLE_SYS_USER_ROLE"/>
</column>
<column name="SYS_ROLEID" remarks="" type="VARCHAR(100)">
</column>
<column name="SYS_USERID" remarks="" type="VARCHAR(100)">
</column>
<column name="CREATEDATE" remarks="" type="DATETIME">
</column>
<column name="UPDATEDATE" remarks="" type="DATETIME">
</column>
</createTable>
</changeSet>
<!--输出实体[SYS_AUTHLOG]外键关系 -->
<!--输出实体[SYS_OPEN_ACCESS]外键关系 -->
<!--输出实体[SYS_PSSYSTEM]外键关系 -->
<!--输出实体[SYS_PERMISSION]外键关系 -->
<!--输出实体[SYS_ROLE]外键关系 -->
<changeSet author="a_A_5d9d78509" id="fk-sys_role-135-9">
<addForeignKeyConstraint baseColumnNames="PROLEID" baseTableName="IBZROLE" constraintName="DER1N_SYS_ROLE_SYS_ROLE_PROLEI" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="SYS_ROLEID" referencedTableName="IBZROLE" validate="true"/>
</changeSet>
<!--输出实体[SYS_ROLE_PERMISSION]外键关系 -->
<changeSet author="a_A_5d9d78509" id="fk-sys_role_permission-132-10">
<addForeignKeyConstraint baseColumnNames="SYS_PERMISSIONID" baseTableName="IBZROLE_PERMISSION" constraintName="DER1N_SYS_ROLE_PERMISSION_SYS_" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="SYS_PERMISSIONID" referencedTableName="IBZPERMISSION" validate="true"/>
</changeSet>
<!--输出实体[SYS_USER_AUTH]外键关系 -->
<!--输出实体[SYS_USER_ROLE]外键关系 -->
<changeSet author="a_A_5d9d78509" id="fk-sys_user_role-98-12">
<addForeignKeyConstraint baseColumnNames="SYS_ROLEID" baseTableName="IBZUSER_ROLE" constraintName="DER1N_SYS_USER_ROLE_SYS_ROLE_S" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="SYS_ROLEID" referencedTableName="IBZROLE" validate="true"/>
</changeSet>
</databaseChangeLog>
...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject; ...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject;
import javax.servlet.ServletRequest; import javax.servlet.ServletRequest;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cglib.beans.BeanCopier; import org.springframework.cglib.beans.BeanCopier;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
...@@ -49,7 +48,6 @@ public class SysAppResource { ...@@ -49,7 +48,6 @@ public class SysAppResource {
@ApiOperation(value = "新建应用", tags = {"应用" }, notes = "新建应用") @ApiOperation(value = "新建应用", tags = {"应用" }, notes = "新建应用")
@RequestMapping(method = RequestMethod.POST, value = "/sysapps") @RequestMapping(method = RequestMethod.POST, value = "/sysapps")
@Transactional
public ResponseEntity<SysAppDTO> create(@RequestBody SysAppDTO sysappdto) { public ResponseEntity<SysAppDTO> create(@RequestBody SysAppDTO sysappdto) {
SysApp domain = sysappMapping.toDomain(sysappdto); SysApp domain = sysappMapping.toDomain(sysappdto);
sysappService.create(domain); sysappService.create(domain);
...@@ -66,7 +64,6 @@ public class SysAppResource { ...@@ -66,7 +64,6 @@ public class SysAppResource {
@ApiOperation(value = "更新应用", tags = {"应用" }, notes = "更新应用") @ApiOperation(value = "更新应用", tags = {"应用" }, notes = "更新应用")
@RequestMapping(method = RequestMethod.PUT, value = "/sysapps/{sysapp_id}") @RequestMapping(method = RequestMethod.PUT, value = "/sysapps/{sysapp_id}")
@Transactional
public ResponseEntity<SysAppDTO> update(@PathVariable("sysapp_id") String sysapp_id, @RequestBody SysAppDTO sysappdto) { public ResponseEntity<SysAppDTO> update(@PathVariable("sysapp_id") String sysapp_id, @RequestBody SysAppDTO sysappdto) {
SysApp domain = sysappMapping.toDomain(sysappdto); SysApp domain = sysappMapping.toDomain(sysappdto);
domain .setId(sysapp_id); domain .setId(sysapp_id);
...@@ -84,7 +81,6 @@ public class SysAppResource { ...@@ -84,7 +81,6 @@ public class SysAppResource {
@ApiOperation(value = "删除应用", tags = {"应用" }, notes = "删除应用") @ApiOperation(value = "删除应用", tags = {"应用" }, notes = "删除应用")
@RequestMapping(method = RequestMethod.DELETE, value = "/sysapps/{sysapp_id}") @RequestMapping(method = RequestMethod.DELETE, value = "/sysapps/{sysapp_id}")
@Transactional
public ResponseEntity<Boolean> remove(@PathVariable("sysapp_id") String sysapp_id) { public ResponseEntity<Boolean> remove(@PathVariable("sysapp_id") String sysapp_id) {
return ResponseEntity.status(HttpStatus.OK).body(sysappService.remove(sysapp_id)); return ResponseEntity.status(HttpStatus.OK).body(sysappService.remove(sysapp_id));
} }
......
...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject; ...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject;
import javax.servlet.ServletRequest; import javax.servlet.ServletRequest;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cglib.beans.BeanCopier; import org.springframework.cglib.beans.BeanCopier;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
...@@ -50,7 +49,6 @@ public class SysAuthLogResource { ...@@ -50,7 +49,6 @@ public class SysAuthLogResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysAuthLog-Create-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysAuthLog-Create-all')")
@ApiOperation(value = "新建认证日志", tags = {"认证日志" }, notes = "新建认证日志") @ApiOperation(value = "新建认证日志", tags = {"认证日志" }, notes = "新建认证日志")
@RequestMapping(method = RequestMethod.POST, value = "/sysauthlogs") @RequestMapping(method = RequestMethod.POST, value = "/sysauthlogs")
@Transactional
public ResponseEntity<SysAuthLogDTO> create(@RequestBody SysAuthLogDTO sysauthlogdto) { public ResponseEntity<SysAuthLogDTO> create(@RequestBody SysAuthLogDTO sysauthlogdto) {
SysAuthLog domain = sysauthlogMapping.toDomain(sysauthlogdto); SysAuthLog domain = sysauthlogMapping.toDomain(sysauthlogdto);
sysauthlogService.create(domain); sysauthlogService.create(domain);
...@@ -69,7 +67,6 @@ public class SysAuthLogResource { ...@@ -69,7 +67,6 @@ public class SysAuthLogResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysAuthLog-Update-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysAuthLog-Update-all')")
@ApiOperation(value = "更新认证日志", tags = {"认证日志" }, notes = "更新认证日志") @ApiOperation(value = "更新认证日志", tags = {"认证日志" }, notes = "更新认证日志")
@RequestMapping(method = RequestMethod.PUT, value = "/sysauthlogs/{sysauthlog_id}") @RequestMapping(method = RequestMethod.PUT, value = "/sysauthlogs/{sysauthlog_id}")
@Transactional
public ResponseEntity<SysAuthLogDTO> update(@PathVariable("sysauthlog_id") String sysauthlog_id, @RequestBody SysAuthLogDTO sysauthlogdto) { public ResponseEntity<SysAuthLogDTO> update(@PathVariable("sysauthlog_id") String sysauthlog_id, @RequestBody SysAuthLogDTO sysauthlogdto) {
SysAuthLog domain = sysauthlogMapping.toDomain(sysauthlogdto); SysAuthLog domain = sysauthlogMapping.toDomain(sysauthlogdto);
domain .setLogid(sysauthlog_id); domain .setLogid(sysauthlog_id);
...@@ -89,7 +86,6 @@ public class SysAuthLogResource { ...@@ -89,7 +86,6 @@ public class SysAuthLogResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysAuthLog-Remove-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysAuthLog-Remove-all')")
@ApiOperation(value = "删除认证日志", tags = {"认证日志" }, notes = "删除认证日志") @ApiOperation(value = "删除认证日志", tags = {"认证日志" }, notes = "删除认证日志")
@RequestMapping(method = RequestMethod.DELETE, value = "/sysauthlogs/{sysauthlog_id}") @RequestMapping(method = RequestMethod.DELETE, value = "/sysauthlogs/{sysauthlog_id}")
@Transactional
public ResponseEntity<Boolean> remove(@PathVariable("sysauthlog_id") String sysauthlog_id) { public ResponseEntity<Boolean> remove(@PathVariable("sysauthlog_id") String sysauthlog_id) {
return ResponseEntity.status(HttpStatus.OK).body(sysauthlogService.remove(sysauthlog_id)); return ResponseEntity.status(HttpStatus.OK).body(sysauthlogService.remove(sysauthlog_id));
} }
......
...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject; ...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject;
import javax.servlet.ServletRequest; import javax.servlet.ServletRequest;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cglib.beans.BeanCopier; import org.springframework.cglib.beans.BeanCopier;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
...@@ -50,7 +49,6 @@ public class SysOpenAccessResource { ...@@ -50,7 +49,6 @@ public class SysOpenAccessResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysOpenAccess-Create-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysOpenAccess-Create-all')")
@ApiOperation(value = "新建第三方认证平台", tags = {"第三方认证平台" }, notes = "新建第三方认证平台") @ApiOperation(value = "新建第三方认证平台", tags = {"第三方认证平台" }, notes = "新建第三方认证平台")
@RequestMapping(method = RequestMethod.POST, value = "/sysopenaccesses") @RequestMapping(method = RequestMethod.POST, value = "/sysopenaccesses")
@Transactional
public ResponseEntity<SysOpenAccessDTO> create(@RequestBody SysOpenAccessDTO sysopenaccessdto) { public ResponseEntity<SysOpenAccessDTO> create(@RequestBody SysOpenAccessDTO sysopenaccessdto) {
SysOpenAccess domain = sysopenaccessMapping.toDomain(sysopenaccessdto); SysOpenAccess domain = sysopenaccessMapping.toDomain(sysopenaccessdto);
sysopenaccessService.create(domain); sysopenaccessService.create(domain);
...@@ -69,7 +67,6 @@ public class SysOpenAccessResource { ...@@ -69,7 +67,6 @@ public class SysOpenAccessResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysOpenAccess-Update-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysOpenAccess-Update-all')")
@ApiOperation(value = "更新第三方认证平台", tags = {"第三方认证平台" }, notes = "更新第三方认证平台") @ApiOperation(value = "更新第三方认证平台", tags = {"第三方认证平台" }, notes = "更新第三方认证平台")
@RequestMapping(method = RequestMethod.PUT, value = "/sysopenaccesses/{sysopenaccess_id}") @RequestMapping(method = RequestMethod.PUT, value = "/sysopenaccesses/{sysopenaccess_id}")
@Transactional
public ResponseEntity<SysOpenAccessDTO> update(@PathVariable("sysopenaccess_id") String sysopenaccess_id, @RequestBody SysOpenAccessDTO sysopenaccessdto) { public ResponseEntity<SysOpenAccessDTO> update(@PathVariable("sysopenaccess_id") String sysopenaccess_id, @RequestBody SysOpenAccessDTO sysopenaccessdto) {
SysOpenAccess domain = sysopenaccessMapping.toDomain(sysopenaccessdto); SysOpenAccess domain = sysopenaccessMapping.toDomain(sysopenaccessdto);
domain .setId(sysopenaccess_id); domain .setId(sysopenaccess_id);
...@@ -89,7 +86,6 @@ public class SysOpenAccessResource { ...@@ -89,7 +86,6 @@ public class SysOpenAccessResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysOpenAccess-Remove-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysOpenAccess-Remove-all')")
@ApiOperation(value = "删除第三方认证平台", tags = {"第三方认证平台" }, notes = "删除第三方认证平台") @ApiOperation(value = "删除第三方认证平台", tags = {"第三方认证平台" }, notes = "删除第三方认证平台")
@RequestMapping(method = RequestMethod.DELETE, value = "/sysopenaccesses/{sysopenaccess_id}") @RequestMapping(method = RequestMethod.DELETE, value = "/sysopenaccesses/{sysopenaccess_id}")
@Transactional
public ResponseEntity<Boolean> remove(@PathVariable("sysopenaccess_id") String sysopenaccess_id) { public ResponseEntity<Boolean> remove(@PathVariable("sysopenaccess_id") String sysopenaccess_id) {
return ResponseEntity.status(HttpStatus.OK).body(sysopenaccessService.remove(sysopenaccess_id)); return ResponseEntity.status(HttpStatus.OK).body(sysopenaccessService.remove(sysopenaccess_id));
} }
......
...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject; ...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject;
import javax.servlet.ServletRequest; import javax.servlet.ServletRequest;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cglib.beans.BeanCopier; import org.springframework.cglib.beans.BeanCopier;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
...@@ -50,7 +49,6 @@ public class SysPermissionResource { ...@@ -50,7 +49,6 @@ public class SysPermissionResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysPermission-Create-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysPermission-Create-all')")
@ApiOperation(value = "新建权限/资源", tags = {"权限/资源" }, notes = "新建权限/资源") @ApiOperation(value = "新建权限/资源", tags = {"权限/资源" }, notes = "新建权限/资源")
@RequestMapping(method = RequestMethod.POST, value = "/syspermissions") @RequestMapping(method = RequestMethod.POST, value = "/syspermissions")
@Transactional
public ResponseEntity<SysPermissionDTO> create(@RequestBody SysPermissionDTO syspermissiondto) { public ResponseEntity<SysPermissionDTO> create(@RequestBody SysPermissionDTO syspermissiondto) {
SysPermission domain = syspermissionMapping.toDomain(syspermissiondto); SysPermission domain = syspermissionMapping.toDomain(syspermissiondto);
syspermissionService.create(domain); syspermissionService.create(domain);
...@@ -70,7 +68,6 @@ public class SysPermissionResource { ...@@ -70,7 +68,6 @@ public class SysPermissionResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysPermission-Update-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysPermission-Update-all')")
@ApiOperation(value = "更新权限/资源", tags = {"权限/资源" }, notes = "更新权限/资源") @ApiOperation(value = "更新权限/资源", tags = {"权限/资源" }, notes = "更新权限/资源")
@RequestMapping(method = RequestMethod.PUT, value = "/syspermissions/{syspermission_id}") @RequestMapping(method = RequestMethod.PUT, value = "/syspermissions/{syspermission_id}")
@Transactional
public ResponseEntity<SysPermissionDTO> update(@PathVariable("syspermission_id") String syspermission_id, @RequestBody SysPermissionDTO syspermissiondto) { public ResponseEntity<SysPermissionDTO> update(@PathVariable("syspermission_id") String syspermission_id, @RequestBody SysPermissionDTO syspermissiondto) {
SysPermission domain = syspermissionMapping.toDomain(syspermissiondto); SysPermission domain = syspermissionMapping.toDomain(syspermissiondto);
domain .setPermissionid(syspermission_id); domain .setPermissionid(syspermission_id);
...@@ -90,7 +87,6 @@ public class SysPermissionResource { ...@@ -90,7 +87,6 @@ public class SysPermissionResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysPermission-Remove-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysPermission-Remove-all')")
@ApiOperation(value = "删除权限/资源", tags = {"权限/资源" }, notes = "删除权限/资源") @ApiOperation(value = "删除权限/资源", tags = {"权限/资源" }, notes = "删除权限/资源")
@RequestMapping(method = RequestMethod.DELETE, value = "/syspermissions/{syspermission_id}") @RequestMapping(method = RequestMethod.DELETE, value = "/syspermissions/{syspermission_id}")
@Transactional
public ResponseEntity<Boolean> remove(@PathVariable("syspermission_id") String syspermission_id) { public ResponseEntity<Boolean> remove(@PathVariable("syspermission_id") String syspermission_id) {
return ResponseEntity.status(HttpStatus.OK).body(syspermissionService.remove(syspermission_id)); return ResponseEntity.status(HttpStatus.OK).body(syspermissionService.remove(syspermission_id));
} }
......
...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject; ...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject;
import javax.servlet.ServletRequest; import javax.servlet.ServletRequest;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cglib.beans.BeanCopier; import org.springframework.cglib.beans.BeanCopier;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
...@@ -50,7 +49,6 @@ public class SysRolePermissionResource { ...@@ -50,7 +49,6 @@ public class SysRolePermissionResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Create-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Create-all')")
@ApiOperation(value = "新建角色权限关系", tags = {"角色权限关系" }, notes = "新建角色权限关系") @ApiOperation(value = "新建角色权限关系", tags = {"角色权限关系" }, notes = "新建角色权限关系")
@RequestMapping(method = RequestMethod.POST, value = "/sysrolepermissions") @RequestMapping(method = RequestMethod.POST, value = "/sysrolepermissions")
@Transactional
public ResponseEntity<SysRolePermissionDTO> create(@RequestBody SysRolePermissionDTO sysrolepermissiondto) { public ResponseEntity<SysRolePermissionDTO> create(@RequestBody SysRolePermissionDTO sysrolepermissiondto) {
SysRolePermission domain = sysrolepermissionMapping.toDomain(sysrolepermissiondto); SysRolePermission domain = sysrolepermissionMapping.toDomain(sysrolepermissiondto);
sysrolepermissionService.create(domain); sysrolepermissionService.create(domain);
...@@ -70,7 +68,6 @@ public class SysRolePermissionResource { ...@@ -70,7 +68,6 @@ public class SysRolePermissionResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Update-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Update-all')")
@ApiOperation(value = "更新角色权限关系", tags = {"角色权限关系" }, notes = "更新角色权限关系") @ApiOperation(value = "更新角色权限关系", tags = {"角色权限关系" }, notes = "更新角色权限关系")
@RequestMapping(method = RequestMethod.PUT, value = "/sysrolepermissions/{sysrolepermission_id}") @RequestMapping(method = RequestMethod.PUT, value = "/sysrolepermissions/{sysrolepermission_id}")
@Transactional
public ResponseEntity<SysRolePermissionDTO> update(@PathVariable("sysrolepermission_id") String sysrolepermission_id, @RequestBody SysRolePermissionDTO sysrolepermissiondto) { public ResponseEntity<SysRolePermissionDTO> update(@PathVariable("sysrolepermission_id") String sysrolepermission_id, @RequestBody SysRolePermissionDTO sysrolepermissiondto) {
SysRolePermission domain = sysrolepermissionMapping.toDomain(sysrolepermissiondto); SysRolePermission domain = sysrolepermissionMapping.toDomain(sysrolepermissiondto);
domain .setRolepermissionid(sysrolepermission_id); domain .setRolepermissionid(sysrolepermission_id);
...@@ -90,7 +87,6 @@ public class SysRolePermissionResource { ...@@ -90,7 +87,6 @@ public class SysRolePermissionResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Remove-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Remove-all')")
@ApiOperation(value = "删除角色权限关系", tags = {"角色权限关系" }, notes = "删除角色权限关系") @ApiOperation(value = "删除角色权限关系", tags = {"角色权限关系" }, notes = "删除角色权限关系")
@RequestMapping(method = RequestMethod.DELETE, value = "/sysrolepermissions/{sysrolepermission_id}") @RequestMapping(method = RequestMethod.DELETE, value = "/sysrolepermissions/{sysrolepermission_id}")
@Transactional
public ResponseEntity<Boolean> remove(@PathVariable("sysrolepermission_id") String sysrolepermission_id) { public ResponseEntity<Boolean> remove(@PathVariable("sysrolepermission_id") String sysrolepermission_id) {
return ResponseEntity.status(HttpStatus.OK).body(sysrolepermissionService.remove(sysrolepermission_id)); return ResponseEntity.status(HttpStatus.OK).body(sysrolepermissionService.remove(sysrolepermission_id));
} }
...@@ -163,7 +159,6 @@ public class SysRolePermissionResource { ...@@ -163,7 +159,6 @@ public class SysRolePermissionResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Create-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Create-all')")
@ApiOperation(value = "根据权限/资源建立角色权限关系", tags = {"角色权限关系" }, notes = "根据权限/资源建立角色权限关系") @ApiOperation(value = "根据权限/资源建立角色权限关系", tags = {"角色权限关系" }, notes = "根据权限/资源建立角色权限关系")
@RequestMapping(method = RequestMethod.POST, value = "/syspermissions/{syspermission_id}/sysrolepermissions") @RequestMapping(method = RequestMethod.POST, value = "/syspermissions/{syspermission_id}/sysrolepermissions")
@Transactional
public ResponseEntity<SysRolePermissionDTO> createBySysPermission(@PathVariable("syspermission_id") String syspermission_id, @RequestBody SysRolePermissionDTO sysrolepermissiondto) { public ResponseEntity<SysRolePermissionDTO> createBySysPermission(@PathVariable("syspermission_id") String syspermission_id, @RequestBody SysRolePermissionDTO sysrolepermissiondto) {
SysRolePermission domain = sysrolepermissionMapping.toDomain(sysrolepermissiondto); SysRolePermission domain = sysrolepermissionMapping.toDomain(sysrolepermissiondto);
domain.setPermissionid(syspermission_id); domain.setPermissionid(syspermission_id);
...@@ -188,7 +183,6 @@ public class SysRolePermissionResource { ...@@ -188,7 +183,6 @@ public class SysRolePermissionResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Update-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Update-all')")
@ApiOperation(value = "根据权限/资源更新角色权限关系", tags = {"角色权限关系" }, notes = "根据权限/资源更新角色权限关系") @ApiOperation(value = "根据权限/资源更新角色权限关系", tags = {"角色权限关系" }, notes = "根据权限/资源更新角色权限关系")
@RequestMapping(method = RequestMethod.PUT, value = "/syspermissions/{syspermission_id}/sysrolepermissions/{sysrolepermission_id}") @RequestMapping(method = RequestMethod.PUT, value = "/syspermissions/{syspermission_id}/sysrolepermissions/{sysrolepermission_id}")
@Transactional
public ResponseEntity<SysRolePermissionDTO> updateBySysPermission(@PathVariable("syspermission_id") String syspermission_id, @PathVariable("sysrolepermission_id") String sysrolepermission_id, @RequestBody SysRolePermissionDTO sysrolepermissiondto) { public ResponseEntity<SysRolePermissionDTO> updateBySysPermission(@PathVariable("syspermission_id") String syspermission_id, @PathVariable("sysrolepermission_id") String sysrolepermission_id, @RequestBody SysRolePermissionDTO sysrolepermissiondto) {
SysRolePermission domain = sysrolepermissionMapping.toDomain(sysrolepermissiondto); SysRolePermission domain = sysrolepermissionMapping.toDomain(sysrolepermissiondto);
domain.setPermissionid(syspermission_id); domain.setPermissionid(syspermission_id);
...@@ -213,7 +207,6 @@ public class SysRolePermissionResource { ...@@ -213,7 +207,6 @@ public class SysRolePermissionResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Remove-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Remove-all')")
@ApiOperation(value = "根据权限/资源删除角色权限关系", tags = {"角色权限关系" }, notes = "根据权限/资源删除角色权限关系") @ApiOperation(value = "根据权限/资源删除角色权限关系", tags = {"角色权限关系" }, notes = "根据权限/资源删除角色权限关系")
@RequestMapping(method = RequestMethod.DELETE, value = "/syspermissions/{syspermission_id}/sysrolepermissions/{sysrolepermission_id}") @RequestMapping(method = RequestMethod.DELETE, value = "/syspermissions/{syspermission_id}/sysrolepermissions/{sysrolepermission_id}")
@Transactional
public ResponseEntity<Boolean> removeBySysPermission(@PathVariable("syspermission_id") String syspermission_id, @PathVariable("sysrolepermission_id") String sysrolepermission_id) { public ResponseEntity<Boolean> removeBySysPermission(@PathVariable("syspermission_id") String syspermission_id, @PathVariable("sysrolepermission_id") String sysrolepermission_id) {
return ResponseEntity.status(HttpStatus.OK).body(sysrolepermissionService.remove(sysrolepermission_id)); return ResponseEntity.status(HttpStatus.OK).body(sysrolepermissionService.remove(sysrolepermission_id));
} }
...@@ -296,7 +289,6 @@ public class SysRolePermissionResource { ...@@ -296,7 +289,6 @@ public class SysRolePermissionResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Create-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Create-all')")
@ApiOperation(value = "根据系统角色建立角色权限关系", tags = {"角色权限关系" }, notes = "根据系统角色建立角色权限关系") @ApiOperation(value = "根据系统角色建立角色权限关系", tags = {"角色权限关系" }, notes = "根据系统角色建立角色权限关系")
@RequestMapping(method = RequestMethod.POST, value = "/sysroles/{sysrole_id}/sysrolepermissions") @RequestMapping(method = RequestMethod.POST, value = "/sysroles/{sysrole_id}/sysrolepermissions")
@Transactional
public ResponseEntity<SysRolePermissionDTO> createBySysRole(@PathVariable("sysrole_id") String sysrole_id, @RequestBody SysRolePermissionDTO sysrolepermissiondto) { public ResponseEntity<SysRolePermissionDTO> createBySysRole(@PathVariable("sysrole_id") String sysrole_id, @RequestBody SysRolePermissionDTO sysrolepermissiondto) {
SysRolePermission domain = sysrolepermissionMapping.toDomain(sysrolepermissiondto); SysRolePermission domain = sysrolepermissionMapping.toDomain(sysrolepermissiondto);
domain.setRoleid(sysrole_id); domain.setRoleid(sysrole_id);
...@@ -321,7 +313,6 @@ public class SysRolePermissionResource { ...@@ -321,7 +313,6 @@ public class SysRolePermissionResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Update-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Update-all')")
@ApiOperation(value = "根据系统角色更新角色权限关系", tags = {"角色权限关系" }, notes = "根据系统角色更新角色权限关系") @ApiOperation(value = "根据系统角色更新角色权限关系", tags = {"角色权限关系" }, notes = "根据系统角色更新角色权限关系")
@RequestMapping(method = RequestMethod.PUT, value = "/sysroles/{sysrole_id}/sysrolepermissions/{sysrolepermission_id}") @RequestMapping(method = RequestMethod.PUT, value = "/sysroles/{sysrole_id}/sysrolepermissions/{sysrolepermission_id}")
@Transactional
public ResponseEntity<SysRolePermissionDTO> updateBySysRole(@PathVariable("sysrole_id") String sysrole_id, @PathVariable("sysrolepermission_id") String sysrolepermission_id, @RequestBody SysRolePermissionDTO sysrolepermissiondto) { public ResponseEntity<SysRolePermissionDTO> updateBySysRole(@PathVariable("sysrole_id") String sysrole_id, @PathVariable("sysrolepermission_id") String sysrolepermission_id, @RequestBody SysRolePermissionDTO sysrolepermissiondto) {
SysRolePermission domain = sysrolepermissionMapping.toDomain(sysrolepermissiondto); SysRolePermission domain = sysrolepermissionMapping.toDomain(sysrolepermissiondto);
domain.setRoleid(sysrole_id); domain.setRoleid(sysrole_id);
...@@ -346,7 +337,6 @@ public class SysRolePermissionResource { ...@@ -346,7 +337,6 @@ public class SysRolePermissionResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Remove-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysRolePermission-Remove-all')")
@ApiOperation(value = "根据系统角色删除角色权限关系", tags = {"角色权限关系" }, notes = "根据系统角色删除角色权限关系") @ApiOperation(value = "根据系统角色删除角色权限关系", tags = {"角色权限关系" }, notes = "根据系统角色删除角色权限关系")
@RequestMapping(method = RequestMethod.DELETE, value = "/sysroles/{sysrole_id}/sysrolepermissions/{sysrolepermission_id}") @RequestMapping(method = RequestMethod.DELETE, value = "/sysroles/{sysrole_id}/sysrolepermissions/{sysrolepermission_id}")
@Transactional
public ResponseEntity<Boolean> removeBySysRole(@PathVariable("sysrole_id") String sysrole_id, @PathVariable("sysrolepermission_id") String sysrolepermission_id) { public ResponseEntity<Boolean> removeBySysRole(@PathVariable("sysrole_id") String sysrole_id, @PathVariable("sysrolepermission_id") String sysrolepermission_id) {
return ResponseEntity.status(HttpStatus.OK).body(sysrolepermissionService.remove(sysrolepermission_id)); return ResponseEntity.status(HttpStatus.OK).body(sysrolepermissionService.remove(sysrolepermission_id));
} }
......
...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject; ...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject;
import javax.servlet.ServletRequest; import javax.servlet.ServletRequest;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cglib.beans.BeanCopier; import org.springframework.cglib.beans.BeanCopier;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
...@@ -50,7 +49,6 @@ public class SysRoleResource { ...@@ -50,7 +49,6 @@ public class SysRoleResource {
@PreAuthorize("hasPermission(this.sysroleMapping.toDomain(#sysroledto),'ibzuaa-SysRole-Create')") @PreAuthorize("hasPermission(this.sysroleMapping.toDomain(#sysroledto),'ibzuaa-SysRole-Create')")
@ApiOperation(value = "新建系统角色", tags = {"系统角色" }, notes = "新建系统角色") @ApiOperation(value = "新建系统角色", tags = {"系统角色" }, notes = "新建系统角色")
@RequestMapping(method = RequestMethod.POST, value = "/sysroles") @RequestMapping(method = RequestMethod.POST, value = "/sysroles")
@Transactional
public ResponseEntity<SysRoleDTO> create(@RequestBody SysRoleDTO sysroledto) { public ResponseEntity<SysRoleDTO> create(@RequestBody SysRoleDTO sysroledto) {
SysRole domain = sysroleMapping.toDomain(sysroledto); SysRole domain = sysroleMapping.toDomain(sysroledto);
sysroleService.create(domain); sysroleService.create(domain);
...@@ -70,7 +68,6 @@ public class SysRoleResource { ...@@ -70,7 +68,6 @@ public class SysRoleResource {
@PreAuthorize("hasPermission(this.sysroleService.get(#sysrole_id),'ibzuaa-SysRole-Update')") @PreAuthorize("hasPermission(this.sysroleService.get(#sysrole_id),'ibzuaa-SysRole-Update')")
@ApiOperation(value = "更新系统角色", tags = {"系统角色" }, notes = "更新系统角色") @ApiOperation(value = "更新系统角色", tags = {"系统角色" }, notes = "更新系统角色")
@RequestMapping(method = RequestMethod.PUT, value = "/sysroles/{sysrole_id}") @RequestMapping(method = RequestMethod.PUT, value = "/sysroles/{sysrole_id}")
@Transactional
public ResponseEntity<SysRoleDTO> update(@PathVariable("sysrole_id") String sysrole_id, @RequestBody SysRoleDTO sysroledto) { public ResponseEntity<SysRoleDTO> update(@PathVariable("sysrole_id") String sysrole_id, @RequestBody SysRoleDTO sysroledto) {
SysRole domain = sysroleMapping.toDomain(sysroledto); SysRole domain = sysroleMapping.toDomain(sysroledto);
domain .setRoleid(sysrole_id); domain .setRoleid(sysrole_id);
...@@ -90,7 +87,6 @@ public class SysRoleResource { ...@@ -90,7 +87,6 @@ public class SysRoleResource {
@PreAuthorize("hasPermission(this.sysroleService.get(#sysrole_id),'ibzuaa-SysRole-Remove')") @PreAuthorize("hasPermission(this.sysroleService.get(#sysrole_id),'ibzuaa-SysRole-Remove')")
@ApiOperation(value = "删除系统角色", tags = {"系统角色" }, notes = "删除系统角色") @ApiOperation(value = "删除系统角色", tags = {"系统角色" }, notes = "删除系统角色")
@RequestMapping(method = RequestMethod.DELETE, value = "/sysroles/{sysrole_id}") @RequestMapping(method = RequestMethod.DELETE, value = "/sysroles/{sysrole_id}")
@Transactional
public ResponseEntity<Boolean> remove(@PathVariable("sysrole_id") String sysrole_id) { public ResponseEntity<Boolean> remove(@PathVariable("sysrole_id") String sysrole_id) {
return ResponseEntity.status(HttpStatus.OK).body(sysroleService.remove(sysrole_id)); return ResponseEntity.status(HttpStatus.OK).body(sysroleService.remove(sysrole_id));
} }
......
...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject; ...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject;
import javax.servlet.ServletRequest; import javax.servlet.ServletRequest;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cglib.beans.BeanCopier; import org.springframework.cglib.beans.BeanCopier;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
...@@ -50,7 +49,6 @@ public class SysUserResource { ...@@ -50,7 +49,6 @@ public class SysUserResource {
@PreAuthorize("hasPermission(this.sysuserMapping.toDomain(#sysuserdto),'ibzuaa-SysUser-Create')") @PreAuthorize("hasPermission(this.sysuserMapping.toDomain(#sysuserdto),'ibzuaa-SysUser-Create')")
@ApiOperation(value = "新建系统用户", tags = {"系统用户" }, notes = "新建系统用户") @ApiOperation(value = "新建系统用户", tags = {"系统用户" }, notes = "新建系统用户")
@RequestMapping(method = RequestMethod.POST, value = "/sysusers") @RequestMapping(method = RequestMethod.POST, value = "/sysusers")
@Transactional
public ResponseEntity<SysUserDTO> create(@RequestBody SysUserDTO sysuserdto) { public ResponseEntity<SysUserDTO> create(@RequestBody SysUserDTO sysuserdto) {
SysUser domain = sysuserMapping.toDomain(sysuserdto); SysUser domain = sysuserMapping.toDomain(sysuserdto);
sysuserService.create(domain); sysuserService.create(domain);
...@@ -69,7 +67,6 @@ public class SysUserResource { ...@@ -69,7 +67,6 @@ public class SysUserResource {
@PreAuthorize("hasPermission(this.sysuserService.get(#sysuser_id),'ibzuaa-SysUser-Update')") @PreAuthorize("hasPermission(this.sysuserService.get(#sysuser_id),'ibzuaa-SysUser-Update')")
@ApiOperation(value = "更新系统用户", tags = {"系统用户" }, notes = "更新系统用户") @ApiOperation(value = "更新系统用户", tags = {"系统用户" }, notes = "更新系统用户")
@RequestMapping(method = RequestMethod.PUT, value = "/sysusers/{sysuser_id}") @RequestMapping(method = RequestMethod.PUT, value = "/sysusers/{sysuser_id}")
@Transactional
public ResponseEntity<SysUserDTO> update(@PathVariable("sysuser_id") String sysuser_id, @RequestBody SysUserDTO sysuserdto) { public ResponseEntity<SysUserDTO> update(@PathVariable("sysuser_id") String sysuser_id, @RequestBody SysUserDTO sysuserdto) {
SysUser domain = sysuserMapping.toDomain(sysuserdto); SysUser domain = sysuserMapping.toDomain(sysuserdto);
domain .setUserid(sysuser_id); domain .setUserid(sysuser_id);
...@@ -89,7 +86,6 @@ public class SysUserResource { ...@@ -89,7 +86,6 @@ public class SysUserResource {
@PreAuthorize("hasPermission(this.sysuserService.get(#sysuser_id),'ibzuaa-SysUser-Remove')") @PreAuthorize("hasPermission(this.sysuserService.get(#sysuser_id),'ibzuaa-SysUser-Remove')")
@ApiOperation(value = "删除系统用户", tags = {"系统用户" }, notes = "删除系统用户") @ApiOperation(value = "删除系统用户", tags = {"系统用户" }, notes = "删除系统用户")
@RequestMapping(method = RequestMethod.DELETE, value = "/sysusers/{sysuser_id}") @RequestMapping(method = RequestMethod.DELETE, value = "/sysusers/{sysuser_id}")
@Transactional
public ResponseEntity<Boolean> remove(@PathVariable("sysuser_id") String sysuser_id) { public ResponseEntity<Boolean> remove(@PathVariable("sysuser_id") String sysuser_id) {
return ResponseEntity.status(HttpStatus.OK).body(sysuserService.remove(sysuser_id)); return ResponseEntity.status(HttpStatus.OK).body(sysuserService.remove(sysuser_id));
} }
......
...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject; ...@@ -11,7 +11,6 @@ import com.alibaba.fastjson.JSONObject;
import javax.servlet.ServletRequest; import javax.servlet.ServletRequest;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cglib.beans.BeanCopier; import org.springframework.cglib.beans.BeanCopier;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
...@@ -50,7 +49,6 @@ public class SysUserRoleResource { ...@@ -50,7 +49,6 @@ public class SysUserRoleResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Create-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Create-all')")
@ApiOperation(value = "新建用户角色关系", tags = {"用户角色关系" }, notes = "新建用户角色关系") @ApiOperation(value = "新建用户角色关系", tags = {"用户角色关系" }, notes = "新建用户角色关系")
@RequestMapping(method = RequestMethod.POST, value = "/sysuserroles") @RequestMapping(method = RequestMethod.POST, value = "/sysuserroles")
@Transactional
public ResponseEntity<SysUserRoleDTO> create(@RequestBody SysUserRoleDTO sysuserroledto) { public ResponseEntity<SysUserRoleDTO> create(@RequestBody SysUserRoleDTO sysuserroledto) {
SysUserRole domain = sysuserroleMapping.toDomain(sysuserroledto); SysUserRole domain = sysuserroleMapping.toDomain(sysuserroledto);
sysuserroleService.create(domain); sysuserroleService.create(domain);
...@@ -70,7 +68,6 @@ public class SysUserRoleResource { ...@@ -70,7 +68,6 @@ public class SysUserRoleResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Update-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Update-all')")
@ApiOperation(value = "更新用户角色关系", tags = {"用户角色关系" }, notes = "更新用户角色关系") @ApiOperation(value = "更新用户角色关系", tags = {"用户角色关系" }, notes = "更新用户角色关系")
@RequestMapping(method = RequestMethod.PUT, value = "/sysuserroles/{sysuserrole_id}") @RequestMapping(method = RequestMethod.PUT, value = "/sysuserroles/{sysuserrole_id}")
@Transactional
public ResponseEntity<SysUserRoleDTO> update(@PathVariable("sysuserrole_id") String sysuserrole_id, @RequestBody SysUserRoleDTO sysuserroledto) { public ResponseEntity<SysUserRoleDTO> update(@PathVariable("sysuserrole_id") String sysuserrole_id, @RequestBody SysUserRoleDTO sysuserroledto) {
SysUserRole domain = sysuserroleMapping.toDomain(sysuserroledto); SysUserRole domain = sysuserroleMapping.toDomain(sysuserroledto);
domain .setUserroleid(sysuserrole_id); domain .setUserroleid(sysuserrole_id);
...@@ -90,7 +87,6 @@ public class SysUserRoleResource { ...@@ -90,7 +87,6 @@ public class SysUserRoleResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Remove-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Remove-all')")
@ApiOperation(value = "删除用户角色关系", tags = {"用户角色关系" }, notes = "删除用户角色关系") @ApiOperation(value = "删除用户角色关系", tags = {"用户角色关系" }, notes = "删除用户角色关系")
@RequestMapping(method = RequestMethod.DELETE, value = "/sysuserroles/{sysuserrole_id}") @RequestMapping(method = RequestMethod.DELETE, value = "/sysuserroles/{sysuserrole_id}")
@Transactional
public ResponseEntity<Boolean> remove(@PathVariable("sysuserrole_id") String sysuserrole_id) { public ResponseEntity<Boolean> remove(@PathVariable("sysuserrole_id") String sysuserrole_id) {
return ResponseEntity.status(HttpStatus.OK).body(sysuserroleService.remove(sysuserrole_id)); return ResponseEntity.status(HttpStatus.OK).body(sysuserroleService.remove(sysuserrole_id));
} }
...@@ -163,7 +159,6 @@ public class SysUserRoleResource { ...@@ -163,7 +159,6 @@ public class SysUserRoleResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Create-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Create-all')")
@ApiOperation(value = "根据系统角色建立用户角色关系", tags = {"用户角色关系" }, notes = "根据系统角色建立用户角色关系") @ApiOperation(value = "根据系统角色建立用户角色关系", tags = {"用户角色关系" }, notes = "根据系统角色建立用户角色关系")
@RequestMapping(method = RequestMethod.POST, value = "/sysroles/{sysrole_id}/sysuserroles") @RequestMapping(method = RequestMethod.POST, value = "/sysroles/{sysrole_id}/sysuserroles")
@Transactional
public ResponseEntity<SysUserRoleDTO> createBySysRole(@PathVariable("sysrole_id") String sysrole_id, @RequestBody SysUserRoleDTO sysuserroledto) { public ResponseEntity<SysUserRoleDTO> createBySysRole(@PathVariable("sysrole_id") String sysrole_id, @RequestBody SysUserRoleDTO sysuserroledto) {
SysUserRole domain = sysuserroleMapping.toDomain(sysuserroledto); SysUserRole domain = sysuserroleMapping.toDomain(sysuserroledto);
domain.setRoleid(sysrole_id); domain.setRoleid(sysrole_id);
...@@ -188,7 +183,6 @@ public class SysUserRoleResource { ...@@ -188,7 +183,6 @@ public class SysUserRoleResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Update-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Update-all')")
@ApiOperation(value = "根据系统角色更新用户角色关系", tags = {"用户角色关系" }, notes = "根据系统角色更新用户角色关系") @ApiOperation(value = "根据系统角色更新用户角色关系", tags = {"用户角色关系" }, notes = "根据系统角色更新用户角色关系")
@RequestMapping(method = RequestMethod.PUT, value = "/sysroles/{sysrole_id}/sysuserroles/{sysuserrole_id}") @RequestMapping(method = RequestMethod.PUT, value = "/sysroles/{sysrole_id}/sysuserroles/{sysuserrole_id}")
@Transactional
public ResponseEntity<SysUserRoleDTO> updateBySysRole(@PathVariable("sysrole_id") String sysrole_id, @PathVariable("sysuserrole_id") String sysuserrole_id, @RequestBody SysUserRoleDTO sysuserroledto) { public ResponseEntity<SysUserRoleDTO> updateBySysRole(@PathVariable("sysrole_id") String sysrole_id, @PathVariable("sysuserrole_id") String sysuserrole_id, @RequestBody SysUserRoleDTO sysuserroledto) {
SysUserRole domain = sysuserroleMapping.toDomain(sysuserroledto); SysUserRole domain = sysuserroleMapping.toDomain(sysuserroledto);
domain.setRoleid(sysrole_id); domain.setRoleid(sysrole_id);
...@@ -213,7 +207,6 @@ public class SysUserRoleResource { ...@@ -213,7 +207,6 @@ public class SysUserRoleResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Remove-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Remove-all')")
@ApiOperation(value = "根据系统角色删除用户角色关系", tags = {"用户角色关系" }, notes = "根据系统角色删除用户角色关系") @ApiOperation(value = "根据系统角色删除用户角色关系", tags = {"用户角色关系" }, notes = "根据系统角色删除用户角色关系")
@RequestMapping(method = RequestMethod.DELETE, value = "/sysroles/{sysrole_id}/sysuserroles/{sysuserrole_id}") @RequestMapping(method = RequestMethod.DELETE, value = "/sysroles/{sysrole_id}/sysuserroles/{sysuserrole_id}")
@Transactional
public ResponseEntity<Boolean> removeBySysRole(@PathVariable("sysrole_id") String sysrole_id, @PathVariable("sysuserrole_id") String sysuserrole_id) { public ResponseEntity<Boolean> removeBySysRole(@PathVariable("sysrole_id") String sysrole_id, @PathVariable("sysuserrole_id") String sysuserrole_id) {
return ResponseEntity.status(HttpStatus.OK).body(sysuserroleService.remove(sysuserrole_id)); return ResponseEntity.status(HttpStatus.OK).body(sysuserroleService.remove(sysuserrole_id));
} }
...@@ -296,7 +289,6 @@ public class SysUserRoleResource { ...@@ -296,7 +289,6 @@ public class SysUserRoleResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Create-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Create-all')")
@ApiOperation(value = "根据系统用户建立用户角色关系", tags = {"用户角色关系" }, notes = "根据系统用户建立用户角色关系") @ApiOperation(value = "根据系统用户建立用户角色关系", tags = {"用户角色关系" }, notes = "根据系统用户建立用户角色关系")
@RequestMapping(method = RequestMethod.POST, value = "/sysusers/{sysuser_id}/sysuserroles") @RequestMapping(method = RequestMethod.POST, value = "/sysusers/{sysuser_id}/sysuserroles")
@Transactional
public ResponseEntity<SysUserRoleDTO> createBySysUser(@PathVariable("sysuser_id") String sysuser_id, @RequestBody SysUserRoleDTO sysuserroledto) { public ResponseEntity<SysUserRoleDTO> createBySysUser(@PathVariable("sysuser_id") String sysuser_id, @RequestBody SysUserRoleDTO sysuserroledto) {
SysUserRole domain = sysuserroleMapping.toDomain(sysuserroledto); SysUserRole domain = sysuserroleMapping.toDomain(sysuserroledto);
domain.setUserid(sysuser_id); domain.setUserid(sysuser_id);
...@@ -321,7 +313,6 @@ public class SysUserRoleResource { ...@@ -321,7 +313,6 @@ public class SysUserRoleResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Update-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Update-all')")
@ApiOperation(value = "根据系统用户更新用户角色关系", tags = {"用户角色关系" }, notes = "根据系统用户更新用户角色关系") @ApiOperation(value = "根据系统用户更新用户角色关系", tags = {"用户角色关系" }, notes = "根据系统用户更新用户角色关系")
@RequestMapping(method = RequestMethod.PUT, value = "/sysusers/{sysuser_id}/sysuserroles/{sysuserrole_id}") @RequestMapping(method = RequestMethod.PUT, value = "/sysusers/{sysuser_id}/sysuserroles/{sysuserrole_id}")
@Transactional
public ResponseEntity<SysUserRoleDTO> updateBySysUser(@PathVariable("sysuser_id") String sysuser_id, @PathVariable("sysuserrole_id") String sysuserrole_id, @RequestBody SysUserRoleDTO sysuserroledto) { public ResponseEntity<SysUserRoleDTO> updateBySysUser(@PathVariable("sysuser_id") String sysuser_id, @PathVariable("sysuserrole_id") String sysuserrole_id, @RequestBody SysUserRoleDTO sysuserroledto) {
SysUserRole domain = sysuserroleMapping.toDomain(sysuserroledto); SysUserRole domain = sysuserroleMapping.toDomain(sysuserroledto);
domain.setUserid(sysuser_id); domain.setUserid(sysuser_id);
...@@ -346,7 +337,6 @@ public class SysUserRoleResource { ...@@ -346,7 +337,6 @@ public class SysUserRoleResource {
@PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Remove-all')") @PreAuthorize("hasAnyAuthority('ROLE_SUPERADMIN','ibzuaa-SysUserRole-Remove-all')")
@ApiOperation(value = "根据系统用户删除用户角色关系", tags = {"用户角色关系" }, notes = "根据系统用户删除用户角色关系") @ApiOperation(value = "根据系统用户删除用户角色关系", tags = {"用户角色关系" }, notes = "根据系统用户删除用户角色关系")
@RequestMapping(method = RequestMethod.DELETE, value = "/sysusers/{sysuser_id}/sysuserroles/{sysuserrole_id}") @RequestMapping(method = RequestMethod.DELETE, value = "/sysusers/{sysuser_id}/sysuserroles/{sysuserrole_id}")
@Transactional
public ResponseEntity<Boolean> removeBySysUser(@PathVariable("sysuser_id") String sysuser_id, @PathVariable("sysuserrole_id") String sysuserrole_id) { public ResponseEntity<Boolean> removeBySysUser(@PathVariable("sysuser_id") String sysuser_id, @PathVariable("sysuserrole_id") String sysuserrole_id) {
return ResponseEntity.status(HttpStatus.OK).body(sysuserroleService.remove(sysuserrole_id)); return ResponseEntity.status(HttpStatus.OK).body(sysuserroleService.remove(sysuserrole_id));
} }
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册