Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
CDEK Development
cdek-warehouse
Commits
58b47f37
Commit
58b47f37
authored
8 years ago
by
Denis Zaykov
Browse files
Options
Download
Email Patches
Plain Diff
CDEK-981: Delivery and Return undelivered documents.
parent
f30ef37a
Changes
18
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
front/cdek_front/src/main/java/ru/cdek/web/mvc/WarehouseMVCController.java
+10
-0
...src/main/java/ru/cdek/web/mvc/WarehouseMVCController.java
front/cdek_front/src/main/java/ru/cdek/web/rest/SkedRestController.java
+56
-0
...nt/src/main/java/ru/cdek/web/rest/SkedRestController.java
front/cdek_front/src/main/resources/messages_en.properties
+8
-0
front/cdek_front/src/main/resources/messages_en.properties
front/cdek_front/src/main/resources/messages_ru.properties
+8
-0
front/cdek_front/src/main/resources/messages_ru.properties
front/cdek_front/src/main/resources/messages_zh.properties
+9
-0
front/cdek_front/src/main/resources/messages_zh.properties
front/cdek_front/src/main/webapp/WEB-INF/views/config.ftl
+2
-0
front/cdek_front/src/main/webapp/WEB-INF/views/config.ftl
front/cdek_front/src/main/webapp/WEB-INF/views/warehouse/add_delivery.ftl
+271
-0
.../src/main/webapp/WEB-INF/views/warehouse/add_delivery.ftl
front/cdek_front/src/main/webapp/WEB-INF/views/warehouse/add_return_undelivered.ftl
+271
-0
...webapp/WEB-INF/views/warehouse/add_return_undelivered.ftl
front/cdek_front/src/main/webapp/WEB-INF/views/warehouse/index.ftl
+2
-0
...k_front/src/main/webapp/WEB-INF/views/warehouse/index.ftl
front/cdek_front/src/main/webapp/WEB-INF/views/warehouse/warehouse.ftl
+158
-131
...ont/src/main/webapp/WEB-INF/views/warehouse/warehouse.ftl
front/cdek_front/src/main/webapp/commons/javascripts/cdek/service/sked-service.js
+6
-0
...n/webapp/commons/javascripts/cdek/service/sked-service.js
front/cdek_front/src/main/webapp/commons/stylesheets/main.css
+6
-3
...t/cdek_front/src/main/webapp/commons/stylesheets/main.css
front/cdek_front/src/main/webapp/warehouse-angular/application/add_delivery.js
+52
-0
...main/webapp/warehouse-angular/application/add_delivery.js
front/cdek_front/src/main/webapp/warehouse-angular/application/add_return_undelivered.js
+52
-0
...p/warehouse-angular/application/add_return_undelivered.js
front/cdek_front/src/main/webapp/warehouse-angular/application/route.js
+40
-0
...nt/src/main/webapp/warehouse-angular/application/route.js
front/cdek_front/src/main/webapp/warehouse-angular/application/warehouse.js
+9
-1
...rc/main/webapp/warehouse-angular/application/warehouse.js
warehouse-common/warehouse-api/src/main/java/com/cdek/transport/model/document/DocumentType.java
+4
-1
.../java/com/cdek/transport/model/document/DocumentType.java
warehouse-common/warehouse-services/src/main/java/com/cdek/warehouse/services/impl/WarehouseServiceImpl.java
+24
-0
...om/cdek/warehouse/services/impl/WarehouseServiceImpl.java
with
988 additions
and
136 deletions
+988
-136
front/cdek_front/src/main/java/ru/cdek/web/mvc/WarehouseMVCController.java
View file @
58b47f37
...
...
@@ -38,6 +38,16 @@ public class WarehouseMVCController extends BaseMVCController{
return
"/warehouse/add_acceptance"
;
}
@RequestMapping
(
value
=
"/add_return_undelivered"
,
method
=
RequestMethod
.
GET
)
public
String
add_return_undelivered
(
Locale
locale
,
@ModelAttribute
(
"model"
)
ModelMap
model
)
{
return
"/warehouse/add_return_undelivered"
;
}
@RequestMapping
(
value
=
"/add_delivery"
,
method
=
RequestMethod
.
GET
)
public
String
add_delivery
(
Locale
locale
,
@ModelAttribute
(
"model"
)
ModelMap
model
)
{
return
"/warehouse/add_delivery"
;
}
@RequestMapping
(
value
=
"/warehouse"
,
method
=
RequestMethod
.
GET
)
public
String
warehouse
(
Locale
locale
,
@ModelAttribute
(
"model"
)
ModelMap
model
)
{
return
"/warehouse/warehouse"
;
...
...
This diff is collapsed.
Click to expand it.
front/cdek_front/src/main/java/ru/cdek/web/rest/SkedRestController.java
View file @
58b47f37
...
...
@@ -161,6 +161,62 @@ public class SkedRestController extends AbstractRestController {
return
sked
;
}
@RequestMapping
(
value
=
"newDelivery"
,
method
=
RequestMethod
.
POST
)
public
@ResponseBody
SkedTO
createDelivery
()
{
User
user
=
findUser
(
user
().
getCode
(),
user
().
getLang
());
Branch
branch
=
findBranch
(
user
.
getBranchCode
(),
user
.
getLang
());
SkedTO
sked
=
new
SkedTO
();
sked
.
setAimType
(
Sked
.
AIM_TO_CLIENT
);
sked
.
setOperType
(
Sked
.
TYPE_OUT
);
sked
.
setDocumentType
(
DocumentType
.
DELIVERY
);
sked
.
setBranch
(
branch
);
Employee
employee
=
findEmployee
(
user
.
getEmployeeCode
(),
user
().
getLang
());
sked
.
setEmployeeIn
(
employee
);
sked
.
setEmployeeOut
(
employee
);
sked
.
setDate
(
new
Date
());
WarehouseFilter
filter
=
new
WarehouseFilter
();
filter
.
setLang
(
user
().
getLang
());
filter
.
setIsIncome
(
true
);
filter
.
setUserCode
(
user
().
getCode
());
List
<
Warehouse
>
warehouses
=
warehouseClient
.
findWarehouses
(
filter
);
if
(
warehouses
.
size
()>
0
){
sked
.
setWarehouse
(
warehouses
.
get
(
0
));
}
return
sked
;
}
@RequestMapping
(
value
=
"newReturnUndelivered"
,
method
=
RequestMethod
.
POST
)
public
@ResponseBody
SkedTO
createReturnUndelivered
()
{
User
user
=
findUser
(
user
().
getCode
(),
user
().
getLang
());
Branch
branch
=
findBranch
(
user
.
getBranchCode
(),
user
.
getLang
());
SkedTO
sked
=
new
SkedTO
();
sked
.
setAimType
(
Sked
.
AIM_FROM_CLIENT
);
sked
.
setOperType
(
Sked
.
TYPE_IN
);
sked
.
setDocumentType
(
DocumentType
.
RETURN_UNDELIVERED
);
sked
.
setBranch
(
branch
);
Employee
employee
=
findEmployee
(
user
.
getEmployeeCode
(),
user
().
getLang
());
sked
.
setEmployeeIn
(
employee
);
sked
.
setEmployeeOut
(
employee
);
sked
.
setDate
(
new
Date
());
WarehouseFilter
filter
=
new
WarehouseFilter
();
filter
.
setLang
(
user
().
getLang
());
filter
.
setIsIncome
(
true
);
filter
.
setUserCode
(
user
().
getCode
());
List
<
Warehouse
>
warehouses
=
warehouseClient
.
findWarehouses
(
filter
);
if
(
warehouses
.
size
()>
0
){
sked
.
setWarehouse
(
warehouses
.
get
(
0
));
}
return
sked
;
}
@RequestMapping
(
value
=
"/newAcceptance"
,
method
=
RequestMethod
.
POST
)
public
@ResponseBody
SkedTO
createNewAcceptance
()
{
...
...
This diff is collapsed.
Click to expand it.
front/cdek_front/src/main/resources/messages_en.properties
View file @
58b47f37
...
...
@@ -654,6 +654,8 @@ warehouse.opis.closeCorrectionIncome.title = Close the Correction income documen
warehouse.opis.closeAcceptance.title
=
Close the Acceptance document
warehouse.opis.closeConsolidation.title
=
Close the Consolidation document
warehouse.opis.closePrimeIncome.title
=
Close the Prime income document
warehouse.opis.closeDelivery.title
=
Close the Delivery document
warehouse.opis.closeReturnUndelivered.title
=
Close the Return undelivered document
warehouse.opis.consolidation
=
Consolidation
warehouse.opis.dateClose
=
Closing date and time
warehouse.opis.dateCreate
=
Created date and time
...
...
@@ -685,6 +687,12 @@ warehouse.opis.correctionIncomeCreate.title= Create a new Correction Income docu
warehouse.opis.correctionIncomeUpdate.title
=
Update Correction Income document
warehouse.opis.consolidationCreate.title
=
Create a new Consolidation document
warehouse.opis.consolidationUpdate.title
=
Update Consolidation document
warehouse.opis.delivery
=
Delivery
warehouse.opis.deliveryCreate.title
=
Create a new Delivery document
warehouse.opis.deliveryUpdate.title
=
Update Delivery document
warehouse.opis.returnUndelivered
=
Return undelivered
warehouse.opis.returnUndeliveredCreate.title
=
Create a new Return undelivered document
warehouse.opis.returnUndeliveredUpdate.title
=
Update Return undelivered document
warehouse.opis.subdivisionIn
=
To
warehouse.opis.subdivisionOut
=
From
warehouse.opis.sync.problem
=
Sync problem
...
...
This diff is collapsed.
Click to expand it.
front/cdek_front/src/main/resources/messages_ru.properties
View file @
58b47f37
...
...
@@ -653,6 +653,8 @@ warehouse.opis.closeCorrectionIncome.title = \u0417\u0430\u043A\u0440\u044B\u044
warehouse.opis.closeAcceptance.title
=
\u0417\u0430\u
043A
\u0440\u
044B
\u0442\u
044C
\u0434\u
043E
\u
043A
\u0443\u
043C
\u0435\u
043D
\u0442
"
\u
041F
\u0440\u0438\u0435\u
043C
\u
043A
\u0430
"
warehouse.opis.closeConsolidation.title
=
\u0417\u0430\u
043A
\u0440\u
044B
\u0442\u
044C
\u0434\u
043E
\u
043A
\u0443\u
043C
\u0435\u
043D
\u0442
"
\u
041A
\u
043E
\u
043D
\u0441\u
043E
\u
043B
\u0438\u0434\u0430\u0446\u0438\u
044F"
warehouse.opis.closePrimeIncome.title
=
\u0417\u0430\u
043A
\u0440\u
044B
\u0442\u
044C
\u0434\u
043E
\u
043A
\u0443\u
043C
\u0435\u
043D
\u0442
"
\u
041F
\u0435\u0440\u0432\u0438\u0447\u
043D
\u
044B
\u0439
\u
041F
\u0440\u0438\u0445\u
043E
\u0434
"
warehouse.opis.closeDelivery.title
=
\u0417\u0430\u
043A
\u0440\u
044B
\u0442\u
044C
\u0434\u
043E
\u
043A
\u0443\u
043C
\u0435\u
043D
\u0442
"
\u0412\u
044B
\u0434\u0430\u0447\u0430
\u
043D
\u0430
\u0434\u
043E
\u0441\u0442\u0430\u0432\u
043A
\u0443
"
warehouse.opis.closeReturnUndelivered.title
=
\u0417\u0430\u
043A
\u0440\u
044B
\u0442\u
044C
\u0434\u
043E
\u
043A
\u0443\u
043C
\u0435\u
043D
\u0442
"
\u0412\u
043E
\u0437\u0432\u0440\u0430\u0442
\u
043D
\u0435\u0434\u
043E
\u0441\u0442\u0430\u0432\u
043B
\u0435\u
043D
\u
043D
\u
043E
\u0433\u
043E"
warehouse.opis.consolidation
=
\u
041A
\u
043E
\u
043D
\u0441\u
043E
\u
043B
\u0438\u0434\u0430\u0446\u0438\u
044F
warehouse.opis.dateClose
=
\u0414\u0430\u0442\u0430
\u0438
\u0432\u0440\u0435\u
043C
\u
044F
\u0437\u0430\u
043A
\u0440\u
044B
\u0442\u0438\u
044F
warehouse.opis.dateCreate
=
\u0414\u0430\u0442\u0430
\u0438
\u0432\u0440\u0435\u
043C
\u
044F
\u0441\u
043E
\u0437\u0434\u0430\u
043D
\u0438\u
044F
...
...
@@ -684,6 +686,12 @@ warehouse.opis.correctionIncomeCreate.title= \u0421\u043E\u0437\u0434\u0430\u044
warehouse.opis.correctionIncomeUpdate.title
=
\u
041E
\u0431\u
043D
\u
043E
\u0432\u0438\u0442\u
044C
\u0434\u
043E
\u
043A
\u0443\u
043C
\u0435\u
043D
\u0442
"
\u
041F
\u0440\u0438\u0445\u
043E
\u0434
\u
041A
\u
043E
\u0440\u0440\u0435\u
043A
\u0446\u0438\u
044F"
warehouse.opis.consolidationCreate.title
=
\u0421\u
043E
\u0437\u0434\u0430\u0442\u
044C
\u0434\u
043E
\u
043A
\u0443\u
043C
\u0435\u
043D
\u0442
"
\u
041A
\u
043E
\u
043D
\u0441\u
043E
\u
043B
\u0438\u0434\u0430\u0446\u0438\u
044F"
warehouse.opis.consolidationUpdate.title
=
\u
041E
\u0431\u
043D
\u
043E
\u0432\u0438\u0442\u
044C
\u0434\u
043E
\u
043A
\u0443\u
043C
\u0435\u
043D
\u0442
"
\u
041A
\u
043E
\u
043D
\u0441\u
043E
\u
043B
\u0438\u0434\u0430\u0446\u0438\u
044F"
warehouse.opis.delivery
=
\u0412\u
044B
\u0434\u0430\u0447\u0430
\u
043D
\u0430
\u0434\u
043E
\u0441\u0442\u0430\u0432\u
043A
\u0443
warehouse.opis.deliveryCreate.title
=
\u0421\u
043E
\u0437\u0434\u0430\u0442\u
044C
\u0434\u
043E
\u
043A
\u0443\u
043C
\u0435\u
043D
\u0442
"
\u0412\u
044B
\u0434\u0430\u0447\u0430
\u
043D
\u0430
\u0434\u
043E
\u0441\u0442\u0430\u0432\u
043A
\u0443
"
warehouse.opis.deliveryUpdate.title
=
\u
041E
\u0431\u
043D
\u
043E
\u0432\u0438\u0442\u
044C
\u0434\u
043E
\u
043A
\u0443\u
043C
\u0435\u
043D
\u0442
"
\u0412\u
044B
\u0434\u0430\u0447\u0430
\u
043D
\u0430
\u0434\u
043E
\u0441\u0442\u0430\u0432\u
043A
\u0443
"
warehouse.opis.returnUndelivered
=
\u0412\u
043E
\u0437\u0432\u0440\u0430\u0442
\u
043D
\u0435\u0434\u
043E
\u0441\u0442\u0430\u0432\u
043B
\u0435\u
043D
\u
043D
\u
043E
\u0433\u
043E
warehouse.opis.returnUndeliveredCreate.title
=
\u0421\u
043E
\u0437\u0434\u0430\u0442\u
044C
\u0434\u
043E
\u
043A
\u0443\u
043C
\u0435\u
043D
\u0442
"
\u0412\u
043E
\u0437\u0432\u0440\u0430\u0442
\u
043D
\u0435\u0434\u
043E
\u0441\u0442\u0430\u0432\u
043B
\u0435\u
043D
\u
043D
\u
043E
\u0433\u
043E"
warehouse.opis.returnUndeliveredUpdate.title
=
\u
041E
\u0431\u
043D
\u
043E
\u0432\u0438\u0442\u
044C
\u0434\u
043E
\u
043A
\u0443\u
043C
\u0435\u
043D
\u0442
"
\u0412\u
043E
\u0437\u0432\u0440\u0430\u0442
\u
043D
\u0435\u0434\u
043E
\u0441\u0442\u0430\u0432\u
043B
\u0435\u
043D
\u
043D
\u
043E
\u0433\u
043E"
warehouse.opis.subdivisionIn
=
\u0412
\u
043F
\u
043E
\u0434\u0440\u0430\u0437\u0434\u0435\u
043B
\u0435\u
043D
\u0438\u0435
warehouse.opis.subdivisionOut
=
\u0418\u0437
\u
043F
\u
043E
\u0434\u0440\u0430\u0437\u0434\u0435\u
043B
\u0435\u
043D
\u0438\u
044F
warehouse.opis.sync.problem
=
\u
041F
\u0440\u
043E
\u0431\u
043B
\u0435\u
043C
\u0430
\u0441\u0438\u
043D
\u0445\u0440\u
043E
\u
043D
\u0438\u0437\u0430\u0446\u0438\u0438
...
...
This diff is collapsed.
Click to expand it.
front/cdek_front/src/main/resources/messages_zh.properties
View file @
58b47f37
...
...
@@ -634,6 +634,8 @@ warehouse.opis.close.title = \u9501\u5B9A\u6E05\u5355
warehouse.opis.closeAcceptance.title
=
\u
63A5
\u
8D27
\u
6E05
\u5355
warehouse.opis.closeConsolidation.title
=
\u
96C6
\u
8D27
\u
6E05
\u5355
warehouse.opis.closePrimeIncome.title
=
\u9996\u
6B21
\u
63A5
\u
8D27
\u
6E05
\u5355
warehouse.opis.closeDelivery.title
=
warehouse.opis.closeReturnUndelivered.title
=
warehouse.opis.consolidation
=
\u
96C6
\u
8D27
\u
6E05
\u5355
warehouse.opis.consolidationCreate.title
=
\u
65B0
\u
5EFA
\u
96C6
\u
8D27
\u
6E05
\u5355
warehouse.opis.consolidationUpdate.title
=
\u
66F4
\u
65B0
\u
96C6
\u
8D27
\u
6E05
\u5355
...
...
@@ -668,6 +670,13 @@ warehouse.opis.correctionShipment =
warehouse.opis.correctionIncome
=
warehouse.opis.correctionIncomeCreate.title
=
warehouse.opis.correctionIncomeUpdate.title
=
warehouse.opis.delivery
=
warehouse.opis.deliveryCreate.title
=
warehouse.opis.deliveryUpdate.title
=
warehouse.opis.returnUndelivered
=
warehouse.opis.returnUndeliveredCreate.title
=
warehouse.opis.returnUndeliveredUpdate.title
=
# c\u043A\u043B\u0430\u0434 - \u043E\u043F\u0438\u0441\u044C
warehouse.opis.title
=
\u
4ED3
\u
5E93
\u
4E1A
\u
52A1
\u
8BB0
\u
5F55
...
...
This diff is collapsed.
Click to expand it.
front/cdek_front/src/main/webapp/WEB-INF/views/config.ftl
View file @
58b47f37
...
...
@@ -53,6 +53,8 @@
"newCorrectionIncome": "../sked/newCorrectionIncome",
"newConsolidation": "../sked/newConsolidation",
"newAcceptance": "../sked/newAcceptance",
"newDelivery": "../sked/newDelivery",
"newReturnUndelivered": "../sked/newReturnUndelivered",
"load": "../sked/load/{{id}}",
"modify": {
"addSeal": "../seal/add",
...
...
This diff is collapsed.
Click to expand it.
front/cdek_front/src/main/webapp/WEB-INF/views/warehouse/add_delivery.ftl
0 → 100644
View file @
58b47f37
<#import "/spring.ftl" as spring />
<div class="fillV fillH" ng-controller="AddDeliveryCtrl">
<div class="container fillH wrapper-cdek ">
<div class="panel panel-default">
<div class="panel-heading">
<div class="panel-title" ng-if="sked.documentNumber">
<strong><@spring.message "warehouse.opis.deliveryUpdate.title" /> {{sked.documentNumber}}</strong>
</div>
<div class="panel-title" ng-if="!sked.documentNumber">
<strong><@spring.message "warehouse.opis.deliveryCreate.title" /></strong>
</div>
</div>
<div class="panel-body">
<h5><@spring.message "warehouse.opis.add.operType" />: <@spring.message "warehouse.opis.delivery" /></h5>
<div class="row">
<div class="col-xs-6">
<div class="row">
<div class="col-xs-8 ">
<div class="row">
<div style="height:22px">
</div>
</div>
<div class="row top5">
<div class="form-group">
<label class="control-label col-xs-5"><@spring.message "template.date" />:</label>
<div class="col-xs-6">
<div class="input-group" bootstrap-datetimepicker="{format: 'DD.MM.YYYY', showClose: true}">
<input placeholder="<@spring.message "format.date.default" />" id="from" type="text" class="form-control"
datetimepicker-api="skedDateApi"
ng-model="sked.date"><span
class="input-group-addon" ng-click="skedDateApi.toggle()"><i
class="glyphicon glyphicon-calendar"></i></span>
</div>
</div>
</div>
</div>
<div class="row top5">
<div class="form-group">
<label class="control-label col-xs-5"><@spring.message "warehouse.branch" />:</label>
<div
class="col-xs-7"
angucomplete-alt
placeholder=""
pause="0"
selected-object="setBranch"
initial-value="sked.branch"
remote-api-handler="catalogs.searchBranch"
title-field="name"
minlength="1"
input-class="form-control form-control-small"
match-class="highlight"
disable-input="true">
</div>
</div>
</div>
<div class="row top5">
<div class="form-group">
<label class="control-label col-xs-5"><@spring.message "warehouse.filter.warehouse" />:</label>
<div
class="col-xs-7"
angucomplete-alt
placeholder=""
pause="0"
selected-object="setWarehouse"
initial-value="sked.warehouse"
remote-api-handler="catalogs.searchWarehouse"
title-field="name"
minlength="1"
input-class="form-control form-control-small"
match-class="highlight"
disable-input="true">
</div>
</div>
</div>
<div class="row top5">
<div class="form-group">
<label class="control-label col-xs-5"><@spring.message "template.process" />:</label>
<div
class="col-xs-7"
angucomplete-alt
placeholder=""
pause="0"
selected-object="setEmployeeIn"
initial-value="sked.employeeIn"
remote-api-handler="searchEmployeeByBranch"
title-field="name"
minlength="1"
input-class="form-control form-control-small"
match-class="highlight"
disable-input="true"
>
</div>
</div>
</div>
<div class="row top5">
<div class="form-group">
<label class="control-label col-xs-5"><@spring.message "warehouse.opis.edit.passed" />:</label>
<div class="col-xs-7"
angucomplete-alt
placeholder=""
pause="0"
selected-object="setEmployeeOut"
initial-value="sked.employeeOut"
remote-api-handler="searchEmployeeByBranch"
title-field="name"
minlength="1"
input-class="form-control form-control-small"
match-class="highlight"
>
</div>
</div>
</div>
</div>
<div class="col-xs-4">
<div class="row">
<label class="col-xs-6"><@spring.message "warehouse.opis.add.numberSeals" /></label>
</div>
<div class="row">
<div class="col-xs-12">
<form class="form-inline">
<div class="form-group">
<input type="text" ng-pattern="/([1-9]){1}(\d){9}/" maxlength="10" class="form-control" ng-model="sealNumber" ng-disabled="!sked.warehouse || !sked.employeeIn || !sked.employeeOut">
</div>
<button type="submit" class="btn btn-primary" ng-click="addSeal(sealNumber)" ng-disabled="!sked.warehouse || !sked.employeeIn || !sked.employeeOut || !sealNumber"><span class="glyphicon glyphicon-plus"
aria-hidden="true"></span></button>
</form>
</div>
</div>
<div class="rowtop5 fillV fillH">
<div class="cell fillV fillH">
<ag-grid-ext api="sealListApi" shared-object="this" style="height: 130px;" class="ag-fresh" list-get-url="{{config.string('url.seal.list') + '/' + sked.uuid}}">
<column header-name="<@spring.message "warehouse.seals.numberSeals" />"
field="sealNumber"></column>
<column header-name="" field="" width="30">
<cell-renderer>
<button class="btn btn-lnk btn-sm"
ng-click="sharedObject.deleteSeal(data)" ng-disabled="sked.deleted==true || sked.dateClose!=null ">
<span class="glyphicon glyphicon-remove" aria-hidden="true"></span>
</button>
</cell-renderer>
</column>
</ag-grid-ext>
</div>
</div>
</div>
</div>
<div class="row">
<div class="form-group">
<label class="control-label col-xs-5"><@spring.message "template.note" />:</label>
<div class="col-xs-12">
<textarea rows="3" class="form-control" ng-model="sked.description['${lang}']"/>
</div>
</div>
</div>
</div>
<div class="col-xs-6">
<div class="row">
<div class="col-xs-12">
<div class="panel panel-default">
<div class="panel-heading">
<div class="panel-title">
<strong><@spring.message "warehouse.opis.add.scan" /></strong>
</div>
</div>
<div class="panel-body">
<div class="row">
<div class="col-xs-offset-4 col-xs-6">
<form class="form-inline">
<div class="form-group">
<label><@spring.message "warehouse.scan.numberOrder" />:</label>
<input type="text" class="form-control" ng-model="orderNumber" maxlength="20"
ng-disabled="!sked.warehouse || !sked.employeeIn || !sked.employeeOut">
</div>
<button type="submit" class="btn btn-primary" ng-click="addOrder(orderNumber)"
ng-disabled="!sked.warehouse || !sked.employeeIn || !sked.employeeOut"><span
class="glyphicon glyphicon-plus"
aria-hidden="true"></span></button>
</form>
</div>
</div>
<div class='form-group'>
<#--<label for="errors" class="small"><@spring.message "warehouse.scan.errors" /></label>-->
<div class="scan-logs">
<p ng-repeat="alert in scanLogs" ng-class="alert.type">{{alert.msg}}</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-xs-11">
<h4><strong><@spring.message "warehouse.orders" /></strong></h4>
</div>
<div class="col-xs-1">
<button type="button" class="btn btn-primary pull-right" ng-click="orderListApi.reload()">
<span class="glyphicon glyphicon-refresh" aria-hidden="true"></span>
</button>
<button type="button" class="btn btn-primary pull-right" ng-click="downloadOrdersAsCsv()">
<i class="fa fa-print" aria-hidden="true"></i>
</button>
</div>
</div>
<div class="row-cdek fillV fillH">
<div class="cell-cdek fillV fillH">
<ag-grid-ext shared-object="this" api="orderListApi" shared-object="this" class="ag-fresh fillH"
get-row-height="getRowHeightOrder" list-get-url="{{config.string('url.order.list') + '/'+sked.documentType+'/'+sked.uuid}}" style="height: 100%;" >
<column header-name="<@spring.message "warehouse.orders.numberOrder" />"
field="orderNumber"></column>
<column header-name="<@spring.message "warehouse.orders.factWeight" />"
field="factWeight" width="70"></column>
<column header-name="<@spring.message "template.date" />"
field="date"></column>
<column header-name="<@spring.message "warehouse.orders.branchFrom" />"
field="branchFrom"></column>
<column header-name="<@spring.message "warehouse.orders.branchTo" />"
field="branchTo"></column>
<column value-getter="ctx.sharedObject.cargoPlaceCountValueGetter(data.cargoPlaceCount, data.itemCount)"
header-name="<@spring.message "warehouse.orders.cargoPlaceCount" />" width="70">
<cell-renderer>
{{data.cargoPlaceCount}} ({{data.itemCount}})
</cell-renderer>
<footer-renderer>
{{data.cargoPlaceCount}} ({{data.itemCount}})
</footer-renderer>
</column>
<column header-name="<@spring.message "warehouse.orders.problems" />"
value-getter="ctx.sharedObject.problemDescriptionValueGetter(data.problemDescription, data.problemCodes)">
<cell-renderer>
<div class="problems" ng-bind-html="sharedObject.getProblemsString(data)"></div>
</cell-renderer>
</column>
<column header-name="" field="" width="40">
<cell-renderer>
<button class="btn btn-default btn-sm"
ng-click="sharedObject.deleteOrder(data)">
<span class="glyphicon glyphicon-remove" aria-hidden="true"></span>
</button>
</cell-renderer>
</column>
</ag-grid-ext>
</div>
</div>
<div class="row top10 bottom15">
<div class="col-xs-12 text-center" ng-show="!sked.uuid">
<button type="button" class="pull btn btn-primary" ng-click="saveSked()" ng-disabled="!sked.warehouse || !sked.employeeIn || !sked.employeeOut"> <@spring.message "template.save" /> </button>
<a type="button" class="btn btn-primary" ng-href="#/{{language}}"> <@spring.message "template.cancel" /> </a>
</div>
<div class="col-xs-12 text-center" ng-show="sked.uuid">
<button type="button" class="pull btn btn-primary" ng-click="updateSked()"> <@spring.message "template.save" /> </button>
<a type="button" class="btn btn-primary" ng-href="#/list/{{language}}/{{sked.uuid}}"> <@spring.message "template.back" /> </a>
</div>
</div>
</div>
</div>
\ No newline at end of file
This diff is collapsed.
Click to expand it.
front/cdek_front/src/main/webapp/WEB-INF/views/warehouse/add_return_undelivered.ftl
0 → 100644
View file @
58b47f37
<#import "/spring.ftl" as spring />
<div class="fillV fillH" ng-controller="AddReturnUndelivered">
<div class="container fillH wrapper-cdek ">
<div class="panel panel-default">
<div class="panel-heading">
<div class="panel-title" ng-if="sked.documentNumber">
<strong><@spring.message "warehouse.opis.returnUndeliveredUpdate.title" /> {{sked.documentNumber}}</strong>
</div>
<div class="panel-title" ng-if="!sked.documentNumber">
<strong><@spring.message "warehouse.opis.returnUndeliveredCreate.title" /></strong>
</div>
</div>
<div class="panel-body">
<h5><@spring.message "warehouse.opis.add.operType" />: <@spring.message "warehouse.opis.returnUndelivered" /></h5>
<div class="row">
<div class="col-xs-6">
<div class="row">
<div class="col-xs-8 ">
<div class="row">
<div style="height:22px">
</div>
</div>
<div class="row top5">
<div class="form-group">
<label class="control-label col-xs-5"><@spring.message "template.date" />:</label>
<div class="col-xs-6">
<div class="input-group" bootstrap-datetimepicker="{format: 'DD.MM.YYYY', showClose: true}">
<input placeholder="<@spring.message "format.date.default" />" id="from" type="text" class="form-control"
datetimepicker-api="skedDateApi"
ng-model="sked.date"><span
class="input-group-addon" ng-click="skedDateApi.toggle()"><i
class="glyphicon glyphicon-calendar"></i></span>
</div>
</div>
</div>
</div>
<div class="row top5">
<div class="form-group">
<label class="control-label col-xs-5"><@spring.message "warehouse.branch" />:</label>
<div
class="col-xs-7"
angucomplete-alt
placeholder=""
pause="0"
selected-object="setBranch"
initial-value="sked.branch"
remote-api-handler="catalogs.searchBranch"
title-field="name"
minlength="1"
input-class="form-control form-control-small"
match-class="highlight"
disable-input="true">
</div>
</div>
</div>
<div class="row top5">
<div class="form-group">
<label class="control-label col-xs-5"><@spring.message "warehouse.filter.warehouse" />:</label>
<div
class="col-xs-7"
angucomplete-alt
placeholder=""
pause="0"
selected-object="setWarehouse"
initial-value="sked.warehouse"
remote-api-handler="catalogs.searchWarehouse"
title-field="name"
minlength="1"
input-class="form-control form-control-small"
match-class="highlight"
disable-input="true">
</div>
</div>
</div>
<div class="row top5">
<div class="form-group">
<label class="control-label col-xs-5"><@spring.message "template.process" />:</label>
<div
class="col-xs-7"
angucomplete-alt
placeholder=""
pause="0"
selected-object="setEmployeeIn"
initial-value="sked.employeeIn"
remote-api-handler="searchEmployeeByBranch"
title-field="name"
minlength="1"
input-class="form-control form-control-small"
match-class="highlight"
disable-input="true"
>
</div>
</div>
</div>
<div class="row top5">
<div class="form-group">
<label class="control-label col-xs-5"><@spring.message "warehouse.opis.edit.passed" />:</label>
<div class="col-xs-7"
angucomplete-alt
placeholder=""
pause="0"
selected-object="setEmployeeOut"
initial-value="sked.employeeOut"
remote-api-handler="searchEmployeeByBranch"
title-field="name"
minlength="1"
input-class="form-control form-control-small"
match-class="highlight"
>
</div>
</div>
</div>
</div>
<div class="col-xs-4">
<div class="row">
<label class="col-xs-6"><@spring.message "warehouse.opis.add.numberSeals" /></label>
</div>
<div class="row">
<div class="col-xs-12">
<form class="form-inline">
<div class="form-group">
<input type="text" ng-pattern="/([1-9]){1}(\d){9}/" maxlength="10" class="form-control" ng-model="sealNumber" ng-disabled="!sked.warehouse || !sked.employeeIn || !sked.employeeOut">
</div>
<button type="submit" class="btn btn-primary" ng-click="addSeal(sealNumber)" ng-disabled="!sked.warehouse || !sked.employeeIn || !sked.employeeOut || !sealNumber"><span class="glyphicon glyphicon-plus"
aria-hidden="true"></span></button>
</form>
</div>
</div>
<div class="rowtop5 fillV fillH">
<div class="cell fillV fillH">
<ag-grid-ext api="sealListApi" shared-object="this" style="height: 130px;" class="ag-fresh" list-get-url="{{config.string('url.seal.list') + '/' + sked.uuid}}">
<column header-name="<@spring.message "warehouse.seals.numberSeals" />"
field="sealNumber"></column>
<column header-name="" field="" width="30">
<cell-renderer>
<button class="btn btn-lnk btn-sm"
ng-click="sharedObject.deleteSeal(data)" ng-disabled="sked.deleted==true || sked.dateClose!=null ">
<span class="glyphicon glyphicon-remove" aria-hidden="true"></span>
</button>
</cell-renderer>
</column>
</ag-grid-ext>
</div>
</div>
</div>
</div>
<div class="row">
<div class="form-group">
<label class="control-label col-xs-5"><@spring.message "template.note" />:</label>
<div class="col-xs-12">
<textarea rows="3" class="form-control" ng-model="sked.description['${lang}']"/>
</div>
</div>
</div>
</div>
<div class="col-xs-6">
<div class="row">
<div class="col-xs-12">
<div class="panel panel-default">
<div class="panel-heading">
<div class="panel-title">
<strong><@spring.message "warehouse.opis.add.scan" /></strong>
</div>
</div>
<div class="panel-body">
<div class="row">
<div class="col-xs-offset-4 col-xs-6">
<form class="form-inline">
<div class="form-group">
<label><@spring.message "warehouse.scan.numberOrder" />:</label>
<input type="text" class="form-control" ng-model="orderNumber" maxlength="20"
ng-disabled="!sked.warehouse || !sked.employeeIn || !sked.employeeOut">
</div>
<button type="submit" class="btn btn-primary" ng-click="addOrder(orderNumber)"
ng-disabled="!sked.warehouse || !sked.employeeIn || !sked.employeeOut"><span
class="glyphicon glyphicon-plus"
aria-hidden="true"></span></button>
</form>
</div>
</div>
<div class='form-group'>
<#--<label for="errors" class="small"><@spring.message "warehouse.scan.errors" /></label>-->
<div class="scan-logs">
<p ng-repeat="alert in scanLogs" ng-class="alert.type">{{alert.msg}}</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-xs-11">
<h4><strong><@spring.message "warehouse.orders" /></strong></h4>
</div>
<div class="col-xs-1">
<button type="button" class="btn btn-primary pull-right" ng-click="orderListApi.reload()">
<span class="glyphicon glyphicon-refresh" aria-hidden="true"></span>
</button>
<button type="button" class="btn btn-primary pull-right" ng-click="downloadOrdersAsCsv()">
<i class="fa fa-print" aria-hidden="true"></i>
</button>
</div>
</div>
<div class="row-cdek fillV fillH">
<div class="cell-cdek fillV fillH">
<ag-grid-ext shared-object="this" api="orderListApi" shared-object="this" class="ag-fresh fillH"
get-row-height="getRowHeightOrder" list-get-url="{{config.string('url.order.list') + '/'+sked.documentType+'/'+sked.uuid}}" style="height: 100%;" >
<column header-name="<@spring.message "warehouse.orders.numberOrder" />"
field="orderNumber"></column>
<column header-name="<@spring.message "warehouse.orders.factWeight" />"
field="factWeight" width="70"></column>
<column header-name="<@spring.message "template.date" />"
field="date"></column>
<column header-name="<@spring.message "warehouse.orders.branchFrom" />"
field="branchFrom"></column>
<column header-name="<@spring.message "warehouse.orders.branchTo" />"
field="branchTo"></column>
<column value-getter="ctx.sharedObject.cargoPlaceCountValueGetter(data.cargoPlaceCount, data.itemCount)"
header-name="<@spring.message "warehouse.orders.cargoPlaceCount" />" width="70">
<cell-renderer>
{{data.cargoPlaceCount}} ({{data.itemCount}})
</cell-renderer>
<footer-renderer>
{{data.cargoPlaceCount}} ({{data.itemCount}})
</footer-renderer>
</column>
<column header-name="<@spring.message "warehouse.orders.problems" />"
value-getter="ctx.sharedObject.problemDescriptionValueGetter(data.problemDescription, data.problemCodes)">
<cell-renderer>
<div class="problems" ng-bind-html="sharedObject.getProblemsString(data)"></div>
</cell-renderer>
</column>
<column header-name="" field="" width="40">
<cell-renderer>
<button class="btn btn-default btn-sm"
ng-click="sharedObject.deleteOrder(data)">
<span class="glyphicon glyphicon-remove" aria-hidden="true"></span>
</button>
</cell-renderer>
</column>
</ag-grid-ext>
</div>
</div>
<div class="row top10 bottom15">
<div class="col-xs-12 text-center" ng-show="!sked.uuid">
<button type="button" class="pull btn btn-primary" ng-click="saveSked()" ng-disabled="!sked.warehouse || !sked.employeeIn || !sked.employeeOut"> <@spring.message "template.save" /> </button>
<a type="button" class="btn btn-primary" ng-href="#/{{language}}"> <@spring.message "template.cancel" /> </a>
</div>
<div class="col-xs-12 text-center" ng-show="sked.uuid">
<button type="button" class="pull btn btn-primary" ng-click="updateSked()"> <@spring.message "template.save" /> </button>
<a type="button" class="btn btn-primary" ng-href="#/list/{{language}}/{{sked.uuid}}"> <@spring.message "template.back" /> </a>
</div>
</div>
</div>
</div>
\ No newline at end of file
This diff is collapsed.
Click to expand it.
front/cdek_front/src/main/webapp/WEB-INF/views/warehouse/index.ftl
View file @
58b47f37
...
...
@@ -8,4 +8,6 @@
<script src="../../warehouse-angular/application/add_correction_income.js"></script>
<script src="../../warehouse-angular/application/add_consolidation.js"></script>
<script src="../../warehouse-angular/application/add_acceptance.js"></script>
<script src="../../warehouse-angular/application/add_delivery.js"></script>
<script src="../../warehouse-angular/application/add_return_undelivered.js"></script>
</@master.index>
This diff is collapsed.
Click to expand it.
front/cdek_front/src/main/webapp/WEB-INF/views/warehouse/warehouse.ftl
View file @
58b47f37
This diff is collapsed.
Click to expand it.
front/cdek_front/src/main/webapp/commons/javascripts/cdek/service/sked-service.js
View file @
58b47f37
...
...
@@ -70,6 +70,12 @@ angular
newCorrectionIncome
:
function
()
{
return
$http
.
post
(
config
.
string
(
'
url.sked.newCorrectionIncome
'
));
},
newDelivery
:
function
()
{
return
$http
.
post
(
config
.
string
(
'
url.sked.newDelivery
'
));
},
newReturnUndelivered
:
function
()
{
return
$http
.
post
(
config
.
string
(
'
url.sked.newReturnUndelivered
'
));
},
newConsolidation
:
function
()
{
return
$http
.
post
(
config
.
string
(
'
url.sked.newConsolidation
'
));
},
...
...
This diff is collapsed.
Click to expand it.
front/cdek_front/src/main/webapp/commons/stylesheets/main.css
View file @
58b47f37
...
...
@@ -254,10 +254,13 @@ input.ng-invalid-has-errors {
width
:
100%
;
}
.documentTypeFilterWrapper
{
margin-left
:
-100px
;
}
.documentTypeFilter
{
height
:
0px
;
overflow
:
visible
;
padding-left
:
10px
;
height
:
100px
;
overflow-y
:
scroll
;
z-index
:
9999999999
;
}
...
...
This diff is collapsed.
Click to expand it.
front/cdek_front/src/main/webapp/warehouse-angular/application/add_delivery.js
0 → 100644
View file @
58b47f37
app
.
controller
(
'
AddDeliveryCtrl
'
,
function
(
$scope
,
$routeParams
,
$timeout
,
$location
,
config
,
dialogs
,
skedService
,
catalogs
)
{
$scope
.
$parent
.
child
=
$scope
;
$scope
.
config
=
config
;
$timeout
(
function
()
{
skedService
.
initFloatingRow
(
$scope
.
orderListApi
.
gridOptions
);
});
$scope
.
setWarehouse
=
function
(
value
){
$scope
.
sked
.
warehouse
=
value
?
value
.
originalObject
:
null
;
};
$scope
.
setEmployeeIn
=
function
(
value
){
$scope
.
sked
.
employeeIn
=
value
?
value
.
originalObject
:
null
;
};
$scope
.
setEmployeeOut
=
function
(
value
){
$scope
.
sked
.
employeeOut
=
value
?
value
.
originalObject
:
null
;
};
$scope
.
searchEmployeeByBranch
=
function
(
keyword
){
return
catalogs
.
searchEmployeeByBranch
(
keyword
,
$scope
.
sked
.
branch
.
code
)
};
/**
* params- параметры для экспорта.
* По умолчанию заданы два параметра columnSeparator и skipHeader
*/
$scope
.
downloadOrdersAsCsv
=
function
(
params
)
{
$scope
.
orderListApi
.
exportDataAsCsv
(
params
);
};
if
(
$routeParams
.
skedId
)
{
skedService
.
loadSked
(
$routeParams
.
skedId
).
then
(
function
successCallback
(
response
)
{
$scope
.
sked
=
response
.
data
;
$timeout
(
function
()
{
$scope
.
orderListApi
.
reload
();
$scope
.
sealListApi
.
reload
();
});
},
function
errorCallback
(
response
)
{
// Ignore
});
}
else
{
skedService
.
newDelivery
().
then
(
function
successCallback
(
response
)
{
$scope
.
sked
=
response
.
data
;
});
}
});
This diff is collapsed.
Click to expand it.
front/cdek_front/src/main/webapp/warehouse-angular/application/add_return_undelivered.js
0 → 100644
View file @
58b47f37
app
.
controller
(
'
AddReturnUndelivered
'
,
function
(
$scope
,
$routeParams
,
$timeout
,
$location
,
config
,
dialogs
,
skedService
,
catalogs
)
{
$scope
.
$parent
.
child
=
$scope
;
$scope
.
config
=
config
;
$timeout
(
function
()
{
skedService
.
initFloatingRow
(
$scope
.
orderListApi
.
gridOptions
);
});
$scope
.
setWarehouse
=
function
(
value
){
$scope
.
sked
.
warehouse
=
value
?
value
.
originalObject
:
null
;
};
$scope
.
setEmployeeIn
=
function
(
value
){
$scope
.
sked
.
employeeIn
=
value
?
value
.
originalObject
:
null
;
};
$scope
.
setEmployeeOut
=
function
(
value
){
$scope
.
sked
.
employeeOut
=
value
?
value
.
originalObject
:
null
;
};
$scope
.
searchEmployeeByBranch
=
function
(
keyword
){
return
catalogs
.
searchEmployeeByBranch
(
keyword
,
$scope
.
sked
.
branch
.
code
)
};
/**
* params- параметры для экспорта.
* По умолчанию заданы два параметра columnSeparator и skipHeader
*/
$scope
.
downloadOrdersAsCsv
=
function
(
params
)
{
$scope
.
orderListApi
.
exportDataAsCsv
(
params
);
};
if
(
$routeParams
.
skedId
)
{
skedService
.
loadSked
(
$routeParams
.
skedId
).
then
(
function
successCallback
(
response
)
{
$scope
.
sked
=
response
.
data
;
$timeout
(
function
()
{
$scope
.
orderListApi
.
reload
();
$scope
.
sealListApi
.
reload
();
});
},
function
errorCallback
(
response
)
{
// Ignore
});
}
else
{
skedService
.
newDelivery
().
then
(
function
successCallback
(
response
)
{
$scope
.
sked
=
response
.
data
;
});
}
});
This diff is collapsed.
Click to expand it.
front/cdek_front/src/main/webapp/warehouse-angular/application/route.js
View file @
58b47f37
...
...
@@ -101,6 +101,46 @@ app.config(function($routeProvider, $provide, $httpProvider) {
return
config
.
promise
;
}
}
}).
when
(
'
/add_delivery/:language
'
,
{
templateUrl
:
function
(
tElement
,
tAttrs
)
{
return
'
./add_delivery?language=
'
+
tElement
.
language
;
},
controller
:
'
WarehouseCommonCtrl
'
,
resolve
:{
'
ConfigLoad
'
:
function
(
config
)
{
return
config
.
promise
;
}
}
}).
when
(
'
/edit_delivery/:language/:skedId
'
,
{
templateUrl
:
function
(
tElement
,
tAttrs
)
{
return
'
./add_delivery?language=
'
+
tElement
.
language
;
},
controller
:
'
WarehouseCommonCtrl
'
,
resolve
:{
'
ConfigLoad
'
:
function
(
config
)
{
return
config
.
promise
;
}
}
}).
when
(
'
/add_return_undelivered/:language
'
,
{
templateUrl
:
function
(
tElement
,
tAttrs
)
{
return
'
./add_return_undelivered?language=
'
+
tElement
.
language
;
},
controller
:
'
WarehouseCommonCtrl
'
,
resolve
:{
'
ConfigLoad
'
:
function
(
config
)
{
return
config
.
promise
;
}
}
}).
when
(
'
/edit_return_undelivered/:language/:skedId
'
,
{
templateUrl
:
function
(
tElement
,
tAttrs
)
{
return
'
./add_return_undelivered?language=
'
+
tElement
.
language
;
},
controller
:
'
WarehouseCommonCtrl
'
,
resolve
:{
'
ConfigLoad
'
:
function
(
config
)
{
return
config
.
promise
;
}
}
});
$
(
document
).
unbind
(
"
keypress
"
);
});
...
...
This diff is collapsed.
Click to expand it.
front/cdek_front/src/main/webapp/warehouse-angular/application/warehouse.js
View file @
58b47f37
...
...
@@ -7,7 +7,9 @@ app.controller('WarehouseCtrl',function ($scope, $routeParams,
'
PRIME_INCOME
'
:
'
edit_inventory
'
,
'
CORRECTION_INCOME
'
:
'
edit_correction_income
'
,
'
ACCEPTANCE
'
:
'
edit_acceptance
'
,
'
CONSOLIDATION
'
:
'
edit_consolidation
'
'
CONSOLIDATION
'
:
'
edit_consolidation
'
,
'
DELIVERY
'
:
'
edit_delivery
'
,
'
RETURN_UNDELIVERED
'
:
'
edit_return_undelivered
'
};
$scope
.
syncProblem
=
{};
$scope
.
catalogs
=
catalogs
;
...
...
@@ -176,6 +178,12 @@ app.controller('WarehouseCtrl',function ($scope, $routeParams,
case
"
ACCEPTANCE
"
:
documentTypedCloseTitle
=
config
.
message
(
'
warehouse.opis.closeAcceptance.title
'
);
break
;
case
"
DELIVERY
"
:
documentTypedCloseTitle
=
config
.
message
(
'
warehouse.opis.closeDelivery.title
'
);
break
;
case
"
RETUN_UNDELIVERED
"
:
documentTypedCloseTitle
=
config
.
message
(
'
warehouse.opis.closeReturnUndelivered.title
'
);
break
;
}
dialogs
.
confirmation
(
documentTypedCloseTitle
+
"
"
+
(
$scope
.
skedListApi
.
single
.
documentNumber
||
""
)
+
"
?
"
).
then
(
function
()
{
skedService
.
closeSked
(
$scope
.
skedListApi
.
single
).
then
(
function
successCallback
(
response
)
{
...
...
This diff is collapsed.
Click to expand it.
warehouse-common/warehouse-api/src/main/java/com/cdek/transport/model/document/DocumentType.java
View file @
58b47f37
...
...
@@ -20,5 +20,8 @@ public enum DocumentType {
DECONSOLIDATION
,
//документ Расконсолидации
CORRECTION_INCOME
,
//Документ Приход-Коррекция
CORRECTION_SHIPMENT
,
//Документ Расход-Коррекция
SORTER_INCOME
//Документ Приход от сортера
SORTER_INCOME
,
//Документ Приход от сортера
DELIVERY
,
//Документ Выдача на доставку
RETURN_UNDELIVERED
//Документ Возврат недоставленного
}
This diff is collapsed.
Click to expand it.
warehouse-common/warehouse-services/src/main/java/com/cdek/warehouse/services/impl/WarehouseServiceImpl.java
View file @
58b47f37
...
...
@@ -21,6 +21,7 @@ import com.cdek.warehouse.services.correction.CorrectionManager;
import
com.cdek.warehouse.services.document.*
;
import
com.cdek.warehouse.services.operation.*
;
import
com.cdek.warehouse.services.sync.SyncDocumentService
;
import
com.fasterxml.jackson.annotation.ObjectIdGenerators
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.time.DateUtils
;
import
org.slf4j.Logger
;
...
...
@@ -100,6 +101,14 @@ public class WarehouseServiceImpl implements WarehouseService {
sked
=
createOrUpdateSkedCorrectionIncome
(
sked
,
userCode
);
break
;
}
case
DELIVERY:
{
//опись является документом выдача на доставку
sked
=
createOrUpdateSkedDelivery
(
sked
,
userCode
);
break
;
}
case
RETURN_UNDELIVERED:
{
//опись является документом возврат недоставленного
sked
=
createOrUpdateSkedReturnUndelivered
(
sked
,
userCode
);
break
;
}
default
:
throw
new
WarehouseServiceException
(
SKED_TYPE_UNKNOWN
,
"Unknown Sked: operType["
+
sked
.
getOperType
()
+
"] aimType["
+
sked
.
getAimType
()
+
"]"
);
}
...
...
@@ -434,6 +443,21 @@ public class WarehouseServiceImpl implements WarehouseService {
}
}
private
Sked
createOrUpdateSkedDelivery
(
Sked
sked
,
String
userCode
)
{
//TODO mock for interface
ObjectIdGenerators
.
UUIDGenerator
generator
=
new
ObjectIdGenerators
.
UUIDGenerator
();
sked
.
setUuid
(
generator
.
generateId
(
sked
).
toString
());
return
sked
;
}
private
Sked
createOrUpdateSkedReturnUndelivered
(
Sked
sked
,
String
userCode
)
{
//TODO mock for interface
ObjectIdGenerators
.
UUIDGenerator
generator
=
new
ObjectIdGenerators
.
UUIDGenerator
();
sked
.
setUuid
(
generator
.
generateId
(
sked
).
toString
());
return
sked
;
}
private
Sked
createOrUpdateSkedAcceptance
(
Sked
sked
,
String
userCode
)
{
//Опись без идентификатора, значит создаем новую Опись и Документ Приемки
if
(
sked
.
getUuid
()
==
null
)
{
...
...
This diff is collapsed.
Click to expand it.
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
Menu
Projects
Groups
Snippets
Help