Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
D
doc
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Valentin Skripnikov
doc
Commits
1ca1b9e2
Commit
1ca1b9e2
authored
Feb 10, 2017
by
Olessya Khussainova
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
user ,odules
parent
1e817915
Changes
6
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
160 additions
and
68 deletions
+160
-68
.gitattributes
.gitattributes
+2
-0
crm/methodologist-manual/resources/img/custom_dyn_table.png
crm/methodologist-manual/resources/img/custom_dyn_table.png
+0
-0
crm/methodologist-manual/src/crm_consist/create_document.md
crm/methodologist-manual/src/crm_consist/create_document.md
+24
-26
crm/methodologist-manual/src/crm_consist/user_components.md
crm/methodologist-manual/src/crm_consist/user_components.md
+3
-0
crm/methodologist-manual/src/crm_consist/user_components_dyn_table_themes.md
...anual/src/crm_consist/user_components_dyn_table_themes.md
+41
-0
crm/methodologist-manual/src/crm_consist/user_modules.md
crm/methodologist-manual/src/crm_consist/user_modules.md
+90
-42
No files found.
.gitattributes
View file @
1ca1b9e2
...
@@ -42,6 +42,7 @@ crm/methodologist-manual/resources/img/canban.png -text
...
@@ -42,6 +42,7 @@ crm/methodologist-manual/resources/img/canban.png -text
crm/methodologist-manual/resources/img/canban_2.png -text
crm/methodologist-manual/resources/img/canban_2.png -text
crm/methodologist-manual/resources/img/connections.png -text
crm/methodologist-manual/resources/img/connections.png -text
crm/methodologist-manual/resources/img/crm.png -text
crm/methodologist-manual/resources/img/crm.png -text
crm/methodologist-manual/resources/img/custom_dyn_table.png -text
crm/methodologist-manual/resources/img/dfd.png -text
crm/methodologist-manual/resources/img/dfd.png -text
crm/methodologist-manual/resources/img/eventChooser.png -text
crm/methodologist-manual/resources/img/eventChooser.png -text
crm/methodologist-manual/resources/img/funnel_1.png -text
crm/methodologist-manual/resources/img/funnel_1.png -text
...
@@ -71,6 +72,7 @@ crm/methodologist-manual/src/crm_consist/user_components.md -text
...
@@ -71,6 +72,7 @@ crm/methodologist-manual/src/crm_consist/user_components.md -text
crm/methodologist-manual/src/crm_consist/user_components_button.md -text
crm/methodologist-manual/src/crm_consist/user_components_button.md -text
crm/methodologist-manual/src/crm_consist/user_components_connection.md -text
crm/methodologist-manual/src/crm_consist/user_components_connection.md -text
crm/methodologist-manual/src/crm_consist/user_components_dyn_table.md -text
crm/methodologist-manual/src/crm_consist/user_components_dyn_table.md -text
crm/methodologist-manual/src/crm_consist/user_components_dyn_table_themes.md -text
crm/methodologist-manual/src/crm_consist/user_components_registryChooser.md -text svneol=unset#text/plain
crm/methodologist-manual/src/crm_consist/user_components_registryChooser.md -text svneol=unset#text/plain
crm/methodologist-manual/src/crm_consist/user_modules.md -text
crm/methodologist-manual/src/crm_consist/user_modules.md -text
crm/methodologist-manual/src/crm_install.md -text
crm/methodologist-manual/src/crm_install.md -text
...
...
crm/methodologist-manual/resources/img/custom_dyn_table.png
0 → 100644
View file @
1ca1b9e2
56.6 KB
crm/methodologist-manual/src/crm_consist/create_document.md
View file @
1ca1b9e2
This diff is collapsed.
Click to expand it.
crm/methodologist-manual/src/crm_consist/user_components.md
View file @
1ca1b9e2
...
@@ -11,7 +11,10 @@
...
@@ -11,7 +11,10 @@
-
[
Пользовательский компонент связи из интерфейса
](
#user_components.connection
)
-
[
Пользовательский компонент связи из интерфейса
](
#user_components.connection
)
-
[
Динамическая таблица плана продаж
](
#user_components.dyn_table_themes
)
<
#include
"
crm_consist
/
user_components_registryChooser
.
md
"
>
<
#include
"
crm_consist
/
user_components_registryChooser
.
md
"
>
<
#include
"
crm_consist
/
user_components_button
.
md
"
>
<
#include
"
crm_consist
/
user_components_button
.
md
"
>
<
#include
"
crm_consist
/
user_components_dyn_table
.
md
"
>
<
#include
"
crm_consist
/
user_components_dyn_table
.
md
"
>
<
#include
"
crm_consist
/
user_components_connection
.
md
"
>
<
#include
"
crm_consist
/
user_components_connection
.
md
"
>
<
#include
"
crm_consist
/
user_components_dyn_table_themes
.
md
"
>
crm/methodologist-manual/src/crm_consist/user_components_dyn_table_themes.md
0 → 100644
View file @
1ca1b9e2
#### Динамическая таблица плана продаж {#user_components.dyn_table_themes}
Модифицированный компонент представляет собой динамическую таблицу формы
[
Сделка
](
#formDeal
)
.
Имеется возможность удалить столбец, содержащий поля "Тема сотрудничества"
(crm_form_deal_main2_theme_cN) и "План продаж" (crm_form_deal_main2_theme_pvalue_cN)
по нажатию на кнопку "X" над соответствующим столбцом. При сохранении документа
с удаленным столбцом соответствующий документ индекса
[
r-crm_registry_deals_plans_custom
](
#dashboards_productivity
)
будет удален.
Имеется возможность добавить столбец, содержащий поля "Тема сотрудничества"
(crm_form_deal_main2_theme_cN) и "План продаж" (crm_form_deal_main2_theme_pvalue_cN)
по нажатию на лейбл "+ Добавить столбец". Идентификаторы компонентов нового
столбца:
*
"Тема сотрудничества" - crm_form_deal_main2_theme_c%N+1%
*
"План продаж" - crm_form_deal_main2_theme_pvalue_c%N+1%
где %N+1% - наибольший порядковый номер компонентов текущего документа + 1.
При сохранении документа с новым столбцом создается новый документ индекса
[
r-crm_registry_deals_plans_custom
](
#dashboards_productivity
)
.
В режиме чтения кнопки удаления ("Х") и добавления ("+ Добавить столбец")
столбцов не отображаются.
При создании новой записи реестра "План продаж" таблица имеет 14 столбцов,
содержащих поля "Тема сотрудничества" (crm_form_deal_main2_theme_cN) и
"План продаж" (crm_form_deal_main2_theme_pvalue_cN).
Максимально допустимое количество столбцов, содержащих поля "Тема сотрудничества"
(crm_form_deal_main2_theme_cN) и "План продаж" (crm_form_deal_main2_theme_pvalue_cN)
в документе по форме - 50. Если таблица имеет 50 столбцов, содержащих поля
"Тема сотрудничества" (crm_form_deal_main2_theme_cN) и "План продаж"
(crm_form_deal_main2_theme_pvalue_cN), по нажатию на лейбл "+ Добавить столбец"
отобразится сообщение об ошибке:
`Превышено максимальное количество столбцов`
![
Модифицированная динамическая таблица
](
resources/img/custom_dyn_table.png
)
crm/methodologist-manual/src/crm_consist/user_modules.md
View file @
1ca1b9e2
...
@@ -320,7 +320,7 @@ function setMode(radioButton) {
...
@@ -320,7 +320,7 @@ function setMode(radioButton) {
}
}
view.initDnd = redipsInit
;
view.initDnd = redipsInit
```
```
...
@@ -569,6 +569,7 @@ HTML код:
...
@@ -569,6 +569,7 @@ HTML код:
```
xml
```
xml
<style>
<style>
.btn_boot-group-lg > .btn_boot, .btn_boot-lg {
.btn_boot-group-lg > .btn_boot, .btn_boot-lg {
...
@@ -857,14 +858,15 @@ a.btn_boot.disabled, fieldset[disabled] a.btn_boot {
...
@@ -857,14 +858,15 @@ a.btn_boot.disabled, fieldset[disabled] a.btn_boot {
}
}
</style>
</style>
<div
class=
"btn_boot-group"
style=
"
<div
class=
"btn_boot-group"
style=
"
width:
190
px;
width:
275
px;
margin: 0 auto;
margin: 0 auto;
height: 26px;
height: 26px;
align-self: center;
align-self: center;
text-align: center;
text-align: center;
"
innerId=
"group"
>
"
innerId=
"group"
>
<button
type=
"button"
class=
"btn_boot btn_boot-default"
innerId=
"funnel"
>
Воронка
</button>
<button
type=
"button"
class=
"btn_boot btn_boot-default"
innerId=
"funnel"
>
Воронка
</button>
<button
type=
"button"
class=
"btn_boot btn_boot-default active"
innerId=
"canban"
>
Канбан
</button>
<button
type=
"button"
class=
"btn_boot btn_boot-default active"
innerId=
"canban"
>
Поток
</button>
<button
type=
"button"
class=
"btn_boot btn_boot-default "
innerId=
"dashboard"
>
Аналитика
</button>
</div>
</div>
```
```
...
@@ -880,18 +882,24 @@ $(".btn_boot-group > .btn_boot").click(function(){
...
@@ -880,18 +882,24 @@ $(".btn_boot-group > .btn_boot").click(function(){
var funnel = jQuery(view.container[0]).children("[innerId='group']").children("[innerId='funnel']");
var funnel = jQuery(view.container[0]).children("[innerId='group']").children("[innerId='funnel']");
funnel.text(i18n.tr('Воронка'));
funnel.text(i18n.tr('Воронка'));
var canban = jQuery(view.container[0]).children("[innerId='group']").children("[innerId='canban']");
var canban = jQuery(view.container[0]).children("[innerId='group']").children("[innerId='canban']");
canban.text(i18n.tr('Канбан'));
canban.text(i18n.tr('Поток'));
var dashboard = jQuery(view.container[0]).children("[innerId='group']").children("[innerId='dashboard']");
dashboard.text(i18n.tr('Аналитика'));
var funnel_cmp = view.playerView.getViewWithId('crm_form_funnel_funnel');
var funnel_cmp = view.playerView.getViewWithId('crm_form_funnel_funnel');
var canban_cmp = view.playerView.getViewWithId('crm_form_funnel_canban');
var canban_cmp = view.playerView.getViewWithId('crm_form_funnel_canban');
var bottom_cmp = view.playerView.getViewWithId('crm_form_funnel_bottom_sum');
var bottom_cmp = view.playerView.getViewWithId('crm_form_funnel_bottom_sum');
var dashboard_cmp = view.playerView.getViewWithId('crm_form_funnel_dashboard');
var filterTable = view.playerView.getViewWithId('crm_form_funnel_filter_panel');
model.playerModel.funnelDrawn = false;
model.playerModel.funnelDrawn = false;
model.playerModel.canbanDrawn = false;
model.playerModel.canbanDrawn = false;
funnel.click(function(){
funnel.click(function(){
$('body').css('overflow', 'auto');
$('body').css('overflow', 'auto');
funnel_cmp.setVisible(true);
funnel_cmp.setVisible(true);
canban_cmp.setVisible(false);
bottom_cmp.setVisible(true);
bottom_cmp.setVisible(true);
canban_cmp.setVisible(false);
dashboard_cmp.setVisible(false);
model.playerModel.isFunnel = true;
model.playerModel.isFunnel = true;
filterTable.setVisible(true);
if (!model.playerModel.funnelDrawn) {
if (!model.playerModel.funnelDrawn) {
model.playerModel.redraw();
model.playerModel.redraw();
}
}
...
@@ -901,11 +909,22 @@ canban.click(function(){
...
@@ -901,11 +909,22 @@ canban.click(function(){
funnel_cmp.setVisible(false);
funnel_cmp.setVisible(false);
canban_cmp.setVisible(true);
canban_cmp.setVisible(true);
bottom_cmp.setVisible(false);
bottom_cmp.setVisible(false);
dashboard_cmp.setVisible(false);
model.playerModel.isFunnel = false;
model.playerModel.isFunnel = false;
filterTable.setVisible(true);
if (!model.playerModel.canbanDrawn) {
if (!model.playerModel.canbanDrawn) {
model.playerModel.redraw();
model.playerModel.redraw();
}
}
});
});
dashboard.click(function(){
$('body').css('overflow', 'auto');
funnel_cmp.setVisible(false);
bottom_cmp.setVisible(false);
canban_cmp.setVisible(false);
dashboard_cmp.setVisible(true);
dashboard_cmp.calcDim();
filterTable.setVisible(false);
});
```
```
...
@@ -924,6 +943,7 @@ HTML код:
...
@@ -924,6 +943,7 @@ HTML код:
```
xml
```
xml
<style>
<style>
.btn_boot-group-lg > .btn_boot, .btn_boot-lg {
.btn_boot-group-lg > .btn_boot, .btn_boot-lg {
...
@@ -1469,6 +1489,9 @@ var onItemClick = function () {
...
@@ -1469,6 +1489,9 @@ var onItemClick = function () {
});
});
button.click(function () {
button.click(function () {
var data = getData();
var data = getData();
if(!data){
return;
}
saveTask(data, function (result) {
saveTask(data, function (result) {
notShowed.push({
notShowed.push({
taskID: JSON.parse(result).taskID,
taskID: JSON.parse(result).taskID,
...
@@ -1491,9 +1514,29 @@ function getData() {
...
@@ -1491,9 +1514,29 @@ function getData() {
task = '';
task = '';
}
}
var start = portal.player.model.getModelWithId('start').getValue();
var start = portal.player.model.getModelWithId('start').getValue();
var lead = portal.player.model.getModelWithId('lead');
var lead = portal.player.model.getModelWithId('lead');
var leadId = lead.getValue();
var leadId = '';
var leadName = lead.getTextValue();
var leadName = '';
if (lead) {
leadId = lead.getValue();
leadName = lead.getTextValue();
}
var deal = portal.player.model.getModelWithId('deal');
var dealId = '';
var dealName = '';
if (deal) {
dealId = deal.getValue();
dealName = deal.getTextValue();
}
if(!dealId
&&
!leadId){
portal.player.view.getViewWithId('lead').markInvalid();
portal.player.view.getViewWithId('deal').markInvalid();
AS.SERVICES.showErrorMessage(i18n.tr("Выберите лида или сделку"));
return;
}
var breakChar = String.fromCharCode(13);
var breakChar = String.fromCharCode(13);
...
@@ -1501,6 +1544,8 @@ function getData() {
...
@@ -1501,6 +1544,8 @@ function getData() {
dict + breakChar +
dict + breakChar +
leadName + breakChar +
leadName + breakChar +
'#submodule=common
&
action=open_document
&
document_identifier=' + leadId + breakChar +
'#submodule=common
&
action=open_document
&
document_identifier=' + leadId + breakChar +
dealName + breakChar +
'#submodule=common
&
action=open_document
&
document_identifier=' + dealId + breakChar +
breakChar +
breakChar +
task;
task;
...
@@ -1535,16 +1580,13 @@ var portal = {
...
@@ -1535,16 +1580,13 @@ var portal = {
portal.clearPlayer();
portal.clearPlayer();
portal.player = AS.FORMS.createPlayer();
portal.player = AS.FORMS.createPlayer();
portal.player.model.on(AS.FORMS.EVENT_TYPE.valueChange, function (event, model, view) {
portal.player.model.on(AS.FORMS.EVENT_TYPE.valueChange, function (event, model, view) {
var task = portal.player.model.getModelWithId('comment');
var start = portal.player.model.getModelWithId('start');
var start = portal.player.model.getModelWithId('start');
var lead = portal.player.model.getModelWithId('lead');
if (!start) {
if (!task || !start || !lead) {
return;
return;
}
}
var startValue = start.getValue();
var startValue = start.getValue();
var leadValue = lead.getValue();
if (startValue) {
if (startValue
&&
leadValue) {
jQuery("#save_button_task").removeAttr('disabled', 'disabled');
jQuery("#save_button_task").removeAttr('disabled', 'disabled');
} else {
} else {
jQuery("#save_button_task").attr('disabled', 'disabled');
jQuery("#save_button_task").attr('disabled', 'disabled');
...
@@ -1572,10 +1614,6 @@ var portal = {
...
@@ -1572,10 +1614,6 @@ var portal = {
portal.player.view.appendTo($('#form_player_div'));
portal.player.view.appendTo($('#form_player_div'));
//jQuery('.asf-datePopup').datepicker("option", "minDate", new Date(2016, 12, 21));
}
}
};
};
...
@@ -1665,16 +1703,22 @@ function createNotification(taskObject, taskID) {
...
@@ -1665,16 +1703,22 @@ function createNotification(taskObject, taskID) {
var textInfo = jQuery('
<div></div>
', {class: 'text_info'});
var textInfo = jQuery('
<div></div>
', {class: 'text_info'});
var dictValue = jQuery('
<div
title=
"' + _.escape(taskObject[1]) + '"
class=
"dict_block"
>
' + taskObject[1] + '
</div>
');
var dictValue = jQuery('
<div
title=
"' + _.escape(taskObject[1]) + '"
class=
"dict_block"
>
' + taskObject[1] + '
</div>
');
textInfo.append(dictValue);
textInfo.append(dictValue);
var comment = jQuery('
<div
title=
"' + _.escape(taskObject[
5]) + '"
class=
"comment_block"
>
' + taskObject[5
] + '
</div>
');
var comment = jQuery('
<div
title=
"' + _.escape(taskObject[
7]) + '"
class=
"comment_block"
>
' + taskObject[7
] + '
</div>
');
textInfo.append(comment);
textInfo.append(comment);
infoBlock.append(textInfo);
infoBlock.append(textInfo);
var linkBlock = jQuery('
<div
class=
"link_block"
><a
title=
"' + _.escape(taskObject[2]) + '"
href=
"' + taskObject[3] + '"
>
' + taskObject[2] + '
</a></div>
');
var linkBlock = jQuery('
<div
class=
"link_block"
><a
title=
"' + _.escape(taskObject[2]) + '"
href=
"' + taskObject[3] + '"
>
' + taskObject[2] + '
</a></div>
');
var linkDealBlock = jQuery('
<div
class=
"link_block"
><a
title=
"' + _.escape(taskObject[4]) + '"
href=
"' + taskObject[5] + '"
>
' + taskObject[4] + '
</a></div>
');
var element = jQuery("
<div
class=
'notification'
></div>
");
var element = jQuery("
<div
class=
'notification'
></div>
");
element.append(infoBlock);
element.append(infoBlock);
if (taskObject[2]) {
element.append(linkBlock);
element.append(linkBlock);
}
if (taskObject[4]) {
element.append(linkDealBlock);
}
element.append(buttonBlock);
element.append(buttonBlock);
return element;
return element;
}
}
...
@@ -1747,7 +1791,7 @@ function clearAllNotifications() {
...
@@ -1747,7 +1791,7 @@ function clearAllNotifications() {
* Создана ли заметка через нужную форму
* Создана ли заметка через нужную форму
*/
*/
function isValidTask(taskObject) {
function isValidTask(taskObject) {
return taskObject[0] == 'Напоминание!'
&&
taskObject.length ==
6
;
return taskObject[0] == 'Напоминание!'
&&
taskObject.length ==
8
;
}
}
/**
/**
...
@@ -1771,8 +1815,11 @@ jQuery(document).ready(function () {
...
@@ -1771,8 +1815,11 @@ jQuery(document).ready(function () {
var notificationPanel = jQuery("
<div
class=
'notification-container'
></div>
");
var notificationPanel = jQuery("
<div
class=
'notification-container'
></div>
");
var showed = [];
var showed = [];
var notShowed = [];
var notShowed = [];
var loaded = false;
function addPanel() {
function addPanel() {
jQuery("body").append(notificationPanel)
if (!loaded) {
loaded = true;
jQuery("body").append(notificationPanel);
notificationPanel.show(function () {
notificationPanel.show(function () {
loadTasks(function (data) {
loadTasks(function (data) {
clearAllNotifications();
clearAllNotifications();
...
@@ -1797,6 +1844,7 @@ function addPanel() {
...
@@ -1797,6 +1844,7 @@ function addPanel() {
showNotify();
showNotify();
});
});
});
});
}
}
}
//Иконка колокольчика
//Иконка колокольчика
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment