Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
I
iBiz企业中心
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz企业套件
iBiz企业中心
提交
939b1d17
提交
939b1d17
编写于
6月 21, 2020
作者:
ibizdev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
chitanda 发布系统代码
上级
cfa4ba28
变更
21
展开全部
隐藏空白字符变更
内嵌
并排
正在显示
21 个修改的文件
包含
2743 行增加
和
199 行删除
+2743
-199
view-config.json
app_CRM/public/assets/json/view-config.json
+10
-0
competitor_en_US.ts
...src/locale/lanres/entities/competitor/competitor_en_US.ts
+38
-5
competitor_zh_CN.ts
...src/locale/lanres/entities/competitor/competitor_zh_CN.ts
+36
-3
viewconfig.ts
app_CRM/src/mock/viewconfig/viewconfig.ts
+8
-0
competitor-grid-view-base.vue
.../sales/competitor-grid-view/competitor-grid-view-base.vue
+9
-124
competitor-option-view-base.vue
...es/competitor-option-view/competitor-option-view-base.vue
+194
-0
competitor-option-view.less
.../sales/competitor-option-view/competitor-option-view.less
+9
-0
competitor-option-view.vue
...s/sales/competitor-option-view/competitor-option-view.vue
+19
-0
page-register.ts
app_CRM/src/pages/ungroup/central/page-register.ts
+2
-1
router.ts
app_CRM/src/pages/ungroup/central/router.ts
+35
-8
state.ts
app_CRM/src/store/modules/view-action/state.ts
+11
-0
competitor-ui-service-base.ts
...RM/src/uiservice/competitor/competitor-ui-service-base.ts
+46
-0
info-all-form-base.vue
.../src/widgets/account/info-all-form/info-all-form-base.vue
+2
-2
main-grid-base.vue
app_CRM/src/widgets/competitor/main-grid/main-grid-base.vue
+8
-37
main-grid-model.ts
app_CRM/src/widgets/competitor/main-grid/main-grid-model.ts
+2
-7
quick-create-form-base.vue
...s/competitor/quick-create-form/quick-create-form-base.vue
+1785
-0
quick-create-form-model.ts
...s/competitor/quick-create-form/quick-create-form-model.ts
+116
-0
quick-create-form-service.ts
...competitor/quick-create-form/quick-create-form-service.ts
+383
-0
quick-create-form.less
...dgets/competitor/quick-create-form/quick-create-form.less
+4
-0
quick-create-form.vue
...idgets/competitor/quick-create-form/quick-create-form.vue
+14
-0
h2_table.xml
...esscentral-core/src/main/resources/liquibase/h2_table.xml
+12
-12
未找到文件。
app_CRM/public/assets/json/view-config.json
浏览文件 @
939b1d17
...
...
@@ -149,6 +149,16 @@
"viewtag"
:
"15d12c1173fcb6e742b6a6d92cbc53ed"
,
"memo"
:
""
},
"competitoroptionview"
:
{
"title"
:
"竞争对手选项操作视图"
,
"caption"
:
"竞争对手"
,
"viewtype"
:
"DEOPTVIEW"
,
"viewmodule"
:
"Sales"
,
"viewname"
:
"CompetitorOptionView"
,
"viewfilename"
:
"competitor-option-view"
,
"viewtag"
:
"172607e680c007004183ab01c1a674d6"
,
"memo"
:
""
},
"opportunitydashboardview"
:
{
"title"
:
"商机数据看板视图"
,
"caption"
:
"商机"
,
...
...
app_CRM/src/locale/lanres/entities/competitor/competitor_en_US.ts
浏览文件 @
939b1d17
...
...
@@ -84,6 +84,10 @@ export default {
transactioncurrencyname
:
'货币'
,
},
views
:
{
optionview
:
{
caption
:
"竞争对手"
,
title
:
'竞争对手选项操作视图'
,
},
gridview
:
{
caption
:
"竞争对手"
,
title
:
'竞争对手表格视图'
,
...
...
@@ -93,6 +97,32 @@ export default {
title
:
'竞争对手编辑视图'
,
},
},
quickcreate_form
:
{
details
:
{
group1
:
"竞争对手基本信息"
,
formpage1
:
"基本信息"
,
srfupdatedate
:
"更新时间"
,
srforikey
:
""
,
srfkey
:
"竞争对手"
,
srfmajortext
:
"竞争对手名称"
,
srftempmode
:
""
,
srfuf
:
""
,
srfdeid
:
""
,
srfsourcekey
:
""
,
competitorname
:
"竞争对手名称"
,
websiteurl
:
"网站"
,
transactioncurrencyname
:
"货币"
,
address1_postalcode
:
"邮政编码"
,
address1_country
:
"国家/地区"
,
address1_stateorprovince
:
"省/直辖市/自治区"
,
address1_city
:
"市/县"
,
address1_line1
:
"街道"
,
transactioncurrencyid
:
"货币"
,
competitorid
:
"竞争对手"
,
},
uiactions
:
{
},
},
main_form
:
{
details
:
{
group1
:
"competitor基本信息"
,
...
...
@@ -120,8 +150,7 @@ export default {
main_grid
:
{
columns
:
{
competitorname
:
"竞争对手名称"
,
updateman
:
"更新人"
,
updatedate
:
"更新时间"
,
websiteurl
:
"网站"
,
},
uiactions
:
{
},
...
...
@@ -134,9 +163,13 @@ export default {
},
},
gridviewtoolbar_toolbar
:
{
tbitem3
:
{
caption
:
"New"
,
tip
:
"New"
,
tbitem1_openquickcreateview
:
{
caption
:
"新建"
,
tip
:
"新建"
,
},
tbitem2
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem4
:
{
caption
:
"Edit"
,
...
...
app_CRM/src/locale/lanres/entities/competitor/competitor_zh_CN.ts
浏览文件 @
939b1d17
...
...
@@ -83,6 +83,10 @@ export default {
transactioncurrencyname
:
'货币'
,
},
views
:
{
optionview
:
{
caption
:
'竞争对手'
,
title
:
'竞争对手选项操作视图'
,
},
gridview
:
{
caption
:
'竞争对手'
,
title
:
'竞争对手表格视图'
,
...
...
@@ -92,6 +96,32 @@ export default {
title
:
'竞争对手编辑视图'
,
},
},
quickcreate_form
:
{
details
:
{
group1
:
'竞争对手基本信息'
,
formpage1
:
'基本信息'
,
srfupdatedate
:
'更新时间'
,
srforikey
:
''
,
srfkey
:
'竞争对手'
,
srfmajortext
:
'竞争对手名称'
,
srftempmode
:
''
,
srfuf
:
''
,
srfdeid
:
''
,
srfsourcekey
:
''
,
competitorname
:
'竞争对手名称'
,
websiteurl
:
'网站'
,
transactioncurrencyname
:
'货币'
,
address1_postalcode
:
'邮政编码'
,
address1_country
:
'国家/地区'
,
address1_stateorprovince
:
'省/直辖市/自治区'
,
address1_city
:
'市/县'
,
address1_line1
:
'街道'
,
transactioncurrencyid
:
'货币'
,
competitorid
:
'竞争对手'
,
},
uiactions
:
{
},
},
main_form
:
{
details
:
{
group1
:
'competitor基本信息'
,
...
...
@@ -119,8 +149,7 @@ export default {
main_grid
:
{
columns
:
{
competitorname
:
'竞争对手名称'
,
updateman
:
'更新人'
,
updatedate
:
'更新时间'
,
websiteurl
:
'网站'
,
},
uiactions
:
{
},
...
...
@@ -133,10 +162,14 @@ export default {
},
},
gridviewtoolbar_toolbar
:
{
tbitem
3
:
{
tbitem
1_openquickcreateview
:
{
caption
:
'新建'
,
tip
:
'新建'
,
},
tbitem2
:
{
caption
:
'-'
,
tip
:
''
,
},
tbitem4
:
{
caption
:
'编辑'
,
tip
:
'编辑'
,
...
...
app_CRM/src/mock/viewconfig/viewconfig.ts
浏览文件 @
939b1d17
...
...
@@ -127,6 +127,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname"
:
"LeadGridView"
,
"viewtag"
:
"15d12c1173fcb6e742b6a6d92cbc53ed"
},
"competitoroptionview"
:
{
"title"
:
"竞争对手选项操作视图"
,
"caption"
:
"竞争对手"
,
"viewtype"
:
"DEOPTVIEW"
,
"viewmodule"
:
"Sales"
,
"viewname"
:
"CompetitorOptionView"
,
"viewtag"
:
"172607e680c007004183ab01c1a674d6"
},
"opportunitydashboardview"
:
{
"title"
:
"商机数据看板视图"
,
"caption"
:
"商机"
,
...
...
app_CRM/src/pages/sales/competitor-grid-view/competitor-grid-view-base.vue
浏览文件 @
939b1d17
...
...
@@ -63,6 +63,7 @@ import CompetitorService from '@/service/competitor/competitor-service';
import
GridViewEngine
from
'@engine/view/grid-view-engine'
;
import
CompetitorUIService
from
'@/uiservice/competitor/competitor-ui-service'
;
import
CodeListService
from
"@service/app/codelist-service"
;
...
...
@@ -149,8 +150,9 @@ export default class CompetitorGridViewBase extends GridViewBase {
* @memberof CompetitorGridView
*/
public
toolBarModels
:
any
=
{
tbitem
3
:
{
name
:
'tbitem3'
,
caption
:
'新建'
,
'isShowCaption'
:
true
,
'isShowIcon'
:
true
,
tooltip
:
'新建'
,
iconcls
:
'fa fa-file-text-o'
,
icon
:
''
,
disabled
:
false
,
type
:
'DEUIACTION'
,
visabled
:
true
,
dataaccaction
:
''
,
uiaction
:
{
tag
:
'New'
,
target
:
'
'
},
class
:
''
},
tbitem
1_openquickcreateview
:
{
name
:
'tbitem1_openquickcreateview'
,
caption
:
'新建'
,
'isShowCaption'
:
true
,
'isShowIcon'
:
true
,
tooltip
:
'新建'
,
iconcls
:
'fa fa-user-plus'
,
icon
:
''
,
disabled
:
false
,
type
:
'DEUIACTION'
,
visabled
:
true
,
dataaccaction
:
''
,
uiaction
:
{
tag
:
'OpenQuickCreateView'
,
target
:
'NONE
'
},
class
:
''
},
tbitem2
:
{
name
:
'tbitem2'
,
type
:
'SEPERATOR'
,
visabled
:
true
,
dataaccaction
:
''
,
uiaction
:
{
}
},
tbitem4
:
{
name
:
'tbitem4'
,
caption
:
'编辑'
,
'isShowCaption'
:
true
,
'isShowIcon'
:
true
,
tooltip
:
'编辑'
,
iconcls
:
'fa fa-edit'
,
icon
:
''
,
disabled
:
false
,
type
:
'DEUIACTION'
,
visabled
:
true
,
dataaccaction
:
''
,
uiaction
:
{
tag
:
'Edit'
,
target
:
'SINGLEKEY'
},
class
:
''
},
tbitem6
:
{
name
:
'tbitem6'
,
caption
:
'拷贝'
,
'isShowCaption'
:
true
,
'isShowIcon'
:
true
,
tooltip
:
'拷贝'
,
iconcls
:
'fa fa-copy'
,
icon
:
''
,
disabled
:
false
,
type
:
'DEUIACTION'
,
visabled
:
true
,
dataaccaction
:
''
,
uiaction
:
{
tag
:
'Copy'
,
target
:
'SINGLEKEY'
},
class
:
''
},
...
...
@@ -208,8 +210,8 @@ export default class CompetitorGridViewBase extends GridViewBase {
* @memberof CompetitorGridViewBase
*/
public
toolbar_click
(
$event
:
any
,
$event2
?:
any
):
void
{
if
(
Object
.
is
(
$event
.
tag
,
'tbitem
3
'
))
{
this
.
toolbar_tbitem
3
_click
(
null
,
''
,
$event2
);
if
(
Object
.
is
(
$event
.
tag
,
'tbitem
1_openquickcreateview
'
))
{
this
.
toolbar_tbitem
1_openquickcreateview
_click
(
null
,
''
,
$event2
);
}
if
(
Object
.
is
(
$event
.
tag
,
'tbitem4'
))
{
this
.
toolbar_tbitem4_click
(
null
,
''
,
$event2
);
...
...
@@ -217,12 +219,6 @@ export default class CompetitorGridViewBase extends GridViewBase {
if
(
Object
.
is
(
$event
.
tag
,
'tbitem6'
))
{
this
.
toolbar_tbitem6_click
(
null
,
''
,
$event2
);
}
if
(
Object
.
is
(
$event
.
tag
,
'tbitem24'
))
{
this
.
toolbar_tbitem24_click
(
null
,
''
,
$event2
);
}
if
(
Object
.
is
(
$event
.
tag
,
'tbitem25'
))
{
this
.
toolbar_tbitem25_click
(
null
,
''
,
$event2
);
}
if
(
Object
.
is
(
$event
.
tag
,
'tbitem8'
))
{
this
.
toolbar_tbitem8_click
(
null
,
''
,
$event2
);
}
...
...
@@ -333,7 +329,7 @@ export default class CompetitorGridViewBase extends GridViewBase {
* @param {*} [$event]
* @memberof
*/
public
toolbar_tbitem
3
_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
public
toolbar_tbitem
1_openquickcreateview
_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
// 参数
// 取数
let
datas
:
any
[]
=
[];
...
...
@@ -350,7 +346,8 @@ export default class CompetitorGridViewBase extends GridViewBase {
datas
=
[
params
];
}
// 界面行为
this
.
New
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
"Competitor"
);
const
curUIService
:
CompetitorUIService
=
new
CompetitorUIService
();
curUIService
.
Competitor_OpenQuickCreateView
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
"Competitor"
);
}
/**
...
...
@@ -409,62 +406,6 @@ export default class CompetitorGridViewBase extends GridViewBase {
this
.
Copy
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
"Competitor"
);
}
/**
* 逻辑事件
*
* @param {*} [params={}]
* @param {*} [tag]
* @param {*} [$event]
* @memberof
*/
public
toolbar_tbitem24_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
.
$refs
.
grid
;
if
(
xData
.
getDatas
&&
xData
.
getDatas
instanceof
Function
)
{
datas
=
[...
xData
.
getDatas
()];
}
if
(
params
){
datas
=
[
params
];
}
// 界面行为
this
.
ToggleRowEdit
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
"Competitor"
);
}
/**
* 逻辑事件
*
* @param {*} [params={}]
* @param {*} [tag]
* @param {*} [$event]
* @memberof
*/
public
toolbar_tbitem25_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
.
$refs
.
grid
;
if
(
xData
.
getDatas
&&
xData
.
getDatas
instanceof
Function
)
{
datas
=
[...
xData
.
getDatas
()];
}
if
(
params
){
datas
=
[
params
];
}
// 界面行为
this
.
NewRow
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
"Competitor"
);
}
/**
* 逻辑事件
*
...
...
@@ -602,7 +543,7 @@ export default class CompetitorGridViewBase extends GridViewBase {
const
deResParameters
:
any
[]
=
[];
const
parameters
:
any
[]
=
[
{
pathName
:
'competitors'
,
parameterName
:
'competitor'
},
{
pathName
:
'
editview'
,
parameterName
:
'edit
view'
},
{
pathName
:
'
optionview'
,
parameterName
:
'option
view'
},
];
const
_this
:
any
=
this
;
const
openIndexViewTab
=
(
data
:
any
)
=>
{
...
...
@@ -647,26 +588,6 @@ export default class CompetitorGridViewBase extends GridViewBase {
}
/**
* 新建
*
* @param {any[]} args 当前数据
* @param {any} contextJO 行为附加上下文
* @param {*} [params] 附加参数
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof CompetitorGridViewBase
*/
public
New
(
args
:
any
[],
contextJO
?:
any
,
params
?:
any
,
$event
?:
any
,
xData
?:
any
,
actionContext
?:
any
,
srfParentDeName
?:
string
)
{
const
_this
:
any
=
this
;
if
(
_this
.
newdata
&&
_this
.
newdata
instanceof
Function
)
{
const
data
:
any
=
{};
_this
.
newdata
([{
...
data
}],[{
...
data
}],
params
,
$event
,
xData
);
}
else
{
_this
.
$Notice
.
error
({
title
:
'错误'
,
desc
:
'newdata 视图处理逻辑不存在,请添加!'
});
}
}
/**
* 编辑
*
...
...
@@ -725,42 +646,6 @@ export default class CompetitorGridViewBase extends GridViewBase {
_this
.
$Notice
.
error
({
title
:
'错误'
,
desc
:
'opendata 视图处理逻辑不存在,请添加!'
});
}
}
/**
* 行编辑
*
* @param {any[]} args 当前数据
* @param {any} contextJO 行为附加上下文
* @param {*} [params] 附加参数
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof CompetitorGridViewBase
*/
public
ToggleRowEdit
(
args
:
any
[],
contextJO
?:
any
,
params
?:
any
,
$event
?:
any
,
xData
?:
any
,
actionContext
?:
any
,
srfParentDeName
?:
string
)
{
xData
.
actualIsOpenEdit
=
!
xData
.
actualIsOpenEdit
;
}
/**
* 新建行
*
* @param {any[]} args 当前数据
* @param {any} contextJO 行为附加上下文
* @param {*} [params] 附加参数
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof CompetitorGridViewBase
*/
public
NewRow
(
args
:
any
[],
contextJO
?:
any
,
params
?:
any
,
$event
?:
any
,
xData
?:
any
,
actionContext
?:
any
,
srfParentDeName
?:
string
)
{
const
_this
:
any
=
this
;
const
data
:
any
=
{};
if
(
_this
.
newRow
&&
_this
.
newRow
instanceof
Function
)
{
_this
.
newRow
([{
...
data
}],
params
,
$event
,
xData
);
}
else
if
(
xData
.
newRow
&&
xData
.
newRow
instanceof
Function
)
{
xData
.
newRow
([{
...
data
}],
params
,
$event
,
xData
);
}
else
{
_this
.
$Notice
.
error
({
title
:
'错误'
,
desc
:
'newRow 视图处理逻辑不存在,请添加!'
});
}
}
/**
* 删除
*
...
...
app_CRM/src/pages/sales/competitor-option-view/competitor-option-view-base.vue
0 → 100644
浏览文件 @
939b1d17
<
template
>
<studio-view-style2
viewName=
"competitoroptionview"
viewTitle=
"竞争对手选项操作视图"
class=
'deoptview competitor-option-view'
>
<template
slot=
'title'
>
<span
class=
'caption-info'
>
{{
$t
(
model
.
srfTitle
)
}}
</span>
</
template
>
<view
_form
:viewState=
"viewState"
:viewparams=
"viewparams"
:context=
"context"
:autosave=
"false"
:viewtag=
"viewtag"
:showBusyIndicator=
"true"
updateAction=
"Update"
removeAction=
"Remove"
loaddraftAction=
"GetDraft"
loadAction=
"Get"
createAction=
"Create"
WFSubmitAction=
""
WFStartAction=
""
style=
''
name=
"form"
ref=
'form'
@
save=
"form_save($event)"
@
remove=
"form_remove($event)"
@
load=
"form_load($event)"
@
closeview=
"closeView($event)"
>
</view
_form
>
<
template
slot=
"footer"
>
<div
class=
"option-view-footer-actions"
>
<i-button
type=
'primary'
@
click=
"onClickOk"
>
{{
containerModel
.
view_okbtn
.
text
}}
</i-button>
<i-button
@
click=
"onClickCancel"
>
{{
containerModel
.
view_cancelbtn
.
text
}}
</i-button>
</div>
</
template
>
</studio-view-style2>
</template>
<
script
lang=
'tsx'
>
import
{
Component
,
Prop
,
Provide
,
Emit
,
Watch
}
from
'vue-property-decorator'
;
import
{
Subject
}
from
'rxjs'
;
import
{
UIActionTool
,
Util
}
from
'@/utils'
;
import
{
VueLifeCycleProcessing
,
OptionViewBase
}
from
'@/studio-core'
;
import
CompetitorService
from
'@/service/competitor/competitor-service'
;
import
OptionViewEngine
from
'@engine/view/option-view-engine'
;
/**
* 竞争对手选项操作视图视图基类
*
* @export
* @class CompetitorOptionViewBase
* @extends {OptionViewBase}
*/
@
Component
({})
@
VueLifeCycleProcessing
()
export
default
class
CompetitorOptionViewBase
extends
OptionViewBase
{
/**
* 实体服务对象
*
* @type {CompetitorService}
* @memberof CompetitorOptionViewBase
*/
protected
appEntityService
:
CompetitorService
=
new
CompetitorService
;
/**
* 计数器服务对象集合
*
* @protected
* @type {Array<*>}
* @memberof CompetitorOptionViewBase
*/
protected
counterServiceArray
:
Array
<
any
>
=
[];
/**
* 自定义视图导航上下文集合
*
* @protected
* @type {*}
* @memberof CompetitorOptionViewBase
*/
protected
customViewNavContexts
:
any
=
{
};
/**
* 自定义视图导航参数集合
*
* @protected
* @type {*}
* @memberof CompetitorOptionViewBase
*/
protected
customViewParams
:
any
=
{
};
/**
* 视图模型数据
*
* @protected
* @type {*}
* @memberof CompetitorOptionViewBase
*/
protected
model
:
any
=
{
srfCaption
:
'entities.competitor.views.optionview.caption'
,
srfTitle
:
'entities.competitor.views.optionview.title'
,
srfSubTitle
:
'entities.competitor.views.optionview.subtitle'
,
dataInfo
:
''
}
/**
* 容器模型
*
* @protected
* @type {*}
* @memberof CompetitorOptionViewBase
*/
protected
containerModel
:
any
=
{
view_form
:
{
name
:
'form'
,
type
:
'FORM'
},
view_okbtn
:
{
name
:
'okbtn'
,
type
:
'button'
,
text
:
'确定'
,
disabled
:
true
},
view_cancelbtn
:
{
name
:
'cancelbtn'
,
type
:
'button'
,
text
:
'取消'
,
disabled
:
false
},
view_leftbtn
:
{
name
:
'leftbtn'
,
type
:
'button'
,
text
:
'左移'
,
disabled
:
true
},
view_rightbtn
:
{
name
:
'rightbtn'
,
type
:
'button'
,
text
:
'右移'
,
disabled
:
true
},
view_allleftbtn
:
{
name
:
'allleftbtn'
,
type
:
'button'
,
text
:
'全部左移'
,
disabled
:
true
},
view_allrightbtn
:
{
name
:
'allrightbtn'
,
type
:
'button'
,
text
:
'全部右移'
,
disabled
:
true
},
};
/**
* 视图引擎
*
* @public
* @type {Engine}
* @memberof CompetitorOptionViewBase
*/
public
engine
:
OptionViewEngine
=
new
OptionViewEngine
();
/**
* 引擎初始化
*
* @public
* @memberof CompetitorOptionViewBase
*/
public
engineInit
():
void
{
this
.
engine
.
init
({
view
:
this
,
form
:
this
.
$refs
.
form
,
p2k
:
'0'
,
keyPSDEField
:
'competitor'
,
majorPSDEField
:
'competitorname'
,
isLoadDefault
:
true
,
});
}
/**
* form 部件 save 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof CompetitorOptionViewBase
*/
public
form_save
(
$event
:
any
,
$event2
?:
any
):
void
{
this
.
engine
.
onCtrlEvent
(
'form'
,
'save'
,
$event
);
}
/**
* form 部件 remove 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof CompetitorOptionViewBase
*/
public
form_remove
(
$event
:
any
,
$event2
?:
any
):
void
{
this
.
engine
.
onCtrlEvent
(
'form'
,
'remove'
,
$event
);
}
/**
* form 部件 load 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof CompetitorOptionViewBase
*/
public
form_load
(
$event
:
any
,
$event2
?:
any
):
void
{
this
.
engine
.
onCtrlEvent
(
'form'
,
'load'
,
$event
);
}
}
</
script
>
<
style
lang=
'less'
>
@import './competitor-option-view.less';
</
style
>
\ No newline at end of file
app_CRM/src/pages/sales/competitor-option-view/competitor-option-view.less
0 → 100644
浏览文件 @
939b1d17
.option-view {
--option-view: 0;
}
// 避免空文件,后台不让空文件过
.competitor-option-view {
--competitor-option-view: 0;
}
app_CRM/src/pages/sales/competitor-option-view/competitor-option-view.vue
0 → 100644
浏览文件 @
939b1d17
<
script
lang=
'tsx'
>
import
{
Component
}
from
'vue-property-decorator'
;
import
CompetitorOptionViewBase
from
'./competitor-option-view-base.vue'
;
import
view_form
from
'@widgets/competitor/quick-create-form/quick-create-form.vue'
;
@
Component
({
components
:
{
view_form
,
},
beforeRouteEnter
:
(
to
:
any
,
from
:
any
,
next
:
any
)
=>
{
next
((
vm
:
any
)
=>
{
vm
.
$store
.
commit
(
'addCurPageViewtag'
,
{
route
:
to
,
viewtag
:
vm
.
viewtag
});
});
},
})
export
default
class
CompetitorOptionView
extends
CompetitorOptionViewBase
{
}
</
script
>
\ No newline at end of file
app_CRM/src/pages/ungroup/central/page-register.ts
浏览文件 @
939b1d17
...
...
@@ -2,6 +2,7 @@ export const PageComponents = {
install
(
Vue
:
any
,
opt
:
any
)
{
Vue
.
component
(
'account-quick-create'
,
()
=>
import
(
'@pages/base/account-quick-create/account-quick-create.vue'
));
Vue
.
component
(
'list-account-by-list'
,
()
=>
import
(
'@pages/marketing/list-account-by-list/list-account-by-list.vue'
));
Vue
.
component
(
'competitor-option-view'
,
()
=>
import
(
'@pages/sales/competitor-option-view/competitor-option-view.vue'
));
Vue
.
component
(
'campaign-response-by-parent-key'
,
()
=>
import
(
'@pages/marketing/campaign-response-by-parent-key/campaign-response-by-parent-key.vue'
));
Vue
.
component
(
'account-edit-view'
,
()
=>
import
(
'@pages/base/account-edit-view/account-edit-view.vue'
));
Vue
.
component
(
'lead-pickup-view'
,
()
=>
import
(
'@pages/sales/lead-pickup-view/lead-pickup-view.vue'
));
...
...
@@ -14,8 +15,8 @@ export const PageComponents = {
Vue
.
component
(
'contact-info-person'
,
()
=>
import
(
'@pages/base/contact-info-person/contact-info-person.vue'
));
Vue
.
component
(
'campaign-info-schedule'
,
()
=>
import
(
'@pages/marketing/campaign-info-schedule/campaign-info-schedule.vue'
));
Vue
.
component
(
'opportunity-grid-view'
,
()
=>
import
(
'@pages/sales/opportunity-grid-view/opportunity-grid-view.vue'
));
Vue
.
component
(
'goal-edit-view'
,
()
=>
import
(
'@pages/sales/goal-edit-view/goal-edit-view.vue'
));
Vue
.
component
(
'letter-edit-view'
,
()
=>
import
(
'@pages/base/letter-edit-view/letter-edit-view.vue'
));
Vue
.
component
(
'goal-edit-view'
,
()
=>
import
(
'@pages/sales/goal-edit-view/goal-edit-view.vue'
));
Vue
.
component
(
'transaction-currency-pickup-view'
,
()
=>
import
(
'@pages/base/transaction-currency-pickup-view/transaction-currency-pickup-view.vue'
));
Vue
.
component
(
'opportunity-product-edit-view'
,
()
=>
import
(
'@pages/sales/opportunity-product-edit-view/opportunity-product-edit-view.vue'
));
Vue
.
component
(
'email-edit-view'
,
()
=>
import
(
'@pages/base/email-edit-view/email-edit-view.vue'
));
...
...
app_CRM/src/pages/ungroup/central/router.ts
浏览文件 @
939b1d17
...
...
@@ -93,6 +93,20 @@ const router = new Router({
},
component
:
()
=>
import
(
'@pages/marketing/list-account-by-list/list-account-by-list.vue'
),
},
{
path
:
'competitors/:competitor?/optionview/:optionview?'
,
meta
:
{
caption
:
'entities.competitor.views.optionview.title'
,
info
:
''
,
parameters
:
[
{
pathName
:
'central'
,
parameterName
:
'central'
},
{
pathName
:
'competitors'
,
parameterName
:
'competitor'
},
{
pathName
:
'optionview'
,
parameterName
:
'optionview'
},
],
requireAuth
:
true
,
},
component
:
()
=>
import
(
'@pages/sales/competitor-option-view/competitor-option-view.vue'
),
},
{
path
:
'campaignresponses/:campaignresponse?/byparentkey/:byparentkey?'
,
meta
:
{
...
...
@@ -430,32 +444,32 @@ const router = new Router({
component
:
()
=>
import
(
'@pages/sales/opportunity-grid-view/opportunity-grid-view.vue'
),
},
{
path
:
'
goals/:goal
?/editview/:editview?'
,
path
:
'
letters/:letter
?/editview/:editview?'
,
meta
:
{
caption
:
'entities.
goal
.views.editview.title'
,
caption
:
'entities.
letter
.views.editview.title'
,
info
:
''
,
parameters
:
[
{
pathName
:
'central'
,
parameterName
:
'central'
},
{
pathName
:
'
goals'
,
parameterName
:
'goal
'
},
{
pathName
:
'
letters'
,
parameterName
:
'letter
'
},
{
pathName
:
'editview'
,
parameterName
:
'editview'
},
],
requireAuth
:
true
,
},
component
:
()
=>
import
(
'@pages/
sales/goal-edit-view/goal
-edit-view.vue'
),
component
:
()
=>
import
(
'@pages/
base/letter-edit-view/letter
-edit-view.vue'
),
},
{
path
:
'
letters/:letter
?/editview/:editview?'
,
path
:
'
goals/:goal
?/editview/:editview?'
,
meta
:
{
caption
:
'entities.
letter
.views.editview.title'
,
caption
:
'entities.
goal
.views.editview.title'
,
info
:
''
,
parameters
:
[
{
pathName
:
'central'
,
parameterName
:
'central'
},
{
pathName
:
'
letters'
,
parameterName
:
'letter
'
},
{
pathName
:
'
goals'
,
parameterName
:
'goal
'
},
{
pathName
:
'editview'
,
parameterName
:
'editview'
},
],
requireAuth
:
true
,
},
component
:
()
=>
import
(
'@pages/
base/letter-edit-view/letter
-edit-view.vue'
),
component
:
()
=>
import
(
'@pages/
sales/goal-edit-view/goal
-edit-view.vue'
),
},
{
path
:
'transactioncurrencies/:transactioncurrency?/pickupview/:pickupview?'
,
...
...
@@ -3575,6 +3589,19 @@ const router = new Router({
},
component
:
()
=>
import
(
'@pages/sales/lead-grid-view/lead-grid-view.vue'
),
},
{
path
:
'/competitors/:competitor?/optionview/:optionview?'
,
meta
:
{
caption
:
'entities.competitor.views.optionview.title'
,
info
:
''
,
parameters
:
[
{
pathName
:
'competitors'
,
parameterName
:
'competitor'
},
{
pathName
:
'optionview'
,
parameterName
:
'optionview'
},
],
requireAuth
:
true
,
},
component
:
()
=>
import
(
'@pages/sales/competitor-option-view/competitor-option-view.vue'
),
},
{
path
:
'/accounts/:account?/contacts/:contact?/opportunities/:opportunity?/dashboardview/:dashboardview?'
,
meta
:
{
...
...
app_CRM/src/store/modules/view-action/state.ts
浏览文件 @
939b1d17
...
...
@@ -155,6 +155,16 @@ export const viewstate: any = {
'4745ca10fe4421ea043cb9ace1840224'
,
],
},
{
viewtag
:
'172607e680c007004183ab01c1a674d6'
,
viewmodule
:
'Sales'
,
viewname
:
'CompetitorOptionView'
,
viewaction
:
''
,
viewdatachange
:
false
,
refviews
:
[
'da3f8c1f20f440f3df54d6c13a8de586'
,
],
},
{
viewtag
:
'177c00d1674621e8933efe6db68bce0e'
,
viewmodule
:
'Sales'
,
...
...
@@ -1094,6 +1104,7 @@ export const viewstate: any = {
viewdatachange
:
false
,
refviews
:
[
'fc2117de593df9cc982bd802cbdb2154'
,
'172607e680c007004183ab01c1a674d6'
,
],
},
{
...
...
app_CRM/src/uiservice/competitor/competitor-ui-service-base.ts
浏览文件 @
939b1d17
...
...
@@ -79,6 +79,7 @@ export default class CompetitorUIServiceBase extends UIService {
* @memberof CompetitorUIServiceBase
*/
public
initViewMap
(){
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'optionview'
,
srfappde
:
'competitors'
});
this
.
allViewMap
.
set
(
'MDATAVIEW:'
,{
viewname
:
'gridview'
,
srfappde
:
'competitors'
});
this
.
allViewMap
.
set
(
'EDITVIEW:'
,{
viewname
:
'editview'
,
srfappde
:
'competitors'
});
}
...
...
@@ -91,6 +92,51 @@ export default class CompetitorUIServiceBase extends UIService {
public
initDeMainStateMap
(){
}
/**
* 新建
*
* @param {any[]} args 当前数据
* @param {any} context 行为附加上下文
* @param {*} [params] 附加参数
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @param {*} [srfParentDeName] 父实体名称
* @returns {Promise<any>}
*/
public
async
Competitor_OpenQuickCreateView
(
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
=
'NONE'
;
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
:
'competitors'
,
parameterName
:
'competitor'
},
{
pathName
:
'optionview'
,
parameterName
:
'optionview'
},
];
const
openIndexViewTab
=
(
data
:
any
)
=>
{
const
routePath
=
actionContext
.
$viewTool
.
buildUpRoutePath
(
actionContext
.
$route
,
context
,
deResParameters
,
parameters
,
_args
,
data
);
actionContext
.
$router
.
push
(
routePath
);
return
null
;
}
openIndexViewTab
(
data
);
}
/**
* 获取指定数据的重定向页面
...
...
app_CRM/src/widgets/account/info-all-form/info-all-form-base.vue
浏览文件 @
939b1d17
...
...
@@ -63,7 +63,7 @@
</i-col>
<i-col
v-show=
"detailsModel.grouppanel5.visible"
:style=
"
{}" :sm="{ span: 24, offset: 0 }" :md="{ span: 24, offset: 0 }" :lg="{ span: 24, offset: 0 }" :xl="{ span: 24, offset: 0 }">
<app-form-group
layoutType=
"TABLE_24COL"
titleStyle=
""
class=
''
:uiActionGroup=
"detailsModel.grouppanel5.uiActionGroup"
@
groupuiactionclick=
"groupUIActionClick($event)"
:caption=
"$t('entities.account.info_all_form.details.grouppanel5')"
:isShowCaption=
"
tru
e"
uiStyle=
"STYLE4"
:titleBarCloseMode=
"1"
:isInfoGroupMode=
"true"
>
<app-form-group
layoutType=
"TABLE_24COL"
titleStyle=
""
class=
''
:uiActionGroup=
"detailsModel.grouppanel5.uiActionGroup"
@
groupuiactionclick=
"groupUIActionClick($event)"
:caption=
"$t('entities.account.info_all_form.details.grouppanel5')"
:isShowCaption=
"
fals
e"
uiStyle=
"STYLE4"
:titleBarCloseMode=
"1"
:isInfoGroupMode=
"true"
>
<row>
<i-col
v-show=
"detailsModel.industrycode1.visible"
:style=
"
{}" :md="{ span: 12, offset: 0 }" :lg="{ span: 8, offset: 0 }" :xl="{ span: 6, offset: 0 }">
<app-form-item
name=
'industrycode1'
:itemRules=
"this.rules.industrycode1"
class=
''
:caption=
"$t('entities.account.info_all_form.details.industrycode1')"
uiStyle=
"DEFAULT"
:labelWidth=
"130"
:isShowCaption=
"true"
:error=
"detailsModel.industrycode1.error"
:isEmptyCaption=
"false"
labelPos=
"LEFT"
>
...
...
@@ -1094,7 +1094,7 @@ export default class Info_AllBase extends Vue implements ControlInterface {
* @memberof Info_All
*/
public
detailsModel
:
any
=
{
grouppanel5
:
new
FormGroupPanelModel
({
caption
:
'简介'
,
detailType
:
'GROUPPANEL'
,
name
:
'grouppanel5'
,
visible
:
true
,
isShowCaption
:
tru
e
,
form
:
this
,
uiActionGroup
:
{
caption
:
''
,
langbase
:
'entities.account.info_all_form'
,
extractMode
:
'ITEM'
,
details
:
[]
}
})
grouppanel5
:
new
FormGroupPanelModel
({
caption
:
'简介'
,
detailType
:
'GROUPPANEL'
,
name
:
'grouppanel5'
,
visible
:
true
,
isShowCaption
:
fals
e
,
form
:
this
,
uiActionGroup
:
{
caption
:
''
,
langbase
:
'entities.account.info_all_form'
,
extractMode
:
'ITEM'
,
details
:
[]
}
})
,
group1
:
new
FormGroupPanelModel
({
caption
:
'账户信息'
,
detailType
:
'GROUPPANEL'
,
name
:
'group1'
,
visible
:
true
,
isShowCaption
:
true
,
form
:
this
,
uiActionGroup
:
{
caption
:
'编辑_账户信息'
,
langbase
:
'entities.account.info_all_form'
,
extractMode
:
'ITEM'
,
details
:
[{
name
:
'group1_uc040f39'
,
caption
:
'编辑'
,
uiactiontag
:
'edit_accountinfo'
,
icon
:
'fa fa-pencil'
,
isShowCaption
:
false
,
isShowIcon
:
true
}]
}
})
,
...
...
app_CRM/src/widgets/competitor/main-grid/main-grid-base.vue
浏览文件 @
939b1d17
...
...
@@ -24,7 +24,7 @@
<el-table-column
align=
"center"
type=
'selection'
:width=
"checkboxColWidth"
></el-table-column>
</
template
>
<
template
v-if=
"getColumnState('competitorname')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'competitorname'"
:label=
"$t('entities.competitor.main_grid.columns.competitorname')"
:width=
"1
5
0"
:align=
"'left'"
:sortable=
"'custom'"
>
<el-table-column
show-overflow-tooltip
:prop=
"'competitorname'"
:label=
"$t('entities.competitor.main_grid.columns.competitorname')"
:width=
"1
6
0"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.competitor.main_grid.columns.competitorname'
)
}}
...
...
@@ -35,29 +35,15 @@
</
template
>
</el-table-column>
</template>
<
template
v-if=
"getColumnState('
updateman
')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'
updateman'"
:label=
"$t('entities.competitor.main_grid.columns.updateman
')"
:width=
"150"
:align=
"'left'"
:sortable=
"'custom'"
>
<
template
v-if=
"getColumnState('
websiteurl
')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'
websiteurl'"
:label=
"$t('entities.competitor.main_grid.columns.websiteurl
')"
:width=
"150"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.competitor.main_grid.columns.
updateman
'
)
}}
{{
$t
(
'entities.competitor.main_grid.columns.
websiteurl
'
)
}}
</span>
</
template
>
<
template
v-slot=
"{row,column,$index}"
>
<template
>
<codelist
:value=
"row.updateman"
tag=
'SysOperator'
codelistType=
'DYNAMIC'
></codelist>
</
template
>
</template>
</el-table-column>
</template>
<
template
v-if=
"getColumnState('updatedate')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'updatedate'"
:label=
"$t('entities.competitor.main_grid.columns.updatedate')"
:width=
"150"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.competitor.main_grid.columns.updatedate'
)
}}
</span>
</
template
>
<
template
v-slot=
"{row,column,$index}"
>
<app-format-data
format=
"YYYY-MM-DD hh:mm:ss"
:data=
"row.updatedate"
></app-format-data>
<span>
{{
row
.
websiteurl
}}
</span>
</
template
>
</el-table-column>
</template>
...
...
@@ -546,16 +532,9 @@ export default class MainBase extends Vue implements ControlInterface {
util
:
'PX'
},
{
name
:
'updateman'
,
label
:
'更新人'
,
langtag
:
'entities.competitor.main_grid.columns.updateman'
,
show
:
true
,
util
:
'PX'
},
{
name
:
'updatedate'
,
label
:
'更新时间'
,
langtag
:
'entities.competitor.main_grid.columns.updatedate'
,
name
:
'websiteurl'
,
label
:
'网站'
,
langtag
:
'entities.competitor.main_grid.columns.websiteurl'
,
show
:
true
,
util
:
'PX'
},
...
...
@@ -946,14 +925,6 @@ export default class MainBase extends Vue implements ControlInterface {
*/
public
async
formatExcelData
(
filterVal
:
any
,
jsonData
:
any
)
{
let
codelistColumns
:
Array
<
any
>
=
[
{
name
:
'updateman'
,
srfkey
:
'SysOperator'
,
codelistType
:
'DYNAMIC'
,
renderMode
:
'other'
,
textSeparator
:
'、'
,
valueSeparator
:
','
,
},
];
let
_this
=
this
;
for
(
const
codelist
of
codelistColumns
)
{
...
...
app_CRM/src/widgets/competitor/main-grid/main-grid-model.ts
浏览文件 @
939b1d17
...
...
@@ -32,8 +32,8 @@ export default class MainModel {
dataType
:
'TEXT'
,
},
{
name
:
'
updateman
'
,
prop
:
'
updateman
'
,
name
:
'
websiteurl
'
,
prop
:
'
websiteurl
'
,
dataType
:
'TEXT'
,
},
{
...
...
@@ -41,11 +41,6 @@ export default class MainModel {
prop
:
'transactioncurrencyid'
,
dataType
:
'PICKUP'
,
},
{
name
:
'updatedate'
,
prop
:
'updatedate'
,
dataType
:
'DATETIME'
,
},
{
name
:
'srfmajortext'
,
prop
:
'competitorname'
,
...
...
app_CRM/src/widgets/competitor/quick-create-form/quick-create-form-base.vue
0 → 100644
浏览文件 @
939b1d17
此差异已折叠。
点击以展开。
app_CRM/src/widgets/competitor/quick-create-form/quick-create-form-model.ts
0 → 100644
浏览文件 @
939b1d17
/**
* QuickCreate 部件模型
*
* @export
* @class QuickCreateModel
*/
export
default
class
QuickCreateModel
{
/**
* 获取数据项集合
*
* @returns {any[]}
* @memberof QuickCreateModel
*/
public
getDataItems
():
any
[]
{
return
[
{
name
:
'srfwfmemo'
,
prop
:
'srfwfmemo'
,
dataType
:
'TEXT'
,
},
// 前端新增修改标识,新增为"0",修改为"1"或未设值
{
name
:
'srffrontuf'
,
prop
:
'srffrontuf'
,
dataType
:
'TEXT'
,
},
{
name
:
'srfupdatedate'
,
prop
:
'updatedate'
,
dataType
:
'DATETIME'
,
},
{
name
:
'srforikey'
,
},
{
name
:
'srfkey'
,
prop
:
'competitorid'
,
dataType
:
'GUID'
,
},
{
name
:
'srfmajortext'
,
prop
:
'competitorname'
,
dataType
:
'TEXT'
,
},
{
name
:
'srftempmode'
,
},
{
name
:
'srfuf'
,
},
{
name
:
'srfdeid'
,
},
{
name
:
'srfsourcekey'
,
},
{
name
:
'competitorname'
,
prop
:
'competitorname'
,
dataType
:
'TEXT'
,
},
{
name
:
'websiteurl'
,
prop
:
'websiteurl'
,
dataType
:
'TEXT'
,
},
{
name
:
'transactioncurrencyname'
,
prop
:
'transactioncurrencyname'
,
dataType
:
'PICKUPTEXT'
,
},
{
name
:
'address1_postalcode'
,
prop
:
'address1_postalcode'
,
dataType
:
'TEXT'
,
},
{
name
:
'address1_country'
,
prop
:
'address1_country'
,
dataType
:
'TEXT'
,
},
{
name
:
'address1_stateorprovince'
,
prop
:
'address1_stateorprovince'
,
dataType
:
'TEXT'
,
},
{
name
:
'address1_city'
,
prop
:
'address1_city'
,
dataType
:
'TEXT'
,
},
{
name
:
'address1_line1'
,
prop
:
'address1_line1'
,
dataType
:
'TEXT'
,
},
{
name
:
'transactioncurrencyid'
,
prop
:
'transactioncurrencyid'
,
dataType
:
'PICKUP'
,
},
{
name
:
'competitorid'
,
prop
:
'competitorid'
,
dataType
:
'GUID'
,
},
{
name
:
'competitor'
,
prop
:
'competitorid'
,
dataType
:
'FONTKEY'
,
},
]
}
}
\ No newline at end of file
app_CRM/src/widgets/competitor/quick-create-form/quick-create-form-service.ts
0 → 100644
浏览文件 @
939b1d17
此差异已折叠。
点击以展开。
app_CRM/src/widgets/competitor/quick-create-form/quick-create-form.less
0 → 100644
浏览文件 @
939b1d17
.form {
--form: 0px;
}
// this is less
app_CRM/src/widgets/competitor/quick-create-form/quick-create-form.vue
0 → 100644
浏览文件 @
939b1d17
<
script
lang=
'tsx'
>
import
{
Component
}
from
'vue-property-decorator'
;
import
QuickCreateBase
from
'./quick-create-form-base.vue'
;
@
Component
({
components
:
{
}
})
export
default
class
QuickCreate
extends
QuickCreateBase
{
}
</
script
>
\ No newline at end of file
businesscentral-core/src/main/resources/liquibase/h2_table.xml
浏览文件 @
939b1d17
...
...
@@ -4514,7 +4514,7 @@
<!--输出实体[ACCOUNT]数据结构 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-account-29
5
-54"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-account-29
9
-54"
>
<createTable
tableName=
"ACCOUNT"
>
<column
name=
"ADDRESS1_PRIMARYCONTACTNAME"
remarks=
""
type=
"VARCHAR(100)"
>
</column>
...
...
@@ -8085,7 +8085,7 @@
<!--输出实体[COMPETITOR]数据结构 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-competitor-6-89"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-competitor-
1
6-89"
>
<createTable
tableName=
"COMPETITOR"
>
<column
name=
"ENTITYIMAGE"
remarks=
""
type=
"VARCHAR(100)"
>
</column>
...
...
@@ -11135,31 +11135,31 @@
<addForeignKeyConstraint
baseColumnNames=
"METRICID"
baseTableName=
"GOAL"
constraintName=
"DER1N_GOAL__METRIC__METRICID"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"METRICID"
referencedTableName=
"METRIC"
validate=
"true"
/>
</changeSet>
<!--输出实体[ACCOUNT]外键关系 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
5
-255"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
9
-255"
>
<addForeignKeyConstraint
baseColumnNames=
"PARENTACCOUNTID"
baseTableName=
"ACCOUNT"
constraintName=
"DER1N_ACCOUNT__ACCOUNT__PARENT"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"ACCOUNTID"
referencedTableName=
"ACCOUNT"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
5
-256"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
9
-256"
>
<addForeignKeyConstraint
baseColumnNames=
"PRIMARYCONTACTID"
baseTableName=
"ACCOUNT"
constraintName=
"DER1N_ACCOUNT__CONTACT__PRIMAR"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"CONTACTID"
referencedTableName=
"CONTACT"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
5
-257"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
9
-257"
>
<addForeignKeyConstraint
baseColumnNames=
"PREFERREDEQUIPMENTID"
baseTableName=
"ACCOUNT"
constraintName=
"DER1N_ACCOUNT__EQUIPMENT__PREF"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"EQUIPMENTID"
referencedTableName=
"EQUIPMENT"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
5
-258"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
9
-258"
>
<addForeignKeyConstraint
baseColumnNames=
"ORIGINATINGLEADID"
baseTableName=
"ACCOUNT"
constraintName=
"DER1N_ACCOUNT__LEAD__ORIGINATI"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"LEADID"
referencedTableName=
"LEAD"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
5
-259"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
9
-259"
>
<addForeignKeyConstraint
baseColumnNames=
"DEFAULTPRICELEVELID"
baseTableName=
"ACCOUNT"
constraintName=
"DER1N_ACCOUNT__PRICELEVEL__DEF"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"PRICELEVELID"
referencedTableName=
"PRICELEVEL"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
5
-260"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
9
-260"
>
<addForeignKeyConstraint
baseColumnNames=
"PREFERREDSERVICEID"
baseTableName=
"ACCOUNT"
constraintName=
"DER1N_ACCOUNT__SERVICE__PREFER"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"SERVICEID"
referencedTableName=
"SERVICE"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
5
-261"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
9
-261"
>
<addForeignKeyConstraint
baseColumnNames=
"SLAID"
baseTableName=
"ACCOUNT"
constraintName=
"DER1N_ACCOUNT__SLA__SLAID"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"SLAID"
referencedTableName=
"SLA"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
5
-262"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
9
-262"
>
<addForeignKeyConstraint
baseColumnNames=
"TERRITORYID"
baseTableName=
"ACCOUNT"
constraintName=
"DER1N_ACCOUNT__TERRITORY__TERR"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TERRITORYID"
referencedTableName=
"TERRITORY"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
5
-263"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-account-29
9
-263"
>
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"ACCOUNT"
constraintName=
"DER1N_ACCOUNT__TRANSACTIONCURR"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
</changeSet>
<!--输出实体[KNOWLEDGEARTICLEVIEWS]外键关系 -->
...
...
@@ -11419,7 +11419,7 @@
<!--输出实体[CAMPAIGNLIST]外键关系 -->
<!--输出实体[LISTCONTACT]外键关系 -->
<!--输出实体[COMPETITOR]外键关系 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-competitor-6-346"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-competitor-
1
6-346"
>
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"COMPETITOR"
constraintName=
"DER1N_COMPETITOR__TRANSACTIONC"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
</changeSet>
<!--输出实体[PRODUCT]外键关系 -->
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录