Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
cloud-fb
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
王衍超
cloud-fb
Commits
43c8d5f5
Commit
43c8d5f5
authored
Nov 19, 2021
by
高晓磊
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
地磅同步,修改购砂单位的逻辑(出现不签合同的大客户的情况)
parent
f74dedff
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
323 additions
and
78 deletions
+323
-78
common.gradle
backend/common.gradle
+3
-2
ArtificialRechargeServiceImpl.java
...nance/internal/service/ArtificialRechargeServiceImpl.java
+43
-28
ArtificialRechargeController.java
.../xyst/dinas/finance/web/ArtificialRechargeController.java
+2
-11
PurchaseSandCompanyDao.java
...va/com/xyst/dinas/project/dao/PurchaseSandCompanyDao.java
+2
-0
PurchaseSandCompanyDaoImpl.java
...inas/project/internal/dao/PurchaseSandCompanyDaoImpl.java
+11
-0
PurchaseSandCompany.mk
...l/com/xyst/dinas/project/datamodel/PurchaseSandCompany.mk
+9
-0
PurchaseSandCompany.jmx
.../com/xyst/dinas/project/datamodel/PurchaseSandCompany.jmx
+56
-0
PurchaseSandCompany.jmx
...rces/com/xyst/dinas/project/query/PurchaseSandCompany.jmx
+20
-0
PurchaseSandCompany.hbm.xml
...ect/src/main/resources/config/PurchaseSandCompany.hbm.xml
+11
-0
SalesPlanDao.java
.../src/main/java/com/xyst/dinas/sales/dao/SalesPlanDao.java
+24
-1
SalesRecordDao.java
...rc/main/java/com/xyst/dinas/sales/dao/SalesRecordDao.java
+3
-0
SalesRecordDaoImpl.java
...com/xyst/dinas/sales/internal/dao/SalesRecordDaoImpl.java
+21
-0
InventoryServiceImpl.java
...st/dinas/sales/internal/service/InventoryServiceImpl.java
+11
-5
SalesPlanServiceImpl.java
...st/dinas/sales/internal/service/SalesPlanServiceImpl.java
+71
-26
SalesRecordServiceImpl.java
.../dinas/sales/internal/service/SalesRecordServiceImpl.java
+0
-0
InventoryService.java
...n/java/com/xyst/dinas/sales/service/InventoryService.java
+2
-1
SalesPlanService.java
...n/java/com/xyst/dinas/sales/service/SalesPlanService.java
+1
-1
SalesRecordService.java
...java/com/xyst/dinas/sales/service/SalesRecordService.java
+1
-2
SalesRecordInfo.java
...n/java/com/xyst/dinas/sales/web/info/SalesRecordInfo.java
+23
-0
build.gradle
backend/xyst.dinas.transport/build.gradle
+1
-0
VehicleDispatchServiceImpl.java
...ransport/internal/service/VehicleDispatchServiceImpl.java
+8
-1
WeighbridgeSyncController.java
...m/xyst/dinas/transport/web/WeighbridgeSyncController.java
+0
-0
No files found.
backend/common.gradle
View file @
43c8d5f5
...
@@ -249,9 +249,9 @@ ext {
...
@@ -249,9 +249,9 @@ ext {
javax_persistence_api:
"javax.persistence:javax.persistence-api:2.2"
,
javax_persistence_api:
"javax.persistence:javax.persistence-api:2.2"
,
jboss_javax_transaction_api:
"org.jboss.spec.javax.transaction:jboss-transaction-api_1.2_spec:1.1.1.Final"
,
jboss_javax_transaction_api:
"org.jboss.spec.javax.transaction:jboss-transaction-api_1.2_spec:1.1.1.Final"
,
hibernate_common_annotations:
"org.hibernate.common:hibernate-commons-annotations:5.0.4.Final"
,
hibernate_common_annotations:
"org.hibernate.common:hibernate-commons-annotations:5.0.4.Final"
,
net_byte_buddy:
"net.bytebuddy:byte-buddy:1.8.15"
net_byte_buddy:
"net.bytebuddy:byte-buddy:1.8.15"
,
thumbnailator:
"net.coobird:thumbnailator:0.4.8"
]
]
}
}
...
@@ -411,6 +411,7 @@ configurations.all {
...
@@ -411,6 +411,7 @@ configurations.all {
force
lib
.
hibernate_common_annotations
force
lib
.
hibernate_common_annotations
force
lib
.
jboss_javax_transaction_api
force
lib
.
jboss_javax_transaction_api
force
lib
.
net_byte_buddy
force
lib
.
net_byte_buddy
force
lib
.
thumbnailator
exclude
group:
"c3p0"
,
module:
"c3p0"
exclude
group:
"c3p0"
,
module:
"c3p0"
exclude
group:
"dom4j"
,
module:
"dom4j"
exclude
group:
"dom4j"
,
module:
"dom4j"
...
...
backend/xyst.dinas.finance/src/main/java/com/xyst/dinas/finance/internal/service/ArtificialRechargeServiceImpl.java
View file @
43c8d5f5
...
@@ -3,6 +3,7 @@ package com.xyst.dinas.finance.internal.service;
...
@@ -3,6 +3,7 @@ package com.xyst.dinas.finance.internal.service;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.UUID
;
import
java.util.UUID
;
import
com.xyst.dinas.project.service.PurchaseSandCompanyService
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
...
@@ -18,34 +19,48 @@ import com.xyst.dinas.finance.service.ArtificialRechargeService;
...
@@ -18,34 +19,48 @@ import com.xyst.dinas.finance.service.ArtificialRechargeService;
import
com.xyst.dinas.sales.processor.StockAmountWarnCalculate
;
import
com.xyst.dinas.sales.processor.StockAmountWarnCalculate
;
public
class
ArtificialRechargeServiceImpl
implements
ArtificialRechargeService
{
public
class
ArtificialRechargeServiceImpl
implements
ArtificialRechargeService
{
@Autowired
@Autowired
private
ContractDao
contractDao
;
private
ContractDao
contractDao
;
@Autowired
@Autowired
private
WarningService
warningService
;
private
WarningService
warningService
;
@Autowired
@Override
private
PurchaseSandCompanyService
purchaseSandCompanyService
;
@Transactional
public
Object
adjustContractBalance
(
JSONObject
jsonObject
)
{
@Override
try
{
@Transactional
UUID
contractId
=
UUID
.
fromString
(
jsonObject
.
getString
(
"contractId"
));
public
Object
adjustContractBalance
(
JSONObject
jsonObject
)
{
KObject
contract
=
contractDao
.
load
(
contractId
);
try
{
if
(
FundTypeEnum
.
ADVANCE
.
name
().
equals
(
jsonObject
.
getString
(
"fundType"
)))
{
if
(!
jsonObject
.
has
(
"contractId"
))
{
contract
.
set
(
"advanceBalance"
,
contract
.
getBigDecimal
(
"advanceBalance"
)
==
null
?
new
BigDecimal
(
"0"
).
add
(
jsonObject
.
getBigDecimal
(
"rechargeAmount"
))
:
contract
.
getBigDecimal
(
"advanceBalance"
).
add
(
jsonObject
.
getBigDecimal
(
"rechargeAmount"
)));
//如果没有选合同,默认将金额带入到购砂单位
}
else
if
(
FundTypeEnum
.
DEPOSIT
.
name
().
equals
(
jsonObject
.
getString
(
"fundType"
))){
UUID
purchaseSandId1
=
UUID
.
fromString
(
jsonObject
.
getString
(
"purchaseSandId"
));
contract
.
set
(
"depositBalance"
,
contract
.
getBigDecimal
(
"depositBalance"
)
==
null
?
new
BigDecimal
(
"0"
).
add
(
jsonObject
.
getBigDecimal
(
"rechargeAmount"
))
:
contract
.
getBigDecimal
(
"depositBalance"
).
add
(
jsonObject
.
getBigDecimal
(
"rechargeAmount"
)));
KObject
byId
=
purchaseSandCompanyService
.
getById
(
purchaseSandId1
);
}
BigDecimal
advanceBalance
=
byId
.
getBigDecimal
(
"advanceBalance"
);
contractDao
.
update
(
contract
);
if
(
advanceBalance
==
null
)
{
BaseBusinessWarn
warn
=
warningService
.
createWarn
(
"合同"
,
contract
.
getUuid
(
"contractId"
),
"预付款余额"
);
advanceBalance
=
BigDecimal
.
ZERO
;
warn
.
setWarningCalculate
(
new
StockAmountWarnCalculate
(
contract
.
getDouble
(
"advanceBalance"
)));
}
warn
.
warn
();
BigDecimal
rechargeAmount
=
advanceBalance
.
add
(
jsonObject
.
getBigDecimal
(
"rechargeAmount"
));
return
ResponseObj
.
success
();
byId
.
set
(
"advanceBalance"
,
rechargeAmount
);
}
catch
(
Exception
e
){
return
ResponseObj
.
success
();
return
ResponseObj
.
error
();
}
}
UUID
contractId
=
UUID
.
fromString
(
jsonObject
.
getString
(
"contractId"
));
KObject
contract
=
contractDao
.
load
(
contractId
);
if
(
FundTypeEnum
.
ADVANCE
.
name
().
equals
(
jsonObject
.
getString
(
"fundType"
)))
{
}
contract
.
set
(
"advanceBalance"
,
contract
.
getBigDecimal
(
"advanceBalance"
)
==
null
?
new
BigDecimal
(
"0"
).
add
(
jsonObject
.
getBigDecimal
(
"rechargeAmount"
))
:
contract
.
getBigDecimal
(
"advanceBalance"
).
add
(
jsonObject
.
getBigDecimal
(
"rechargeAmount"
)));
}
else
if
(
FundTypeEnum
.
DEPOSIT
.
name
().
equals
(
jsonObject
.
getString
(
"fundType"
)))
{
contract
.
set
(
"depositBalance"
,
contract
.
getBigDecimal
(
"depositBalance"
)
==
null
?
new
BigDecimal
(
"0"
).
add
(
jsonObject
.
getBigDecimal
(
"rechargeAmount"
))
:
contract
.
getBigDecimal
(
"depositBalance"
).
add
(
jsonObject
.
getBigDecimal
(
"rechargeAmount"
)));
}
contractDao
.
update
(
contract
);
BaseBusinessWarn
warn
=
warningService
.
createWarn
(
"合同"
,
contract
.
getUuid
(
"contractId"
),
"预付款余额"
);
warn
.
setWarningCalculate
(
new
StockAmountWarnCalculate
(
contract
.
getDouble
(
"advanceBalance"
)));
warn
.
warn
();
return
ResponseObj
.
success
();
}
catch
(
Exception
e
)
{
return
ResponseObj
.
error
();
}
}
}
}
backend/xyst.dinas.finance/src/main/java/com/xyst/dinas/finance/web/ArtificialRechargeController.java
View file @
43c8d5f5
package
com
.
xyst
.
dinas
.
finance
.
web
;
package
com
.
xyst
.
dinas
.
finance
.
web
;
import
org.json.JSONArray
;
import
com.xyst.dinas.finance.service.ArtificialRechargeService
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.xyst.dinas.finance.service.ArtificialRechargeService
;
import
com.xyst.dinas.finance.service.BankRechargeDetailService
;
import
com.xyst.dinas.finance.service.ExpenseAdjustService
;
/**
/**
* 人工充值
* 人工充值
...
...
backend/xyst.dinas.project/src/main/java/com/xyst/dinas/project/dao/PurchaseSandCompanyDao.java
View file @
43c8d5f5
package
com
.
xyst
.
dinas
.
project
.
dao
;
package
com
.
xyst
.
dinas
.
project
.
dao
;
import
java.math.BigDecimal
;
import
java.util.List
;
import
java.util.List
;
import
java.util.UUID
;
import
java.util.UUID
;
...
@@ -13,4 +14,5 @@ public interface PurchaseSandCompanyDao {
...
@@ -13,4 +14,5 @@ public interface PurchaseSandCompanyDao {
void
updateEnableStatus
(
String
modelPath
,
boolean
enable
,
UUID
id
);
void
updateEnableStatus
(
String
modelPath
,
boolean
enable
,
UUID
id
);
void
updateAdvanceBalance
(
KObject
kObjects
,
BigDecimal
advanceBalance
);
}
}
backend/xyst.dinas.project/src/main/java/com/xyst/dinas/project/internal/dao/PurchaseSandCompanyDaoImpl.java
View file @
43c8d5f5
package
com
.
xyst
.
dinas
.
project
.
internal
.
dao
;
package
com
.
xyst
.
dinas
.
project
.
internal
.
dao
;
import
java.math.BigDecimal
;
import
java.util.List
;
import
java.util.List
;
import
java.util.UUID
;
import
java.util.UUID
;
...
@@ -55,4 +56,14 @@ public class PurchaseSandCompanyDaoImpl implements PurchaseSandCompanyDao, Purch
...
@@ -55,4 +56,14 @@ public class PurchaseSandCompanyDaoImpl implements PurchaseSandCompanyDao, Purch
});
});
}
}
@Override
public
void
updateAdvanceBalance
(
KObject
kObject
,
BigDecimal
advanceBalance
)
{
BigDecimal
advanceBalance1
=
kObject
.
getBigDecimal
(
"advanceBalance"
);
if
(
advanceBalance1
==
null
){
advanceBalance1
=
BigDecimal
.
ZERO
;
}
kObject
.
set
(
"advanceBalance"
,
advanceBalance1
.
subtract
(
advanceBalance
));
template
.
update
(
kObject
);
}
}
}
backend/xyst.dinas.project/src/main/model/com/xyst/dinas/project/datamodel/PurchaseSandCompany.mk
View file @
43c8d5f5
...
@@ -29,6 +29,15 @@
...
@@ -29,6 +29,15 @@
<annotation id='0baa0800-831f-4857-b5f6-297ede314d3d' attributeId='ff4de660-27c0-4194-9a90-4e85b0a93d67' name='length' value='100'>
<annotation id='0baa0800-831f-4857-b5f6-297ede314d3d' attributeId='ff4de660-27c0-4194-9a90-4e85b0a93d67' name='length' value='100'>
</annotation>
</annotation>
</attribute>
</attribute>
<attribute id='f939574e-9048-4bbe-b6dd-05e71c959bb5' name='plateNumber' columnName='plate_number' title='车牌号' type='string' default='' precision='' isArray='false'>
<annotation id='b20d06ff-608d-43ff-8b60-10d7f3dfefa6' attributeId='fa2260e3-469c-4a8a-be99-5af1c4edc0af' name='length' value='100'>
</annotation>
</attribute>
<attribute id='df8e7c28-f9e0-448b-9b4b-ed6672ad0603' name='advanceBalance' columnName='advance_balance' title='预付款余额' type='fixnum' default='' precision='' isArray='false'>
<annotation id='def63ca3-7912-4d39-bf4a-f8d336ff740e' attributeId='271e8c52-b776-4f8b-855d-09af5ad75040' name='length' value='100'></annotation>
<annotation id='bc4da75a-dcd1-46f4-ae12-4d7d234f1e96' attributeId='e11978e0-9a48-4605-a2d4-0e314e5d4e31' name='precision' value='12'></annotation>
<annotation id='684298d0-aa28-4607-9c1d-63f35ea361c2' attributeId='11df3d8e-9ec1-4bce-8701-e4a5f5a3f721' name='scale' value='2'></annotation>
</attribute>
<attribute id='63bc034a-9a4c-41df-b0a4-b62bd8b05882' name='regionalCompany' columnName='regional_company' title='区域公司' type='com.xyst.dinas.biz.datamodel.xystOrganization' default='' precision='' isArray='false'>
<attribute id='63bc034a-9a4c-41df-b0a4-b62bd8b05882' name='regionalCompany' columnName='regional_company' title='区域公司' type='com.xyst.dinas.biz.datamodel.xystOrganization' default='' precision='' isArray='false'>
<annotation id='6d9ba751-13b0-47ad-9c0b-f37623ea7e28' attributeId='b215857b-a8b8-4ffc-88c9-c7bb46bed28c' name='length' value='undefined'>
<annotation id='6d9ba751-13b0-47ad-9c0b-f37623ea7e28' attributeId='b215857b-a8b8-4ffc-88c9-c7bb46bed28c' name='length' value='undefined'>
</annotation>
</annotation>
...
...
backend/xyst.dinas.project/src/main/resources/com/xyst/dinas/project/datamodel/PurchaseSandCompany.jmx
View file @
43c8d5f5
...
@@ -107,6 +107,30 @@
...
@@ -107,6 +107,30 @@
<m:description></m:description>
<m:description></m:description>
<m:default></m:default>
<m:default></m:default>
</m:attribute>
</m:attribute>
<m:attribute>
<m:annotations>
<m:annotation>
<m:type>
bcp.type.constraint.StringLength
</m:type>
<m:value>
30
</m:value>
</m:annotation>
<m:annotation>
<m:type>
javax.persistence.Column
</m:type>
<m:properties>
<m:property>
<m:key>
name
</m:key>
<m:value>
plate_number
</m:value>
</m:property>
</m:properties>
</m:annotation>
</m:annotations>
<m:id>
6e1784e7-5dc2-40a9-9cb6-9d2abda2292f
</m:id>
<m:name>
plateNumber
</m:name>
<m:title>
车牌号
</m:title>
<m:type>
string
</m:type>
<m:description></m:description>
<m:default></m:default>
</m:attribute>
<m:attribute>
<m:attribute>
<m:annotations>
<m:annotations>
<m:annotation>
<m:annotation>
...
@@ -156,6 +180,38 @@
...
@@ -156,6 +180,38 @@
<m:description></m:description>
<m:description></m:description>
<m:default></m:default>
<m:default></m:default>
</m:attribute>
</m:attribute>
<m:attribute>
<m:annotations>
<m:annotation>
<m:type>
bcp.type.constraint.Numeric
</m:type>
<m:properties>
<m:property>
<m:key>
precision
</m:key>
<m:value>
12
</m:value>
</m:property>
<m:property>
<m:key>
scale
</m:key>
<m:value>
2
</m:value>
</m:property>
</m:properties>
</m:annotation>
<m:annotation>
<m:type>
javax.persistence.Column
</m:type>
<m:properties>
<m:property>
<m:key>
name
</m:key>
<m:value>
advance_balance
</m:value>
</m:property>
</m:properties>
</m:annotation>
</m:annotations>
<m:id>
5ea9c8c3-989d-4534-afd9-ae8cae3dcdb1
</m:id>
<m:name>
advanceBalance
</m:name>
<m:title>
预付款余额
</m:title>
<m:type>
fixnum
</m:type>
<m:description></m:description>
<m:default></m:default>
</m:attribute>
</m:attributes>
</m:attributes>
</m:class>
</m:class>
</content>
</content>
...
...
backend/xyst.dinas.project/src/main/resources/com/xyst/dinas/project/query/PurchaseSandCompany.jmx
View file @
43c8d5f5
...
@@ -148,6 +148,26 @@
...
@@ -148,6 +148,26 @@
<m:desc></m:desc>
<m:desc></m:desc>
</m:field>
</m:field>
<m:field>
<m:field>
<m:name>
advanceBalance
</m:name>
<m:title>
预付款余额
</m:title>
<m:type>
fixnum
</m:type>
<m:ref>
<m:name></m:name>
<m:type></m:type>
</m:ref>
<m:desc></m:desc>
</m:field>
<m:field>
<m:name>
plateNumber
</m:name>
<m:title>
车牌号
</m:title>
<m:type>
string
</m:type>
<m:ref>
<m:name></m:name>
<m:type></m:type>
</m:ref>
<m:desc>
车牌号
</m:desc>
</m:field>
<m:field>
<m:name>
discard
</m:name>
<m:name>
discard
</m:name>
<m:title>
废弃
</m:title>
<m:title>
废弃
</m:title>
<m:type>
boolean
</m:type>
<m:type>
boolean
</m:type>
...
...
backend/xyst.dinas.project/src/main/resources/config/PurchaseSandCompany.hbm.xml
View file @
43c8d5f5
...
@@ -51,6 +51,17 @@
...
@@ -51,6 +51,17 @@
<property
name=
"contactNumber"
type=
"nstring"
not-null=
"false"
>
<property
name=
"contactNumber"
type=
"nstring"
not-null=
"false"
>
<column
name=
"contact_number"
length=
"100"
></column>
<column
name=
"contact_number"
length=
"100"
></column>
</property>
</property>
<property
name=
"plateNumber"
type=
"nstring"
not-null=
"false"
>
<column
name=
"plate_number"
length=
"100"
>
<comment>
车牌号,没有合同的大客户才有这个值
</comment>
</column>
</property>
<property
name=
"advanceBalance"
type=
"big_decimal"
not-null=
"false"
>
<column
name=
"advance_balance"
precision=
"12"
scale=
"4"
>
<comment>
预付款余额,对应没有合同的大客户
</comment>
</column>
</property>
<many-to-one
name=
"regionalCompany"
entity-name=
"com.xyst.dinas.biz.datamodel.xystOrganization"
fetch=
"select"
>
<many-to-one
name=
"regionalCompany"
entity-name=
"com.xyst.dinas.biz.datamodel.xystOrganization"
fetch=
"select"
>
<column
name=
"regional_company"
not-null=
"false"
></column>
<column
name=
"regional_company"
not-null=
"false"
></column>
</many-to-one>
</many-to-one>
...
...
backend/xyst.dinas.sales/src/main/java/com/xyst/dinas/sales/dao/SalesPlanDao.java
View file @
43c8d5f5
...
@@ -236,7 +236,8 @@ public class SalesPlanDao {
...
@@ -236,7 +236,8 @@ public class SalesPlanDao {
detachedCriteria
.
add
(
Restrictions
.
eq
(
"purchaseSandUnit.id"
,
purchaseSandUnitId
));
detachedCriteria
.
add
(
Restrictions
.
eq
(
"purchaseSandUnit.id"
,
purchaseSandUnitId
));
detachedCriteria
.
add
(
Restrictions
.
eq
(
"master.planningCycle.id"
,
planningCycleId
));
detachedCriteria
.
add
(
Restrictions
.
eq
(
"master.planningCycle.id"
,
planningCycleId
));
detachedCriteria
.
add
(
Restrictions
.
eq
(
"project.id"
,
projectId
));
detachedCriteria
.
add
(
Restrictions
.
eq
(
"project.id"
,
projectId
));
return
(
List
<
KObject
>)
template
.
findByCriteria
(
detachedCriteria
);
detachedCriteria
.
add
(
Restrictions
.
eq
(
BaseConstants
.
MASTER
+
"."
+
SalesPlanConstant
.
APPROVE_STATE
,
BizProcessState
.
DONE_WITH_AGREE
.
getValue
()));
return
(
List
<
KObject
>)
template
.
findByCriteria
(
detachedCriteria
);
}
}
/**
/**
...
@@ -391,5 +392,27 @@ public class SalesPlanDao {
...
@@ -391,5 +392,27 @@ public class SalesPlanDao {
}
}
/**
* 根据车牌号获取本周期下的已有的销售计划
* @param carNum
* @param station
* @return
*/
public
List
<
KObject
>
getSaleByCarNum
(
String
carNum
,
KObject
station
)
{
KClass
bean
=
Amino
.
getStaticMetadataContext
().
getBean
(
SalesPlanConstant
.
ENTITY_DETAIL
,
KClass
.
class
);
DetachedCriteria
detachedCriteria
=
DetachedCriteria
.
forEntityName
(
bean
.
getName
());
dinasTypeDao
.
addRegionalCompanyFilter
(
detachedCriteria
);
detachedCriteria
.
createAlias
(
"master"
,
"master"
);
detachedCriteria
.
createAlias
(
BaseConstants
.
MASTER
+
".planningCycle"
,
"planningCycle"
);
detachedCriteria
.
createAlias
(
"station"
,
"station"
);
detachedCriteria
.
createAlias
(
"contract"
,
"contract"
);
detachedCriteria
.
add
(
Restrictions
.
le
(
"planningCycle.startTime"
,
new
Date
()));
detachedCriteria
.
add
(
Restrictions
.
ge
(
"planningCycle.endTime"
,
new
Date
()));
detachedCriteria
.
add
(
Restrictions
.
eq
(
"station.id"
,
station
.
getUuid
(
"id"
)));
detachedCriteria
.
add
(
Restrictions
.
eq
(
BaseConstants
.
MASTER
+
"."
+
SalesPlanConstant
.
APPROVE_STATE
,
BizProcessState
.
DONE_WITH_AGREE
.
getValue
()));
detachedCriteria
.
add
(
Restrictions
.
like
(
"contract.carInfo"
,
"%"
+
carNum
+
"%"
));
return
(
List
<
KObject
>)
template
.
findByCriteria
(
detachedCriteria
);
}
}
}
backend/xyst.dinas.sales/src/main/java/com/xyst/dinas/sales/dao/SalesRecordDao.java
View file @
43c8d5f5
...
@@ -5,6 +5,7 @@ import java.util.Map;
...
@@ -5,6 +5,7 @@ import java.util.Map;
import
java.util.UUID
;
import
java.util.UUID
;
import
com.beecode.bcp.type.KObject
;
import
com.beecode.bcp.type.KObject
;
import
com.xyst.dinas.sales.web.info.SalesRecordInfo
;
public
interface
SalesRecordDao
{
public
interface
SalesRecordDao
{
...
@@ -18,4 +19,6 @@ public interface SalesRecordDao {
...
@@ -18,4 +19,6 @@ public interface SalesRecordDao {
KObject
findCardByPlateNumber
(
String
string
,
KObject
kObject
);
KObject
findCardByPlateNumber
(
String
string
,
KObject
kObject
);
void
insertList
(
List
<
KObject
>
salesRecordInfos
);
void
insertList
(
List
<
KObject
>
salesRecordInfos
);
void
updateActualTransportationById
(
SalesRecordInfo
salesRecordInfo
);
}
}
backend/xyst.dinas.sales/src/main/java/com/xyst/dinas/sales/internal/dao/SalesRecordDaoImpl.java
View file @
43c8d5f5
...
@@ -10,7 +10,9 @@ import com.beecode.bcp.serial.Serial;
...
@@ -10,7 +10,9 @@ import com.beecode.bcp.serial.Serial;
import
com.beecode.bcp.type.KClass
;
import
com.beecode.bcp.type.KClass
;
import
com.beecode.inz.common.BaseConstants
;
import
com.beecode.inz.common.BaseConstants
;
import
com.beecode.util.DateUtil
;
import
com.beecode.util.DateUtil
;
import
com.xyst.dinas.sales.web.info.SalesRecordInfo
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.hibernate.HibernateException
;
import
org.hibernate.HibernateException
;
import
org.hibernate.Session
;
import
org.hibernate.Session
;
import
org.hibernate.criterion.DetachedCriteria
;
import
org.hibernate.criterion.DetachedCriteria
;
...
@@ -85,6 +87,7 @@ public class SalesRecordDaoImpl implements SalesRecordDao, SalesRecordConstant {
...
@@ -85,6 +87,7 @@ public class SalesRecordDaoImpl implements SalesRecordDao, SalesRecordConstant {
kObject
.
set
(
"saleRecord"
,
salesRecord
);
kObject
.
set
(
"saleRecord"
,
salesRecord
);
kObject
.
set
(
"transportVehicle"
,
cardInfo
);
kObject
.
set
(
"transportVehicle"
,
cardInfo
);
kObject
.
set
(
"confirmStatus"
,
0
);
kObject
.
set
(
"confirmStatus"
,
0
);
template
.
save
(
kObject
);
}
}
@Override
@Override
...
@@ -109,4 +112,21 @@ public class SalesRecordDaoImpl implements SalesRecordDao, SalesRecordConstant {
...
@@ -109,4 +112,21 @@ public class SalesRecordDaoImpl implements SalesRecordDao, SalesRecordConstant {
return
null
;
return
null
;
});
});
}
}
@Override
public
void
updateActualTransportationById
(
SalesRecordInfo
salesRecordInfo
)
{
if
(
StringUtils
.
isNotBlank
(
salesRecordInfo
.
getTransportTypeId
())){
KObject
kObject
=
(
KObject
)
template
.
get
(
TRANSPORT_RECORD_ENTITY
,
UUID
.
fromString
(
salesRecordInfo
.
getTransportTypeId
()));
if
(
kObject
!=
null
&&!
kObject
.
isNull
()){
BigDecimal
actualTransportation
=
kObject
.
getBigDecimal
(
"actualTransportation"
);
if
(
actualTransportation
==
null
){
actualTransportation
=
BigDecimal
.
ZERO
;
}
actualTransportation
=
actualTransportation
.
add
(
BigDecimal
.
valueOf
(
salesRecordInfo
.
getDealAmount
()));
kObject
.
set
(
"actualTransportation"
,
actualTransportation
);
template
.
update
(
kObject
);
}
}
}
}
}
\ No newline at end of file
backend/xyst.dinas.sales/src/main/java/com/xyst/dinas/sales/internal/service/InventoryServiceImpl.java
View file @
43c8d5f5
...
@@ -12,6 +12,7 @@ import java.util.stream.Collectors;
...
@@ -12,6 +12,7 @@ import java.util.stream.Collectors;
import
javax.transaction.Transactional
;
import
javax.transaction.Transactional
;
import
com.beecode.inz.basis.util.JsonUtil
;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
@@ -215,7 +216,7 @@ public class InventoryServiceImpl implements InventoryService {
...
@@ -215,7 +216,7 @@ public class InventoryServiceImpl implements InventoryService {
List
<
StationDinasTypePriceDetail
>
price
=
null
;
List
<
StationDinasTypePriceDetail
>
price
=
null
;
StationDinasTypeRelation
item
=
null
;
StationDinasTypeRelation
item
=
null
;
if
(
priceList
!=
null
)
{
if
(
priceList
!=
null
)
{
price
=
priceList
.
stream
().
filter
(
StationDinasTypePriceDetail
->
StationDinasTypePriceDetail
.
getDinasTypeId
().
equals
(
dinasType
.
getUuid
(
"id"
))
&&
S
tationDinasTypePriceDetail
.
getStationId
().
equals
(
station
.
getUuid
(
"id"
))
).
collect
(
Collectors
.
toList
());
price
=
priceList
.
stream
().
filter
(
stationDinasTypePriceDetail
->
stationDinasTypePriceDetail
.
getDinasTypeId
().
equals
(
dinasType
.
getUuid
(
"id"
))
&&
s
tationDinasTypePriceDetail
.
getStationId
().
equals
(
station
.
getUuid
(
"id"
))
).
collect
(
Collectors
.
toList
());
if
(
price
.
size
()
>
0
)
{
if
(
price
.
size
()
>
0
)
{
item
=
new
StationDinasTypeRelation
(
station
.
getUuid
(
"id"
),
dinasType
.
getUuid
(
"id"
),
price
.
get
(
0
).
getDinasPrice
());
item
=
new
StationDinasTypeRelation
(
station
.
getUuid
(
"id"
),
dinasType
.
getUuid
(
"id"
),
price
.
get
(
0
).
getDinasPrice
());
}
else
{
}
else
{
...
@@ -256,14 +257,15 @@ public class InventoryServiceImpl implements InventoryService {
...
@@ -256,14 +257,15 @@ public class InventoryServiceImpl implements InventoryService {
return
result
;
return
result
;
}
}
public
Double
getStockAmountByDinas
(
UUID
stationId
,
String
dinasTypeName
)
{
@Override
public
Double
getStockAmountByDinas
(
UUID
stationId
,
String
dinasTypeName
)
{
return
inventoryDao
.
getStockAmountByDinas
(
stationId
,
dinasTypeName
);
return
inventoryDao
.
getStockAmountByDinas
(
stationId
,
dinasTypeName
);
}
}
@Override
@Override
public
List
<
StationDinasTypeRelation
>
getItemListByStationId
(
UUID
stationId
)
{
public
List
<
Map
<
String
,
Object
>
>
getItemListByStationId
(
UUID
stationId
)
{
List
<
KObject
>
itemListByStationId
=
inventoryDao
.
getItemListByStationId
(
stationId
);
List
<
KObject
>
itemListByStationId
=
inventoryDao
.
getItemListByStationId
(
stationId
);
List
<
StationDinasTypeRelation
>
result
=
new
ArrayList
<>();
List
<
Map
<
String
,
Object
>
>
result
=
new
ArrayList
<>();
for
(
KObject
item
:
itemListByStationId
)
{
for
(
KObject
item
:
itemListByStationId
)
{
if
(
item
.
getBigDecimal
(
"price"
)==
null
||
item
.
getBigDecimal
(
"price"
).
compareTo
(
BigDecimal
.
ZERO
)<
1
){
if
(
item
.
getBigDecimal
(
"price"
)==
null
||
item
.
getBigDecimal
(
"price"
).
compareTo
(
BigDecimal
.
ZERO
)<
1
){
continue
;
continue
;
...
@@ -275,7 +277,11 @@ public class InventoryServiceImpl implements InventoryService {
...
@@ -275,7 +277,11 @@ public class InventoryServiceImpl implements InventoryService {
r
.
setDinasTypeName
(
item
.
get
(
"dinasType"
).
getString
(
"dinasTypeName"
));
r
.
setDinasTypeName
(
item
.
get
(
"dinasType"
).
getString
(
"dinasTypeName"
));
r
.
setAmount
(
item
.
getBigDecimal
(
"amount"
));
r
.
setAmount
(
item
.
getBigDecimal
(
"amount"
));
r
.
setPrice
(
item
.
getBigDecimal
(
"price"
));
r
.
setPrice
(
item
.
getBigDecimal
(
"price"
));
result
.
add
(
r
);
String
s
=
JsonUtil
.
beanToJson
(
r
);
Map
<
String
,
Object
>
stringObjectMap
=
JsonUtil
.
jsonToMap
(
s
,
String
.
class
,
Object
.
class
);
stringObjectMap
.
put
(
"saleType"
,
2
);
stringObjectMap
.
put
(
"transportType"
,
2
);
result
.
add
(
stringObjectMap
);
}
}
return
result
;
return
result
;
}
}
...
...
backend/xyst.dinas.sales/src/main/java/com/xyst/dinas/sales/internal/service/SalesPlanServiceImpl.java
View file @
43c8d5f5
This diff is collapsed.
Click to expand it.
backend/xyst.dinas.sales/src/main/java/com/xyst/dinas/sales/internal/service/SalesRecordServiceImpl.java
View file @
43c8d5f5
This diff is collapsed.
Click to expand it.
backend/xyst.dinas.sales/src/main/java/com/xyst/dinas/sales/service/InventoryService.java
View file @
43c8d5f5
package
com
.
xyst
.
dinas
.
sales
.
service
;
package
com
.
xyst
.
dinas
.
sales
.
service
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.UUID
;
import
java.util.UUID
;
import
com.beecode.bcp.type.KObject
;
import
com.beecode.bcp.type.KObject
;
...
@@ -14,7 +15,7 @@ public interface InventoryService {
...
@@ -14,7 +15,7 @@ public interface InventoryService {
public
ResponseObj
<
String
>
modifyInventory
(
String
body
,
boolean
isLog
,
boolean
autoCalculate
);
public
ResponseObj
<
String
>
modifyInventory
(
String
body
,
boolean
isLog
,
boolean
autoCalculate
);
public
List
<
InventoryLog
>
queryLog
(
UUID
regionalCompany
);
public
List
<
InventoryLog
>
queryLog
(
UUID
regionalCompany
);
List
<
StationDinasTypeRelation
>
getItemListByStationId
(
UUID
stationId
);
List
<
Map
<
String
,
Object
>
>
getItemListByStationId
(
UUID
stationId
);
Object
queryWarnSettingById
(
UUID
id
);
Object
queryWarnSettingById
(
UUID
id
);
...
...
backend/xyst.dinas.sales/src/main/java/com/xyst/dinas/sales/service/SalesPlanService.java
View file @
43c8d5f5
...
@@ -9,7 +9,6 @@ import org.json.JSONObject;
...
@@ -9,7 +9,6 @@ import org.json.JSONObject;
import
org.springframework.lang.Nullable
;
import
org.springframework.lang.Nullable
;
import
com.beecode.bcp.type.KObject
;
import
com.beecode.bcp.type.KObject
;
import
com.xyst.dinas.sales.entity.SalesPlanDetail
;
import
com.xyst.dinas.sales.web.request.SaleaPlanDetailQuery
;
import
com.xyst.dinas.sales.web.request.SaleaPlanDetailQuery
;
public
interface
SalesPlanService
{
public
interface
SalesPlanService
{
...
@@ -90,4 +89,5 @@ public interface SalesPlanService {
...
@@ -90,4 +89,5 @@ public interface SalesPlanService {
List
<
KObject
>
getSealTempDinasTypeListByNeedPlanInfo
(
UUID
purchaseSandUnitId
,
UUID
planningCycleId
,
UUID
projectId
);
List
<
KObject
>
getSealTempDinasTypeListByNeedPlanInfo
(
UUID
purchaseSandUnitId
,
UUID
planningCycleId
,
UUID
projectId
);
List
<
Map
<
String
,
Object
>>
querySalesPlanByCarNum
(
KObject
station
,
String
carNum
);
List
<
Map
<
String
,
Object
>>
querySalesPlanByCarNum
(
KObject
station
,
String
carNum
);
}
}
backend/xyst.dinas.sales/src/main/java/com/xyst/dinas/sales/service/SalesRecordService.java
View file @
43c8d5f5
package
com
.
xyst
.
dinas
.
sales
.
service
;
package
com
.
xyst
.
dinas
.
sales
.
service
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.List
;
import
com.beecode.bcp.type.KObject
;
import
com.beecode.bcp.type.KObject
;
import
com.xyst.dinas.sales.web.info.SalesRecordInfo
;
import
com.xyst.dinas.sales.web.info.SalesRecordInfo
;
...
@@ -16,7 +15,7 @@ public interface SalesRecordService {
...
@@ -16,7 +15,7 @@ public interface SalesRecordService {
* @param station
* @param station
* @return
* @return
*/
*/
String
saveSalesRecordService
(
SalesRecordInfo
salesRecordList
,
KObject
station
);
HashMap
<
String
,
Object
>
saveSalesRecordService
(
SalesRecordInfo
salesRecordList
,
KObject
station
);
HashMap
<
String
,
Object
>
qualityReportExcelImport
(
MultipartFile
file
);
HashMap
<
String
,
Object
>
qualityReportExcelImport
(
MultipartFile
file
);
}
}
backend/xyst.dinas.sales/src/main/java/com/xyst/dinas/sales/web/info/SalesRecordInfo.java
View file @
43c8d5f5
...
@@ -127,6 +127,14 @@ public class SalesRecordInfo {
...
@@ -127,6 +127,14 @@ public class SalesRecordInfo {
* 销售单号
* 销售单号
*/
*/
private
String
dealBillCode
;
private
String
dealBillCode
;
/**
* 运输单id
*/
private
String
transportTypeId
;
/**
* 收货方,作为没有合同的购砂单位使用
*/
private
String
consignee
;
/**
/**
* 配送方式 0自提(运输公司自己拿) 1配送(砂石公司指派车辆) 2散客(没有车牌号,不知何处来. 不知何处去)
* 配送方式 0自提(运输公司自己拿) 1配送(砂石公司指派车辆) 2散客(没有车牌号,不知何处来. 不知何处去)
...
@@ -138,6 +146,21 @@ public class SalesRecordInfo {
...
@@ -138,6 +146,21 @@ public class SalesRecordInfo {
*/
*/
private
Integer
saleType
;
private
Integer
saleType
;
public
String
getTransportTypeId
()
{
return
transportTypeId
;
}
public
void
setTransportTypeId
(
String
transportTypeId
)
{
this
.
transportTypeId
=
transportTypeId
;
}
public
String
getConsignee
()
{
return
consignee
;
}
public
void
setConsignee
(
String
consignee
)
{
this
.
consignee
=
consignee
;
}
public
String
getProjectId
()
{
public
String
getProjectId
()
{
return
projectId
;
return
projectId
;
...
...
backend/xyst.dinas.transport/build.gradle
View file @
43c8d5f5
...
@@ -6,6 +6,7 @@ dependencies {
...
@@ -6,6 +6,7 @@ dependencies {
compile
lib
.
spring_web
compile
lib
.
spring_web
compile
lib
.
spring_boot_autoconfigure
compile
lib
.
spring_boot_autoconfigure
compile
lib
.
jackson_datatype_jdk8
compile
lib
.
jackson_datatype_jdk8
compile
lib
.
thumbnailator
compile
lib
.
jackson_datatype_jsr310
compile
lib
.
jackson_datatype_jsr310
compile
lib
.
json
compile
lib
.
json
compile
"com.beecode:bap2.participant:${aminoVersion}"
compile
"com.beecode:bap2.participant:${aminoVersion}"
...
...
backend/xyst.dinas.transport/src/main/java/com/xyst/dinas/transport/internal/service/VehicleDispatchServiceImpl.java
View file @
43c8d5f5
...
@@ -89,7 +89,6 @@ public class VehicleDispatchServiceImpl implements VehicleDispatchService {
...
@@ -89,7 +89,6 @@ public class VehicleDispatchServiceImpl implements VehicleDispatchService {
kobject
.
set
(
VehicleDispatchConstant
.
STATION
,
load
.
get
(
VehicleDispatchConstant
.
STATION
));
kobject
.
set
(
VehicleDispatchConstant
.
STATION
,
load
.
get
(
VehicleDispatchConstant
.
STATION
));
kobject
.
set
(
VehicleDispatchConstant
.
PLAN_AMOUNT
,
load
.
getBigDecimal
(
VehicleDispatchConstant
.
PLAN_AMOUNT
));
kobject
.
set
(
VehicleDispatchConstant
.
PLAN_AMOUNT
,
load
.
getBigDecimal
(
VehicleDispatchConstant
.
PLAN_AMOUNT
));
}
else
{
}
else
{
load
=
vehicleDispatchDao
.
load
(
SalesPlanConstant
.
ENTITY_TEMP_DETAIL
,
sealDetailId
);
load
=
vehicleDispatchDao
.
load
(
SalesPlanConstant
.
ENTITY_TEMP_DETAIL
,
sealDetailId
);
planningCycle
=
load
.
get
(
BaseConstants
.
MASTER
).
get
(
VehicleDispatchConstant
.
PLANNING_CYCLE
);
planningCycle
=
load
.
get
(
BaseConstants
.
MASTER
).
get
(
VehicleDispatchConstant
.
PLANNING_CYCLE
);
kobject
.
set
(
VehicleDispatchConstant
.
PURCHASE_SAND_UNIT
,
load
.
get
(
BaseConstants
.
MASTER
).
get
(
VehicleDispatchConstant
.
CONTRACT
).
get
(
VehicleDispatchConstant
.
PURCHASE_SAND_UNIT
));
kobject
.
set
(
VehicleDispatchConstant
.
PURCHASE_SAND_UNIT
,
load
.
get
(
BaseConstants
.
MASTER
).
get
(
VehicleDispatchConstant
.
CONTRACT
).
get
(
VehicleDispatchConstant
.
PURCHASE_SAND_UNIT
));
...
@@ -188,6 +187,8 @@ public class VehicleDispatchServiceImpl implements VehicleDispatchService {
...
@@ -188,6 +187,8 @@ public class VehicleDispatchServiceImpl implements VehicleDispatchService {
Map
<
String
,
Object
>
stringObjectHashMap
=
new
HashMap
<
String
,
Object
>();
Map
<
String
,
Object
>
stringObjectHashMap
=
new
HashMap
<
String
,
Object
>();
//车牌号
//车牌号
stringObjectHashMap
.
put
(
"carNum"
,
carNum
);
stringObjectHashMap
.
put
(
"carNum"
,
carNum
);
//车牌号
stringObjectHashMap
.
put
(
"transportTypeId"
,
dispatch
.
getUuid
(
"id"
));
//计划周期
//计划周期
stringObjectHashMap
.
put
(
"planningCycleTitle"
,
planningCycle
.
getString
(
"title"
));
stringObjectHashMap
.
put
(
"planningCycleTitle"
,
planningCycle
.
getString
(
"title"
));
//计划id
//计划id
...
@@ -200,6 +201,12 @@ public class VehicleDispatchServiceImpl implements VehicleDispatchService {
...
@@ -200,6 +201,12 @@ public class VehicleDispatchServiceImpl implements VehicleDispatchService {
stringObjectHashMap
.
put
(
"projectId"
,
project
.
getUuid
(
"id"
));
stringObjectHashMap
.
put
(
"projectId"
,
project
.
getUuid
(
"id"
));
//合同id
//合同id
stringObjectHashMap
.
put
(
"contractId"
,
contract
.
getUuid
(
"id"
));
stringObjectHashMap
.
put
(
"contractId"
,
contract
.
getUuid
(
"id"
));
//收货方名称
stringObjectHashMap
.
put
(
"consignee"
,
contract
.
get
(
"purchaseSandUnit"
).
getString
(
"name"
));
//供货方名称
stringObjectHashMap
.
put
(
"supplier"
,
station
.
getString
(
"stationName"
));
//地址
stringObjectHashMap
.
put
(
"shippingAddress"
,
contract
.
getString
(
"addrReceive"
));
//砂石类型名称
//砂石类型名称
stringObjectHashMap
.
put
(
"dinasTypeName"
,
dinasType
.
getString
(
"dinasTypeName"
));
stringObjectHashMap
.
put
(
"dinasTypeName"
,
dinasType
.
getString
(
"dinasTypeName"
));
//砂石类型id
//砂石类型id
...
...
backend/xyst.dinas.transport/src/main/java/com/xyst/dinas/transport/web/WeighbridgeSyncController.java
View file @
43c8d5f5
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