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

xignzi006 发布系统代码

上级 35e072b2
......@@ -302,6 +302,30 @@ export default {
uiactions: {
},
},
edit_address_form: {
details: {
group1: "客户基本信息",
formpage1: "基本信息",
srfupdatedate: "更新时间",
srforikey: "",
srfkey: "客户",
srfmajortext: "客户名称",
srftempmode: "",
srfuf: "",
srfdeid: "",
srfsourcekey: "",
address1_addressid: "地址 1: ID",
address1_name: "地址 1: 名称",
address1_addresstypecode: "地址 1: 地址类型",
address1_country: "地址 1: 国家/地区",
address1_stateorprovince: "地址 1: 省/市/自治区",
address1_city: "地址 1: 市/县",
address1_county: "地址 1: 县",
accountid: "客户",
},
uiactions: {
},
},
introduction_form: {
details: {
group1: "客户基本信息",
......@@ -463,30 +487,6 @@ export default {
uiactions: {
},
},
edit_address_form: {
details: {
group1: "客户基本信息",
formpage1: "基本信息",
srfupdatedate: "更新时间",
srforikey: "",
srfkey: "客户",
srfmajortext: "客户名称",
srftempmode: "",
srfuf: "",
srfdeid: "",
srfsourcekey: "",
address1_addressid: "地址 1: ID",
address1_name: "地址 1: 名称",
address1_addresstypecode: "地址 1: 地址类型",
address1_country: "地址 1: 国家/地区",
address1_stateorprovince: "地址 1: 省/市/自治区",
address1_city: "地址 1: 市/县",
address1_county: "地址 1: 县",
accountid: "客户",
},
uiactions: {
},
},
main_grid: {
columns: {
accountname: "客户名称",
......@@ -543,6 +543,44 @@ export default {
tip: "Copy {0}",
},
},
edit_addresstoolbar_toolbar: {
tbitem3: {
caption: "Save",
tip: "Save",
},
tbitem4: {
caption: "Save And New",
tip: "Save And New",
},
tbitem5: {
caption: "Save And Close",
tip: "Save And Close Window",
},
tbitem6: {
caption: "-",
tip: "",
},
tbitem7: {
caption: "Remove And Close",
tip: "Remove And Close Window",
},
tbitem8: {
caption: "-",
tip: "",
},
tbitem12: {
caption: "New",
tip: "New",
},
tbitem13: {
caption: "-",
tip: "",
},
tbitem14: {
caption: "Copy",
tip: "Copy {0}",
},
},
gridviewtoolbar_toolbar: {
tbitem1_openquickcreateview: {
caption: "新建",
......@@ -585,42 +623,4 @@ export default {
tip: "Filter",
},
},
edit_addresstoolbar_toolbar: {
tbitem3: {
caption: "Save",
tip: "Save",
},
tbitem4: {
caption: "Save And New",
tip: "Save And New",
},
tbitem5: {
caption: "Save And Close",
tip: "Save And Close Window",
},
tbitem6: {
caption: "-",
tip: "",
},
tbitem7: {
caption: "Remove And Close",
tip: "Remove And Close Window",
},
tbitem8: {
caption: "-",
tip: "",
},
tbitem12: {
caption: "New",
tip: "New",
},
tbitem13: {
caption: "-",
tip: "",
},
tbitem14: {
caption: "Copy",
tip: "Copy {0}",
},
},
};
\ No newline at end of file
......@@ -301,6 +301,30 @@ export default {
uiactions: {
},
},
edit_address_form: {
details: {
group1: '客户基本信息',
formpage1: '基本信息',
srfupdatedate: '更新时间',
srforikey: '',
srfkey: '客户',
srfmajortext: '客户名称',
srftempmode: '',
srfuf: '',
srfdeid: '',
srfsourcekey: '',
address1_addressid: '地址 1: ID',
address1_name: '地址 1: 名称',
address1_addresstypecode: '地址 1: 地址类型',
address1_country: '地址 1: 国家/地区',
address1_stateorprovince: '地址 1: 省/市/自治区',
address1_city: '地址 1: 市/县',
address1_county: '地址 1: 县',
accountid: '客户',
},
uiactions: {
},
},
introduction_form: {
details: {
group1: '客户基本信息',
......@@ -462,30 +486,6 @@ export default {
uiactions: {
},
},
edit_address_form: {
details: {
group1: '客户基本信息',
formpage1: '基本信息',
srfupdatedate: '更新时间',
srforikey: '',
srfkey: '客户',
srfmajortext: '客户名称',
srftempmode: '',
srfuf: '',
srfdeid: '',
srfsourcekey: '',
address1_addressid: '地址 1: ID',
address1_name: '地址 1: 名称',
address1_addresstypecode: '地址 1: 地址类型',
address1_country: '地址 1: 国家/地区',
address1_stateorprovince: '地址 1: 省/市/自治区',
address1_city: '地址 1: 市/县',
address1_county: '地址 1: 县',
accountid: '客户',
},
uiactions: {
},
},
main_grid: {
columns: {
accountname: '客户名称',
......@@ -542,6 +542,44 @@ export default {
tip: '拷贝',
},
},
edit_addresstoolbar_toolbar: {
tbitem3: {
caption: '保存',
tip: '保存',
},
tbitem4: {
caption: '保存并新建',
tip: '保存并新建',
},
tbitem5: {
caption: '保存并关闭',
tip: '保存并关闭',
},
tbitem6: {
caption: '-',
tip: '',
},
tbitem7: {
caption: '删除并关闭',
tip: '删除并关闭',
},
tbitem8: {
caption: '-',
tip: '',
},
tbitem12: {
caption: '新建',
tip: '新建',
},
tbitem13: {
caption: '-',
tip: '',
},
tbitem14: {
caption: '拷贝',
tip: '拷贝',
},
},
gridviewtoolbar_toolbar: {
tbitem1_openquickcreateview: {
caption: '新建',
......@@ -584,42 +622,4 @@ export default {
tip: '过滤',
},
},
edit_addresstoolbar_toolbar: {
tbitem3: {
caption: '保存',
tip: '保存',
},
tbitem4: {
caption: '保存并新建',
tip: '保存并新建',
},
tbitem5: {
caption: '保存并关闭',
tip: '保存并关闭',
},
tbitem6: {
caption: '-',
tip: '',
},
tbitem7: {
caption: '删除并关闭',
tip: '删除并关闭',
},
tbitem8: {
caption: '-',
tip: '',
},
tbitem12: {
caption: '新建',
tip: '新建',
},
tbitem13: {
caption: '-',
tip: '',
},
tbitem14: {
caption: '拷贝',
tip: '拷贝',
},
},
};
\ No newline at end of file
......@@ -426,6 +426,20 @@ const router = new Router({
},
component: () => import('@pages/base/appointment-edit-view/appointment-edit-view.vue'),
},
{
path: 'accounts/:account?/edit_address/:edit_address?',
meta: {
caption: 'entities.account.views.edit_address.title',
info:'',
parameters: [
{ pathName: 'central', parameterName: 'central' },
{ pathName: 'accounts', parameterName: 'account' },
{ pathName: 'edit_address', parameterName: 'edit_address' },
],
requireAuth: true,
},
component: () => import('@pages/base/account-edit-address/account-edit-address.vue'),
},
{
path: 'contacts/:contact?/tabexpview/:tabexpview?',
meta: {
......
......@@ -127,6 +127,7 @@ export const viewstate: any = {
'893e62d6fbdc4580de7e3e802aec9108',
'916febbb65be1c54dd42ccb9914fe973',
'1d3b94223a5d3f8ab1d2fe334c8c4afd',
'728b69e2de09e7920b86712bc17ea963',
'a5213905238dbc5d8e1a505029105cc9',
],
},
......
......@@ -164,6 +164,69 @@ export default class AccountUIServiceBase extends UIService {
openDrawer(view, data);
}
/**
* 编辑
*
* @param {any[]} args 当前数据
* @param {any} context 行为附加上下文
* @param {*} [params] 附加参数
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @param {*} [srfParentDeName] 父实体名称
* @returns {Promise<any>}
*/
public async Account_Edit_Address(args: any[], context:any = {} ,params: any={}, $event?: any, xData?: any,actionContext?:any,srfParentDeName?:string) {
let data: any = {};
let parentContext:any = {};
let parentViewParam:any = {};
const _this: any = actionContext;
const _args: any[] = Util.deepCopy(args);
const actionTarget: string | null = 'SINGLEKEY';
Object.assign(context, { account: '%account%' });
Object.assign(params, { accountid: '%account%' });
Object.assign(params, { accountname: '%accountname%' });
if(_this.context){
parentContext = _this.context;
}
if(_this.viewparams){
parentViewParam = _this.viewparams;
}
context = UIActionTool.handleContextParam(actionTarget,_args,parentContext,parentViewParam,context);
data = UIActionTool.handleActionParam(actionTarget,_args,parentContext,parentViewParam,params);
context = Object.assign({},actionContext.context,context);
let parentObj:any = {srfparentdename:srfParentDeName?srfParentDeName:null,srfparentkey:srfParentDeName?context[srfParentDeName.toLowerCase()]:null};
Object.assign(data,parentObj);
Object.assign(context,parentObj);
let deResParameters: any[] = [];
const parameters: any[] = [
{ pathName: 'accounts', parameterName: 'account' },
];
const openDrawer = (view: any, data: any) => {
let container: Subject<any> = actionContext.$appdrawer.openDrawer(view, context,data);
container.subscribe((result: any) => {
if (!result || !Object.is(result.ret, 'OK')) {
return;
}
const _this: any = actionContext;
if(window.opener){
window.opener.postMessage({status:'OK',identification:'WF'},Environment.uniteAddress);
window.close();
}
return result.datas;
});
}
const view: any = {
viewname: 'account-edit-address',
height: 0,
width: 450,
title: actionContext.$t('entities.account.views.edit_address.title'),
placement: 'DRAWER_RIGHT',
};
openDrawer(view, data);
}
/**
* 编辑
*
......
......@@ -8,7 +8,7 @@
<span class="portlet-action">
<a @click="uiAction('uc040f39', $event)">
<span>编辑</span>
</a>
</span>
</p>
......
......@@ -5,6 +5,12 @@
地址信息
</span>
<span class="portlet-action">
<a @click="uiAction('u2ccbfc9', $event)">
<span>编辑</span>
</a>
</span>
</p>
<div class="portlet-with-title">
<account-address :viewdata="JSON.stringify(context)" :viewDefaultUsage="false" ></account-address>
......@@ -20,6 +26,7 @@ import { UIActionTool,Util } from '@/utils';
import AccountService from '@/service/account/account-service';
import PT_AddressService from './pt-address-portlet-service';
import AccountUIService from '@/uiservice/account/account-ui-service';
import { Environment } from '@/environments/environment';
......@@ -108,6 +115,34 @@ export default class AccountPT_AddressBase extends Vue implements ControlInterfa
public appEntityService: AccountService = new AccountService({ $store: this.$store });
/**
* 逻辑事件
*
* @param {*} [params={}]
* @param {*} [tag]
* @param {*} [$event]
* @memberof
*/
public dashboard_sysportlet2_u2ccbfc9_click(params: any = {}, tag?: any, $event?: any) {
// 取数
let datas: any[] = [];
let xData: any = null;
// _this 指向容器对象
const _this: any = this;
let paramJO:any = {};
let contextJO:any = {};
xData = this;
if (_this.getDatas && _this.getDatas instanceof Function) {
datas = [..._this.getDatas()];
}
if(params){
datas = [params];
}
// 界面行为
const curUIService:AccountUIService = new AccountUIService();
curUIService.Account_Edit_Address(datas,contextJO, paramJO, $event, xData,this,"Account");
}
/**
* 关闭视图
......@@ -231,6 +266,16 @@ export default class AccountPT_AddressBase extends Vue implements ControlInterfa
}
}
/**
* 执行界面行为
*
* @memberof PT_AddressBase
*/
public uiAction(tag:string,event:any){
if(Object.is(tag,'u2ccbfc9')){
this.dashboard_sysportlet2_u2ccbfc9_click(null,tag,event);
}
}
}
</script>
......
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import SummaryBase from './summary-dashboard-base.vue';
import view_dashboard_sysportlet8 from '@widgets/activity-pointer/by-parent-key-portlet/by-parent-key-portlet.vue';
import view_dashboard_sysportlet8 from '@widgets/activity-pointer/pt-by-parent-key-portlet/pt-by-parent-key-portlet.vue';
import view_dashboard_sysportlet6 from '@widgets/account/pt-major-contact-portlet/pt-major-contact-portlet.vue';
import view_dashboard_sysportlet7 from '@widgets/contact/by-account-portlet/by-account-portlet.vue';
import view_dashboard_sysportlet7 from '@widgets/contact/pt-by-account-portlet/pt-by-account-portlet.vue';
import view_dashboard_sysportlet4 from '@widgets/account/pt-contact-setting-portlet/pt-contact-setting-portlet.vue';
import view_dashboard_sysportlet5 from '@widgets/account/pt-distribution-portlet/pt-distribution-portlet.vue';
import view_dashboard_sysportlet2 from '@widgets/account/pt-address-portlet/pt-address-portlet.vue';
......
/**
* PT_ByParentKey 部件模型
*
* @export
* @class PT_ByParentKeyModel
*/
export default class PT_ByParentKeyModel {
/**
* 获取数据项集合
*
* @returns {any[]}
* @memberof PT_ByParentKeyModel
*/
public getDataItems(): any[] {
return [
{
name: 'seriesid',
},
{
name: 'traversedpath',
},
{
name: 'deliveryprioritycode',
},
{
name: 'onholdtime',
},
{
name: 'workflowcreated',
},
{
name: 'senton',
},
{
name: 'lastonholdtime',
},
{
name: 'actualdurationminutes',
},
{
name: 'regardingobjectid',
},
{
name: 'deliverylastattemptedon',
},
{
name: 'mapiprivate',
},
{
name: 'actualend',
},
{
name: 'description',
},
{
name: 'prioritycode',
},
{
name: 'owneridtype',
},
{
name: 'billed',
},
{
name: 'regularactivity',
},
{
name: 'utcconversiontimezonecode',
},
{
name: 'createman',
},
{
name: 'scheduleddurationminutes',
},
{
name: 'activityadditionalparams',
},
{
name: 'activitypointer',
prop: 'activityid',
},
{
name: 'updatedate',
},
{
name: 'stageid',
},
{
name: 'leftvoicemail',
},
{
name: 'scheduledend',
},
{
name: 'exchangeitemid',
},
{
name: 'exchangerate',
},
{
name: 'scheduledstart',
},
{
name: 'instancetypecode',
},
{
name: 'regardingobjectidyominame',
},
{
name: 'regardingobjecttypecode',
},
{
name: 'sortdate',
},
{
name: 'createdate',
},
{
name: 'owneridyominame',
},
{
name: 'community',
},
{
name: 'ownerid',
},
{
name: 'processid',
},
{
name: 'slaname',
},
{
name: 'subject',
},
{
name: 'versionnumber',
},
{
name: 'allparties',
},
{
name: 'updateman',
},
{
name: 'exchangeweblink',
},
{
name: 'statuscode',
},
{
name: 'timezoneruleversionnumber',
},
{
name: 'actualstart',
},
{
name: 'activitytypecode',
},
{
name: 'regardingobjectidname',
},
{
name: 'statecode',
},
{
name: 'serviceid',
},
{
name: 'transactioncurrencyid',
},
{
name: 'slaid',
},
]
}
}
import { Http } from '@/utils';
import ControlService from '@/widgets/control-service';
/**
* PT_ByParentKey 部件服务对象
*
* @export
* @class PT_ByParentKeyService
*/
export default class PT_ByParentKeyService extends ControlService {
}
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import ActivityPointerPT_ByParentKeyBase from './pt-by-parent-key-portlet-base.vue';
import view_dashboard_sysportlet8_list from '@widgets/activity-pointer/by-parent-key-list/by-parent-key-list.vue';
@Component({
components: {
view_dashboard_sysportlet8_list,
}
})
export default class ActivityPointerPT_ByParentKey extends ActivityPointerPT_ByParentKeyBase {
}
</script>
<template>
<div class='portlet pt-by-account ' :style="{'height': isAdaptiveSize ? 'calc(100% - 16px)' : (height > 0 ? height+'px' :'300px'),}">
<div class="portlet-without-title">
<!-- 测试 -->
<view_dashboard_sysportlet7_list
:viewState="viewState"
:viewparams="viewparams"
:context="context"
createAction="Create"
removeAction="Remove"
updateAction="Update"
fetchAction="FetchDefault"
:showBusyIndicator="true"
name="dashboard_sysportlet7_list"
ref='dashboard_sysportlet7_list'
@closeview="closeView($event)">
</view_dashboard_sysportlet7_list>
</div>
</div>
</template>
<script lang='tsx'>
import { Vue, Component, Prop, Provide, Emit, Watch, Model } from 'vue-property-decorator';
import { CreateElement } from 'vue';
import { Subject, Subscription } from 'rxjs';
import { ControlInterface } from '@/interface/control';
import { UIActionTool,Util } from '@/utils';
import ContactService from '@/service/contact/contact-service';
import PT_ByAccountService from './pt-by-account-portlet-service';
import { Environment } from '@/environments/environment';
@Component({
components: {
}
})
export default class ContactPT_ByAccountBase extends Vue implements ControlInterface {
/**
* 名称
*
* @type {string}
* @memberof PT_ByAccount
*/
@Prop() public name?: string;
/**
* 视图通讯对象
*
* @type {Subject<ViewState>}
* @memberof PT_ByAccount
*/
@Prop() public viewState!: Subject<ViewState>;
/**
* 应用上下文
*
* @type {*}
* @memberof PT_ByAccount
*/
@Prop() public context: any;
/**
* 视图参数
*
* @type {*}
* @memberof PT_ByAccount
*/
@Prop() public viewparams: any;
/**
* 视图状态事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof PT_ByAccount
*/
public viewStateEvent: Subscription | undefined;
/**
* 获取部件类型
*
* @returns {string}
* @memberof PT_ByAccount
*/
public getControlType(): string {
return 'PORTLET'
}
/**
* 计数器服务对象集合
*
* @type {Array<*>}
* @memberof PT_ByAccount
*/
public counterServiceArray:Array<any> = [];
/**
* 建构部件服务对象
*
* @type {PT_ByAccountService}
* @memberof PT_ByAccount
*/
public service: PT_ByAccountService = new PT_ByAccountService({ $store: this.$store });
/**
* 实体服务对象
*
* @type {ContactService}
* @memberof PT_ByAccount
*/
public appEntityService: ContactService = new ContactService({ $store: this.$store });
/**
* 关闭视图
*
* @param {any} args
* @memberof PT_ByAccount
*/
public closeView(args: any): void {
let _this: any = this;
_this.$emit('closeview', [args]);
}
/**
* 计数器刷新
*
* @memberof PT_ByAccount
*/
public counterRefresh(){
const _this:any =this;
if(_this.counterServiceArray && _this.counterServiceArray.length >0){
_this.counterServiceArray.forEach((item:any) =>{
if(item.refreshData && item.refreshData instanceof Function){
item.refreshData();
}
})
}
}
/**
* 长度
*
* @type {number}
* @memberof PT_ByAccount
*/
@Prop() public height?: number;
/**
* 宽度
*
* @type {number}
* @memberof PT_ByAccount
*/
@Prop() public width?: number;
/**
* 是否自适应大小
*
* @returns {boolean}
* @memberof PT_ByAccountBase
*/
@Prop({default: false})public isAdaptiveSize!: boolean;
/**
* 获取多项数据
*
* @returns {any[]}
* @memberof PT_ByAccountBase
*/
public getDatas(): any[] {
return [];
}
/**
* 获取单项树
*
* @returns {*}
* @memberof PT_ByAccountBase
*/
public getData(): any {
return {};
}
/**
* vue 生命周期
*
* @memberof PT_ByAccountBase
*/
public created() {
this.afterCreated();
}
/**
* 执行created后的逻辑
*
* @memberof PT_ByAccountBase
*/
public afterCreated(){
if (this.viewState) {
this.viewStateEvent = this.viewState.subscribe(({ tag, action, data }) => {
if (!Object.is(tag, this.name)) {
return;
}
const refs: any = this.$refs;
Object.keys(refs).forEach((_name: string) => {
this.viewState.next({ tag: _name, action: action, data: data });
});
});
}
}
/**
* vue 生命周期
*
* @memberof PT_ByAccountBase
*/
public destroyed() {
this.afterDestroy();
}
/**
* 执行destroyed后的逻辑
*
* @memberof PT_ByAccountBase
*/
public afterDestroy() {
if (this.viewStateEvent) {
this.viewStateEvent.unsubscribe();
}
}
}
</script>
<style lang='less'>
@import './pt-by-account-portlet.less';
</style>
import { Http } from '@/utils';
import ControlService from '@/widgets/control-service';
/**
* PT_ByAccount 部件服务对象
*
* @export
* @class PT_ByAccountService
*/
export default class PT_ByAccountService extends ControlService {
}
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import ContactPT_ByAccountBase from './pt-by-account-portlet-base.vue';
import view_dashboard_sysportlet7_list from '@widgets/contact/by-account-list/by-account-list.vue';
@Component({
components: {
view_dashboard_sysportlet7_list,
}
})
export default class ContactPT_ByAccount extends ContactPT_ByAccountBase {
}
</script>
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册