Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
I
iBiz企业中心
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz企业套件
iBiz企业中心
提交
ccc68305
提交
ccc68305
编写于
6月 18, 2020
作者:
ibizdev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
chitanda 发布系统代码
上级
6121121f
变更
45
隐藏空白字符变更
内嵌
并排
正在显示
45 个修改的文件
包含
1180 行增加
和
61 行删除
+1180
-61
data-dictionary.json
app_BusinessCentral/public/assets/json/data-dictionary.json
+107
-0
view-config.json
app_BusinessCentral/public/assets/json/view-config.json
+10
-0
list-contact.ts
app_BusinessCentral/src/interface/entity/list-contact.ts
+32
-0
list-lead.ts
app_BusinessCentral/src/interface/entity/list-lead.ts
+32
-0
codelist_en_US.ts
...inessCentral/src/locale/lanres/codelist/codelist_en_US.ts
+13
-0
codelist_zh_CN.ts
...inessCentral/src/locale/lanres/codelist/codelist_zh_CN.ts
+13
-0
campaign_en_US.ts
...ral/src/locale/lanres/entities/campaign/campaign_en_US.ts
+4
-0
campaign_zh_CN.ts
...ral/src/locale/lanres/entities/campaign/campaign_zh_CN.ts
+4
-0
lead_en_US.ts
...nessCentral/src/locale/lanres/entities/lead/lead_en_US.ts
+3
-0
lead_zh_CN.ts
...nessCentral/src/locale/lanres/entities/lead/lead_zh_CN.ts
+3
-0
list-account_en_US.ts
...locale/lanres/entities/list-account/list-account_en_US.ts
+4
-0
list-account_zh_CN.ts
...locale/lanres/entities/list-account/list-account_zh_CN.ts
+4
-0
list-contact_en_US.ts
...locale/lanres/entities/list-contact/list-contact_en_US.ts
+9
-0
list-contact_zh_CN.ts
...locale/lanres/entities/list-contact/list-contact_zh_CN.ts
+9
-0
list-lead_en_US.ts
...l/src/locale/lanres/entities/list-lead/list-lead_en_US.ts
+9
-0
list-lead_zh_CN.ts
...l/src/locale/lanres/entities/list-lead/list-lead_zh_CN.ts
+9
-0
codelist.ts
app_BusinessCentral/src/mock/codelist/codelist.ts
+107
-0
viewconfig.ts
app_BusinessCentral/src/mock/viewconfig/viewconfig.ts
+8
-0
app-content-left-nav-menu.less
.../app-content-left-nav-menu/app-content-left-nav-menu.less
+25
-1
studio-view-style2.less
...ore/components/studio-view-style2/studio-view-style2.less
+27
-1
studio-view-style2.tsx
...core/components/studio-view-style2/studio-view-style2.tsx
+25
-3
studio-view.less
...l/src/studio-core/components/studio-view/studio-view.less
+25
-28
view-toolbar.less
...src/studio-core/components/view-toolbar/view-toolbar.less
+8
-0
campaign-ui-service-base.ts
...entral/src/uiservice/campaign/campaign-ui-service-base.ts
+1
-0
view-tool.ts
app_BusinessCentral/src/utils/view-tool/view-tool.ts
+1
-1
default-searchform-base.vue
...dgets/lead/default-searchform/default-searchform-base.vue
+109
-1
default-searchform-model.ts
...dgets/lead/default-searchform/default-searchform-model.ts
+15
-0
main-grid-model.ts
...nessCentral/src/widgets/lead/main-grid/main-grid-model.ts
+15
-0
main-grid-base.vue
...ral/src/widgets/list-account/main-grid/main-grid-base.vue
+86
-0
main-grid-model.ts
...ral/src/widgets/list-account/main-grid/main-grid-model.ts
+20
-0
main-grid-base.vue
...ral/src/widgets/list-contact/main-grid/main-grid-base.vue
+105
-0
main-grid-model.ts
...ral/src/widgets/list-contact/main-grid/main-grid-model.ts
+25
-0
default-searchform-base.vue
.../list-lead/default-searchform/default-searchform-base.vue
+29
-1
default-searchform-model.ts
.../list-lead/default-searchform/default-searchform-model.ts
+5
-0
main-grid-base.vue
...entral/src/widgets/list-lead/main-grid/main-grid-base.vue
+86
-0
main-grid-model.ts
...entral/src/widgets/list-lead/main-grid/main-grid-model.ts
+25
-0
ListContact.java
...ab/businesscentral/core/marketing/domain/ListContact.java
+36
-0
ListLead.java
...izlab/businesscentral/core/marketing/domain/ListLead.java
+28
-0
ListContactServiceImpl.java
...l/core/marketing/service/impl/ListContactServiceImpl.java
+3
-0
ListLeadServiceImpl.java
...tral/core/marketing/service/impl/ListLeadServiceImpl.java
+4
-0
h2_table.xml
...esscentral-core/src/main/resources/liquibase/h2_table.xml
+19
-19
ListContactMapper.xml
...ources/mapper/marketing/listcontact/ListContactMapper.xml
+3
-3
ListLeadMapper.xml
...in/resources/mapper/marketing/listlead/ListLeadMapper.xml
+3
-3
ListContactDTO.java
...bizlab/businesscentral/centralapi/dto/ListContactDTO.java
+40
-0
ListLeadDTO.java
...n/ibizlab/businesscentral/centralapi/dto/ListLeadDTO.java
+32
-0
未找到文件。
app_BusinessCentral/public/assets/json/data-dictionary.json
浏览文件 @
ccc68305
...
...
@@ -993,6 +993,113 @@
}
]
},
{
"srfkey"
:
"Lead__LeadSourceCode"
,
"emptytext"
:
"未定义"
,
"codelisttype"
:
"static"
,
"items"
:
[
{
"id"
:
"1"
,
"label"
:
"Advertisement"
,
"text"
:
"Advertisement"
,
"data"
:
""
,
"codename"
:
"Item_1"
,
"value"
:
"1"
,
"disabled"
:
false
}
,
{
"id"
:
"2"
,
"label"
:
"Employee Referral"
,
"text"
:
"Employee Referral"
,
"data"
:
""
,
"codename"
:
"Item_2"
,
"value"
:
"2"
,
"disabled"
:
false
}
,
{
"id"
:
"3"
,
"label"
:
"External Referral"
,
"text"
:
"External Referral"
,
"data"
:
""
,
"codename"
:
"Item_3"
,
"value"
:
"3"
,
"disabled"
:
false
}
,
{
"id"
:
"10"
,
"label"
:
"Other"
,
"text"
:
"Other"
,
"data"
:
""
,
"codename"
:
"Item_10"
,
"value"
:
"10"
,
"disabled"
:
false
}
,
{
"id"
:
"4"
,
"label"
:
"Partner"
,
"text"
:
"Partner"
,
"data"
:
""
,
"codename"
:
"Item_4"
,
"value"
:
"4"
,
"disabled"
:
false
}
,
{
"id"
:
"5"
,
"label"
:
"Public Relations"
,
"text"
:
"Public Relations"
,
"data"
:
""
,
"codename"
:
"Item_5"
,
"value"
:
"5"
,
"disabled"
:
false
}
,
{
"id"
:
"6"
,
"label"
:
"Seminar"
,
"text"
:
"Seminar"
,
"data"
:
""
,
"codename"
:
"Item_6"
,
"value"
:
"6"
,
"disabled"
:
false
}
,
{
"id"
:
"7"
,
"label"
:
"Trade Show"
,
"text"
:
"Trade Show"
,
"data"
:
""
,
"codename"
:
"Item_7"
,
"value"
:
"7"
,
"disabled"
:
false
}
,
{
"id"
:
"8"
,
"label"
:
"Web"
,
"text"
:
"Web"
,
"data"
:
""
,
"codename"
:
"Item_8"
,
"value"
:
"8"
,
"disabled"
:
false
}
,
{
"id"
:
"9"
,
"label"
:
"Word of Mouth"
,
"text"
:
"Word of Mouth"
,
"data"
:
""
,
"codename"
:
"Item_9"
,
"value"
:
"9"
,
"disabled"
:
false
}
]
},
{
"srfkey"
:
"Account__IndustryCode"
,
"emptytext"
:
"未定义"
,
...
...
app_BusinessCentral/public/assets/json/view-config.json
浏览文件 @
ccc68305
...
...
@@ -119,6 +119,16 @@
"viewtag"
:
"1bc48b15dbe69c5f30dafe489f58aacb"
,
"memo"
:
"系统自动添加"
},
"campaignpanelview"
:
{
"title"
:
"市场活动面板视图"
,
"caption"
:
"市场活动"
,
"viewtype"
:
"DEPANELVIEW"
,
"viewmodule"
:
"Marketing"
,
"viewname"
:
"CampaignPanelView"
,
"viewfilename"
:
"campaign-panel-view"
,
"viewtag"
:
"1bcb965f185e7b90095b7e17b1ef3038"
,
"memo"
:
""
},
"accountinfo_account"
:
{
"title"
:
"account编辑视图"
,
"caption"
:
"客户"
,
...
...
app_BusinessCentral/src/interface/entity/list-contact.ts
浏览文件 @
ccc68305
...
...
@@ -93,4 +93,36 @@ export interface ListContact {
* @memberof ListContact
*/
entity2name
?:
any
;
/**
* 电子邮件
*
* @returns {*}
* @memberof ListContact
*/
emailaddress1
?:
any
;
/**
* 公司名称
*
* @returns {*}
* @memberof ListContact
*/
parentcustomerid
?:
any
;
/**
* 商务电话
*
* @returns {*}
* @memberof ListContact
*/
telephone1
?:
any
;
/**
* 状态
*
* @returns {*}
* @memberof ListContact
*/
statecode
?:
any
;
}
\ No newline at end of file
app_BusinessCentral/src/interface/entity/list-lead.ts
浏览文件 @
ccc68305
...
...
@@ -93,4 +93,36 @@ export interface ListLead {
* @memberof ListLead
*/
entity2name
?:
any
;
/**
* 主题
*
* @returns {*}
* @memberof ListLead
*/
subject
?:
any
;
/**
* 负责人
*
* @returns {*}
* @memberof ListLead
*/
owneridyominame
?:
any
;
/**
* 负责人
*
* @returns {*}
* @memberof ListLead
*/
ownerid
?:
any
;
/**
* 状态描述
*
* @returns {*}
* @memberof ListLead
*/
statuscode
?:
any
;
}
\ No newline at end of file
app_BusinessCentral/src/locale/lanres/codelist/codelist_en_US.ts
浏览文件 @
ccc68305
...
...
@@ -142,6 +142,19 @@ export default {
'2'
:
'No Charge'
,
empty
:
''
,
},
Lead__LeadSourceCode
:
{
'1'
:
'Advertisement'
,
'2'
:
'Employee Referral'
,
'3'
:
'External Referral'
,
'10'
:
'Other'
,
'4'
:
'Partner'
,
'5'
:
'Public Relations'
,
'6'
:
'Seminar'
,
'7'
:
'Trade Show'
,
'8'
:
'Web'
,
'9'
:
'Word of Mouth'
,
empty
:
''
,
},
Account__IndustryCode
:
{
'1'
:
'Accounting'
,
'2'
:
'Agriculture and Non-petrol Natural Resource Extraction'
,
...
...
app_BusinessCentral/src/locale/lanres/codelist/codelist_zh_CN.ts
浏览文件 @
ccc68305
...
...
@@ -142,6 +142,19 @@ export default {
'2'
:
'No Charge'
,
empty
:
''
,
},
Lead__LeadSourceCode
:
{
'1'
:
'Advertisement'
,
'2'
:
'Employee Referral'
,
'3'
:
'External Referral'
,
'10'
:
'Other'
,
'4'
:
'Partner'
,
'5'
:
'Public Relations'
,
'6'
:
'Seminar'
,
'7'
:
'Trade Show'
,
'8'
:
'Web'
,
'9'
:
'Word of Mouth'
,
empty
:
''
,
},
Account__IndustryCode
:
{
'1'
:
'Accounting'
,
'2'
:
'Agriculture and Non-petrol Natural Resource Extraction'
,
...
...
app_BusinessCentral/src/locale/lanres/entities/campaign/campaign_en_US.ts
浏览文件 @
ccc68305
...
...
@@ -63,6 +63,10 @@ export default {
info_campagin
:
{
caption
:
"活动信息"
,
title
:
'活动信息'
,
},
panelview
:
{
caption
:
"市场活动"
,
title
:
'市场活动面板视图'
,
},
editview
:
{
caption
:
"市场活动"
,
...
...
app_BusinessCentral/src/locale/lanres/entities/campaign/campaign_zh_CN.ts
浏览文件 @
ccc68305
...
...
@@ -62,6 +62,10 @@ export default {
info_campagin
:
{
caption
:
'活动信息'
,
title
:
'活动信息'
,
},
panelview
:
{
caption
:
'市场活动'
,
title
:
'市场活动面板视图'
,
},
editview
:
{
caption
:
'市场活动'
,
...
...
app_BusinessCentral/src/locale/lanres/entities/lead/lead_en_US.ts
浏览文件 @
ccc68305
...
...
@@ -239,6 +239,9 @@ export default {
default_searchform
:
{
details
:
{
formpage1
:
"常规条件"
,
n_statecode_eq
:
"状态(等于(=))"
,
n_fullname_like
:
"姓名(文本包含(%))"
,
n_leadsourcecode_eq
:
"潜在顾客来源(等于(=))"
,
},
uiactions
:
{
},
...
...
app_BusinessCentral/src/locale/lanres/entities/lead/lead_zh_CN.ts
浏览文件 @
ccc68305
...
...
@@ -238,6 +238,9 @@ export default {
default_searchform
:
{
details
:
{
formpage1
:
'常规条件'
,
n_statecode_eq
:
'状态(等于(=))'
,
n_fullname_like
:
'姓名(文本包含(%))'
,
n_leadsourcecode_eq
:
'潜在顾客来源(等于(=))'
,
},
uiactions
:
{
},
...
...
app_BusinessCentral/src/locale/lanres/entities/list-account/list-account_en_US.ts
浏览文件 @
ccc68305
...
...
@@ -48,6 +48,10 @@ export default {
},
main_grid
:
{
columns
:
{
entity2name
:
"客户"
,
telephone1
:
"主要电话"
,
primarycontactname
:
"主要联系人"
,
statecode
:
"状态"
,
},
uiactions
:
{
},
...
...
app_BusinessCentral/src/locale/lanres/entities/list-account/list-account_zh_CN.ts
浏览文件 @
ccc68305
...
...
@@ -47,6 +47,10 @@ export default {
},
main_grid
:
{
columns
:
{
entity2name
:
'客户'
,
telephone1
:
'主要电话'
,
primarycontactname
:
'主要联系人'
,
statecode
:
'状态'
,
},
uiactions
:
{
},
...
...
app_BusinessCentral/src/locale/lanres/entities/list-contact/list-contact_en_US.ts
浏览文件 @
ccc68305
...
...
@@ -12,6 +12,10 @@ export default {
entityname
:
'营销列表'
,
entity2id
:
'联系人'
,
entity2name
:
'联系人'
,
emailaddress1
:
'电子邮件'
,
parentcustomerid
:
'公司名称'
,
telephone1
:
'商务电话'
,
statecode
:
'状态'
,
},
views
:
{
gridview
:
{
...
...
@@ -44,6 +48,11 @@ export default {
},
main_grid
:
{
columns
:
{
entity2name
:
"联系人"
,
emailaddress1
:
"电子邮件"
,
parentcustomerid
:
"公司名称"
,
telephone1
:
"商务电话"
,
statecode
:
"状态"
,
},
uiactions
:
{
},
...
...
app_BusinessCentral/src/locale/lanres/entities/list-contact/list-contact_zh_CN.ts
浏览文件 @
ccc68305
...
...
@@ -11,6 +11,10 @@ export default {
entityname
:
'营销列表'
,
entity2id
:
'联系人'
,
entity2name
:
'联系人'
,
emailaddress1
:
'电子邮件'
,
parentcustomerid
:
'公司名称'
,
telephone1
:
'商务电话'
,
statecode
:
'状态'
,
},
views
:
{
gridview
:
{
...
...
@@ -43,6 +47,11 @@ export default {
},
main_grid
:
{
columns
:
{
entity2name
:
'联系人'
,
emailaddress1
:
'电子邮件'
,
parentcustomerid
:
'公司名称'
,
telephone1
:
'商务电话'
,
statecode
:
'状态'
,
},
uiactions
:
{
},
...
...
app_BusinessCentral/src/locale/lanres/entities/list-lead/list-lead_en_US.ts
浏览文件 @
ccc68305
...
...
@@ -12,6 +12,10 @@ export default {
entityname
:
'营销列表'
,
entity2id
:
'潜在顾客'
,
entity2name
:
'潜在顾客'
,
subject
:
'主题'
,
owneridyominame
:
'负责人'
,
ownerid
:
'负责人'
,
statuscode
:
'状态描述'
,
},
views
:
{
editview
:
{
...
...
@@ -44,6 +48,10 @@ export default {
},
main_grid
:
{
columns
:
{
entity2name
:
"潜在顾客"
,
subject
:
"主题"
,
owneridyominame
:
"负责人"
,
statuscode
:
"状态描述"
,
},
uiactions
:
{
},
...
...
@@ -51,6 +59,7 @@ export default {
default_searchform
:
{
details
:
{
formpage1
:
"常规条件"
,
n_entity2name_like
:
"潜在顾客(%)"
,
},
uiactions
:
{
},
...
...
app_BusinessCentral/src/locale/lanres/entities/list-lead/list-lead_zh_CN.ts
浏览文件 @
ccc68305
...
...
@@ -11,6 +11,10 @@ export default {
entityname
:
'营销列表'
,
entity2id
:
'潜在顾客'
,
entity2name
:
'潜在顾客'
,
subject
:
'主题'
,
owneridyominame
:
'负责人'
,
ownerid
:
'负责人'
,
statuscode
:
'状态描述'
,
},
views
:
{
editview
:
{
...
...
@@ -43,6 +47,10 @@ export default {
},
main_grid
:
{
columns
:
{
entity2name
:
'潜在顾客'
,
subject
:
'主题'
,
owneridyominame
:
'负责人'
,
statuscode
:
'状态描述'
,
},
uiactions
:
{
},
...
...
@@ -50,6 +58,7 @@ export default {
default_searchform
:
{
details
:
{
formpage1
:
'常规条件'
,
n_entity2name_like
:
'潜在顾客(%)'
,
},
uiactions
:
{
},
...
...
app_BusinessCentral/src/mock/codelist/codelist.ts
浏览文件 @
ccc68305
...
...
@@ -1001,6 +1001,113 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
},
]
},
{
srfkey
:
'Lead__LeadSourceCode'
,
emptytext
:
'未定义'
,
"codelisttype"
:
"static"
,
items
:
[
{
id
:
'1'
,
label
:
'Advertisement'
,
text
:
'Advertisement'
,
"data"
:
""
,
"codename"
:
"Item_1"
,
value
:
'1'
,
disabled
:
false
,
},
{
id
:
'2'
,
label
:
'Employee Referral'
,
text
:
'Employee Referral'
,
"data"
:
""
,
"codename"
:
"Item_2"
,
value
:
'2'
,
disabled
:
false
,
},
{
id
:
'3'
,
label
:
'External Referral'
,
text
:
'External Referral'
,
"data"
:
""
,
"codename"
:
"Item_3"
,
value
:
'3'
,
disabled
:
false
,
},
{
id
:
'10'
,
label
:
'Other'
,
text
:
'Other'
,
"data"
:
""
,
"codename"
:
"Item_10"
,
value
:
'10'
,
disabled
:
false
,
},
{
id
:
'4'
,
label
:
'Partner'
,
text
:
'Partner'
,
"data"
:
""
,
"codename"
:
"Item_4"
,
value
:
'4'
,
disabled
:
false
,
},
{
id
:
'5'
,
label
:
'Public Relations'
,
text
:
'Public Relations'
,
"data"
:
""
,
"codename"
:
"Item_5"
,
value
:
'5'
,
disabled
:
false
,
},
{
id
:
'6'
,
label
:
'Seminar'
,
text
:
'Seminar'
,
"data"
:
""
,
"codename"
:
"Item_6"
,
value
:
'6'
,
disabled
:
false
,
},
{
id
:
'7'
,
label
:
'Trade Show'
,
text
:
'Trade Show'
,
"data"
:
""
,
"codename"
:
"Item_7"
,
value
:
'7'
,
disabled
:
false
,
},
{
id
:
'8'
,
label
:
'Web'
,
text
:
'Web'
,
"data"
:
""
,
"codename"
:
"Item_8"
,
value
:
'8'
,
disabled
:
false
,
},
{
id
:
'9'
,
label
:
'Word of Mouth'
,
text
:
'Word of Mouth'
,
"data"
:
""
,
"codename"
:
"Item_9"
,
value
:
'9'
,
disabled
:
false
,
},
]
},
{
srfkey
:
'Account__IndustryCode'
,
emptytext
:
'未定义'
,
...
...
app_BusinessCentral/src/mock/viewconfig/viewconfig.ts
浏览文件 @
ccc68305
...
...
@@ -103,6 +103,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname"
:
"LeadPickupView"
,
"viewtag"
:
"1bc48b15dbe69c5f30dafe489f58aacb"
},
"campaignpanelview"
:
{
"title"
:
"市场活动面板视图"
,
"caption"
:
"市场活动"
,
"viewtype"
:
"DEPANELVIEW"
,
"viewmodule"
:
"Marketing"
,
"viewname"
:
"CampaignPanelView"
,
"viewtag"
:
"1bcb965f185e7b90095b7e17b1ef3038"
},
"accountinfo_account"
:
{
"title"
:
"account编辑视图"
,
"caption"
:
"客户"
,
...
...
app_BusinessCentral/src/studio-core/components/layout/app-content-left-nav-menu/app-content-left-nav-menu.less
浏览文件 @
ccc68305
// 滚动条宽度
.app-content-lef-nav-menu::-webkit-scrollbar {
width: 6px;
height: 6px;
background: transparent;
}
// 滚动槽
.app-content-lef-nav-menu::-webkit-scrollbar-track {
border-radius: 0;
box-shadow: none;
border: 0;
}
// 滚动条滑块
.app-content-lef-nav-menu::-webkit-scrollbar-thumb {
border-radius: 0;
box-shadow: none;
border: 0;
background-color: var(--app-scroll-bar-color);
}
.app-content-lef-nav-menu {
height: 100%;
overflow-y: auto;
overflow-x: hidden;
border-right: 1px solid var(--app-dividing-line-color-bright);
background-color: var(--app-header-background-color);
.el-menu {
min-height: 100%;
background-color: var(--app-header-background-color);
border
-right-color: var(--app-dividing-line-color-bright)
;
border
: 0
;
.el-menu-item,
.el-submenu>.el-submenu__title {
...
...
app_BusinessCentral/src/studio-core/components/studio-view-style2/studio-view-style2.less
浏览文件 @
ccc68305
...
...
@@ -2,7 +2,7 @@
display: flex;
flex-direction: column;
.view-to
olbar
{
.view-to
p
{
flex-shrink: 0;
height: 40px;
overflow: hidden;
...
...
@@ -10,6 +10,27 @@
border-bottom: 1px solid var(--app-dividing-line-color-bright);
}
.view-toolbar {
height: 100%;
float: left;
}
.quick-search {
float: right;
padding-top: 4px;
.ivu-input.ivu-input-default.ivu-input-with-suffix {
height: 32px;
line-height: 32px;
}
.ivu-input-icon {
width: 32px;
height: 32px;
line-height: 32px;
}
}
.view-header {
flex-shrink: 0;
height: 50px;
...
...
@@ -24,8 +45,13 @@
}
}
.view-search-wrapper {
flex-shrink: 0;
}
.view-content {
flex-grow: 1;
height: auto;
}
.view-footer {
...
...
app_BusinessCentral/src/studio-core/components/studio-view-style2/studio-view-style2.tsx
浏览文件 @
ccc68305
...
...
@@ -14,6 +14,19 @@ import './studio-view-style2.less';
@
VueLifeCycleProcessing
()
export
class
StudioViewStyle2
extends
StudioViewBase
{
/**
* 组件创建完毕
*
* @memberof StudioViewBase
*/
public
created
():
void
{
if
(
this
.
hiddenHeader
)
{
this
.
isShowHeader
=
false
;
}
else
{
this
.
isShowHeader
=
(
this
.
$slots
.
title
||
this
.
$slots
.
quickSearchForm
||
this
.
$slots
.
quickGroupSearch
)
?
true
:
false
;
}
}
/**
* 容器样式
*
...
...
@@ -37,15 +50,24 @@ export class StudioViewStyle2 extends StudioViewBase {
*/
protected
renderContent
():
any
{
return
[
this
.
$slots
.
toolbar
?
<
div
class=
"view-toolbar"
>
{
this
.
$slots
.
toolbar
}
</
div
>
:
null
,
this
.
isShowHeader
?
<
div
class=
"view-header"
>
(
this
.
$slots
.
toolbar
||
this
.
$slots
.
quickSearch
)
?
<
div
class=
"view-top"
>
{
this
.
$slots
.
toolbar
?
<
div
class=
"view-toolbar"
>
{
this
.
$slots
.
toolbar
}
</
div
>
:
null
}
{
this
.
$slots
.
quickSearch
?
<
div
class=
"quick-search"
>
{
this
.
$slots
.
quickSearch
}
</
div
>
:
null
}
</
div
>
:
null
,
this
.
isShowHeader
?
<
div
class=
"view-header"
>
{
this
.
$slots
.
title
?
<
div
class=
"title"
>
{
this
.
$slots
.
title
}
</
div
>
:
null
}
{
this
.
$slots
.
quickGroupSearch
?
<
div
class=
"quick-group-search"
>
{
this
.
$slots
.
quickGroupSearch
}
</
div
>
:
null
}
{
this
.
$slots
.
quickSearchForm
?
<
div
class=
"quick-search-form"
>
{
this
.
$slots
.
quickSearchForm
}
</
div
>
:
null
}
</
div
>
:
null
,
this
.
$slots
.
searchForm
?
<
div
class=
"view-search-wrapper"
>
<
div
class=
"search-form-wrapper"
>
{
this
.
$slots
.
searchForm
}
</
div
>
</
div
>
:
null
,
<
div
class=
"view-content"
>
{
this
.
$slots
.
default
}
<
div
class=
"content-wrapper"
>
{
this
.
$slots
.
default
}
</
div
>
</
div
>,
this
.
$slots
.
footer
?
<
div
class=
"view-footer"
>
{
this
.
$slots
.
footer
}
...
...
app_BusinessCentral/src/studio-core/components/studio-view/studio-view.less
浏览文件 @
ccc68305
...
...
@@ -4,6 +4,31 @@
width: 100%;
background: var(--view-background-color);
.quick-search {
float: left;
width: 230px;
margin-right: 30px;
.ivu-input.ivu-input-default.ivu-input-with-suffix {
height: 28px;
line-height: 28px;
border: 1px solid var(--form-editor-background-color);
color: var(--form-editor-font-color);
background-color: var(--form-editor-background-color);
}
.ivu-input.ivu-input-default.ivu-input-with-suffix:hover {
border-color: var(--form-editor-active-color)
}
.ivu-input-icon {
width: 28px;
height: 28px;
line-height: 28px;
color: var(--view-button-color);
}
}
>.view-header {
height: 36px;
width: 100%;
...
...
@@ -29,34 +54,6 @@
height: 100%;
}
>.quick-search {
float: left;
width: 230px;
margin-right: 30px;
>.ivu-input-wrapper.ivu-input-wrapper-default.ivu-input-type-text {
>.ivu-input.ivu-input-default.ivu-input-with-suffix {
height: 28px;
line-height: 28px;
border: 1px solid var(--form-editor-background-color);
color: var(--form-editor-font-color);
background-color: var(--form-editor-background-color);
}
>.ivu-input.ivu-input-default.ivu-input-with-suffix:hover {
border-color: var(--form-editor-active-color)
}
>.ivu-input-icon {
width: 28px;
height: 28px;
line-height: 28px;
color: var(--view-button-color);
}
}
}
>.toolbar {
float: right;
}
...
...
app_BusinessCentral/src/studio-core/components/view-toolbar/view-toolbar.less
浏览文件 @
ccc68305
...
...
@@ -43,6 +43,14 @@
color: var(--view-font-color-bright);
}
.ivu-btn.ivu-btn-text:disabled {
color: rgba(var(--view-font-color-bright-rgb), 0.5);
}
.ivu-btn.ivu-btn-text:disabled:hover {
background-color: transparent;
}
.ivu-btn.ivu-btn-text:hover {
background-color: rgba(var(--view-button-background-color-active-rgb), 0.2);
}
...
...
app_BusinessCentral/src/uiservice/campaign/campaign-ui-service-base.ts
浏览文件 @
ccc68305
...
...
@@ -82,6 +82,7 @@ export default class CampaignUIServiceBase extends UIService {
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'info_head'
,
srfappde
:
'campaigns'
});
this
.
allViewMap
.
set
(
'MDATAVIEW:'
,{
viewname
:
'gridview'
,
srfappde
:
'campaigns'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'info_campagin'
,
srfappde
:
'campaigns'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'panelview'
,
srfappde
:
'campaigns'
});
this
.
allViewMap
.
set
(
'EDITVIEW:'
,{
viewname
:
'editview'
,
srfappde
:
'campaigns'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'summary_head'
,
srfappde
:
'campaigns'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'edit_head'
,
srfappde
:
'campaigns'
});
...
...
app_BusinessCentral/src/utils/view-tool/view-tool.ts
浏览文件 @
ccc68305
...
...
@@ -106,7 +106,7 @@ export class ViewTool {
}
else
if
(
arg
[
parameterName
]
&&
!
Object
.
is
(
arg
[
parameterName
],
''
)
&&
!
Object
.
is
(
arg
[
parameterName
],
'null'
))
{
value
=
arg
[
parameterName
];
}
routePath
=
`
${
routePath
}
/
${
pathName
}
`
+
value
!==
null
?
`/
${
value
}
`
:
''
;
routePath
=
`
${
routePath
}
/
${
pathName
}
`
+
(
value
!==
null
?
`/
${
value
}
`
:
''
)
;
});
return
routePath
;
}
...
...
app_BusinessCentral/src/widgets/lead/default-searchform/default-searchform-base.vue
浏览文件 @
ccc68305
...
...
@@ -4,7 +4,49 @@
<row>
<i-col
span=
"20"
class=
"form-content"
>
<row>
</row>
<i-col
v-show=
"detailsModel.n_statecode_eq.visible"
:style=
"
{}" :lg="{ span: 24, offset: 0 }">
<app-form-item
name=
'n_statecode_eq'
:itemRules=
"this.rules.n_statecode_eq"
class=
''
:caption=
"$t('entities.lead.default_searchform.details.n_statecode_eq')"
uiStyle=
"DEFAULT"
:labelWidth=
"130"
:isShowCaption=
"true"
:error=
"detailsModel.n_statecode_eq.error"
:isEmptyCaption=
"false"
labelPos=
"LEFT"
>
<dropdown-list
v-model=
"data.n_statecode_eq"
:data=
"data"
:context=
"context"
:viewparams=
"viewparams"
:localContext =
'
{ }'
:localParam ='{ }'
:disabled="detailsModel.n_statecode_eq.disabled"
tag='State'
codelistType='STATIC'
placeholder='请选择...' style="">
</dropdown-list>
</app-form-item>
</i-col>
<i-col
v-show=
"detailsModel.n_fullname_like.visible"
:style=
"
{}" :lg="{ span: 24, offset: 0 }">
<app-form-item
name=
'n_fullname_like'
:itemRules=
"this.rules.n_fullname_like"
class=
''
:caption=
"$t('entities.lead.default_searchform.details.n_fullname_like')"
uiStyle=
"DEFAULT"
:labelWidth=
"130"
:isShowCaption=
"true"
:error=
"detailsModel.n_fullname_like.error"
:isEmptyCaption=
"false"
labelPos=
"LEFT"
>
<input-box
v-model=
"data.n_fullname_like"
@
enter=
"onEnter($event)"
:disabled=
"detailsModel.n_fullname_like.disabled"
type=
'text'
style=
""
></input-box>
</app-form-item>
</i-col>
<i-col
v-show=
"detailsModel.n_leadsourcecode_eq.visible"
:style=
"
{}" :lg="{ span: 24, offset: 0 }">
<app-form-item
name=
'n_leadsourcecode_eq'
:itemRules=
"this.rules.n_leadsourcecode_eq"
class=
''
:caption=
"$t('entities.lead.default_searchform.details.n_leadsourcecode_eq')"
uiStyle=
"DEFAULT"
:labelWidth=
"130"
:isShowCaption=
"true"
:error=
"detailsModel.n_leadsourcecode_eq.error"
:isEmptyCaption=
"false"
labelPos=
"LEFT"
>
<dropdown-list
v-model=
"data.n_leadsourcecode_eq"
:data=
"data"
:context=
"context"
:viewparams=
"viewparams"
:localContext =
'
{ }'
:localParam ='{ }'
:disabled="detailsModel.n_leadsourcecode_eq.disabled"
tag='Lead__LeadSourceCode'
codelistType='STATIC'
placeholder='请选择...' style="">
</dropdown-list>
</app-form-item>
</i-col>
</row>
</i-col>
<i-col
span=
"4"
class=
"search-button"
>
<row
v-show=
"Object.keys(data).length>0"
>
...
...
@@ -244,6 +286,9 @@ export default class DefaultBase extends Vue implements ControlInterface {
* @memberof DefaultBase
*/
public
data
:
any
=
{
n_statecode_eq
:
null
,
n_fullname_like
:
null
,
n_leadsourcecode_eq
:
null
,
};
/**
...
...
@@ -253,6 +298,24 @@ export default class DefaultBase extends Vue implements ControlInterface {
* @memberof DefaultBase
*/
public
rules
:
any
=
{
n_statecode_eq
:
[
{
type
:
'number'
,
message
:
'状态(等于(=)) 值必须为数值类型'
,
trigger
:
'change'
},
{
type
:
'number'
,
message
:
'状态(等于(=)) 值必须为数值类型'
,
trigger
:
'blur'
},
{
required
:
false
,
type
:
'number'
,
message
:
'状态(等于(=)) 值不能为空'
,
trigger
:
'change'
},
{
required
:
false
,
type
:
'number'
,
message
:
'状态(等于(=)) 值不能为空'
,
trigger
:
'blur'
},
],
n_fullname_like
:
[
{
type
:
'string'
,
message
:
'姓名(文本包含(%)) 值必须为字符串类型'
,
trigger
:
'change'
},
{
type
:
'string'
,
message
:
'姓名(文本包含(%)) 值必须为字符串类型'
,
trigger
:
'blur'
},
{
required
:
false
,
type
:
'string'
,
message
:
'姓名(文本包含(%)) 值不能为空'
,
trigger
:
'change'
},
{
required
:
false
,
type
:
'string'
,
message
:
'姓名(文本包含(%)) 值不能为空'
,
trigger
:
'blur'
},
],
n_leadsourcecode_eq
:
[
{
type
:
'string'
,
message
:
'潜在顾客来源(等于(=)) 值必须为字符串类型'
,
trigger
:
'change'
},
{
type
:
'string'
,
message
:
'潜在顾客来源(等于(=)) 值必须为字符串类型'
,
trigger
:
'blur'
},
{
required
:
false
,
type
:
'string'
,
message
:
'潜在顾客来源(等于(=)) 值不能为空'
,
trigger
:
'change'
},
{
required
:
false
,
type
:
'string'
,
message
:
'潜在顾客来源(等于(=)) 值不能为空'
,
trigger
:
'blur'
},
],
}
/**
...
...
@@ -263,9 +326,51 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/
public
detailsModel
:
any
=
{
formpage1
:
new
FormPageModel
({
caption
:
'常规条件'
,
detailType
:
'FORMPAGE'
,
name
:
'formpage1'
,
visible
:
true
,
isShowCaption
:
true
,
form
:
this
})
,
n_statecode_eq
:
new
FormItemModel
({
caption
:
'状态(等于(=))'
,
detailType
:
'FORMITEM'
,
name
:
'n_statecode_eq'
,
visible
:
true
,
isShowCaption
:
true
,
form
:
this
,
disabled
:
false
,
enableCond
:
3
})
,
n_fullname_like
:
new
FormItemModel
({
caption
:
'姓名(文本包含(%))'
,
detailType
:
'FORMITEM'
,
name
:
'n_fullname_like'
,
visible
:
true
,
isShowCaption
:
true
,
form
:
this
,
disabled
:
false
,
enableCond
:
3
})
,
n_leadsourcecode_eq
:
new
FormItemModel
({
caption
:
'潜在顾客来源(等于(=))'
,
detailType
:
'FORMITEM'
,
name
:
'n_leadsourcecode_eq'
,
visible
:
true
,
isShowCaption
:
true
,
form
:
this
,
disabled
:
false
,
enableCond
:
3
})
,
};
/**
* 监控表单属性 n_statecode_eq 值
*
* @param {*} newVal
* @param {*} oldVal
* @memberof DefaultBase
*/
@
Watch
(
'data.n_statecode_eq'
)
onN_statecode_eqChange
(
newVal
:
any
,
oldVal
:
any
)
{
this
.
formDataChange
({
name
:
'n_statecode_eq'
,
newVal
:
newVal
,
oldVal
:
oldVal
});
}
/**
* 监控表单属性 n_fullname_like 值
*
* @param {*} newVal
* @param {*} oldVal
* @memberof DefaultBase
*/
@
Watch
(
'data.n_fullname_like'
)
onN_fullname_likeChange
(
newVal
:
any
,
oldVal
:
any
)
{
this
.
formDataChange
({
name
:
'n_fullname_like'
,
newVal
:
newVal
,
oldVal
:
oldVal
});
}
/**
* 监控表单属性 n_leadsourcecode_eq 值
*
* @param {*} newVal
* @param {*} oldVal
* @memberof DefaultBase
*/
@
Watch
(
'data.n_leadsourcecode_eq'
)
onN_leadsourcecode_eqChange
(
newVal
:
any
,
oldVal
:
any
)
{
this
.
formDataChange
({
name
:
'n_leadsourcecode_eq'
,
newVal
:
newVal
,
oldVal
:
oldVal
});
}
/**
* 重置表单项值
...
...
@@ -287,6 +392,9 @@ export default class DefaultBase extends Vue implements ControlInterface {
public
formLogic
({
name
,
newVal
,
oldVal
}:
{
name
:
string
,
newVal
:
any
,
oldVal
:
any
}):
void
{
}
/**
...
...
app_BusinessCentral/src/widgets/lead/default-searchform/default-searchform-model.ts
浏览文件 @
ccc68305
...
...
@@ -25,6 +25,21 @@ export default class DefaultModel {
prop
:
'srffrontuf'
,
dataType
:
'TEXT'
,
},
{
name
:
'n_statecode_eq'
,
prop
:
'statecode'
,
dataType
:
'NSCODELIST'
,
},
{
name
:
'n_fullname_like'
,
prop
:
'fullname'
,
dataType
:
'TEXT'
,
},
{
name
:
'n_leadsourcecode_eq'
,
prop
:
'leadsourcecode'
,
dataType
:
'SSCODELIST'
,
},
]
}
...
...
app_BusinessCentral/src/widgets/lead/main-grid/main-grid-model.ts
浏览文件 @
ccc68305
...
...
@@ -100,6 +100,21 @@ export default class MainModel {
name
:
'lead'
,
prop
:
'leadid'
,
},
{
name
:
'n_statecode_eq'
,
prop
:
'n_statecode_eq'
,
dataType
:
'NSCODELIST'
,
},
{
name
:
'n_fullname_like'
,
prop
:
'n_fullname_like'
,
dataType
:
'TEXT'
,
},
{
name
:
'n_leadsourcecode_eq'
,
prop
:
'n_leadsourcecode_eq'
,
dataType
:
'SSCODELIST'
,
},
{
name
:
'size'
,
...
...
app_BusinessCentral/src/widgets/list-account/main-grid/main-grid-base.vue
浏览文件 @
ccc68305
...
...
@@ -23,6 +23,56 @@
<
template
v-if=
"!isSingleSelect"
>
<el-table-column
align=
"center"
type=
'selection'
:width=
"checkboxColWidth"
></el-table-column>
</
template
>
<
template
v-if=
"getColumnState('entity2name')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'entity2name'"
:label=
"$t('entities.listaccount.main_grid.columns.entity2name')"
:width=
"100"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.listaccount.main_grid.columns.entity2name'
)
}}
</span>
</
template
>
<
template
v-slot=
"{row,column,$index}"
>
<span>
{{
row
.
entity2name
}}
</span>
</
template
>
</el-table-column>
</template>
<
template
v-if=
"getColumnState('telephone1')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'telephone1'"
:label=
"$t('entities.listaccount.main_grid.columns.telephone1')"
:width=
"100"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.listaccount.main_grid.columns.telephone1'
)
}}
</span>
</
template
>
<
template
v-slot=
"{row,column,$index}"
>
<span>
{{
row
.
telephone1
}}
</span>
</
template
>
</el-table-column>
</template>
<
template
v-if=
"getColumnState('primarycontactname')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'primarycontactname'"
:label=
"$t('entities.listaccount.main_grid.columns.primarycontactname')"
:width=
"100"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.listaccount.main_grid.columns.primarycontactname'
)
}}
</span>
</
template
>
<
template
v-slot=
"{row,column,$index}"
>
<span>
{{
row
.
primarycontactname
}}
</span>
</
template
>
</el-table-column>
</template>
<
template
v-if=
"getColumnState('statecode')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'statecode'"
:label=
"$t('entities.listaccount.main_grid.columns.statecode')"
:width=
"100"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.listaccount.main_grid.columns.statecode'
)
}}
</span>
</
template
>
<
template
v-slot=
"{row,column,$index}"
>
<template
>
<codelist
:value=
"row.statecode"
tag=
'State'
codelistType=
'STATIC'
></codelist>
</
template
>
</template>
</el-table-column>
</template>
<
template
v-if=
"adaptiveState"
>
<el-table-column></el-table-column>
</
template
>
...
...
@@ -500,6 +550,34 @@ export default class MainBase extends Vue implements ControlInterface {
* @memberof Main
*/
public
allColumns
:
any
[]
=
[
{
name
:
'entity2name'
,
label
:
'客户'
,
langtag
:
'entities.listaccount.main_grid.columns.entity2name'
,
show
:
true
,
util
:
'PX'
},
{
name
:
'telephone1'
,
label
:
'主要电话'
,
langtag
:
'entities.listaccount.main_grid.columns.telephone1'
,
show
:
true
,
util
:
'PX'
},
{
name
:
'primarycontactname'
,
label
:
'主要联系人'
,
langtag
:
'entities.listaccount.main_grid.columns.primarycontactname'
,
show
:
true
,
util
:
'PX'
},
{
name
:
'statecode'
,
label
:
'状态'
,
langtag
:
'entities.listaccount.main_grid.columns.statecode'
,
show
:
true
,
util
:
'PX'
},
]
/**
...
...
@@ -887,6 +965,14 @@ export default class MainBase extends Vue implements ControlInterface {
*/
public
async
formatExcelData
(
filterVal
:
any
,
jsonData
:
any
)
{
let
codelistColumns
:
Array
<
any
>
=
[
{
name
:
'statecode'
,
srfkey
:
'State'
,
codelistType
:
'STATIC'
,
renderMode
:
'other'
,
textSeparator
:
'、'
,
valueSeparator
:
','
,
},
];
let
_this
=
this
;
for
(
const
codelist
of
codelistColumns
)
{
...
...
app_BusinessCentral/src/widgets/list-account/main-grid/main-grid-model.ts
浏览文件 @
ccc68305
...
...
@@ -26,16 +26,31 @@ export default class MainModel {
]
}
else
{
return
[
{
name
:
'telephone1'
,
prop
:
'telephone1'
,
dataType
:
'PICKUPDATA'
,
},
{
name
:
'entity2id'
,
prop
:
'entity2id'
,
dataType
:
'PICKUP'
,
},
{
name
:
'statecode'
,
prop
:
'statecode'
,
dataType
:
'PICKUPDATA'
,
},
{
name
:
'entityid'
,
prop
:
'entityid'
,
dataType
:
'PICKUP'
,
},
{
name
:
'primarycontactname'
,
prop
:
'primarycontactname'
,
dataType
:
'PICKUPDATA'
,
},
{
name
:
'srfmajortext'
,
prop
:
'relationshipsname'
,
...
...
@@ -51,6 +66,11 @@ export default class MainModel {
prop
:
'relationshipsid'
,
dataType
:
'GUID'
,
},
{
name
:
'entity2name'
,
prop
:
'entity2name'
,
dataType
:
'PICKUPTEXT'
,
},
{
name
:
'listaccount'
,
prop
:
'relationshipsid'
,
...
...
app_BusinessCentral/src/widgets/list-contact/main-grid/main-grid-base.vue
浏览文件 @
ccc68305
...
...
@@ -23,6 +23,68 @@
<
template
v-if=
"!isSingleSelect"
>
<el-table-column
align=
"center"
type=
'selection'
:width=
"checkboxColWidth"
></el-table-column>
</
template
>
<
template
v-if=
"getColumnState('entity2name')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'entity2name'"
:label=
"$t('entities.listcontact.main_grid.columns.entity2name')"
:width=
"100"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.listcontact.main_grid.columns.entity2name'
)
}}
</span>
</
template
>
<
template
v-slot=
"{row,column,$index}"
>
<span>
{{
row
.
entity2name
}}
</span>
</
template
>
</el-table-column>
</template>
<
template
v-if=
"getColumnState('emailaddress1')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'emailaddress1'"
:label=
"$t('entities.listcontact.main_grid.columns.emailaddress1')"
:width=
"100"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.listcontact.main_grid.columns.emailaddress1'
)
}}
</span>
</
template
>
<
template
v-slot=
"{row,column,$index}"
>
<span>
{{
row
.
emailaddress1
}}
</span>
</
template
>
</el-table-column>
</template>
<
template
v-if=
"getColumnState('parentcustomerid')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'parentcustomerid'"
:label=
"$t('entities.listcontact.main_grid.columns.parentcustomerid')"
:width=
"100"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.listcontact.main_grid.columns.parentcustomerid'
)
}}
</span>
</
template
>
<
template
v-slot=
"{row,column,$index}"
>
<span>
{{
row
.
parentcustomerid
}}
</span>
</
template
>
</el-table-column>
</template>
<
template
v-if=
"getColumnState('telephone1')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'telephone1'"
:label=
"$t('entities.listcontact.main_grid.columns.telephone1')"
:width=
"100"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.listcontact.main_grid.columns.telephone1'
)
}}
</span>
</
template
>
<
template
v-slot=
"{row,column,$index}"
>
<span>
{{
row
.
telephone1
}}
</span>
</
template
>
</el-table-column>
</template>
<
template
v-if=
"getColumnState('statecode')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'statecode'"
:label=
"$t('entities.listcontact.main_grid.columns.statecode')"
:width=
"100"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.listcontact.main_grid.columns.statecode'
)
}}
</span>
</
template
>
<
template
v-slot=
"{row,column,$index}"
>
<template
>
<codelist
:value=
"row.statecode"
tag=
'State'
codelistType=
'STATIC'
></codelist>
</
template
>
</template>
</el-table-column>
</template>
<
template
v-if=
"adaptiveState"
>
<el-table-column></el-table-column>
</
template
>
...
...
@@ -500,6 +562,41 @@ export default class MainBase extends Vue implements ControlInterface {
* @memberof Main
*/
public
allColumns
:
any
[]
=
[
{
name
:
'entity2name'
,
label
:
'联系人'
,
langtag
:
'entities.listcontact.main_grid.columns.entity2name'
,
show
:
true
,
util
:
'PX'
},
{
name
:
'emailaddress1'
,
label
:
'电子邮件'
,
langtag
:
'entities.listcontact.main_grid.columns.emailaddress1'
,
show
:
true
,
util
:
'PX'
},
{
name
:
'parentcustomerid'
,
label
:
'公司名称'
,
langtag
:
'entities.listcontact.main_grid.columns.parentcustomerid'
,
show
:
true
,
util
:
'PX'
},
{
name
:
'telephone1'
,
label
:
'商务电话'
,
langtag
:
'entities.listcontact.main_grid.columns.telephone1'
,
show
:
true
,
util
:
'PX'
},
{
name
:
'statecode'
,
label
:
'状态'
,
langtag
:
'entities.listcontact.main_grid.columns.statecode'
,
show
:
true
,
util
:
'PX'
},
]
/**
...
...
@@ -887,6 +984,14 @@ export default class MainBase extends Vue implements ControlInterface {
*/
public
async
formatExcelData
(
filterVal
:
any
,
jsonData
:
any
)
{
let
codelistColumns
:
Array
<
any
>
=
[
{
name
:
'statecode'
,
srfkey
:
'State'
,
codelistType
:
'STATIC'
,
renderMode
:
'other'
,
textSeparator
:
'、'
,
valueSeparator
:
','
,
},
];
let
_this
=
this
;
for
(
const
codelist
of
codelistColumns
)
{
...
...
app_BusinessCentral/src/widgets/list-contact/main-grid/main-grid-model.ts
浏览文件 @
ccc68305
...
...
@@ -26,16 +26,36 @@ export default class MainModel {
]
}
else
{
return
[
{
name
:
'telephone1'
,
prop
:
'telephone1'
,
dataType
:
'PICKUPDATA'
,
},
{
name
:
'entity2id'
,
prop
:
'entity2id'
,
dataType
:
'PICKUP'
,
},
{
name
:
'statecode'
,
prop
:
'statecode'
,
dataType
:
'PICKUPDATA'
,
},
{
name
:
'emailaddress1'
,
prop
:
'emailaddress1'
,
dataType
:
'PICKUPDATA'
,
},
{
name
:
'entityid'
,
prop
:
'entityid'
,
dataType
:
'PICKUP'
,
},
{
name
:
'parentcustomerid'
,
prop
:
'parentcustomerid'
,
dataType
:
'TEXT'
,
},
{
name
:
'srfmajortext'
,
prop
:
'relationshipsname'
,
...
...
@@ -51,6 +71,11 @@ export default class MainModel {
prop
:
'relationshipsid'
,
dataType
:
'GUID'
,
},
{
name
:
'entity2name'
,
prop
:
'entity2name'
,
dataType
:
'PICKUPTEXT'
,
},
{
name
:
'listcontact'
,
prop
:
'relationshipsid'
,
...
...
app_BusinessCentral/src/widgets/list-lead/default-searchform/default-searchform-base.vue
浏览文件 @
ccc68305
...
...
@@ -4,7 +4,13 @@
<row>
<i-col
span=
"20"
class=
"form-content"
>
<row>
</row>
<i-col
v-show=
"detailsModel.n_entity2name_like.visible"
:style=
"
{}" :lg="{ span: 24, offset: 0 }">
<app-form-item
name=
'n_entity2name_like'
:itemRules=
"this.rules.n_entity2name_like"
class=
''
:caption=
"$t('entities.listlead.default_searchform.details.n_entity2name_like')"
uiStyle=
"DEFAULT"
:labelWidth=
"130"
:isShowCaption=
"true"
:error=
"detailsModel.n_entity2name_like.error"
:isEmptyCaption=
"false"
labelPos=
"LEFT"
>
<input-box
v-model=
"data.n_entity2name_like"
@
enter=
"onEnter($event)"
:disabled=
"detailsModel.n_entity2name_like.disabled"
type=
'text'
style=
""
></input-box>
</app-form-item>
</i-col>
</row>
</i-col>
<i-col
span=
"4"
class=
"search-button"
>
<row
v-show=
"Object.keys(data).length>0"
>
...
...
@@ -244,6 +250,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
* @memberof DefaultBase
*/
public
data
:
any
=
{
n_entity2name_like
:
null
,
};
/**
...
...
@@ -253,6 +260,12 @@ export default class DefaultBase extends Vue implements ControlInterface {
* @memberof DefaultBase
*/
public
rules
:
any
=
{
n_entity2name_like
:
[
{
type
:
'string'
,
message
:
'潜在顾客(%) 值必须为字符串类型'
,
trigger
:
'change'
},
{
type
:
'string'
,
message
:
'潜在顾客(%) 值必须为字符串类型'
,
trigger
:
'blur'
},
{
required
:
false
,
type
:
'string'
,
message
:
'潜在顾客(%) 值不能为空'
,
trigger
:
'change'
},
{
required
:
false
,
type
:
'string'
,
message
:
'潜在顾客(%) 值不能为空'
,
trigger
:
'blur'
},
],
}
/**
...
...
@@ -263,9 +276,23 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/
public
detailsModel
:
any
=
{
formpage1
:
new
FormPageModel
({
caption
:
'常规条件'
,
detailType
:
'FORMPAGE'
,
name
:
'formpage1'
,
visible
:
true
,
isShowCaption
:
true
,
form
:
this
})
,
n_entity2name_like
:
new
FormItemModel
({
caption
:
'潜在顾客(%)'
,
detailType
:
'FORMITEM'
,
name
:
'n_entity2name_like'
,
visible
:
true
,
isShowCaption
:
true
,
form
:
this
,
disabled
:
false
,
enableCond
:
3
})
,
};
/**
* 监控表单属性 n_entity2name_like 值
*
* @param {*} newVal
* @param {*} oldVal
* @memberof DefaultBase
*/
@
Watch
(
'data.n_entity2name_like'
)
onN_entity2name_likeChange
(
newVal
:
any
,
oldVal
:
any
)
{
this
.
formDataChange
({
name
:
'n_entity2name_like'
,
newVal
:
newVal
,
oldVal
:
oldVal
});
}
/**
* 重置表单项值
...
...
@@ -287,6 +314,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
public
formLogic
({
name
,
newVal
,
oldVal
}:
{
name
:
string
,
newVal
:
any
,
oldVal
:
any
}):
void
{
}
/**
...
...
app_BusinessCentral/src/widgets/list-lead/default-searchform/default-searchform-model.ts
浏览文件 @
ccc68305
...
...
@@ -25,6 +25,11 @@ export default class DefaultModel {
prop
:
'srffrontuf'
,
dataType
:
'TEXT'
,
},
{
name
:
'n_entity2name_like'
,
prop
:
'entity2name'
,
dataType
:
'PICKUPTEXT'
,
},
]
}
...
...
app_BusinessCentral/src/widgets/list-lead/main-grid/main-grid-base.vue
浏览文件 @
ccc68305
...
...
@@ -23,6 +23,56 @@
<
template
v-if=
"!isSingleSelect"
>
<el-table-column
align=
"center"
type=
'selection'
:width=
"checkboxColWidth"
></el-table-column>
</
template
>
<
template
v-if=
"getColumnState('entity2name')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'entity2name'"
:label=
"$t('entities.listlead.main_grid.columns.entity2name')"
:width=
"100"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.listlead.main_grid.columns.entity2name'
)
}}
</span>
</
template
>
<
template
v-slot=
"{row,column,$index}"
>
<span>
{{
row
.
entity2name
}}
</span>
</
template
>
</el-table-column>
</template>
<
template
v-if=
"getColumnState('subject')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'subject'"
:label=
"$t('entities.listlead.main_grid.columns.subject')"
:width=
"100"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.listlead.main_grid.columns.subject'
)
}}
</span>
</
template
>
<
template
v-slot=
"{row,column,$index}"
>
<span>
{{
row
.
subject
}}
</span>
</
template
>
</el-table-column>
</template>
<
template
v-if=
"getColumnState('owneridyominame')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'owneridyominame'"
:label=
"$t('entities.listlead.main_grid.columns.owneridyominame')"
:width=
"100"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.listlead.main_grid.columns.owneridyominame'
)
}}
</span>
</
template
>
<
template
v-slot=
"{row,column,$index}"
>
<span>
{{
row
.
owneridyominame
}}
</span>
</
template
>
</el-table-column>
</template>
<
template
v-if=
"getColumnState('statuscode')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'statuscode'"
:label=
"$t('entities.listlead.main_grid.columns.statuscode')"
:width=
"100"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"
{column}">
<span
class=
"column-header "
>
{{
$t
(
'entities.listlead.main_grid.columns.statuscode'
)
}}
</span>
</
template
>
<
template
v-slot=
"{row,column,$index}"
>
<template
>
<codelist
:value=
"row.statuscode"
tag=
'Status'
codelistType=
'STATIC'
></codelist>
</
template
>
</template>
</el-table-column>
</template>
<
template
v-if=
"adaptiveState"
>
<el-table-column></el-table-column>
</
template
>
...
...
@@ -500,6 +550,34 @@ export default class MainBase extends Vue implements ControlInterface {
* @memberof Main
*/
public
allColumns
:
any
[]
=
[
{
name
:
'entity2name'
,
label
:
'潜在顾客'
,
langtag
:
'entities.listlead.main_grid.columns.entity2name'
,
show
:
true
,
util
:
'PX'
},
{
name
:
'subject'
,
label
:
'主题'
,
langtag
:
'entities.listlead.main_grid.columns.subject'
,
show
:
true
,
util
:
'PX'
},
{
name
:
'owneridyominame'
,
label
:
'负责人'
,
langtag
:
'entities.listlead.main_grid.columns.owneridyominame'
,
show
:
true
,
util
:
'PX'
},
{
name
:
'statuscode'
,
label
:
'状态描述'
,
langtag
:
'entities.listlead.main_grid.columns.statuscode'
,
show
:
true
,
util
:
'PX'
},
]
/**
...
...
@@ -887,6 +965,14 @@ export default class MainBase extends Vue implements ControlInterface {
*/
public
async
formatExcelData
(
filterVal
:
any
,
jsonData
:
any
)
{
let
codelistColumns
:
Array
<
any
>
=
[
{
name
:
'statuscode'
,
srfkey
:
'Status'
,
codelistType
:
'STATIC'
,
renderMode
:
'other'
,
textSeparator
:
'、'
,
valueSeparator
:
','
,
},
];
let
_this
=
this
;
for
(
const
codelist
of
codelistColumns
)
{
...
...
app_BusinessCentral/src/widgets/list-lead/main-grid/main-grid-model.ts
浏览文件 @
ccc68305
...
...
@@ -36,6 +36,21 @@ export default class MainModel {
prop
:
'entityid'
,
dataType
:
'PICKUP'
,
},
{
name
:
'subject'
,
prop
:
'subject'
,
dataType
:
'PICKUPDATA'
,
},
{
name
:
'owneridyominame'
,
prop
:
'owneridyominame'
,
dataType
:
'PICKUPDATA'
,
},
{
name
:
'statuscode'
,
prop
:
'statuscode'
,
dataType
:
'PICKUPDATA'
,
},
{
name
:
'srfmajortext'
,
prop
:
'relationshipsname'
,
...
...
@@ -51,10 +66,20 @@ export default class MainModel {
prop
:
'relationshipsid'
,
dataType
:
'GUID'
,
},
{
name
:
'entity2name'
,
prop
:
'entity2name'
,
dataType
:
'PICKUPTEXT'
,
},
{
name
:
'listlead'
,
prop
:
'relationshipsid'
,
},
{
name
:
'n_entity2name_like'
,
prop
:
'n_entity2name_like'
,
dataType
:
'PICKUPTEXT'
,
},
{
name
:
'size'
,
...
...
businesscentral-core/src/main/java/cn/ibizlab/businesscentral/core/marketing/domain/ListContact.java
浏览文件 @
ccc68305
...
...
@@ -124,6 +124,34 @@ public class ListContact extends EntityMP implements Serializable {
@JSONField
(
name
=
"entity2name"
)
@JsonProperty
(
"entity2name"
)
private
String
entity2name
;
/**
* 电子邮件
*/
@TableField
(
exist
=
false
)
@JSONField
(
name
=
"emailaddress1"
)
@JsonProperty
(
"emailaddress1"
)
private
String
emailaddress1
;
/**
* 公司名称
*/
@TableField
(
value
=
"parentcustomerid"
)
@JSONField
(
name
=
"parentcustomerid"
)
@JsonProperty
(
"parentcustomerid"
)
private
String
parentcustomerid
;
/**
* 商务电话
*/
@TableField
(
exist
=
false
)
@JSONField
(
name
=
"telephone1"
)
@JsonProperty
(
"telephone1"
)
private
String
telephone1
;
/**
* 状态
*/
@TableField
(
exist
=
false
)
@JSONField
(
name
=
"statecode"
)
@JsonProperty
(
"statecode"
)
private
Integer
statecode
;
/**
*
...
...
@@ -191,6 +219,14 @@ public class ListContact extends EntityMP implements Serializable {
this
.
modify
(
"entity2name"
,
entity2name
);
}
/**
* 设置 [公司名称]
*/
public
void
setParentcustomerid
(
String
parentcustomerid
){
this
.
parentcustomerid
=
parentcustomerid
;
this
.
modify
(
"parentcustomerid"
,
parentcustomerid
);
}
}
...
...
businesscentral-core/src/main/java/cn/ibizlab/businesscentral/core/marketing/domain/ListLead.java
浏览文件 @
ccc68305
...
...
@@ -124,6 +124,34 @@ public class ListLead extends EntityMP implements Serializable {
@JSONField
(
name
=
"entity2name"
)
@JsonProperty
(
"entity2name"
)
private
String
entity2name
;
/**
* 主题
*/
@TableField
(
exist
=
false
)
@JSONField
(
name
=
"subject"
)
@JsonProperty
(
"subject"
)
private
String
subject
;
/**
* 负责人
*/
@TableField
(
exist
=
false
)
@JSONField
(
name
=
"owneridyominame"
)
@JsonProperty
(
"owneridyominame"
)
private
String
owneridyominame
;
/**
* 负责人
*/
@TableField
(
exist
=
false
)
@JSONField
(
name
=
"ownerid"
)
@JsonProperty
(
"ownerid"
)
private
String
ownerid
;
/**
* 状态描述
*/
@TableField
(
exist
=
false
)
@JSONField
(
name
=
"statuscode"
)
@JsonProperty
(
"statuscode"
)
private
Integer
statuscode
;
/**
*
...
...
businesscentral-core/src/main/java/cn/ibizlab/businesscentral/core/marketing/service/impl/ListContactServiceImpl.java
浏览文件 @
ccc68305
...
...
@@ -200,6 +200,9 @@ public class ListContactServiceImpl extends ServiceImpl<ListContactMapper, ListC
contact
=
majorEntity
;
}
et
.
setEntity2name
(
contact
.
getFullname
());
et
.
setEmailaddress1
(
contact
.
getEmailaddress1
());
et
.
setTelephone1
(
contact
.
getTelephone1
());
et
.
setStatecode
(
contact
.
getStatecode
());
}
//实体关系[DER1N_LISTCONTACT_LIST_LISTID]
if
(!
ObjectUtils
.
isEmpty
(
et
.
getEntityid
())){
...
...
businesscentral-core/src/main/java/cn/ibizlab/businesscentral/core/marketing/service/impl/ListLeadServiceImpl.java
浏览文件 @
ccc68305
...
...
@@ -200,6 +200,10 @@ public class ListLeadServiceImpl extends ServiceImpl<ListLeadMapper, ListLead> i
lead
=
majorEntity
;
}
et
.
setEntity2name
(
lead
.
getFullname
());
et
.
setSubject
(
lead
.
getSubject
());
et
.
setOwneridyominame
(
lead
.
getOwneridyominame
());
et
.
setOwnerid
(
lead
.
getOwnerid
());
et
.
setStatuscode
(
lead
.
getStatuscode
());
}
//实体关系[DER1N_LISTLEAD_LIST_LISTID]
if
(!
ObjectUtils
.
isEmpty
(
et
.
getEntityid
())){
...
...
businesscentral-core/src/main/resources/liquibase/h2_table.xml
浏览文件 @
ccc68305
...
...
@@ -3182,7 +3182,7 @@
<!--输出实体[CONTACT]数据结构 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-contact-12
2
-43"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-contact-12
3
-43"
>
<createTable
tableName=
"CONTACT"
>
<column
name=
"ADDRESS1_FREIGHTTERMSCODE"
remarks=
""
type=
"VARCHAR(30)"
>
</column>
...
...
@@ -6425,7 +6425,7 @@
<!--输出实体[LEAD]数据结构 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-lead-3
2
-74"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-lead-3
3
-74"
>
<createTable
tableName=
"LEAD"
>
<column
name=
"ADDRESS1_FAX"
remarks=
""
type=
"VARCHAR(50)"
>
</column>
...
...
@@ -7367,7 +7367,7 @@
<!--输出实体[CAMPAIGN]数据结构 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-campaign-10
4
-77"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-campaign-10
5
-77"
>
<createTable
tableName=
"CAMPAIGN"
>
<column
name=
"EXPECTEDRESPONSE"
remarks=
""
type=
"INT"
>
</column>
...
...
@@ -11021,22 +11021,22 @@
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"MONTHLYFISCALCALENDAR"
constraintName=
"DER1N_MONTHLYFISCALCALENDAR__T"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
</changeSet>
<!--输出实体[CONTACT]外键关系 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-contact-12
2
-212"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-contact-12
3
-212"
>
<addForeignKeyConstraint
baseColumnNames=
"PREFERREDEQUIPMENTID"
baseTableName=
"CONTACT"
constraintName=
"DER1N_CONTACT__EQUIPMENT__PREF"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"EQUIPMENTID"
referencedTableName=
"EQUIPMENT"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-contact-12
2
-213"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-contact-12
3
-213"
>
<addForeignKeyConstraint
baseColumnNames=
"ORIGINATINGLEADID"
baseTableName=
"CONTACT"
constraintName=
"DER1N_CONTACT__LEAD__ORIGINATI"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"LEADID"
referencedTableName=
"LEAD"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-contact-12
2
-214"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-contact-12
3
-214"
>
<addForeignKeyConstraint
baseColumnNames=
"DEFAULTPRICELEVELID"
baseTableName=
"CONTACT"
constraintName=
"DER1N_CONTACT__PRICELEVEL__DEF"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"PRICELEVELID"
referencedTableName=
"PRICELEVEL"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-contact-12
2
-215"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-contact-12
3
-215"
>
<addForeignKeyConstraint
baseColumnNames=
"PREFERREDSERVICEID"
baseTableName=
"CONTACT"
constraintName=
"DER1N_CONTACT__SERVICE__PREFER"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"SERVICEID"
referencedTableName=
"SERVICE"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-contact-12
2
-216"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-contact-12
3
-216"
>
<addForeignKeyConstraint
baseColumnNames=
"SLAID"
baseTableName=
"CONTACT"
constraintName=
"DER1N_CONTACT__SLA__SLAID"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"SLAID"
referencedTableName=
"SLA"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-contact-12
2
-217"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-contact-12
3
-217"
>
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"CONTACT"
constraintName=
"DER1N_CONTACT__TRANSACTIONCURR"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
</changeSet>
<!--输出实体[TEAM]外键关系 -->
...
...
@@ -11292,28 +11292,28 @@
</changeSet>
<!--输出实体[METRIC]外键关系 -->
<!--输出实体[LEAD]外键关系 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
2
-306"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
3
-306"
>
<addForeignKeyConstraint
baseColumnNames=
"PARENTACCOUNTID"
baseTableName=
"LEAD"
constraintName=
"DER1N_LEAD__ACCOUNT__PARENTACC"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"ACCOUNTID"
referencedTableName=
"ACCOUNT"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
2
-307"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
3
-307"
>
<addForeignKeyConstraint
baseColumnNames=
"RELATEDOBJECTID"
baseTableName=
"LEAD"
constraintName=
"DER1N_LEAD__CAMPAIGNRESPONSE__"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"ACTIVITYID"
referencedTableName=
"CAMPAIGNRESPONSE"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
2
-308"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
3
-308"
>
<addForeignKeyConstraint
baseColumnNames=
"CAMPAIGNID"
baseTableName=
"LEAD"
constraintName=
"DER1N_LEAD__CAMPAIGN__CAMPAIGN"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"CAMPAIGNID"
referencedTableName=
"CAMPAIGN"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
2
-309"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
3
-309"
>
<addForeignKeyConstraint
baseColumnNames=
"PARENTCONTACTID"
baseTableName=
"LEAD"
constraintName=
"DER1N_LEAD__CONTACT__PARENTCON"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"CONTACTID"
referencedTableName=
"CONTACT"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
2
-310"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
3
-310"
>
<addForeignKeyConstraint
baseColumnNames=
"ORIGINATINGCASEID"
baseTableName=
"LEAD"
constraintName=
"DER1N_LEAD__INCIDENT__ORIGINAT"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"INCIDENTID"
referencedTableName=
"INCIDENT"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
2
-311"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
3
-311"
>
<addForeignKeyConstraint
baseColumnNames=
"QUALIFYINGOPPORTUNITYID"
baseTableName=
"LEAD"
constraintName=
"DER1N_LEAD__OPPORTUNITY__QUALI"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"OPPORTUNITYID"
referencedTableName=
"OPPORTUNITY"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
2
-312"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
3
-312"
>
<addForeignKeyConstraint
baseColumnNames=
"SLAID"
baseTableName=
"LEAD"
constraintName=
"DER1N_LEAD__SLA__SLAID"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"SLAID"
referencedTableName=
"SLA"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
2
-313"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-lead-3
3
-313"
>
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"LEAD"
constraintName=
"DER1N_LEAD__TRANSACTIONCURRENC"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
</changeSet>
<!--输出实体[TERRITORY]外键关系 -->
...
...
@@ -11328,10 +11328,10 @@
<addForeignKeyConstraint
baseColumnNames=
"BASECURRENCYID"
baseTableName=
"ORGANIZATION"
constraintName=
"DER1N_ORGANIZATION__TRANSACTIO"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
</changeSet>
<!--输出实体[CAMPAIGN]外键关系 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-campaign-10
4
-317"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-campaign-10
5
-317"
>
<addForeignKeyConstraint
baseColumnNames=
"PRICELISTID"
baseTableName=
"CAMPAIGN"
constraintName=
"DER1N_CAMPAIGN__PRICELEVEL__PR"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"PRICELEVELID"
referencedTableName=
"PRICELEVEL"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-campaign-10
4
-318"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-campaign-10
5
-318"
>
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"CAMPAIGN"
constraintName=
"DER1N_CAMPAIGN__TRANSACTIONCUR"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
</changeSet>
<!--输出实体[BOOKABLERESCHARACTERISTIC]外键关系 -->
...
...
businesscentral-core/src/main/resources/mapper/marketing/listcontact/ListContactMapper.xml
浏览文件 @
ccc68305
...
...
@@ -5,7 +5,7 @@
<!--该方法用于重写mybatis中selectById方法,以实现查询逻辑属性-->
<select
id=
"selectById"
resultMap=
"ListContactResultMap"
databaseId=
"mysql"
>
<![CDATA[select t1.* from (SELECT t1.`CREATEDATE`, t1.`CREATEMAN`, t1
.`ENTITY2ID`, t1.`ENTITY2NAME`, t1.`ENTITYID`, t1.`ENTITYNAME`, t1.`RELATIONSHIPSID`, t1.`RELATIONSHIPSNAME`, t1.`RELATIONSHIPSTYPE`, t1.`UPDATEDATE`, t1.`UPDATEMAN` FROM `RELATIONSHIPS` t1
) t1 where relationshipsid=#{id}]]>
<![CDATA[select t1.* from (SELECT t1.`CREATEDATE`, t1.`CREATEMAN`, t1
1.`EMAILADDRESS1`, t1.`ENTITY2ID`, t1.`ENTITY2NAME`, t1.`ENTITYID`, t1.`ENTITYNAME`, t2.`PARENTCUSTOMERID`, t1.`RELATIONSHIPSID`, t1.`RELATIONSHIPSNAME`, t1.`RELATIONSHIPSTYPE`, t11.`STATECODE`, t11.`TELEPHONE1`, t1.`UPDATEDATE`, t1.`UPDATEMAN` FROM `RELATIONSHIPS` t1 LEFT JOIN CONTACT t11 ON t1.ENTITY2ID = t11.CONTACTID
) t1 where relationshipsid=#{id}]]>
</select>
<!--通过mybatis将查询结果注入到entity中,通过配置autoMapping="true"由mybatis自动处理映射关系 -->
...
...
@@ -47,13 +47,13 @@
<!--数据查询[Default]-->
<sql
id=
"Default"
databaseId=
"mysql"
>
<![CDATA[ SELECT t1.`CREATEDATE`, t1.`CREATEMAN`, t1
.`ENTITY2ID`, t1.`ENTITY2NAME`, t1.`ENTITYID`, t1.`ENTITYNAME`, t1.`RELATIONSHIPSID`, t1.`RELATIONSHIPSNAME`, t1.`RELATIONSHIPSTYPE`, t1.`UPDATEDATE`, t1.`UPDATEMAN` FROM `RELATIONSHIPS` t1
<![CDATA[ SELECT t1.`CREATEDATE`, t1.`CREATEMAN`, t1
1.`EMAILADDRESS1`, t1.`ENTITY2ID`, t1.`ENTITY2NAME`, t1.`ENTITYID`, t1.`ENTITYNAME`, t2.`PARENTCUSTOMERID`, t1.`RELATIONSHIPSID`, t1.`RELATIONSHIPSNAME`, t1.`RELATIONSHIPSTYPE`, t11.`STATECODE`, t11.`TELEPHONE1`, t1.`UPDATEDATE`, t1.`UPDATEMAN` FROM `RELATIONSHIPS` t1 LEFT JOIN CONTACT t11 ON t1.ENTITY2ID = t11.CONTACTID
WHERE ( t1.`RELATIONSHIPSTYPE` = 'LISTCONTACT' )
]]>
</sql>
<!--数据查询[View]-->
<sql
id=
"View"
databaseId=
"mysql"
>
<![CDATA[ SELECT t1.`CREATEDATE`, t1.`CREATEMAN`, t1
.`ENTITY2ID`, t1.`ENTITY2NAME`, t1.`ENTITYID`, t1.`ENTITYNAME`, t1.`RELATIONSHIPSID`, t1.`RELATIONSHIPSNAME`, t1.`RELATIONSHIPSTYPE`, t1.`UPDATEDATE`, t1.`UPDATEMAN` FROM `RELATIONSHIPS` t1
<![CDATA[ SELECT t1.`CREATEDATE`, t1.`CREATEMAN`, t1
1.`EMAILADDRESS1`, t1.`ENTITY2ID`, t1.`ENTITY2NAME`, t1.`ENTITYID`, t1.`ENTITYNAME`, t2.`PARENTCUSTOMERID`, t1.`RELATIONSHIPSID`, t1.`RELATIONSHIPSNAME`, t1.`RELATIONSHIPSTYPE`, t11.`STATECODE`, t11.`TELEPHONE1`, t1.`UPDATEDATE`, t1.`UPDATEMAN` FROM `RELATIONSHIPS` t1 LEFT JOIN CONTACT t11 ON t1.ENTITY2ID = t11.CONTACTID
WHERE ( t1.`RELATIONSHIPSTYPE` = 'LISTCONTACT' )
]]>
</sql>
...
...
businesscentral-core/src/main/resources/mapper/marketing/listlead/ListLeadMapper.xml
浏览文件 @
ccc68305
...
...
@@ -5,7 +5,7 @@
<!--该方法用于重写mybatis中selectById方法,以实现查询逻辑属性-->
<select
id=
"selectById"
resultMap=
"ListLeadResultMap"
databaseId=
"mysql"
>
<![CDATA[select t1.* from (SELECT t1.`CREATEDATE`, t1.`CREATEMAN`, t1.`ENTITY2ID`, t1.`ENTITY2NAME`, t1.`ENTITYID`, t1.`ENTITYNAME`, t1
.`RELATIONSHIPSID`, t1.`RELATIONSHIPSNAME`, t1.`RELATIONSHIPSTYPE`, t1.`UPDATEDATE`, t1.`UPDATEMAN` FROM `RELATIONSHIPS` t1
) t1 where relationshipsid=#{id}]]>
<![CDATA[select t1.* from (SELECT t1.`CREATEDATE`, t1.`CREATEMAN`, t1.`ENTITY2ID`, t1.`ENTITY2NAME`, t1.`ENTITYID`, t1.`ENTITYNAME`, t1
1.`OWNERID`, t11.`OWNERIDYOMINAME`, t1.`RELATIONSHIPSID`, t1.`RELATIONSHIPSNAME`, t1.`RELATIONSHIPSTYPE`, t11.`STATUSCODE`, t11.`SUBJECT`, t1.`UPDATEDATE`, t1.`UPDATEMAN` FROM `RELATIONSHIPS` t1 LEFT JOIN LEAD t11 ON t1.ENTITY2ID = t11.LEADID
) t1 where relationshipsid=#{id}]]>
</select>
<!--通过mybatis将查询结果注入到entity中,通过配置autoMapping="true"由mybatis自动处理映射关系 -->
...
...
@@ -47,13 +47,13 @@
<!--数据查询[Default]-->
<sql
id=
"Default"
databaseId=
"mysql"
>
<![CDATA[ SELECT t1.`CREATEDATE`, t1.`CREATEMAN`, t1.`ENTITY2ID`, t1.`ENTITY2NAME`, t1.`ENTITYID`, t1.`ENTITYNAME`, t1
.`RELATIONSHIPSID`, t1.`RELATIONSHIPSNAME`, t1.`RELATIONSHIPSTYPE`, t1.`UPDATEDATE`, t1.`UPDATEMAN` FROM `RELATIONSHIPS` t1
<![CDATA[ SELECT t1.`CREATEDATE`, t1.`CREATEMAN`, t1.`ENTITY2ID`, t1.`ENTITY2NAME`, t1.`ENTITYID`, t1.`ENTITYNAME`, t1
1.`OWNERID`, t11.`OWNERIDYOMINAME`, t1.`RELATIONSHIPSID`, t1.`RELATIONSHIPSNAME`, t1.`RELATIONSHIPSTYPE`, t11.`STATUSCODE`, t11.`SUBJECT`, t1.`UPDATEDATE`, t1.`UPDATEMAN` FROM `RELATIONSHIPS` t1 LEFT JOIN LEAD t11 ON t1.ENTITY2ID = t11.LEADID
WHERE ( t1.`RELATIONSHIPSTYPE` = 'ENTITY' )
]]>
</sql>
<!--数据查询[View]-->
<sql
id=
"View"
databaseId=
"mysql"
>
<![CDATA[ SELECT t1.`CREATEDATE`, t1.`CREATEMAN`, t1.`ENTITY2ID`, t1.`ENTITY2NAME`, t1.`ENTITYID`, t1.`ENTITYNAME`, t1
.`RELATIONSHIPSID`, t1.`RELATIONSHIPSNAME`, t1.`RELATIONSHIPSTYPE`, t1.`UPDATEDATE`, t1.`UPDATEMAN` FROM `RELATIONSHIPS` t1
<![CDATA[ SELECT t1.`CREATEDATE`, t1.`CREATEMAN`, t1.`ENTITY2ID`, t1.`ENTITY2NAME`, t1.`ENTITYID`, t1.`ENTITYNAME`, t1
1.`OWNERID`, t11.`OWNERIDYOMINAME`, t1.`RELATIONSHIPSID`, t1.`RELATIONSHIPSNAME`, t1.`RELATIONSHIPSTYPE`, t11.`STATUSCODE`, t11.`SUBJECT`, t1.`UPDATEDATE`, t1.`UPDATEMAN` FROM `RELATIONSHIPS` t1 LEFT JOIN LEAD t11 ON t1.ENTITY2ID = t11.LEADID
WHERE ( t1.`RELATIONSHIPSTYPE` = 'LISTLEAD' )
]]>
</sql>
...
...
businesscentral-provider/businesscentral-provider-centralapi/src/main/java/cn/ibizlab/businesscentral/centralapi/dto/ListContactDTO.java
浏览文件 @
ccc68305
...
...
@@ -113,6 +113,38 @@ public class ListContactDTO extends DTOBase implements Serializable {
@JsonProperty
(
"entity2name"
)
private
String
entity2name
;
/**
* 属性 [EMAILADDRESS1]
*
*/
@JSONField
(
name
=
"emailaddress1"
)
@JsonProperty
(
"emailaddress1"
)
private
String
emailaddress1
;
/**
* 属性 [PARENTCUSTOMERID]
*
*/
@JSONField
(
name
=
"parentcustomerid"
)
@JsonProperty
(
"parentcustomerid"
)
private
String
parentcustomerid
;
/**
* 属性 [TELEPHONE1]
*
*/
@JSONField
(
name
=
"telephone1"
)
@JsonProperty
(
"telephone1"
)
private
String
telephone1
;
/**
* 属性 [STATECODE]
*
*/
@JSONField
(
name
=
"statecode"
)
@JsonProperty
(
"statecode"
)
private
Integer
statecode
;
/**
* 设置 [RELATIONSHIPSNAME]
...
...
@@ -162,6 +194,14 @@ public class ListContactDTO extends DTOBase implements Serializable {
this
.
modify
(
"entity2name"
,
entity2name
);
}
/**
* 设置 [PARENTCUSTOMERID]
*/
public
void
setParentcustomerid
(
String
parentcustomerid
){
this
.
parentcustomerid
=
parentcustomerid
;
this
.
modify
(
"parentcustomerid"
,
parentcustomerid
);
}
}
businesscentral-provider/businesscentral-provider-centralapi/src/main/java/cn/ibizlab/businesscentral/centralapi/dto/ListLeadDTO.java
浏览文件 @
ccc68305
...
...
@@ -113,6 +113,38 @@ public class ListLeadDTO extends DTOBase implements Serializable {
@JsonProperty
(
"entity2name"
)
private
String
entity2name
;
/**
* 属性 [SUBJECT]
*
*/
@JSONField
(
name
=
"subject"
)
@JsonProperty
(
"subject"
)
private
String
subject
;
/**
* 属性 [OWNERIDYOMINAME]
*
*/
@JSONField
(
name
=
"owneridyominame"
)
@JsonProperty
(
"owneridyominame"
)
private
String
owneridyominame
;
/**
* 属性 [OWNERID]
*
*/
@JSONField
(
name
=
"ownerid"
)
@JsonProperty
(
"ownerid"
)
private
String
ownerid
;
/**
* 属性 [STATUSCODE]
*
*/
@JSONField
(
name
=
"statuscode"
)
@JsonProperty
(
"statuscode"
)
private
Integer
statuscode
;
/**
* 设置 [RELATIONSHIPSNAME]
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录