Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
jinli gu
JSH ERP
Commits
5cc26a22
Commit
5cc26a22
authored
Dec 19, 2018
by
季圣华
Browse files
更新后端,采用Springboot+mybatis
parent
bb6f5528
Changes
187
Hide whitespace changes
Inline
Side-by-side
Too many changes to show.
To preserve performance only
20 of 187+
files are displayed.
Plain diff
Email patch
src/main/java/com/jsh/erp/config/DbConfig.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.config
;
import
com.alibaba.druid.pool.DruidDataSource
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Qualifier
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Primary
;
import
org.springframework.jdbc.core.JdbcTemplate
;
import
org.springframework.transaction.annotation.EnableTransactionManagement
;
import
javax.sql.DataSource
;
@Configuration
@EnableTransactionManagement
(
proxyTargetClass
=
true
)
public
class
DbConfig
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
DbConfig
.
class
);
@Bean
(
name
=
"erpDatasource"
)
@Primary
public
DataSource
erpDatasource
(
ErpDatasourceProperties
properties
){
try
{
DruidDataSource
datasource
=
new
DruidDataSource
();
datasource
.
setDriverClassName
(
properties
.
driverClassName
);
datasource
.
setUrl
(
properties
.
url
);
datasource
.
setUsername
(
properties
.
username
);
datasource
.
setPassword
(
properties
.
password
);
datasource
.
setInitialSize
(
1
);
datasource
.
setMinIdle
(
1
);
datasource
.
setMaxWait
(
60000
);
datasource
.
setMaxActive
(
5
);
datasource
.
setTimeBetweenEvictionRunsMillis
(
60000
);
datasource
.
setValidationQuery
(
"select '1'"
);
datasource
.
setTestOnBorrow
(
false
);
datasource
.
setTestOnReturn
(
false
);
datasource
.
setTestWhileIdle
(
true
);
datasource
.
setPoolPreparedStatements
(
true
);
datasource
.
setMaxOpenPreparedStatements
(
20
);
datasource
.
setMinEvictableIdleTimeMillis
(
300000
);
datasource
.
init
();
return
datasource
;
}
catch
(
Exception
e
){
logger
.
error
(
"服务启动失败,jsh_erp数据库Datasource初始化失败:"
+
e
.
getMessage
());
throw
new
IllegalArgumentException
(
e
);
}
}
@Bean
@Primary
public
JdbcTemplate
jdbcTemplate
(
@Qualifier
(
"erpDatasource"
)
DataSource
dataSource
)
{
return
new
JdbcTemplate
(
dataSource
);
}
@Configuration
@ConfigurationProperties
(
prefix
=
"erpDatasource"
)
public
static
class
ErpDatasourceProperties
{
private
String
driverClassName
;
private
String
url
;
private
String
username
;
private
String
password
;
public
String
getDriverClassName
()
{
return
driverClassName
;
}
public
void
setDriverClassName
(
String
driverClassName
)
{
this
.
driverClassName
=
driverClassName
;
}
public
String
getUrl
()
{
return
url
;
}
public
void
setUrl
(
String
url
)
{
this
.
url
=
url
;
}
public
String
getUsername
()
{
return
username
;
}
public
void
setUsername
(
String
username
)
{
this
.
username
=
username
;
}
public
String
getPassword
()
{
return
password
;
}
public
void
setPassword
(
String
password
)
{
this
.
password
=
password
;
}
}
}
src/main/java/com/jsh/erp/config/WebConfig.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.config
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.boot.context.embedded.ConfigurableEmbeddedServletContainer
;
import
org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.context.annotation.Configuration
;
import
java.io.File
;
@Configuration
public
class
WebConfig
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
WebConfig
.
class
);
@Configuration
@ConfigurationProperties
(
prefix
=
"web.front"
)
public
static
class
FrontEnd
implements
EmbeddedServletContainerCustomizer
{
private
File
baseDir
;
public
File
getBaseDir
()
{
return
baseDir
;
}
public
void
setBaseDir
(
File
baseDir
)
{
this
.
baseDir
=
baseDir
;
}
@Override
public
void
customize
(
ConfigurableEmbeddedServletContainer
container
)
{
if
(!
baseDir
.
exists
())
{
if
(!
baseDir
.
mkdir
())
{
logger
.
info
(
"create web.front base path:"
+
baseDir
+
" failed!already exists!"
);
}
else
{
logger
.
info
(
"create web.front base path:"
+
baseDir
+
" success!"
);
}
}
container
.
setDocumentRoot
(
baseDir
);
}
}
}
\ No newline at end of file
src/main/java/com/jsh/erp/controller/AccountController.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.datasource.entities.Account
;
import
com.jsh.erp.datasource.vo.AccountVo4InOutList
;
import
com.jsh.erp.service.account.AccountService
;
import
com.jsh.erp.utils.BaseResponseInfo
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@RestController
@RequestMapping
(
value
=
"/account"
)
public
class
AccountController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
AccountController
.
class
);
@Resource
private
AccountService
accountService
;
/**
* 查找结算账户信息-下拉框
* @param request
* @return
*/
@GetMapping
(
value
=
"/findBySelect"
)
public
String
findBySelect
(
HttpServletRequest
request
)
{
String
res
=
null
;
try
{
List
<
Account
>
dataList
=
accountService
.
findBySelect
();
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
Account
account
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"Id"
,
account
.
getId
());
//结算账户名称
item
.
put
(
"AccountName"
,
account
.
getName
());
dataArray
.
add
(
item
);
}
}
res
=
dataArray
.
toJSONString
();
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
=
"获取数据失败"
;
}
return
res
;
}
/**
* 获取所有结算账户
* @param request
* @return
*/
@GetMapping
(
value
=
"/getAccount"
)
public
BaseResponseInfo
getAccount
(
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
Account
>
accountList
=
accountService
.
getAccount
();
map
.
put
(
"accountList"
,
accountList
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 账户流水信息
* @param currentPage
* @param pageSize
* @param accountId
* @param initialAmount
* @param request
* @return
*/
@GetMapping
(
value
=
"/findAccountInOutList"
)
public
BaseResponseInfo
findAccountInOutList
(
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"pageSize"
)
Integer
pageSize
,
@RequestParam
(
"accountId"
)
Long
accountId
,
@RequestParam
(
"initialAmount"
)
Double
initialAmount
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
AccountVo4InOutList
>
dataList
=
accountService
.
findAccountInOutList
(
accountId
,
(
currentPage
-
1
)*
pageSize
,
pageSize
);
int
total
=
accountService
.
findAccountInOutListCount
(
accountId
);
map
.
put
(
"total"
,
total
);
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
AccountVo4InOutList
aEx
:
dataList
)
{
String
timeStr
=
aEx
.
getOperTime
().
toString
();
Double
balance
=
accountService
.
getAccountSum
(
accountId
,
timeStr
,
"date"
)
+
accountService
.
getAccountSumByHead
(
accountId
,
timeStr
,
"date"
)
+
accountService
.
getAccountSumByDetail
(
accountId
,
timeStr
,
"date"
)
+
accountService
.
getManyAccountSum
(
accountId
,
timeStr
,
"date"
)
+
initialAmount
;
aEx
.
setBalance
(
balance
);
dataArray
.
add
(
aEx
);
}
}
map
.
put
(
"rows"
,
dataArray
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
}
src/main/java/com/jsh/erp/controller/AccountHeadController.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.datasource.entities.AccountHead
;
import
com.jsh.erp.datasource.entities.AccountHeadVo4ListEx
;
import
com.jsh.erp.service.accountHead.AccountHeadService
;
import
com.jsh.erp.utils.BaseResponseInfo
;
import
com.jsh.erp.utils.ErpInfo
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
static
com
.
jsh
.
erp
.
utils
.
ResponseJsonUtil
.
returnJson
;
@RestController
@RequestMapping
(
value
=
"/accountHead"
)
public
class
AccountHeadController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
AccountHeadController
.
class
);
@Resource
private
AccountHeadService
accountHeadService
;
/**
* 获取最大的id
* @param request
* @return
*/
@GetMapping
(
value
=
"/getMaxId"
)
public
BaseResponseInfo
getMaxId
(
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
Long
maxId
=
accountHeadService
.
getMaxId
();
map
.
put
(
"maxId"
,
maxId
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 查询单位的累计应收和累计应付,收预付款不计入此处
* @param supplierId
* @param endTime
* @param supType
* @param request
* @return
*/
@GetMapping
(
value
=
"/findTotalPay"
)
public
BaseResponseInfo
findTotalPay
(
@RequestParam
(
"supplierId"
)
Integer
supplierId
,
@RequestParam
(
"endTime"
)
String
endTime
,
@RequestParam
(
"supType"
)
String
supType
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
JSONObject
outer
=
new
JSONObject
();
Double
sum
=
0.0
;
String
getS
=
supplierId
.
toString
();
int
i
=
1
;
if
(
supType
.
equals
(
"customer"
))
{
//客户
i
=
1
;
}
else
if
(
supType
.
equals
(
"vendor"
))
{
//供应商
i
=
-
1
;
}
//收付款部分
sum
=
sum
+
(
allMoney
(
getS
,
"付款"
,
"合计"
,
endTime
)
+
allMoney
(
getS
,
"付款"
,
"实际"
,
endTime
))
*
i
;
sum
=
sum
-
(
allMoney
(
getS
,
"收款"
,
"合计"
,
endTime
)
+
allMoney
(
getS
,
"收款"
,
"实际"
,
endTime
))
*
i
;
sum
=
sum
+
(
allMoney
(
getS
,
"收入"
,
"合计"
,
endTime
)
-
allMoney
(
getS
,
"收入"
,
"实际"
,
endTime
))
*
i
;
sum
=
sum
-
(
allMoney
(
getS
,
"支出"
,
"合计"
,
endTime
)
-
allMoney
(
getS
,
"支出"
,
"实际"
,
endTime
))
*
i
;
outer
.
put
(
"getAllMoney"
,
sum
);
map
.
put
(
"rows"
,
outer
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 根据编号查询单据信息
* @param number
* @param request
* @return
*/
@GetMapping
(
value
=
"/getDetailByNumber"
)
public
BaseResponseInfo
getDetailByNumber
(
@RequestParam
(
"billNo"
)
String
billNo
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
AccountHeadVo4ListEx
ahl
=
new
AccountHeadVo4ListEx
();
try
{
List
<
AccountHeadVo4ListEx
>
list
=
accountHeadService
.
getDetailByNumber
(
billNo
);
if
(
list
.
size
()
==
1
)
{
ahl
=
list
.
get
(
0
);
}
res
.
code
=
200
;
res
.
data
=
ahl
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 统计总金额
* @param getS
* @param type
* @param subType
* @param mode 合计或者金额
* @return
*/
public
Double
allMoney
(
String
getS
,
String
type
,
String
mode
,
String
endTime
)
{
Double
allMoney
=
0.0
;
try
{
Integer
supplierId
=
Integer
.
valueOf
(
getS
);
Double
sum
=
accountHeadService
.
findAllMoney
(
supplierId
,
type
,
mode
,
endTime
);
if
(
sum
!=
null
)
{
allMoney
=
sum
;
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
//返回正数,如果负数也转为正数
if
(
allMoney
<
0
)
{
allMoney
=
-
allMoney
;
}
return
allMoney
;
}
}
src/main/java/com/jsh/
action/materials
/AccountItem
Action
.java
→
src/main/java/com/jsh/
erp/controller
/AccountItem
Controller
.java
View file @
5cc26a22
package
com.jsh.action.materials
;
import
com.jsh.base.BaseAction
;
import
com.jsh.base.Log
;
import
com.jsh.model.po.*
;
import
com.jsh.model.vo.materials.AccountItemModel
;
import
com.jsh.service.materials.AccountItemIService
;
import
com.jsh.util.PageUtil
;
import
net.sf.json.JSONArray
;
import
net.sf.json.JSONObject
;
import
org.springframework.dao.DataAccessException
;
import
java.io.IOException
;
import
java.sql.Timestamp
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/*
* 财务明细管理(收支|收付款|转账)
* @author jishenghua qq:752718920
*/
@SuppressWarnings
(
"serial"
)
public
class
AccountItemAction
extends
BaseAction
<
AccountItemModel
>
{
private
AccountItemIService
accountItemService
;
private
AccountItemModel
model
=
new
AccountItemModel
();
/**
* 保存明细
*
* @return
*/
public
void
saveDetials
()
{
Log
.
infoFileSync
(
"==================开始调用保存财务明细信息方法saveDetials()==================="
);
Boolean
flag
=
false
;
try
{
Long
headerId
=
model
.
getHeaderId
();
String
listType
=
model
.
getListType
();
//单据类型
String
inserted
=
model
.
getInserted
();
String
deleted
=
model
.
getDeleted
();
String
updated
=
model
.
getUpdated
();
//转为json
JSONArray
insertedJson
=
JSONArray
.
fromObject
(
inserted
);
JSONArray
deletedJson
=
JSONArray
.
fromObject
(
deleted
);
JSONArray
updatedJson
=
JSONArray
.
fromObject
(
updated
);
if
(
null
!=
insertedJson
)
{
for
(
int
i
=
0
;
i
<
insertedJson
.
size
();
i
++)
{
AccountItem
accountItem
=
new
AccountItem
();
JSONObject
tempInsertedJson
=
JSONObject
.
fromObject
(
insertedJson
.
get
(
i
));
accountItem
.
setHeaderId
(
new
AccountHead
(
headerId
));
if
(
tempInsertedJson
.
get
(
"AccountId"
)
!=
null
&&
!
tempInsertedJson
.
get
(
"AccountId"
).
equals
(
""
))
{
accountItem
.
setAccountId
(
new
Account
(
tempInsertedJson
.
getLong
(
"AccountId"
)));
}
if
(
tempInsertedJson
.
get
(
"InOutItemId"
)
!=
null
&&
!
tempInsertedJson
.
get
(
"InOutItemId"
).
equals
(
""
))
{
accountItem
.
setInOutItemId
(
new
InOutItem
(
tempInsertedJson
.
getLong
(
"InOutItemId"
)));
}
if
(
tempInsertedJson
.
get
(
"EachAmount"
)
!=
null
&&
!
tempInsertedJson
.
get
(
"EachAmount"
).
equals
(
""
))
{
Double
eachAmount
=
tempInsertedJson
.
getDouble
(
"EachAmount"
);
if
(
listType
.
equals
(
"付款"
))
{
eachAmount
=
0
-
eachAmount
;
}
accountItem
.
setEachAmount
(
eachAmount
);
}
else
{
accountItem
.
setEachAmount
(
0.0
);
}
accountItem
.
setRemark
(
tempInsertedJson
.
getString
(
"Remark"
));
accountItemService
.
create
(
accountItem
);
}
}
if
(
null
!=
deletedJson
)
{
for
(
int
i
=
0
;
i
<
deletedJson
.
size
();
i
++)
{
JSONObject
tempDeletedJson
=
JSONObject
.
fromObject
(
deletedJson
.
get
(
i
));
accountItemService
.
delete
(
tempDeletedJson
.
getLong
(
"Id"
));
}
}
if
(
null
!=
updatedJson
)
{
for
(
int
i
=
0
;
i
<
updatedJson
.
size
();
i
++)
{
JSONObject
tempUpdatedJson
=
JSONObject
.
fromObject
(
updatedJson
.
get
(
i
));
AccountItem
accountItem
=
accountItemService
.
get
(
tempUpdatedJson
.
getLong
(
"Id"
));
accountItem
.
setHeaderId
(
new
AccountHead
(
headerId
));
if
(
tempUpdatedJson
.
get
(
"AccountId"
)
!=
null
&&
!
tempUpdatedJson
.
get
(
"AccountId"
).
equals
(
""
))
{
accountItem
.
setAccountId
(
new
Account
(
tempUpdatedJson
.
getLong
(
"AccountId"
)));
}
if
(
tempUpdatedJson
.
get
(
"InOutItemId"
)
!=
null
&&
!
tempUpdatedJson
.
get
(
"InOutItemId"
).
equals
(
""
))
{
accountItem
.
setInOutItemId
(
new
InOutItem
(
tempUpdatedJson
.
getLong
(
"InOutItemId"
)));
}
if
(
tempUpdatedJson
.
get
(
"EachAmount"
)
!=
null
&&
!
tempUpdatedJson
.
get
(
"EachAmount"
).
equals
(
""
))
{
Double
eachAmount
=
tempUpdatedJson
.
getDouble
(
"EachAmount"
);
if
(
listType
.
equals
(
"付款"
))
{
eachAmount
=
0
-
eachAmount
;
}
accountItem
.
setEachAmount
(
eachAmount
);
}
else
{
accountItem
.
setEachAmount
(
0.0
);
}
accountItem
.
setRemark
(
tempUpdatedJson
.
getString
(
"Remark"
));
accountItemService
.
create
(
accountItem
);
}
}
//========标识位===========
flag
=
true
;
//记录操作日志使用
tipMsg
=
"成功"
;
tipType
=
0
;
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>>>保存财务明细信息异常"
,
e
);
flag
=
false
;
tipMsg
=
"失败"
;
tipType
=
1
;
}
finally
{
try
{
toClient
(
flag
.
toString
());
}
catch
(
IOException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>保存财务明细信息回写客户端结果异常"
,
e
);
}
}
logService
.
create
(
new
Logdetails
(
getUser
(),
"保存财务明细"
,
model
.
getClientIp
(),
new
Timestamp
(
System
.
currentTimeMillis
())
,
tipType
,
"保存财务明细对应主表编号为 "
+
model
.
getHeaderId
()
+
" "
+
tipMsg
+
"!"
,
"保存财务明细"
+
tipMsg
));
Log
.
infoFileSync
(
"==================结束调用保存财务明细方法saveDetials()==================="
);
}
/**
* 查找财务信息
*
* @return
*/
public
void
findBy
()
{
try
{
PageUtil
<
AccountItem
>
pageUtil
=
new
PageUtil
<
AccountItem
>();
pageUtil
.
setPageSize
(
model
.
getPageSize
());
pageUtil
.
setCurPage
(
model
.
getPageNo
());
pageUtil
.
setAdvSearch
(
getCondition
());
accountItemService
.
find
(
pageUtil
);
List
<
AccountItem
>
dataList
=
pageUtil
.
getPageList
();
JSONObject
outer
=
new
JSONObject
();
outer
.
put
(
"total"
,
pageUtil
.
getTotalCount
());
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
AccountItem
accountItem
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"Id"
,
accountItem
.
getId
());
item
.
put
(
"AccountId"
,
accountItem
.
getAccountId
()
==
null
?
""
:
accountItem
.
getAccountId
().
getId
());
item
.
put
(
"AccountName"
,
accountItem
.
getAccountId
()
==
null
?
""
:
accountItem
.
getAccountId
().
getName
());
item
.
put
(
"InOutItemId"
,
accountItem
.
getInOutItemId
()
==
null
?
""
:
accountItem
.
getInOutItemId
().
getId
());
item
.
put
(
"InOutItemName"
,
accountItem
.
getInOutItemId
()
==
null
?
""
:
accountItem
.
getInOutItemId
().
getName
());
Double
eachAmount
=
accountItem
.
getEachAmount
();
item
.
put
(
"EachAmount"
,
eachAmount
<
0
?
0
-
eachAmount
:
eachAmount
);
item
.
put
(
"Remark"
,
accountItem
.
getRemark
());
item
.
put
(
"op"
,
1
);
dataArray
.
add
(
item
);
}
}
outer
.
put
(
"rows"
,
dataArray
);
//回写查询结果
toClient
(
outer
.
toString
());
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>>>查找财务信息异常"
,
e
);
}
catch
(
IOException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>>>回写查询财务信息结果异常"
,
e
);
}
}
/**
* 拼接搜索条件
*
* @return
*/
private
Map
<
String
,
Object
>
getCondition
()
{
/**
* 拼接搜索条件
*/
Map
<
String
,
Object
>
condition
=
new
HashMap
<
String
,
Object
>();
condition
.
put
(
"HeaderId_n_eq"
,
model
.
getHeaderId
());
condition
.
put
(
"Id_s_order"
,
"asc"
);
return
condition
;
}
//=============以下spring注入以及Model驱动公共方法,与Action处理无关==================
@Override
public
AccountItemModel
getModel
()
{
return
model
;
}
public
void
setAccountItemService
(
AccountItemIService
accountItemService
)
{
this
.
accountItemService
=
accountItemService
;
}
}
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.datasource.entities.AccountItem
;
import
com.jsh.erp.datasource.vo.AccountItemVo4List
;
import
com.jsh.erp.service.accountItem.AccountItemService
;
import
com.jsh.erp.utils.*
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.dao.DataAccessException
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.io.IOException
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
static
com
.
jsh
.
erp
.
utils
.
ResponseJsonUtil
.
returnJson
;
@RestController
@RequestMapping
(
value
=
"/accountItem"
)
public
class
AccountItemController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
AccountItemController
.
class
);
@Resource
private
AccountItemService
accountItemService
;
@PostMapping
(
value
=
"/saveDetials"
)
public
String
saveDetials
(
@RequestParam
(
"inserted"
)
String
inserted
,
@RequestParam
(
"deleted"
)
String
deleted
,
@RequestParam
(
"updated"
)
String
updated
,
@RequestParam
(
"headerId"
)
Long
headerId
,
@RequestParam
(
"listType"
)
String
listType
,
HttpServletRequest
request
)
{
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
try
{
//转为json
JSONArray
insertedJson
=
JSONArray
.
parseArray
(
inserted
);
JSONArray
deletedJson
=
JSONArray
.
parseArray
(
deleted
);
JSONArray
updatedJson
=
JSONArray
.
parseArray
(
updated
);
if
(
null
!=
insertedJson
)
{
for
(
int
i
=
0
;
i
<
insertedJson
.
size
();
i
++)
{
AccountItem
accountItem
=
new
AccountItem
();
JSONObject
tempInsertedJson
=
JSONObject
.
parseObject
(
insertedJson
.
getString
(
i
));
accountItem
.
setHeaderid
(
headerId
);
if
(
tempInsertedJson
.
get
(
"AccountId"
)
!=
null
&&
!
tempInsertedJson
.
get
(
"AccountId"
).
equals
(
""
))
{
accountItem
.
setAccountid
(
tempInsertedJson
.
getLong
(
"AccountId"
));
}
if
(
tempInsertedJson
.
get
(
"InOutItemId"
)
!=
null
&&
!
tempInsertedJson
.
get
(
"InOutItemId"
).
equals
(
""
))
{
accountItem
.
setInoutitemid
(
tempInsertedJson
.
getLong
(
"InOutItemId"
));
}
if
(
tempInsertedJson
.
get
(
"EachAmount"
)
!=
null
&&
!
tempInsertedJson
.
get
(
"EachAmount"
).
equals
(
""
))
{
Double
eachAmount
=
tempInsertedJson
.
getDouble
(
"EachAmount"
);
if
(
listType
.
equals
(
"付款"
))
{
eachAmount
=
0
-
eachAmount
;
}
accountItem
.
setEachamount
(
eachAmount
);
}
else
{
accountItem
.
setEachamount
(
0.0
);
}
accountItem
.
setRemark
(
tempInsertedJson
.
getString
(
"Remark"
));
accountItemService
.
insertAccountItemWithObj
(
accountItem
);
}
}
if
(
null
!=
deletedJson
)
{
for
(
int
i
=
0
;
i
<
deletedJson
.
size
();
i
++)
{
JSONObject
tempDeletedJson
=
JSONObject
.
parseObject
(
deletedJson
.
getString
(
i
));
accountItemService
.
deleteAccountItem
(
tempDeletedJson
.
getLong
(
"Id"
));
}
}
if
(
null
!=
updatedJson
)
{
for
(
int
i
=
0
;
i
<
updatedJson
.
size
();
i
++)
{
JSONObject
tempUpdatedJson
=
JSONObject
.
parseObject
(
updatedJson
.
getString
(
i
));
AccountItem
accountItem
=
accountItemService
.
getAccountItem
(
tempUpdatedJson
.
getLong
(
"Id"
));
accountItem
.
setId
(
tempUpdatedJson
.
getLong
(
"Id"
));
accountItem
.
setHeaderid
(
headerId
);
if
(
tempUpdatedJson
.
get
(
"AccountId"
)
!=
null
&&
!
tempUpdatedJson
.
get
(
"AccountId"
).
equals
(
""
))
{
accountItem
.
setAccountid
(
tempUpdatedJson
.
getLong
(
"AccountId"
));
}
if
(
tempUpdatedJson
.
get
(
"InOutItemId"
)
!=
null
&&
!
tempUpdatedJson
.
get
(
"InOutItemId"
).
equals
(
""
))
{
accountItem
.
setInoutitemid
(
tempUpdatedJson
.
getLong
(
"InOutItemId"
));
}
if
(
tempUpdatedJson
.
get
(
"EachAmount"
)
!=
null
&&
!
tempUpdatedJson
.
get
(
"EachAmount"
).
equals
(
""
))
{
Double
eachAmount
=
tempUpdatedJson
.
getDouble
(
"EachAmount"
);
if
(
listType
.
equals
(
"付款"
))
{
eachAmount
=
0
-
eachAmount
;
}
accountItem
.
setEachamount
(
eachAmount
);
}
else
{
accountItem
.
setEachamount
(
0.0
);
}
accountItem
.
setRemark
(
tempUpdatedJson
.
getString
(
"Remark"
));
accountItemService
.
updateAccountItemWithObj
(
accountItem
);
}
}
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
catch
(
DataAccessException
e
)
{
e
.
printStackTrace
();
logger
.
error
(
">>>>>>>>>>>>>>>>>>>保存明细信息异常"
,
e
);
return
returnJson
(
objectMap
,
ErpInfo
.
ERROR
.
name
,
ErpInfo
.
ERROR
.
code
);
}
}
@GetMapping
(
value
=
"/getDetailList"
)
public
BaseResponseInfo
getDetailList
(
@RequestParam
(
"headerId"
)
Long
headerId
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
AccountItemVo4List
>
dataList
=
new
ArrayList
<
AccountItemVo4List
>();
if
(
headerId
!=
0
)
{
dataList
=
accountItemService
.
getDetailList
(
headerId
);
}
JSONObject
outer
=
new
JSONObject
();
outer
.
put
(
"total"
,
dataList
.
size
());
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
AccountItemVo4List
ai
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"Id"
,
ai
.
getId
());
item
.
put
(
"AccountId"
,
ai
.
getAccountid
());
item
.
put
(
"AccountName"
,
ai
.
getAccountName
());
item
.
put
(
"InOutItemId"
,
ai
.
getInoutitemid
());
item
.
put
(
"InOutItemName"
,
ai
.
getInOutItemName
());
Double
eachAmount
=
ai
.
getEachamount
();
item
.
put
(
"EachAmount"
,
eachAmount
<
0
?
0
-
eachAmount
:
eachAmount
);
item
.
put
(
"Remark"
,
ai
.
getRemark
());
dataArray
.
add
(
item
);
}
}
outer
.
put
(
"rows"
,
dataArray
);
res
.
code
=
200
;
res
.
data
=
outer
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
}
src/main/java/com/jsh/erp/controller/AppController.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.datasource.entities.App
;
import
com.jsh.erp.service.app.AppService
;
import
com.jsh.erp.service.userBusiness.UserBusinessService
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.List
;
@RestController
@RequestMapping
(
value
=
"/app"
)
public
class
AppController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
AppController
.
class
);
@Resource
private
AppService
appService
;
@Resource
private
UserBusinessService
userBusinessService
;
@GetMapping
(
value
=
"/findDesk"
)
public
JSONObject
findDesk
(
HttpServletRequest
request
)
{
JSONObject
obj
=
new
JSONObject
();
List
<
App
>
dockList
=
appService
.
findDock
();
JSONArray
dockArray
=
new
JSONArray
();
if
(
null
!=
dockList
)
{
for
(
App
app
:
dockList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
app
.
getId
());
item
.
put
(
"title"
,
app
.
getName
());
item
.
put
(
"type"
,
app
.
getType
());
item
.
put
(
"icon"
,
"../../upload/images/deskIcon/"
+
app
.
getIcon
());
item
.
put
(
"url"
,
app
.
getUrl
());
item
.
put
(
"width"
,
app
.
getWidth
());
item
.
put
(
"height"
,
app
.
getHeight
());
item
.
put
(
"isresize"
,
app
.
getResize
());
item
.
put
(
"isopenmax"
,
app
.
getOpenmax
());
item
.
put
(
"isflash"
,
app
.
getFlash
());
dockArray
.
add
(
item
);
}
}
obj
.
put
(
"dock"
,
dockArray
);
List
<
App
>
deskList
=
appService
.
findDesk
();
JSONArray
deskArray
=
new
JSONArray
();
if
(
null
!=
deskList
)
{
for
(
App
app
:
deskList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
app
.
getId
());
item
.
put
(
"title"
,
app
.
getName
());
item
.
put
(
"type"
,
app
.
getType
());
item
.
put
(
"icon"
,
"../../upload/images/deskIcon/"
+
app
.
getIcon
());
item
.
put
(
"url"
,
"../../pages/common/menu.html?appID="
+
app
.
getNumber
()
+
"&id="
+
app
.
getId
());
item
.
put
(
"width"
,
app
.
getWidth
());
item
.
put
(
"height"
,
app
.
getHeight
());
item
.
put
(
"isresize"
,
app
.
getResize
());
item
.
put
(
"isopenmax"
,
app
.
getOpenmax
());
item
.
put
(
"isflash"
,
app
.
getFlash
());
deskArray
.
add
(
item
);
}
}
obj
.
put
(
"desk"
,
deskArray
);
return
obj
;
}
/**
* 角色对应应用显示
* @param request
* @return
*/
@PostMapping
(
value
=
"/findRoleAPP"
)
public
JSONArray
findRoleAPP
(
@RequestParam
(
"UBType"
)
String
type
,
@RequestParam
(
"UBKeyId"
)
String
keyId
,
HttpServletRequest
request
)
{
JSONArray
arr
=
new
JSONArray
();
try
{
List
<
App
>
dataList
=
appService
.
findRoleAPP
();
//开始拼接json数据
JSONObject
outer
=
new
JSONObject
();
outer
.
put
(
"id"
,
1
);
outer
.
put
(
"text"
,
"应用列表"
);
outer
.
put
(
"state"
,
"open"
);
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
App
app
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
app
.
getId
());
item
.
put
(
"text"
,
app
.
getName
());
//勾选判断1
Boolean
flag
=
false
;
try
{
flag
=
userBusinessService
.
checkIsUserBusinessExist
(
type
,
keyId
,
"["
+
app
.
getId
().
toString
()
+
"]"
);
}
catch
(
Exception
e
)
{
logger
.
error
(
">>>>>>>>>>>>>>>>>设置角色对应的应用:类型"
+
type
+
" KeyId为: "
+
keyId
+
" 存在异常!"
);
}
if
(
flag
==
true
)
{
item
.
put
(
"checked"
,
true
);
}
//结束
dataArray
.
add
(
item
);
}
}
outer
.
put
(
"children"
,
dataArray
);
arr
.
add
(
outer
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
arr
;
}
}
src/main/java/com/jsh/erp/controller/DepotController.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.datasource.entities.Depot
;
import
com.jsh.erp.service.depot.DepotService
;
import
com.jsh.erp.service.userBusiness.UserBusinessService
;
import
com.jsh.erp.utils.BaseResponseInfo
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.dao.DataAccessException
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.io.IOException
;
import
java.util.List
;
@RestController
@RequestMapping
(
value
=
"/depot"
)
public
class
DepotController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
DepotController
.
class
);
@Resource
private
DepotService
depotService
;
@Resource
private
UserBusinessService
userBusinessService
;
@GetMapping
(
value
=
"/getAllList"
)
public
BaseResponseInfo
getAllList
(
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
try
{
List
<
Depot
>
depotList
=
depotService
.
getAllList
();
res
.
code
=
200
;
res
.
data
=
depotList
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 用户对应仓库显示
* @param type
* @param keyId
* @param request
* @return
*/
@PostMapping
(
value
=
"/findUserDepot"
)
public
JSONArray
findUserDepot
(
@RequestParam
(
"UBType"
)
String
type
,
@RequestParam
(
"UBKeyId"
)
String
keyId
,
HttpServletRequest
request
)
{
JSONArray
arr
=
new
JSONArray
();
try
{
List
<
Depot
>
dataList
=
depotService
.
findUserDepot
();
//开始拼接json数据
JSONObject
outer
=
new
JSONObject
();
outer
.
put
(
"id"
,
1
);
outer
.
put
(
"text"
,
"仓库列表"
);
outer
.
put
(
"state"
,
"open"
);
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
Depot
depot
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
depot
.
getId
());
item
.
put
(
"text"
,
depot
.
getName
());
//勾选判断1
Boolean
flag
=
false
;
try
{
flag
=
userBusinessService
.
checkIsUserBusinessExist
(
type
,
keyId
,
"["
+
depot
.
getId
().
toString
()
+
"]"
);
}
catch
(
Exception
e
)
{
logger
.
error
(
">>>>>>>>>>>>>>>>>设置用户对应的仓库:类型"
+
type
+
" KeyId为: "
+
keyId
+
" 存在异常!"
);
}
if
(
flag
==
true
)
{
item
.
put
(
"checked"
,
true
);
}
//结束
dataArray
.
add
(
item
);
}
}
outer
.
put
(
"children"
,
dataArray
);
arr
.
add
(
outer
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
arr
;
}
@GetMapping
(
value
=
"/findDepotByUserId"
)
public
JSONArray
findDepotByUserId
(
@RequestParam
(
"UBType"
)
String
type
,
@RequestParam
(
"UBKeyId"
)
String
keyId
,
HttpServletRequest
request
)
{
JSONArray
arr
=
new
JSONArray
();
try
{
List
<
Depot
>
dataList
=
depotService
.
findUserDepot
();
//开始拼接json数据
if
(
null
!=
dataList
)
{
for
(
Depot
depot
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
//勾选判断1
Boolean
flag
=
false
;
try
{
flag
=
userBusinessService
.
checkIsUserBusinessExist
(
type
,
keyId
,
"["
+
depot
.
getId
().
toString
()
+
"]"
);
}
catch
(
DataAccessException
e
)
{
logger
.
error
(
">>>>>>>>>>>>>>>>>查询用户对应的仓库:类型"
+
type
+
" KeyId为: "
+
keyId
+
" 存在异常!"
);
}
if
(
flag
==
true
)
{
item
.
put
(
"id"
,
depot
.
getId
());
item
.
put
(
"depotName"
,
depot
.
getName
());
arr
.
add
(
item
);
}
}
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
arr
;
}
/**
* 查找礼品卡-虚拟仓库
* @param type
* @param request
* @return
*/
@PostMapping
(
value
=
"/findGiftByType"
)
public
JSONArray
findGiftByType
(
@RequestParam
(
"type"
)
Integer
type
,
HttpServletRequest
request
)
{
JSONArray
arr
=
new
JSONArray
();
try
{
List
<
Depot
>
dataList
=
depotService
.
findGiftByType
(
type
);
//存放数据json数组
if
(
null
!=
dataList
)
{
for
(
Depot
depot
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
depot
.
getId
());
//仓库名称
item
.
put
(
"name"
,
depot
.
getName
());
arr
.
add
(
item
);
}
}
}
catch
(
Exception
e
)
{
logger
.
error
(
">>>>>>>>>查找仓库信息异常"
,
e
);
}
return
arr
;
}
}
src/main/java/com/jsh/erp/controller/DepotHeadController.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.datasource.entities.DepotHead
;
import
com.jsh.erp.datasource.vo.DepotHeadVo4InDetail
;
import
com.jsh.erp.datasource.vo.DepotHeadVo4InOutMCount
;
import
com.jsh.erp.datasource.vo.DepotHeadVo4List
;
import
com.jsh.erp.datasource.vo.DepotHeadVo4StatementAccount
;
import
com.jsh.erp.service.depotHead.DepotHeadService
;
import
com.jsh.erp.utils.BaseResponseInfo
;
import
com.jsh.erp.utils.ErpInfo
;
import
com.jsh.erp.utils.StringUtil
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.sql.Date
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
static
com
.
jsh
.
erp
.
utils
.
ResponseJsonUtil
.
returnJson
;
@RestController
@RequestMapping
(
value
=
"/depotHead"
)
public
class
DepotHeadController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
DepotHeadController
.
class
);
@Resource
private
DepotHeadService
depotHeadService
;
/**
* 批量设置状态-审核或者反审核
* @param status
* @param depotHeadIDs
* @param request
* @return
*/
@PostMapping
(
value
=
"/batchSetStatus"
)
public
String
batchSetStatus
(
@RequestParam
(
"status"
)
Boolean
status
,
@RequestParam
(
"depotHeadIDs"
)
String
depotHeadIDs
,
HttpServletRequest
request
)
{
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
int
res
=
depotHeadService
.
batchSetStatus
(
status
,
depotHeadIDs
);
if
(
res
>
0
)
{
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
else
{
return
returnJson
(
objectMap
,
ErpInfo
.
ERROR
.
name
,
ErpInfo
.
ERROR
.
code
);
}
}
/**
* 单据编号生成接口,规则:查找当前类型单据下的当天最大的单据号,并加1
* @param type
* @param subType
* @param beginTime
* @param endTime
* @param request
* @return
*/
@GetMapping
(
value
=
"/buildNumber"
)
public
BaseResponseInfo
buildNumber
(
@RequestParam
(
"type"
)
String
type
,
@RequestParam
(
"subType"
)
String
subType
,
@RequestParam
(
"beginTime"
)
String
beginTime
,
@RequestParam
(
"endTime"
)
String
endTime
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
String
number
=
depotHeadService
.
buildNumber
(
type
,
subType
,
beginTime
,
endTime
);
map
.
put
(
"DefaultNumber"
,
number
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 获取最大的id
* @param request
* @return
*/
@GetMapping
(
value
=
"/getMaxId"
)
public
BaseResponseInfo
getMaxId
(
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
Long
maxId
=
depotHeadService
.
getMaxId
();
map
.
put
(
"maxId"
,
maxId
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 查找单据_根据月份(报表)
* @param monthTime
* @param request
* @return
*/
@GetMapping
(
value
=
"/findByMonth"
)
public
BaseResponseInfo
findByMonth
(
@RequestParam
(
"monthTime"
)
String
monthTime
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
DepotHead
>
dataList
=
depotHeadService
.
findByMonth
(
monthTime
);
String
headId
=
""
;
if
(
null
!=
dataList
)
{
for
(
DepotHead
depotHead
:
dataList
)
{
headId
=
headId
+
depotHead
.
getId
()
+
","
;
}
}
if
(
headId
!=
""
)
{
headId
=
headId
.
substring
(
0
,
headId
.
lastIndexOf
(
","
));
}
map
.
put
(
"HeadIds"
,
headId
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 查找统计信息_根据礼品卡(报表)
* @param projectId
* @param request
* @return
*/
@GetMapping
(
value
=
"/findGiftReport"
)
public
BaseResponseInfo
findGiftReport
(
@RequestParam
(
"projectId"
)
String
projectId
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
DepotHead
>
dataList_in
=
depotHeadService
.
getDepotHead
();
String
headId
=
""
;
if
(
null
!=
dataList_in
)
{
for
(
DepotHead
depotHead
:
dataList_in
)
{
headId
=
headId
+
depotHead
.
getId
()
+
","
;
}
List
<
DepotHead
>
dataList_out
=
depotHeadService
.
getDepotHeadGiftOut
(
projectId
);
if
(
null
!=
dataList_out
)
{
for
(
DepotHead
depotHead
:
dataList_out
)
{
headId
=
headId
+
depotHead
.
getId
()
+
","
;
}
}
}
if
(
headId
!=
""
)
{
headId
=
headId
.
substring
(
0
,
headId
.
lastIndexOf
(
","
));
}
map
.
put
(
"HeadIds"
,
headId
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 入库出库明细接口
* @param currentPage
* @param pageSize
* @param oId
* @param pid
* @param dids
* @param beginTime
* @param endTime
* @param type
* @param request
* @return
*/
@GetMapping
(
value
=
"/findInDetail"
)
public
BaseResponseInfo
findInDetail
(
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"pageSize"
)
Integer
pageSize
,
@RequestParam
(
"organId"
)
Integer
oId
,
@RequestParam
(
"projectId"
)
Integer
pid
,
@RequestParam
(
"depotIds"
)
String
dids
,
@RequestParam
(
"beginTime"
)
String
beginTime
,
@RequestParam
(
"endTime"
)
String
endTime
,
@RequestParam
(
"type"
)
String
type
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
DepotHeadVo4InDetail
>
resList
=
new
ArrayList
<
DepotHeadVo4InDetail
>();
List
<
DepotHeadVo4InDetail
>
list
=
depotHeadService
.
findByAll
(
beginTime
,
endTime
,
type
,
pid
,
dids
,
oId
,
currentPage
,
pageSize
);
int
total
=
depotHeadService
.
findByAllCount
(
beginTime
,
endTime
,
type
,
pid
,
dids
,
oId
);
map
.
put
(
"total"
,
total
);
//存放数据json数组
if
(
null
!=
list
)
{
for
(
DepotHeadVo4InDetail
dhd
:
list
)
{
resList
.
add
(
dhd
);
}
}
map
.
put
(
"rows"
,
resList
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 入库出库统计接口
* @param currentPage
* @param pageSize
* @param oId
* @param pid
* @param dids
* @param beginTime
* @param endTime
* @param type
* @param request
* @return
*/
@GetMapping
(
value
=
"/findInOutMaterialCount"
)
public
BaseResponseInfo
findInOutMaterialCount
(
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"pageSize"
)
Integer
pageSize
,
@RequestParam
(
"organId"
)
Integer
oId
,
@RequestParam
(
"projectId"
)
Integer
pid
,
@RequestParam
(
"depotIds"
)
String
dids
,
@RequestParam
(
"beginTime"
)
String
beginTime
,
@RequestParam
(
"endTime"
)
String
endTime
,
@RequestParam
(
"type"
)
String
type
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
DepotHeadVo4InOutMCount
>
resList
=
new
ArrayList
<
DepotHeadVo4InOutMCount
>();
List
<
DepotHeadVo4InOutMCount
>
list
=
depotHeadService
.
findInOutMaterialCount
(
beginTime
,
endTime
,
type
,
pid
,
dids
,
oId
,
currentPage
,
pageSize
);
int
total
=
depotHeadService
.
findInOutMaterialCountTotal
(
beginTime
,
endTime
,
type
,
pid
,
dids
,
oId
);
map
.
put
(
"total"
,
total
);
//存放数据json数组
if
(
null
!=
list
)
{
for
(
DepotHeadVo4InOutMCount
dhc
:
list
)
{
resList
.
add
(
dhc
);
}
}
map
.
put
(
"rows"
,
resList
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 对账单接口
* @param currentPage
* @param pageSize
* @param beginTime
* @param endTime
* @param organId
* @param supType
* @param request
* @return
*/
@GetMapping
(
value
=
"/findStatementAccount"
)
public
BaseResponseInfo
findStatementAccount
(
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"pageSize"
)
Integer
pageSize
,
@RequestParam
(
"beginTime"
)
String
beginTime
,
@RequestParam
(
"endTime"
)
String
endTime
,
@RequestParam
(
"organId"
)
Integer
organId
,
@RequestParam
(
"supType"
)
String
supType
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
int
j
=
1
;
if
(
supType
.
equals
(
"客户"
))
{
//客户
j
=
1
;
}
else
if
(
supType
.
equals
(
"供应商"
))
{
//供应商
j
=
-
1
;
}
List
<
DepotHeadVo4StatementAccount
>
resList
=
new
ArrayList
<
DepotHeadVo4StatementAccount
>();
List
<
DepotHeadVo4StatementAccount
>
list
=
depotHeadService
.
findStatementAccount
(
beginTime
,
endTime
,
organId
,
supType
,
(
currentPage
-
1
)*
pageSize
,
pageSize
);
int
total
=
depotHeadService
.
findStatementAccountCount
(
beginTime
,
endTime
,
organId
,
supType
);
map
.
put
(
"total"
,
total
);
//存放数据json数组
if
(
null
!=
list
)
{
for
(
DepotHeadVo4StatementAccount
dha
:
list
)
{
dha
.
setNumber
(
dha
.
getNumber
());
//单据编号
dha
.
setType
(
dha
.
getType
());
//类型
String
type
=
dha
.
getType
();
Double
p1
=
0.0
;
Double
p2
=
0.0
;
if
(
dha
.
getDiscountLastMoney
()
!=
null
)
{
p1
=
dha
.
getDiscountLastMoney
();
}
if
(
dha
.
getChangeAmount
()
!=
null
)
{
p2
=
dha
.
getChangeAmount
();
}
Double
allPrice
=
0.0
;
if
(
p1
<
0
)
{
p1
=
-
p1
;
}
if
(
p2
<
0
)
{
p2
=
-
p2
;
}
if
(
type
.
equals
(
"采购入库"
))
{
allPrice
=
-(
p1
-
p2
);
}
else
if
(
type
.
equals
(
"销售退货入库"
))
{
allPrice
=
-(
p1
-
p2
);
}
else
if
(
type
.
equals
(
"销售出库"
))
{
allPrice
=
p1
-
p2
;
}
else
if
(
type
.
equals
(
"采购退货出库"
))
{
allPrice
=
p1
-
p2
;
}
else
if
(
type
.
equals
(
"付款"
))
{
allPrice
=
p1
+
p2
;
}
else
if
(
type
.
equals
(
"收款"
))
{
allPrice
=
-(
p1
+
p2
);
}
else
if
(
type
.
equals
(
"收入"
))
{
allPrice
=
p1
-
p2
;
}
else
if
(
type
.
equals
(
"支出"
))
{
allPrice
=
-(
p1
-
p2
);
}
dha
.
setDiscountLastMoney
(
p1
);
//金额
dha
.
setChangeAmount
(
p2
);
//金额
dha
.
setAllPrice
(
Double
.
parseDouble
(
String
.
format
(
"%.2f"
,
allPrice
*
j
)));
//计算后的金额
dha
.
setSupplierName
(
dha
.
getSupplierName
());
//供应商
dha
.
setoTime
(
dha
.
getoTime
());
//入库出库日期
resList
.
add
(
dha
);
}
}
map
.
put
(
"rows"
,
resList
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 查询单位的累计应收和累计应付,零售不能计入
* @param supplierId
* @param endTime
* @param supType
* @param request
* @return
*/
@GetMapping
(
value
=
"/findTotalPay"
)
public
BaseResponseInfo
findTotalPay
(
@RequestParam
(
"supplierId"
)
Integer
supplierId
,
@RequestParam
(
"endTime"
)
String
endTime
,
@RequestParam
(
"supType"
)
String
supType
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
JSONObject
outer
=
new
JSONObject
();
Double
sum
=
0.0
;
String
getS
=
supplierId
.
toString
();
int
i
=
1
;
if
(
supType
.
equals
(
"customer"
))
{
//客户
i
=
1
;
}
else
if
(
supType
.
equals
(
"vendor"
))
{
//供应商
i
=
-
1
;
}
//进销部分
sum
=
sum
-
(
allMoney
(
getS
,
"入库"
,
"采购"
,
"合计"
,
endTime
)
-
allMoney
(
getS
,
"入库"
,
"采购"
,
"实际"
,
endTime
))
*
i
;
sum
=
sum
-
(
allMoney
(
getS
,
"入库"
,
"销售退货"
,
"合计"
,
endTime
)
-
allMoney
(
getS
,
"入库"
,
"销售退货"
,
"实际"
,
endTime
))
*
i
;
sum
=
sum
+
(
allMoney
(
getS
,
"出库"
,
"销售"
,
"合计"
,
endTime
)
-
allMoney
(
getS
,
"出库"
,
"销售"
,
"实际"
,
endTime
))
*
i
;
sum
=
sum
+
(
allMoney
(
getS
,
"出库"
,
"采购退货"
,
"合计"
,
endTime
)
-
allMoney
(
getS
,
"出库"
,
"采购退货"
,
"实际"
,
endTime
))
*
i
;
outer
.
put
(
"getAllMoney"
,
sum
);
map
.
put
(
"rows"
,
outer
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 根据编号查询单据信息
* @param number
* @param request
* @return
*/
@GetMapping
(
value
=
"/getDetailByNumber"
)
public
BaseResponseInfo
getDetailByNumber
(
@RequestParam
(
"number"
)
String
number
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
DepotHeadVo4List
dhl
=
new
DepotHeadVo4List
();
try
{
List
<
DepotHeadVo4List
>
list
=
depotHeadService
.
getDetailByNumber
(
number
);
if
(
list
.
size
()
==
1
)
{
dhl
=
list
.
get
(
0
);
}
res
.
code
=
200
;
res
.
data
=
dhl
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 统计总金额
* @param getS
* @param type
* @param subType
* @param mode 合计或者金额
* @return
*/
public
Double
allMoney
(
String
getS
,
String
type
,
String
subType
,
String
mode
,
String
endTime
)
{
Double
allMoney
=
0.0
;
try
{
Integer
supplierId
=
Integer
.
valueOf
(
getS
);
Double
sum
=
depotHeadService
.
findAllMoney
(
supplierId
,
type
,
subType
,
mode
,
endTime
);
if
(
sum
!=
null
)
{
allMoney
=
sum
;
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
//返回正数,如果负数也转为正数
if
(
allMoney
<
0
)
{
allMoney
=
-
allMoney
;
}
return
allMoney
;
}
}
src/main/java/com/jsh/erp/controller/DepotItemController.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.datasource.entities.*
;
import
com.jsh.erp.service.depotItem.DepotItemService
;
import
com.jsh.erp.service.material.MaterialService
;
import
com.jsh.erp.utils.*
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.dao.DataAccessException
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
static
com
.
jsh
.
erp
.
utils
.
ResponseJsonUtil
.
returnJson
;
@RestController
@RequestMapping
(
value
=
"/depotItem"
)
public
class
DepotItemController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
DepotItemController
.
class
);
@Resource
private
DepotItemService
depotItemService
;
@Resource
private
MaterialService
materialService
;
/**
* 根据材料信息获取
* @param materialParam 商品参数
* @param depotIds 拥有的仓库信息
* @param request
* @return
*/
@GetMapping
(
value
=
"/getHeaderIdByMaterial"
)
public
BaseResponseInfo
getHeaderIdByMaterial
(
@RequestParam
(
"materialParam"
)
String
materialParam
,
@RequestParam
(
"depotIds"
)
String
depotIds
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
try
{
List
<
DepotItemVo4HeaderId
>
depotItemList
=
depotItemService
.
getHeaderIdByMaterial
(
materialParam
,
depotIds
);
String
allReturn
=
""
;
if
(
depotItemList
!=
null
)
{
for
(
DepotItemVo4HeaderId
d
:
depotItemList
)
{
Long
dl
=
d
.
getHeaderid
();
//获取对象
allReturn
=
allReturn
+
dl
.
toString
()
+
","
;
}
}
allReturn
=
allReturn
.
substring
(
0
,
allReturn
.
length
()
-
1
);
if
(
allReturn
.
equals
(
"null"
))
{
allReturn
=
""
;
}
res
.
code
=
200
;
res
.
data
=
allReturn
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 只根据商品id查询单据列表
* @param mId
* @param request
* @return
*/
@GetMapping
(
value
=
"/findDetailByTypeAndMaterialId"
)
public
String
findDetailByTypeAndMaterialId
(
@RequestParam
(
value
=
Constants
.
PAGE_SIZE
,
required
=
false
)
Integer
pageSize
,
@RequestParam
(
value
=
Constants
.
CURRENT_PAGE
,
required
=
false
)
Integer
currentPage
,
@RequestParam
(
"materialId"
)
String
mId
,
HttpServletRequest
request
)
{
Map
<
String
,
String
>
parameterMap
=
ParamUtils
.
requestToMap
(
request
);
parameterMap
.
put
(
"mId"
,
mId
);
PageQueryInfo
queryInfo
=
new
PageQueryInfo
();
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
if
(
pageSize
!=
null
&&
pageSize
<=
0
)
{
pageSize
=
10
;
}
String
offset
=
ParamUtils
.
getPageOffset
(
currentPage
,
pageSize
);
if
(
StringUtil
.
isNotEmpty
(
offset
))
{
parameterMap
.
put
(
Constants
.
OFFSET
,
offset
);
}
List
<
DepotItemVo4DetailByTypeAndMId
>
list
=
depotItemService
.
findDetailByTypeAndMaterialIdList
(
parameterMap
);
JSONArray
dataArray
=
new
JSONArray
();
if
(
list
!=
null
)
{
for
(
DepotItemVo4DetailByTypeAndMId
d:
list
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"Number"
,
d
.
getNumber
());
//商品编号
item
.
put
(
"Type"
,
d
.
getNewtype
());
//进出类型
item
.
put
(
"BasicNumber"
,
d
.
getBnum
());
//数量
item
.
put
(
"OperTime"
,
d
.
getOtime
());
//时间
dataArray
.
add
(
item
);
}
}
objectMap
.
put
(
"page"
,
dataArray
);
if
(
list
==
null
)
{
queryInfo
.
setRows
(
new
ArrayList
<
Object
>());
queryInfo
.
setTotal
(
0
);
return
returnJson
(
objectMap
,
"查找不到数据"
,
ErpInfo
.
OK
.
code
);
}
queryInfo
.
setRows
(
list
);
queryInfo
.
setTotal
(
depotItemService
.
findDetailByTypeAndMaterialIdCounts
(
parameterMap
));
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
/**
* 根据商品id和仓库id查询库存数量
* @param pageSize
* @param currentPage
* @param mId
* @param request
* @return
*/
@GetMapping
(
value
=
"/findStockNumById"
)
public
String
findStockNumById
(
@RequestParam
(
value
=
Constants
.
PAGE_SIZE
,
required
=
false
)
Integer
pageSize
,
@RequestParam
(
value
=
Constants
.
CURRENT_PAGE
,
required
=
false
)
Integer
currentPage
,
@RequestParam
(
"projectId"
)
Integer
pid
,
@RequestParam
(
"materialId"
)
String
mId
,
@RequestParam
(
"monthTime"
)
String
monthTime
,
HttpServletRequest
request
)
{
Map
<
String
,
String
>
parameterMap
=
ParamUtils
.
requestToMap
(
request
);
parameterMap
.
put
(
"mId"
,
mId
);
parameterMap
.
put
(
"monthTime"
,
monthTime
);
PageQueryInfo
queryInfo
=
new
PageQueryInfo
();
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
if
(
pageSize
!=
null
&&
pageSize
<=
0
)
{
pageSize
=
10
;
}
String
offset
=
ParamUtils
.
getPageOffset
(
currentPage
,
pageSize
);
if
(
StringUtil
.
isNotEmpty
(
offset
))
{
parameterMap
.
put
(
Constants
.
OFFSET
,
offset
);
}
List
<
DepotItemVo4Material
>
list
=
depotItemService
.
findStockNumByMaterialIdList
(
parameterMap
);
//存放数据json数组
Long
materialId
=
Long
.
parseLong
(
mId
);
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
list
)
{
for
(
DepotItemVo4Material
di
:
list
)
{
JSONObject
item
=
new
JSONObject
();
double
prevSum
=
sumNumber
(
"入库"
,
pid
,
materialId
,
monthTime
,
true
)
-
sumNumber
(
"出库"
,
pid
,
materialId
,
monthTime
,
true
);
double
InSum
=
sumNumber
(
"入库"
,
pid
,
materialId
,
monthTime
,
false
);
double
OutSum
=
sumNumber
(
"出库"
,
pid
,
materialId
,
monthTime
,
false
);
item
.
put
(
"MaterialId"
,
di
.
getMaterialid
()
==
null
?
""
:
di
.
getMaterialid
());
item
.
put
(
"MaterialName"
,
di
.
getMname
());
item
.
put
(
"MaterialModel"
,
di
.
getMmodel
());
item
.
put
(
"thisSum"
,
prevSum
+
InSum
-
OutSum
);
dataArray
.
add
(
item
);
}
}
objectMap
.
put
(
"page"
,
dataArray
);
if
(
list
==
null
)
{
queryInfo
.
setRows
(
new
ArrayList
<
Object
>());
queryInfo
.
setTotal
(
0
);
return
returnJson
(
objectMap
,
"查找不到数据"
,
ErpInfo
.
OK
.
code
);
}
queryInfo
.
setRows
(
list
);
queryInfo
.
setTotal
(
depotItemService
.
findStockNumByMaterialIdCounts
(
parameterMap
));
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
/**
* 只根据商品id查询库存数量
* @param pageSize
* @param currentPage
* @param mId
* @param request
* @return
*/
@GetMapping
(
value
=
"/findStockNumByMaterialId"
)
public
String
findStockNumByMaterialId
(
@RequestParam
(
value
=
Constants
.
PAGE_SIZE
,
required
=
false
)
Integer
pageSize
,
@RequestParam
(
value
=
Constants
.
CURRENT_PAGE
,
required
=
false
)
Integer
currentPage
,
@RequestParam
(
"materialId"
)
String
mId
,
@RequestParam
(
"monthTime"
)
String
monthTime
,
HttpServletRequest
request
)
{
Map
<
String
,
String
>
parameterMap
=
ParamUtils
.
requestToMap
(
request
);
parameterMap
.
put
(
"mId"
,
mId
);
parameterMap
.
put
(
"monthTime"
,
monthTime
);
PageQueryInfo
queryInfo
=
new
PageQueryInfo
();
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
if
(
pageSize
!=
null
&&
pageSize
<=
0
)
{
pageSize
=
10
;
}
String
offset
=
ParamUtils
.
getPageOffset
(
currentPage
,
pageSize
);
if
(
StringUtil
.
isNotEmpty
(
offset
))
{
parameterMap
.
put
(
Constants
.
OFFSET
,
offset
);
}
List
<
DepotItemVo4Material
>
list
=
depotItemService
.
findStockNumByMaterialIdList
(
parameterMap
);
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
list
)
{
for
(
DepotItemVo4Material
di
:
list
)
{
JSONObject
item
=
new
JSONObject
();
int
InSum
=
sumNumberByMaterialId
(
"入库"
,
di
.
getMaterialid
());
int
OutSum
=
sumNumberByMaterialId
(
"出库"
,
di
.
getMaterialid
());
item
.
put
(
"MaterialId"
,
di
.
getMaterialid
()
==
null
?
""
:
di
.
getMaterialid
());
item
.
put
(
"MaterialName"
,
di
.
getMname
());
item
.
put
(
"MaterialModel"
,
di
.
getMmodel
());
item
.
put
(
"thisSum"
,
InSum
-
OutSum
);
dataArray
.
add
(
item
);
}
}
objectMap
.
put
(
"page"
,
dataArray
);
if
(
list
==
null
)
{
queryInfo
.
setRows
(
new
ArrayList
<
Object
>());
queryInfo
.
setTotal
(
0
);
return
returnJson
(
objectMap
,
"查找不到数据"
,
ErpInfo
.
OK
.
code
);
}
queryInfo
.
setRows
(
list
);
queryInfo
.
setTotal
(
depotItemService
.
findStockNumByMaterialIdCounts
(
parameterMap
));
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
/**
* 仅根据商品Id进行数量合计
*
* @param type
* @param mId
* @return
*/
public
int
sumNumberByMaterialId
(
String
type
,
Long
mId
)
{
int
allNumber
=
0
;
try
{
allNumber
=
depotItemService
.
findByTypeAndMaterialId
(
type
,
mId
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
allNumber
;
}
/**
* 保存明细
* @param inserted
* @param deleted
* @param updated
* @param headerId
* @param request
* @return
*/
@PostMapping
(
value
=
"/saveDetials"
)
public
String
saveDetials
(
@RequestParam
(
"inserted"
)
String
inserted
,
@RequestParam
(
"deleted"
)
String
deleted
,
@RequestParam
(
"updated"
)
String
updated
,
@RequestParam
(
"headerId"
)
Long
headerId
,
HttpServletRequest
request
)
{
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
try
{
//转为json
JSONArray
insertedJson
=
JSONArray
.
parseArray
(
inserted
);
JSONArray
deletedJson
=
JSONArray
.
parseArray
(
deleted
);
JSONArray
updatedJson
=
JSONArray
.
parseArray
(
updated
);
if
(
null
!=
insertedJson
)
{
for
(
int
i
=
0
;
i
<
insertedJson
.
size
();
i
++)
{
DepotItem
depotItem
=
new
DepotItem
();
JSONObject
tempInsertedJson
=
JSONObject
.
parseObject
(
insertedJson
.
getString
(
i
));
depotItem
.
setHeaderid
(
headerId
);
depotItem
.
setMaterialid
(
tempInsertedJson
.
getLong
(
"MaterialId"
));
depotItem
.
setMunit
(
tempInsertedJson
.
getString
(
"Unit"
));
if
(!
StringUtil
.
isEmpty
(
tempInsertedJson
.
get
(
"OperNumber"
).
toString
()))
{
depotItem
.
setOpernumber
(
tempInsertedJson
.
getDouble
(
"OperNumber"
));
try
{
String
Unit
=
tempInsertedJson
.
get
(
"Unit"
).
toString
();
Double
oNumber
=
tempInsertedJson
.
getDouble
(
"OperNumber"
);
Long
mId
=
Long
.
parseLong
(
tempInsertedJson
.
get
(
"MaterialId"
).
toString
());
//以下进行单位换算
String
UnitName
=
findUnitName
(
mId
);
//查询计量单位名称
if
(!
UnitName
.
equals
(
""
))
{
String
UnitList
=
UnitName
.
substring
(
0
,
UnitName
.
indexOf
(
"("
));
String
RatioList
=
UnitName
.
substring
(
UnitName
.
indexOf
(
"("
));
String
basicUnit
=
UnitList
.
substring
(
0
,
UnitList
.
indexOf
(
","
));
//基本单位
String
otherUnit
=
UnitList
.
substring
(
UnitList
.
indexOf
(
","
)
+
1
);
//副单位
Integer
ratio
=
Integer
.
parseInt
(
RatioList
.
substring
(
RatioList
.
indexOf
(
":"
)
+
1
).
replace
(
")"
,
""
));
//比例
if
(
Unit
.
equals
(
basicUnit
))
{
//如果等于基础单位
depotItem
.
setBasicnumber
(
oNumber
);
//数量一致
}
else
if
(
Unit
.
equals
(
otherUnit
))
{
//如果等于副单位
depotItem
.
setBasicnumber
(
oNumber
*
ratio
);
//数量乘以比例
}
}
else
{
depotItem
.
setBasicnumber
(
oNumber
);
//其他情况
}
}
catch
(
Exception
e
)
{
logger
.
error
(
">>>>>>>>>>>>>>>>>>>设置基础数量异常"
,
e
);
}
}
if
(!
StringUtil
.
isEmpty
(
tempInsertedJson
.
get
(
"UnitPrice"
).
toString
()))
{
depotItem
.
setUnitprice
(
tempInsertedJson
.
getDouble
(
"UnitPrice"
));
}
if
(!
StringUtil
.
isEmpty
(
tempInsertedJson
.
get
(
"TaxUnitPrice"
).
toString
()))
{
depotItem
.
setTaxunitprice
(
tempInsertedJson
.
getDouble
(
"TaxUnitPrice"
));
}
if
(!
StringUtil
.
isEmpty
(
tempInsertedJson
.
get
(
"AllPrice"
).
toString
()))
{
depotItem
.
setAllprice
(
tempInsertedJson
.
getDouble
(
"AllPrice"
));
}
depotItem
.
setRemark
(
tempInsertedJson
.
getString
(
"Remark"
));
if
(
tempInsertedJson
.
get
(
"DepotId"
)
!=
null
&&
!
StringUtil
.
isEmpty
(
tempInsertedJson
.
get
(
"DepotId"
).
toString
()))
{
depotItem
.
setDepotid
(
tempInsertedJson
.
getLong
(
"DepotId"
));
}
if
(
tempInsertedJson
.
get
(
"AnotherDepotId"
)
!=
null
&&
!
StringUtil
.
isEmpty
(
tempInsertedJson
.
get
(
"AnotherDepotId"
).
toString
()))
{
depotItem
.
setAnotherdepotid
(
tempInsertedJson
.
getLong
(
"AnotherDepotId"
));
}
if
(!
StringUtil
.
isEmpty
(
tempInsertedJson
.
get
(
"TaxRate"
).
toString
()))
{
depotItem
.
setTaxrate
(
tempInsertedJson
.
getDouble
(
"TaxRate"
));
}
if
(!
StringUtil
.
isEmpty
(
tempInsertedJson
.
get
(
"TaxMoney"
).
toString
()))
{
depotItem
.
setTaxmoney
(
tempInsertedJson
.
getDouble
(
"TaxMoney"
));
}
if
(!
StringUtil
.
isEmpty
(
tempInsertedJson
.
get
(
"TaxLastMoney"
).
toString
()))
{
depotItem
.
setTaxlastmoney
(
tempInsertedJson
.
getDouble
(
"TaxLastMoney"
));
}
if
(
tempInsertedJson
.
get
(
"OtherField1"
)
!=
null
)
{
depotItem
.
setOtherfield1
(
tempInsertedJson
.
getString
(
"OtherField1"
));
}
if
(
tempInsertedJson
.
get
(
"OtherField2"
)
!=
null
)
{
depotItem
.
setOtherfield2
(
tempInsertedJson
.
getString
(
"OtherField2"
));
}
if
(
tempInsertedJson
.
get
(
"OtherField3"
)
!=
null
)
{
depotItem
.
setOtherfield3
(
tempInsertedJson
.
getString
(
"OtherField3"
));
}
if
(
tempInsertedJson
.
get
(
"OtherField4"
)
!=
null
)
{
depotItem
.
setOtherfield4
(
tempInsertedJson
.
getString
(
"OtherField4"
));
}
if
(
tempInsertedJson
.
get
(
"OtherField5"
)
!=
null
)
{
depotItem
.
setOtherfield5
(
tempInsertedJson
.
getString
(
"OtherField5"
));
}
if
(
tempInsertedJson
.
get
(
"MType"
)
!=
null
)
{
depotItem
.
setMtype
(
tempInsertedJson
.
getString
(
"MType"
));
}
depotItemService
.
insertDepotItemWithObj
(
depotItem
);
}
}
if
(
null
!=
deletedJson
)
{
for
(
int
i
=
0
;
i
<
deletedJson
.
size
();
i
++)
{
JSONObject
tempDeletedJson
=
JSONObject
.
parseObject
(
deletedJson
.
getString
(
i
));
depotItemService
.
deleteDepotItem
(
tempDeletedJson
.
getLong
(
"Id"
));
}
}
if
(
null
!=
updatedJson
)
{
for
(
int
i
=
0
;
i
<
updatedJson
.
size
();
i
++)
{
JSONObject
tempUpdatedJson
=
JSONObject
.
parseObject
(
updatedJson
.
getString
(
i
));
DepotItem
depotItem
=
depotItemService
.
getDepotItem
(
tempUpdatedJson
.
getLong
(
"Id"
));
depotItem
.
setId
(
tempUpdatedJson
.
getLong
(
"Id"
));
depotItem
.
setMaterialid
(
tempUpdatedJson
.
getLong
(
"MaterialId"
));
depotItem
.
setMunit
(
tempUpdatedJson
.
getString
(
"Unit"
));
if
(!
StringUtil
.
isEmpty
(
tempUpdatedJson
.
get
(
"OperNumber"
).
toString
()))
{
depotItem
.
setOpernumber
(
tempUpdatedJson
.
getDouble
(
"OperNumber"
));
try
{
String
Unit
=
tempUpdatedJson
.
get
(
"Unit"
).
toString
();
Double
oNumber
=
tempUpdatedJson
.
getDouble
(
"OperNumber"
);
Long
mId
=
Long
.
parseLong
(
tempUpdatedJson
.
get
(
"MaterialId"
).
toString
());
//以下进行单位换算
String
UnitName
=
findUnitName
(
mId
);
//查询计量单位名称
if
(!
UnitName
.
equals
(
""
))
{
String
UnitList
=
UnitName
.
substring
(
0
,
UnitName
.
indexOf
(
"("
));
String
RatioList
=
UnitName
.
substring
(
UnitName
.
indexOf
(
"("
));
String
basicUnit
=
UnitList
.
substring
(
0
,
UnitList
.
indexOf
(
","
));
//基本单位
String
otherUnit
=
UnitList
.
substring
(
UnitList
.
indexOf
(
","
)
+
1
);
//副单位
Integer
ratio
=
Integer
.
parseInt
(
RatioList
.
substring
(
RatioList
.
indexOf
(
":"
)
+
1
).
replace
(
")"
,
""
));
//比例
if
(
Unit
.
equals
(
basicUnit
))
{
//如果等于基础单位
depotItem
.
setBasicnumber
(
oNumber
);
//数量一致
}
else
if
(
Unit
.
equals
(
otherUnit
))
{
//如果等于副单位
depotItem
.
setBasicnumber
(
oNumber
*
ratio
);
//数量乘以比例
}
}
else
{
depotItem
.
setBasicnumber
(
oNumber
);
//其他情况
}
}
catch
(
Exception
e
)
{
logger
.
error
(
">>>>>>>>>>>>>>>>>>>设置基础数量异常"
,
e
);
}
}
if
(!
StringUtil
.
isEmpty
(
tempUpdatedJson
.
get
(
"UnitPrice"
).
toString
()))
{
depotItem
.
setUnitprice
(
tempUpdatedJson
.
getDouble
(
"UnitPrice"
));
}
if
(!
StringUtil
.
isEmpty
(
tempUpdatedJson
.
get
(
"TaxUnitPrice"
).
toString
()))
{
depotItem
.
setTaxunitprice
(
tempUpdatedJson
.
getDouble
(
"TaxUnitPrice"
));
}
if
(!
StringUtil
.
isEmpty
(
tempUpdatedJson
.
get
(
"AllPrice"
).
toString
()))
{
depotItem
.
setAllprice
(
tempUpdatedJson
.
getDouble
(
"AllPrice"
));
}
depotItem
.
setRemark
(
tempUpdatedJson
.
getString
(
"Remark"
));
if
(
tempUpdatedJson
.
get
(
"DepotId"
)
!=
null
&&
!
StringUtil
.
isEmpty
(
tempUpdatedJson
.
get
(
"DepotId"
).
toString
()))
{
depotItem
.
setDepotid
(
tempUpdatedJson
.
getLong
(
"DepotId"
));
}
if
(
tempUpdatedJson
.
get
(
"AnotherDepotId"
)
!=
null
&&
!
StringUtil
.
isEmpty
(
tempUpdatedJson
.
get
(
"AnotherDepotId"
).
toString
()))
{
depotItem
.
setAnotherdepotid
(
tempUpdatedJson
.
getLong
(
"AnotherDepotId"
));
}
if
(!
StringUtil
.
isEmpty
(
tempUpdatedJson
.
get
(
"TaxRate"
).
toString
()))
{
depotItem
.
setTaxrate
(
tempUpdatedJson
.
getDouble
(
"TaxRate"
));
}
if
(!
StringUtil
.
isEmpty
(
tempUpdatedJson
.
get
(
"TaxMoney"
).
toString
()))
{
depotItem
.
setTaxmoney
(
tempUpdatedJson
.
getDouble
(
"TaxMoney"
));
}
if
(!
StringUtil
.
isEmpty
(
tempUpdatedJson
.
get
(
"TaxLastMoney"
).
toString
()))
{
depotItem
.
setTaxlastmoney
(
tempUpdatedJson
.
getDouble
(
"TaxLastMoney"
));
}
depotItem
.
setOtherfield1
(
tempUpdatedJson
.
getString
(
"OtherField1"
));
depotItem
.
setOtherfield2
(
tempUpdatedJson
.
getString
(
"OtherField2"
));
depotItem
.
setOtherfield3
(
tempUpdatedJson
.
getString
(
"OtherField3"
));
depotItem
.
setOtherfield4
(
tempUpdatedJson
.
getString
(
"OtherField4"
));
depotItem
.
setOtherfield5
(
tempUpdatedJson
.
getString
(
"OtherField5"
));
depotItem
.
setMtype
(
tempUpdatedJson
.
getString
(
"MType"
));
depotItemService
.
updateDepotItemWithObj
(
depotItem
);
}
}
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
catch
(
DataAccessException
e
)
{
e
.
printStackTrace
();
logger
.
error
(
">>>>>>>>>>>>>>>>>>>保存明细信息异常"
,
e
);
return
returnJson
(
objectMap
,
ErpInfo
.
ERROR
.
name
,
ErpInfo
.
ERROR
.
code
);
}
}
/**
* 查询计量单位信息
*
* @return
*/
public
String
findUnitName
(
Long
mId
)
{
String
unitName
=
""
;
try
{
unitName
=
materialService
.
findUnitName
(
mId
);
if
(
unitName
!=
null
)
{
unitName
=
unitName
.
substring
(
1
,
unitName
.
length
()
-
1
);
if
(
unitName
.
equals
(
"null"
))
{
unitName
=
""
;
}
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
unitName
;
}
@GetMapping
(
value
=
"/getDetailList"
)
public
BaseResponseInfo
getDetailList
(
@RequestParam
(
"headerId"
)
Long
headerId
,
@RequestParam
(
"mpList"
)
String
mpList
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
DepotItemVo4WithInfoEx
>
dataList
=
new
ArrayList
<
DepotItemVo4WithInfoEx
>();
if
(
headerId
!=
0
)
{
dataList
=
depotItemService
.
getDetailList
(
headerId
);
}
String
[]
mpArr
=
mpList
.
split
(
","
);
JSONObject
outer
=
new
JSONObject
();
outer
.
put
(
"total"
,
dataList
.
size
());
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
DepotItemVo4WithInfoEx
diEx
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"Id"
,
diEx
.
getId
());
item
.
put
(
"MaterialId"
,
diEx
.
getMaterialid
()
==
null
?
""
:
diEx
.
getMaterialid
());
String
ratio
;
//比例
if
(
diEx
.
getUnitId
()
==
null
||
diEx
.
getUnitId
().
equals
(
""
))
{
ratio
=
""
;
}
else
{
ratio
=
diEx
.
getUName
();
ratio
=
ratio
.
substring
(
ratio
.
indexOf
(
"("
));
}
//品名/型号/扩展信息/包装
String
MaterialName
=
diEx
.
getMName
()
+
((
diEx
.
getMModel
()
==
null
||
diEx
.
getMModel
().
equals
(
""
))
?
""
:
"("
+
diEx
.
getMModel
()
+
")"
);
String
materialOther
=
getOtherInfo
(
mpArr
,
diEx
);
MaterialName
=
MaterialName
+
materialOther
+
((
diEx
.
getUName
()
==
null
||
diEx
.
getUName
().
equals
(
""
))
?
""
:
"("
+
diEx
.
getUName
()
+
")"
)
+
ratio
;
item
.
put
(
"MaterialName"
,
MaterialName
);
item
.
put
(
"Unit"
,
diEx
.
getMunit
());
item
.
put
(
"OperNumber"
,
diEx
.
getOpernumber
());
item
.
put
(
"BasicNumber"
,
diEx
.
getBasicnumber
());
item
.
put
(
"UnitPrice"
,
diEx
.
getUnitprice
());
item
.
put
(
"TaxUnitPrice"
,
diEx
.
getTaxunitprice
());
item
.
put
(
"AllPrice"
,
diEx
.
getAllprice
());
item
.
put
(
"Remark"
,
diEx
.
getRemark
());
item
.
put
(
"Img"
,
diEx
.
getImg
());
item
.
put
(
"DepotId"
,
diEx
.
getDepotid
()
==
null
?
""
:
diEx
.
getDepotid
());
item
.
put
(
"DepotName"
,
diEx
.
getDepotid
()
==
null
?
""
:
diEx
.
getDepotName
());
item
.
put
(
"AnotherDepotId"
,
diEx
.
getAnotherdepotid
()
==
null
?
""
:
diEx
.
getAnotherdepotid
());
item
.
put
(
"AnotherDepotName"
,
diEx
.
getAnotherdepotid
()
==
null
?
""
:
diEx
.
getAnotherDepotName
());
item
.
put
(
"TaxRate"
,
diEx
.
getTaxrate
());
item
.
put
(
"TaxMoney"
,
diEx
.
getTaxmoney
());
item
.
put
(
"TaxLastMoney"
,
diEx
.
getTaxlastmoney
());
item
.
put
(
"OtherField1"
,
diEx
.
getOtherfield1
());
item
.
put
(
"OtherField2"
,
diEx
.
getOtherfield2
());
item
.
put
(
"OtherField3"
,
diEx
.
getOtherfield3
());
item
.
put
(
"OtherField4"
,
diEx
.
getOtherfield4
());
item
.
put
(
"OtherField5"
,
diEx
.
getOtherfield5
());
item
.
put
(
"MType"
,
diEx
.
getMtype
());
item
.
put
(
"op"
,
1
);
dataArray
.
add
(
item
);
}
}
outer
.
put
(
"rows"
,
dataArray
);
res
.
code
=
200
;
res
.
data
=
outer
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 获取扩展信息
*
* @return
*/
public
String
getOtherInfo
(
String
[]
mpArr
,
DepotItemVo4WithInfoEx
diEx
)
{
String
materialOther
=
""
;
for
(
int
i
=
0
;
i
<
mpArr
.
length
;
i
++)
{
if
(
mpArr
[
i
].
equals
(
"颜色"
))
{
materialOther
=
materialOther
+
((
diEx
.
getMColor
()
==
null
||
diEx
.
getMColor
().
equals
(
""
))
?
""
:
"("
+
diEx
.
getMColor
()
+
")"
);
}
if
(
mpArr
[
i
].
equals
(
"规格"
))
{
materialOther
=
materialOther
+
((
diEx
.
getMStandard
()
==
null
||
diEx
.
getMStandard
().
equals
(
""
))
?
""
:
"("
+
diEx
.
getMStandard
()
+
")"
);
}
if
(
mpArr
[
i
].
equals
(
"制造商"
))
{
materialOther
=
materialOther
+
((
diEx
.
getMMfrs
()
==
null
||
diEx
.
getMMfrs
().
equals
(
""
))
?
""
:
"("
+
diEx
.
getMMfrs
()
+
")"
);
}
if
(
mpArr
[
i
].
equals
(
"自定义1"
))
{
materialOther
=
materialOther
+
((
diEx
.
getMOtherField1
()
==
null
||
diEx
.
getMOtherField1
().
equals
(
""
))
?
""
:
"("
+
diEx
.
getMOtherField1
()
+
")"
);
}
if
(
mpArr
[
i
].
equals
(
"自定义2"
))
{
materialOther
=
materialOther
+
((
diEx
.
getMOtherField2
()
==
null
||
diEx
.
getMOtherField2
().
equals
(
""
))
?
""
:
"("
+
diEx
.
getMOtherField2
()
+
")"
);
}
if
(
mpArr
[
i
].
equals
(
"自定义3"
))
{
materialOther
=
materialOther
+
((
diEx
.
getMOtherField3
()
==
null
||
diEx
.
getMOtherField3
().
equals
(
""
))
?
""
:
"("
+
diEx
.
getMOtherField3
()
+
")"
);
}
}
return
materialOther
;
}
/**
* 查找所有的明细
* @param currentPage
* @param pageSize
* @param projectId
* @param monthTime
* @param headIds
* @param materialIds
* @param mpList
* @param request
* @return
*/
@GetMapping
(
value
=
"/findByAll"
)
public
BaseResponseInfo
findByAll
(
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"pageSize"
)
Integer
pageSize
,
@RequestParam
(
"projectId"
)
Integer
projectId
,
@RequestParam
(
"monthTime"
)
String
monthTime
,
@RequestParam
(
"headIds"
)
String
headIds
,
@RequestParam
(
"materialIds"
)
String
materialIds
,
@RequestParam
(
"mpList"
)
String
mpList
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
DepotItemVo4WithInfoEx
>
dataList
=
depotItemService
.
findByAll
(
headIds
,
materialIds
,
currentPage
,
pageSize
);
String
[]
mpArr
=
mpList
.
split
(
","
);
int
total
=
depotItemService
.
findByAllCount
(
headIds
,
materialIds
);
map
.
put
(
"total"
,
total
);
//存放数据json数组
Integer
pid
=
projectId
;
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
DepotItemVo4WithInfoEx
diEx
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
Double
prevSum
=
sumNumber
(
"入库"
,
pid
,
diEx
.
getMaterialid
(),
monthTime
,
true
)
-
sumNumber
(
"出库"
,
pid
,
diEx
.
getMaterialid
(),
monthTime
,
true
);
Double
InSum
=
sumNumber
(
"入库"
,
pid
,
diEx
.
getMaterialid
(),
monthTime
,
false
);
Double
OutSum
=
sumNumber
(
"出库"
,
pid
,
diEx
.
getMaterialid
(),
monthTime
,
false
);
Double
prevPrice
=
sumPrice
(
"入库"
,
pid
,
diEx
.
getMaterialid
(),
monthTime
,
true
)
-
sumPrice
(
"出库"
,
pid
,
diEx
.
getMaterialid
(),
monthTime
,
true
);
Double
InPrice
=
sumPrice
(
"入库"
,
pid
,
diEx
.
getMaterialid
(),
monthTime
,
false
);
Double
OutPrice
=
sumPrice
(
"出库"
,
pid
,
diEx
.
getMaterialid
(),
monthTime
,
false
);
item
.
put
(
"Id"
,
diEx
.
getId
());
item
.
put
(
"MaterialId"
,
diEx
.
getMaterialid
());
item
.
put
(
"MaterialName"
,
diEx
.
getMName
());
item
.
put
(
"MaterialModel"
,
diEx
.
getMColor
());
//扩展信息
String
materialOther
=
getOtherInfo
(
mpArr
,
diEx
);
item
.
put
(
"MaterialOther"
,
materialOther
);
item
.
put
(
"MaterialColor"
,
diEx
.
getMColor
());
item
.
put
(
"MaterialUnit"
,
diEx
.
getMaterialUnit
());
Double
unitPrice
=
0.0
;
if
(
prevSum
+
InSum
-
OutSum
!=
0.0
)
{
unitPrice
=
(
prevPrice
+
InPrice
-
OutPrice
)
/
(
prevSum
+
InSum
-
OutSum
);
}
item
.
put
(
"UnitPrice"
,
unitPrice
);
item
.
put
(
"prevSum"
,
prevSum
);
item
.
put
(
"InSum"
,
InSum
);
item
.
put
(
"OutSum"
,
OutSum
);
item
.
put
(
"thisSum"
,
prevSum
+
InSum
-
OutSum
);
item
.
put
(
"thisAllPrice"
,
prevPrice
+
InPrice
-
OutPrice
);
dataArray
.
add
(
item
);
}
}
map
.
put
(
"rows"
,
dataArray
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 统计总计金额
* @param pid
* @param monthTime
* @param headIds
* @param materialIds
* @param request
* @return
*/
@GetMapping
(
value
=
"/totalCountMoney"
)
public
BaseResponseInfo
totalCountMoney
(
@RequestParam
(
"projectId"
)
Integer
pid
,
@RequestParam
(
"monthTime"
)
String
monthTime
,
@RequestParam
(
"headIds"
)
String
headIds
,
@RequestParam
(
"materialIds"
)
String
materialIds
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
DepotItemVo4WithInfoEx
>
dataList
=
depotItemService
.
findByAll
(
headIds
,
materialIds
,
null
,
null
);
Double
thisAllPrice
=
0.0
;
if
(
null
!=
dataList
)
{
for
(
DepotItemVo4WithInfoEx
diEx
:
dataList
)
{
Double
prevPrice
=
sumPrice
(
"入库"
,
pid
,
diEx
.
getMaterialid
(),
monthTime
,
true
)
-
sumPrice
(
"出库"
,
pid
,
diEx
.
getMaterialid
(),
monthTime
,
true
);
Double
InPrice
=
sumPrice
(
"入库"
,
pid
,
diEx
.
getMaterialid
(),
monthTime
,
false
);
Double
OutPrice
=
sumPrice
(
"出库"
,
pid
,
diEx
.
getMaterialid
(),
monthTime
,
false
);
thisAllPrice
=
thisAllPrice
+
(
prevPrice
+
InPrice
-
OutPrice
);
}
}
map
.
put
(
"totalCount"
,
thisAllPrice
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 进货统计
* @param currentPage
* @param pageSize
* @param monthTime
* @param headIds
* @param materialIds
* @param mpList
* @param request
* @return
*/
@GetMapping
(
value
=
"/buyIn"
)
public
BaseResponseInfo
buyIn
(
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"pageSize"
)
Integer
pageSize
,
@RequestParam
(
"monthTime"
)
String
monthTime
,
@RequestParam
(
"headIds"
)
String
headIds
,
@RequestParam
(
"materialIds"
)
String
materialIds
,
@RequestParam
(
"mpList"
)
String
mpList
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
DepotItemVo4WithInfoEx
>
dataList
=
depotItemService
.
findByAll
(
headIds
,
materialIds
,
currentPage
,
pageSize
);
String
[]
mpArr
=
mpList
.
split
(
","
);
int
total
=
depotItemService
.
findByAllCount
(
headIds
,
materialIds
);
map
.
put
(
"total"
,
total
);
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
DepotItemVo4WithInfoEx
diEx
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
Double
InSum
=
sumNumberBuyOrSale
(
"入库"
,
"采购"
,
diEx
.
getMaterialid
(),
monthTime
);
Double
OutSum
=
sumNumberBuyOrSale
(
"出库"
,
"采购退货"
,
diEx
.
getMaterialid
(),
monthTime
);
Double
InSumPrice
=
sumPriceBuyOrSale
(
"入库"
,
"采购"
,
diEx
.
getMaterialid
(),
monthTime
);
Double
OutSumPrice
=
sumPriceBuyOrSale
(
"出库"
,
"采购退货"
,
diEx
.
getMaterialid
(),
monthTime
);
item
.
put
(
"Id"
,
diEx
.
getId
());
item
.
put
(
"MaterialId"
,
diEx
.
getMaterialid
());
item
.
put
(
"MaterialName"
,
diEx
.
getMName
());
item
.
put
(
"MaterialModel"
,
diEx
.
getMModel
());
//扩展信息
String
materialOther
=
getOtherInfo
(
mpArr
,
diEx
);
item
.
put
(
"MaterialOther"
,
materialOther
);
item
.
put
(
"MaterialColor"
,
diEx
.
getMColor
());
item
.
put
(
"MaterialUnit"
,
diEx
.
getMaterialUnit
());
item
.
put
(
"InSum"
,
InSum
);
item
.
put
(
"OutSum"
,
OutSum
);
item
.
put
(
"InSumPrice"
,
InSumPrice
);
item
.
put
(
"OutSumPrice"
,
OutSumPrice
);
dataArray
.
add
(
item
);
}
}
map
.
put
(
"rows"
,
dataArray
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 销售统计
* @param currentPage
* @param pageSize
* @param monthTime
* @param headIds
* @param materialIds
* @param mpList
* @param request
* @return
*/
@GetMapping
(
value
=
"/saleOut"
)
public
BaseResponseInfo
saleOut
(
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"pageSize"
)
Integer
pageSize
,
@RequestParam
(
"monthTime"
)
String
monthTime
,
@RequestParam
(
"headIds"
)
String
headIds
,
@RequestParam
(
"materialIds"
)
String
materialIds
,
@RequestParam
(
"mpList"
)
String
mpList
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
DepotItemVo4WithInfoEx
>
dataList
=
depotItemService
.
findByAll
(
headIds
,
materialIds
,
currentPage
,
pageSize
);
String
[]
mpArr
=
mpList
.
split
(
","
);
int
total
=
depotItemService
.
findByAllCount
(
headIds
,
materialIds
);
map
.
put
(
"total"
,
total
);
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
DepotItemVo4WithInfoEx
diEx
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
Double
OutSumRetail
=
sumNumberBuyOrSale
(
"出库"
,
"零售"
,
diEx
.
getMaterialid
(),
monthTime
);
Double
OutSum
=
sumNumberBuyOrSale
(
"出库"
,
"销售"
,
diEx
.
getMaterialid
(),
monthTime
);
Double
InSumRetail
=
sumNumberBuyOrSale
(
"入库"
,
"零售退货"
,
diEx
.
getMaterialid
(),
monthTime
);
Double
InSum
=
sumNumberBuyOrSale
(
"入库"
,
"销售退货"
,
diEx
.
getMaterialid
(),
monthTime
);
Double
OutSumRetailPrice
=
sumPriceBuyOrSale
(
"出库"
,
"零售"
,
diEx
.
getMaterialid
(),
monthTime
);
Double
OutSumPrice
=
sumPriceBuyOrSale
(
"出库"
,
"销售"
,
diEx
.
getMaterialid
(),
monthTime
);
Double
InSumRetailPrice
=
sumPriceBuyOrSale
(
"入库"
,
"零售退货"
,
diEx
.
getMaterialid
(),
monthTime
);
Double
InSumPrice
=
sumPriceBuyOrSale
(
"入库"
,
"销售退货"
,
diEx
.
getMaterialid
(),
monthTime
);
item
.
put
(
"Id"
,
diEx
.
getId
());
item
.
put
(
"MaterialId"
,
diEx
.
getMaterialid
());
item
.
put
(
"MaterialName"
,
diEx
.
getMName
());
item
.
put
(
"MaterialModel"
,
diEx
.
getMModel
());
//扩展信息
String
materialOther
=
getOtherInfo
(
mpArr
,
diEx
);
item
.
put
(
"MaterialOther"
,
materialOther
);
item
.
put
(
"MaterialColor"
,
diEx
.
getMColor
());
item
.
put
(
"MaterialUnit"
,
diEx
.
getMaterialUnit
());
item
.
put
(
"OutSum"
,
OutSumRetail
+
OutSum
);
item
.
put
(
"InSum"
,
InSumRetail
+
InSum
);
item
.
put
(
"OutSumPrice"
,
OutSumRetailPrice
+
OutSumPrice
);
item
.
put
(
"InSumPrice"
,
InSumRetailPrice
+
InSumPrice
);
dataArray
.
add
(
item
);
}
}
map
.
put
(
"rows"
,
dataArray
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 查找礼品卡信息
* @param currentPage
* @param pageSize
* @param projectId
* @param headIds
* @param materialIds
* @param mpList
* @param request
* @return
*/
@GetMapping
(
value
=
"/findGiftByAll"
)
public
BaseResponseInfo
findGiftByAll
(
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"pageSize"
)
Integer
pageSize
,
@RequestParam
(
"projectId"
)
Integer
projectId
,
@RequestParam
(
"headIds"
)
String
headIds
,
@RequestParam
(
"materialIds"
)
String
materialIds
,
@RequestParam
(
"mpList"
)
String
mpList
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
DepotItemVo4WithInfoEx
>
dataList
=
depotItemService
.
findByAll
(
headIds
,
materialIds
,
currentPage
,
pageSize
);
String
[]
mpArr
=
mpList
.
split
(
","
);
int
total
=
depotItemService
.
findByAllCount
(
headIds
,
materialIds
);
map
.
put
(
"total"
,
total
);
Integer
pid
=
projectId
;
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
DepotItemVo4WithInfoEx
diEx
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
Double
InSum
=
sumNumberGift
(
"礼品充值"
,
pid
,
diEx
.
getMaterialid
(),
"in"
);
Double
OutSum
=
sumNumberGift
(
"礼品销售"
,
pid
,
diEx
.
getMaterialid
(),
"out"
);
item
.
put
(
"Id"
,
diEx
.
getId
());
item
.
put
(
"MaterialId"
,
diEx
.
getMaterialid
());
item
.
put
(
"MaterialName"
,
diEx
.
getMName
());
item
.
put
(
"MaterialModel"
,
diEx
.
getMModel
());
//扩展信息
String
materialOther
=
getOtherInfo
(
mpArr
,
diEx
);
item
.
put
(
"MaterialOther"
,
materialOther
);
item
.
put
(
"MaterialColor"
,
diEx
.
getMColor
());
item
.
put
(
"MaterialUnit"
,
diEx
.
getMaterialUnit
());
item
.
put
(
"thisSum"
,
InSum
-
OutSum
);
dataArray
.
add
(
item
);
}
}
map
.
put
(
"rows"
,
dataArray
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 数量合计
*
* @param type
* @param MId
* @param MonthTime
* @param isPrev
* @return
*/
public
Double
sumNumber
(
String
type
,
Integer
ProjectId
,
Long
MId
,
String
MonthTime
,
Boolean
isPrev
)
{
Double
sumNumber
=
0.0
;
try
{
Double
sum
=
depotItemService
.
findByType
(
type
,
ProjectId
,
MId
,
MonthTime
,
isPrev
);
if
(
sum
!=
null
)
{
sumNumber
=
sum
;
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
sumNumber
;
}
/**
* 价格合计
*
* @param type
* @param MId
* @param MonthTime
* @param isPrev
* @return
*/
public
Double
sumPrice
(
String
type
,
Integer
ProjectId
,
Long
MId
,
String
MonthTime
,
Boolean
isPrev
)
{
Double
sumPrice
=
0.0
;
try
{
Double
sum
=
depotItemService
.
findPriceByType
(
type
,
ProjectId
,
MId
,
MonthTime
,
isPrev
);
if
(
sum
!=
null
)
{
sumPrice
=
sum
;
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
sumPrice
;
}
public
Double
sumNumberBuyOrSale
(
String
type
,
String
subType
,
Long
MId
,
String
MonthTime
)
{
Double
sumNumber
=
0.0
;
String
sumType
=
"Number"
;
try
{
Double
sum
=
depotItemService
.
buyOrSale
(
type
,
subType
,
MId
,
MonthTime
,
sumType
);
if
(
sum
!=
null
)
{
sumNumber
=
sum
;
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
sumNumber
;
}
public
Double
sumPriceBuyOrSale
(
String
type
,
String
subType
,
Long
MId
,
String
MonthTime
)
{
Double
sumPrice
=
0.0
;
String
sumType
=
"Price"
;
try
{
Double
sum
=
depotItemService
.
buyOrSale
(
type
,
subType
,
MId
,
MonthTime
,
sumType
);
if
(
sum
!=
null
)
{
sumPrice
=
sum
;
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
sumPrice
;
}
/**
* 数量合计-礼品卡
* @param subType
* @param ProjectId
* @param MId
* @param type
* @return
*/
public
Double
sumNumberGift
(
String
subType
,
Integer
ProjectId
,
Long
MId
,
String
type
)
{
Double
sumNumber
=
0.0
;
String
allNumber
=
""
;
try
{
if
(
ProjectId
!=
null
)
{
Double
sum
=
depotItemService
.
findGiftByType
(
subType
,
ProjectId
,
MId
,
type
);
if
(
sum
!=
null
)
{
sumNumber
=
sum
;
}
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
sumNumber
;
}
}
src/main/java/com/jsh/
action/basic/FunctionsAction
.java
→
src/main/java/com/jsh/
erp/controller/FunctionsController
.java
View file @
5cc26a22
package
com.jsh.action.basic
;
import
com.jsh.base.BaseAction
;
import
com.jsh.base.Log
;
import
com.jsh.model.po.Functions
;
import
com.jsh.model.po.Logdetails
;
import
com.jsh.model.vo.basic.FunctionsModel
;
import
com.jsh.service.basic.FunctionsIService
;
import
com.jsh.service.basic.UserBusinessIService
;
import
com.jsh.util.PageUtil
;
import
net.sf.json.JSONArray
;
import
net.sf.json.JSONObject
;
import
org.springframework.dao.DataAccessException
;
import
java.io.IOException
;
import
java.sql.Timestamp
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/*
* 功能管理
* @author jishenghua qq:7-5-2-7-1-8-9-2-0
*/
@SuppressWarnings
(
"serial"
)
public
class
FunctionsAction
extends
BaseAction
<
FunctionsModel
>
{
private
FunctionsIService
functionsService
;
private
UserBusinessIService
userBusinessService
;
private
FunctionsModel
model
=
new
FunctionsModel
();
/**
* 增加功能
*
* @return
*/
public
void
create
()
{
Log
.
infoFileSync
(
"==================开始调用增加功能信息方法create()==================="
);
Boolean
flag
=
false
;
try
{
Functions
functions
=
new
Functions
();
functions
.
setNumber
(
model
.
getNumber
());
functions
.
setName
(
model
.
getName
());
functions
.
setPNumber
(
model
.
getPNumber
());
functions
.
setURL
(
model
.
getURL
());
functions
.
setState
(
model
.
getState
());
functions
.
setSort
(
model
.
getSort
());
functions
.
setEnabled
(
model
.
getEnabled
());
functions
.
setType
(
model
.
getType
());
functions
.
setPushBtn
(
model
.
getPushBtn
());
functionsService
.
create
(
functions
);
//========标识位===========
flag
=
true
;
//记录操作日志使用
tipMsg
=
"成功"
;
tipType
=
0
;
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>>>增加功能信息异常"
,
e
);
flag
=
false
;
tipMsg
=
"失败"
;
tipType
=
1
;
}
finally
{
try
{
toClient
(
flag
.
toString
());
}
catch
(
IOException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>增加功能信息回写客户端结果异常"
,
e
);
}
}
logService
.
create
(
new
Logdetails
(
getUser
(),
"增加功能"
,
model
.
getClientIp
(),
new
Timestamp
(
System
.
currentTimeMillis
())
,
tipType
,
"增加功能名称为 "
+
model
.
getName
()
+
" "
+
tipMsg
+
"!"
,
"增加功能"
+
tipMsg
));
Log
.
infoFileSync
(
"==================结束调用增加功能方法create()==================="
);
}
/**
* 删除功能
*
* @return
*/
public
String
delete
()
{
Log
.
infoFileSync
(
"====================开始调用删除功能信息方法delete()================"
);
try
{
functionsService
.
delete
(
model
.
getFunctionsID
());
tipMsg
=
"成功"
;
tipType
=
0
;
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>删除ID为 "
+
model
.
getFunctionsID
()
+
" 的功能异常"
,
e
);
tipMsg
=
"失败"
;
tipType
=
1
;
}
model
.
getShowModel
().
setMsgTip
(
tipMsg
);
logService
.
create
(
new
Logdetails
(
getUser
(),
"删除功能"
,
model
.
getClientIp
(),
new
Timestamp
(
System
.
currentTimeMillis
())
,
tipType
,
"删除功能ID为 "
+
model
.
getFunctionsID
()
+
" "
+
tipMsg
+
"!"
,
"删除功能"
+
tipMsg
));
Log
.
infoFileSync
(
"====================结束调用删除功能信息方法delete()================"
);
return
SUCCESS
;
}
/**
* 更新功能
*
* @return
*/
public
void
update
()
{
Boolean
flag
=
false
;
try
{
Functions
functions
=
functionsService
.
get
(
model
.
getFunctionsID
());
functions
.
setNumber
(
model
.
getNumber
());
functions
.
setName
(
model
.
getName
());
functions
.
setPNumber
(
model
.
getPNumber
());
functions
.
setURL
(
model
.
getURL
());
functions
.
setState
(
model
.
getState
());
functions
.
setSort
(
model
.
getSort
());
functions
.
setEnabled
(
model
.
getEnabled
());
functions
.
setType
(
model
.
getType
());
functions
.
setPushBtn
(
model
.
getPushBtn
());
functionsService
.
update
(
functions
);
flag
=
true
;
tipMsg
=
"成功"
;
tipType
=
0
;
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>修改功能ID为 : "
+
model
.
getFunctionsID
()
+
"信息失败"
,
e
);
flag
=
false
;
tipMsg
=
"失败"
;
tipType
=
1
;
}
finally
{
try
{
toClient
(
flag
.
toString
());
}
catch
(
IOException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>修改功能回写客户端结果异常"
,
e
);
}
}
logService
.
create
(
new
Logdetails
(
getUser
(),
"更新功能"
,
model
.
getClientIp
(),
new
Timestamp
(
System
.
currentTimeMillis
())
,
tipType
,
"更新功能ID为 "
+
model
.
getFunctionsID
()
+
" "
+
tipMsg
+
"!"
,
"更新功能"
+
tipMsg
));
}
/**
* 批量删除指定ID功能
*
* @return
*/
public
String
batchDelete
()
{
try
{
functionsService
.
batchDelete
(
model
.
getFunctionsIDs
());
model
.
getShowModel
().
setMsgTip
(
"成功"
);
//记录操作日志使用
tipMsg
=
"成功"
;
tipType
=
0
;
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>批量删除功能ID为:"
+
model
.
getFunctionsIDs
()
+
"信息异常"
,
e
);
tipMsg
=
"失败"
;
tipType
=
1
;
}
logService
.
create
(
new
Logdetails
(
getUser
(),
"批量删除功能"
,
model
.
getClientIp
(),
new
Timestamp
(
System
.
currentTimeMillis
())
,
tipType
,
"批量删除功能ID为 "
+
model
.
getFunctionsIDs
()
+
" "
+
tipMsg
+
"!"
,
"批量删除功能"
+
tipMsg
));
return
SUCCESS
;
}
/**
* 检查输入名称是否存在
*/
public
void
checkIsNameExist
()
{
Boolean
flag
=
false
;
try
{
flag
=
functionsService
.
checkIsNameExist
(
"Name"
,
model
.
getName
(),
"Id"
,
model
.
getFunctionsID
());
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>检查功能名称为:"
+
model
.
getName
()
+
" ID为: "
+
model
.
getFunctionsID
()
+
" 是否存在异常!"
);
}
finally
{
try
{
toClient
(
flag
.
toString
());
}
catch
(
IOException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>回写检查功能名称为:"
+
model
.
getName
()
+
" ID为: "
+
model
.
getFunctionsID
()
+
" 是否存在异常!"
,
e
);
}
}
}
/**
* 查找功能信息
*
* @return
*/
public
void
findBy
()
{
try
{
PageUtil
<
Functions
>
pageUtil
=
new
PageUtil
<
Functions
>();
pageUtil
.
setPageSize
(
model
.
getPageSize
());
pageUtil
.
setCurPage
(
model
.
getPageNo
());
pageUtil
.
setAdvSearch
(
getCondition
());
functionsService
.
find
(
pageUtil
);
List
<
Functions
>
dataList
=
pageUtil
.
getPageList
();
//开始拼接json数据
// {"total":28,"rows":[
// {"productid":"AV-CB-01","attr1":"Adult Male","itemid":"EST-18"}
// ]}
JSONObject
outer
=
new
JSONObject
();
outer
.
put
(
"total"
,
pageUtil
.
getTotalCount
());
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
Functions
functions
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"Id"
,
functions
.
getId
());
item
.
put
(
"Number"
,
functions
.
getNumber
());
item
.
put
(
"Name"
,
functions
.
getName
());
item
.
put
(
"PNumber"
,
functions
.
getPNumber
());
item
.
put
(
"URL"
,
functions
.
getURL
());
item
.
put
(
"State"
,
functions
.
getState
());
item
.
put
(
"Sort"
,
functions
.
getSort
());
item
.
put
(
"Enabled"
,
functions
.
getEnabled
());
item
.
put
(
"Type"
,
functions
.
getType
());
item
.
put
(
"PushBtn"
,
functions
.
getPushBtn
());
item
.
put
(
"op"
,
1
);
dataArray
.
add
(
item
);
}
}
outer
.
put
(
"rows"
,
dataArray
);
//回写查询结果
toClient
(
outer
.
toString
());
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>>>查找功能信息异常"
,
e
);
}
catch
(
IOException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>>>回写查询功能信息结果异常"
,
e
);
}
}
/**
* 根据id列表查找功能信息
*
* @return
*/
public
void
findByIds
()
{
try
{
PageUtil
<
Functions
>
pageUtil
=
new
PageUtil
<
Functions
>();
pageUtil
.
setPageSize
(
0
);
pageUtil
.
setCurPage
(
0
);
pageUtil
.
setAdvSearch
(
getConditionByIds
());
functionsService
.
find
(
pageUtil
);
List
<
Functions
>
dataList
=
pageUtil
.
getPageList
();
JSONObject
outer
=
new
JSONObject
();
outer
.
put
(
"total"
,
pageUtil
.
getTotalCount
());
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
Functions
functions
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"Id"
,
functions
.
getId
());
item
.
put
(
"Name"
,
functions
.
getName
());
item
.
put
(
"PushBtn"
,
functions
.
getPushBtn
());
item
.
put
(
"op"
,
1
);
dataArray
.
add
(
item
);
}
}
outer
.
put
(
"rows"
,
dataArray
);
//回写查询结果
toClient
(
outer
.
toString
());
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>>>查找功能信息异常"
,
e
);
}
catch
(
IOException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>>>回写查询功能信息结果异常"
,
e
);
}
}
/**
* 角色对应功能显示
*
* @return
*/
public
void
findRoleFunctions
()
{
try
{
PageUtil
<
Functions
>
pageUtil
=
new
PageUtil
<
Functions
>();
pageUtil
.
setPageSize
(
200
);
pageUtil
.
setAdvSearch
(
getCondition_RoleFunctions
(
"0"
));
functionsService
.
find
(
pageUtil
);
List
<
Functions
>
dataList
=
pageUtil
.
getPageList
();
//开始拼接json数据
JSONObject
outer
=
new
JSONObject
();
outer
.
put
(
"id"
,
1
);
outer
.
put
(
"text"
,
"功能列表"
);
outer
.
put
(
"state"
,
"open"
);
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
Functions
functions
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
functions
.
getId
());
item
.
put
(
"text"
,
functions
.
getName
());
//勾选判断1
Boolean
flag
=
false
;
try
{
flag
=
userBusinessService
.
checkIsUserBusinessExist
(
"Type"
,
model
.
getUBType
(),
"KeyId"
,
model
.
getUBKeyId
(),
"Value"
,
"["
+
functions
.
getId
().
toString
()
+
"]"
);
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>设置角色对应的功能:类型"
+
model
.
getUBType
()
+
" KeyId为: "
+
model
.
getUBKeyId
()
+
" 存在异常!"
);
}
if
(
flag
==
true
)
{
item
.
put
(
"checked"
,
true
);
}
//结束
pageUtil
.
setAdvSearch
(
getCondition_RoleFunctions
(
functions
.
getNumber
()));
functionsService
.
find
(
pageUtil
);
List
<
Functions
>
dataList1
=
pageUtil
.
getPageList
();
JSONArray
dataArray1
=
new
JSONArray
();
if
(
null
!=
dataList1
)
{
for
(
Functions
functions1
:
dataList1
)
{
item
.
put
(
"state"
,
"open"
);
//如果不为空,节点不展开
JSONObject
item1
=
new
JSONObject
();
item1
.
put
(
"id"
,
functions1
.
getId
());
item1
.
put
(
"text"
,
functions1
.
getName
());
//勾选判断2
//Boolean flag = false;
try
{
flag
=
userBusinessService
.
checkIsUserBusinessExist
(
"Type"
,
model
.
getUBType
(),
"KeyId"
,
model
.
getUBKeyId
(),
"Value"
,
"["
+
functions1
.
getId
().
toString
()
+
"]"
);
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>设置角色对应的功能:类型"
+
model
.
getUBType
()
+
" KeyId为: "
+
model
.
getUBKeyId
()
+
" 存在异常!"
);
}
if
(
flag
==
true
)
{
item1
.
put
(
"checked"
,
true
);
}
//结束
pageUtil
.
setAdvSearch
(
getCondition_RoleFunctions
(
functions1
.
getNumber
()));
functionsService
.
find
(
pageUtil
);
List
<
Functions
>
dataList2
=
pageUtil
.
getPageList
();
JSONArray
dataArray2
=
new
JSONArray
();
if
(
null
!=
dataList2
)
{
for
(
Functions
functions2
:
dataList2
)
{
item1
.
put
(
"state"
,
"closed"
);
//如果不为空,节点不展开
JSONObject
item2
=
new
JSONObject
();
item2
.
put
(
"id"
,
functions2
.
getId
());
item2
.
put
(
"text"
,
functions2
.
getName
());
//勾选判断3
//Boolean flag = false;
try
{
flag
=
userBusinessService
.
checkIsUserBusinessExist
(
"Type"
,
model
.
getUBType
(),
"KeyId"
,
model
.
getUBKeyId
(),
"Value"
,
"["
+
functions2
.
getId
().
toString
()
+
"]"
);
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>设置角色对应的功能:类型"
+
model
.
getUBType
()
+
" KeyId为: "
+
model
.
getUBKeyId
()
+
" 存在异常!"
);
}
if
(
flag
==
true
)
{
item2
.
put
(
"checked"
,
true
);
}
//结束
pageUtil
.
setAdvSearch
(
getCondition_RoleFunctions
(
functions2
.
getNumber
()));
functionsService
.
find
(
pageUtil
);
List
<
Functions
>
dataList3
=
pageUtil
.
getPageList
();
JSONArray
dataArray3
=
new
JSONArray
();
if
(
null
!=
dataList3
)
{
for
(
Functions
functions3
:
dataList3
)
{
item2
.
put
(
"state"
,
"closed"
);
//如果不为空,节点不展开
JSONObject
item3
=
new
JSONObject
();
item3
.
put
(
"id"
,
functions3
.
getId
());
item3
.
put
(
"text"
,
functions3
.
getName
());
//勾选判断4
//Boolean flag = false;
try
{
flag
=
userBusinessService
.
checkIsUserBusinessExist
(
"Type"
,
model
.
getUBType
(),
"KeyId"
,
model
.
getUBKeyId
(),
"Value"
,
"["
+
functions3
.
getId
().
toString
()
+
"]"
);
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>设置角色对应的功能:类型"
+
model
.
getUBType
()
+
" KeyId为: "
+
model
.
getUBKeyId
()
+
" 存在异常!"
);
}
if
(
flag
==
true
)
{
item3
.
put
(
"checked"
,
true
);
}
//结束
dataArray3
.
add
(
item3
);
item2
.
put
(
"children"
,
dataArray3
);
}
}
dataArray2
.
add
(
item2
);
item1
.
put
(
"children"
,
dataArray2
);
}
}
dataArray1
.
add
(
item1
);
item
.
put
(
"children"
,
dataArray1
);
}
}
dataArray
.
add
(
item
);
}
outer
.
put
(
"children"
,
dataArray
);
}
//回写查询结果
toClient
(
"["
+
outer
.
toString
()
+
"]"
);
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>>>查找应用异常"
,
e
);
}
catch
(
IOException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>>>回写查询应用结果异常"
,
e
);
}
}
/**
* 页面显示菜单
*
* @return
*/
public
void
findMenu
()
{
try
{
String
fc
=
model
.
getHasFunctions
();
//当前用户所拥有的功能列表,格式如:[1][2][5]
PageUtil
<
Functions
>
pageUtil
=
new
PageUtil
<
Functions
>();
pageUtil
.
setPageSize
(
200
);
pageUtil
.
setAdvSearch
(
getCondition_RoleFunctions
(
model
.
getPNumber
()));
functionsService
.
find
(
pageUtil
);
List
<
Functions
>
dataList
=
pageUtil
.
getPageList
();
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
Functions
functions
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
functions
.
getId
());
pageUtil
.
setAdvSearch
(
getCondition_RoleFunctions
(
functions
.
getNumber
()));
functionsService
.
find
(
pageUtil
);
List
<
Functions
>
dataList1
=
pageUtil
.
getPageList
();
JSONArray
dataArray1
=
new
JSONArray
();
if
(
dataList1
.
size
()
!=
0
)
{
item
.
put
(
"text"
,
functions
.
getName
());
//是目录就没链接
for
(
Functions
functions1
:
dataList1
)
{
item
.
put
(
"state"
,
"open"
);
//如果不为空,节点展开
JSONObject
item1
=
new
JSONObject
();
pageUtil
.
setAdvSearch
(
getCondition_RoleFunctions
(
functions1
.
getNumber
()));
functionsService
.
find
(
pageUtil
);
List
<
Functions
>
dataList2
=
pageUtil
.
getPageList
();
if
(
fc
.
indexOf
(
"["
+
functions1
.
getId
().
toString
()
+
"]"
)
!=
-
1
||
dataList2
.
size
()
!=
0
)
{
item1
.
put
(
"id"
,
functions1
.
getId
());
JSONArray
dataArray2
=
new
JSONArray
();
if
(
dataList2
.
size
()
!=
0
)
{
item1
.
put
(
"text"
,
functions1
.
getName
());
//是目录就没链接
for
(
Functions
functions2
:
dataList2
)
{
item1
.
put
(
"state"
,
"closed"
);
//如果不为空,节点不展开
JSONObject
item2
=
new
JSONObject
();
pageUtil
.
setAdvSearch
(
getCondition_RoleFunctions
(
functions2
.
getNumber
()));
functionsService
.
find
(
pageUtil
);
List
<
Functions
>
dataList3
=
pageUtil
.
getPageList
();
if
(
fc
.
indexOf
(
"["
+
functions2
.
getId
().
toString
()
+
"]"
)
!=
-
1
||
dataList3
.
size
()
!=
0
)
{
item2
.
put
(
"id"
,
functions2
.
getId
());
JSONArray
dataArray3
=
new
JSONArray
();
if
(
dataList3
.
size
()
!=
0
)
{
item2
.
put
(
"text"
,
functions2
.
getName
());
//是目录就没链接
for
(
Functions
functions3
:
dataList3
)
{
item2
.
put
(
"state"
,
"closed"
);
//如果不为空,节点不展开
JSONObject
item3
=
new
JSONObject
();
item3
.
put
(
"id"
,
functions3
.
getId
());
item3
.
put
(
"text"
,
functions3
.
getName
());
//
dataArray3
.
add
(
item3
);
item2
.
put
(
"children"
,
dataArray3
);
}
}
else
{
//不是目录,有链接
item2
.
put
(
"text"
,
"<a onclick=\"NewTab('"
+
functions2
.
getName
()
+
"','"
+
functions2
.
getURL
()
+
"','"
+
functions2
.
getId
()
+
"')\">"
+
functions2
.
getName
()
+
"</a>"
);
}
}
else
{
//不是目录,有链接
item2
.
put
(
"text"
,
"<a onclick=\"NewTab('"
+
functions2
.
getName
()
+
"','"
+
functions2
.
getURL
()
+
"','"
+
functions2
.
getId
()
+
"')\">"
+
functions2
.
getName
()
+
"</a>"
);
}
dataArray2
.
add
(
item2
);
item1
.
put
(
"children"
,
dataArray2
);
}
}
else
{
//不是目录,有链接
item1
.
put
(
"text"
,
"<a onclick=\"NewTab('"
+
functions1
.
getName
()
+
"','"
+
functions1
.
getURL
()
+
"','"
+
functions1
.
getId
()
+
"')\">"
+
functions1
.
getName
()
+
"</a>"
);
}
}
else
{
//不是目录,有链接
item1
.
put
(
"text"
,
"<a onclick=\"NewTab('"
+
functions1
.
getName
()
+
"','"
+
functions1
.
getURL
()
+
"','"
+
functions1
.
getId
()
+
"')\">"
+
functions1
.
getName
()
+
"</a>"
);
}
dataArray1
.
add
(
item1
);
item
.
put
(
"children"
,
dataArray1
);
}
}
else
{
//不是目录,有链接
item
.
put
(
"text"
,
"<a onclick=\"NewTab('"
+
functions
.
getName
()
+
"','"
+
functions
.
getURL
()
+
"','"
+
functions
.
getId
()
+
"')\">"
+
functions
.
getName
()
+
"</a>"
);
}
dataArray
.
add
(
item
);
}
}
//回写查询结果
toClient
(
dataArray
.
toString
());
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>>>查找应用异常"
,
e
);
}
catch
(
IOException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>>>回写查询应用结果异常"
,
e
);
}
}
/**
* 拼接搜索条件
*
* @return
*/
private
Map
<
String
,
Object
>
getCondition
()
{
/**
* 拼接搜索条件
*/
Map
<
String
,
Object
>
condition
=
new
HashMap
<
String
,
Object
>();
condition
.
put
(
"Name_s_like"
,
model
.
getName
());
condition
.
put
(
"Type_s_eq"
,
model
.
getType
());
condition
.
put
(
"Sort_s_order"
,
"asc"
);
return
condition
;
}
/**
* 拼接搜索条件-角色对应功能
*
* @return
*/
private
Map
<
String
,
Object
>
getCondition_RoleFunctions
(
String
num
)
{
/**
* 拼接搜索条件
*/
Map
<
String
,
Object
>
condition
=
new
HashMap
<
String
,
Object
>();
condition
.
put
(
"Enabled_n_eq"
,
1
);
condition
.
put
(
"PNumber_s_eq"
,
num
);
condition
.
put
(
"Sort_s_order"
,
"asc"
);
return
condition
;
}
/**
* 拼接搜索条件-角色对应功能
*
* @return
*/
private
Map
<
String
,
Object
>
getConditionByIds
()
{
Map
<
String
,
Object
>
condition
=
new
HashMap
<
String
,
Object
>();
condition
.
put
(
"Enabled_n_eq"
,
1
);
condition
.
put
(
"Id_s_in"
,
model
.
getFunctionsIDs
());
condition
.
put
(
"Sort_s_order"
,
"asc"
);
return
condition
;
}
//=============以下spring注入以及Model驱动公共方法,与Action处理无关==================
@Override
public
FunctionsModel
getModel
()
{
return
model
;
}
public
void
setFunctionsService
(
FunctionsIService
functionsService
)
{
this
.
functionsService
=
functionsService
;
}
public
void
setUserBusinessService
(
UserBusinessIService
userBusinessService
)
{
this
.
userBusinessService
=
userBusinessService
;
}
}
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.datasource.entities.Functions
;
import
com.jsh.erp.service.functions.FunctionsService
;
import
com.jsh.erp.service.userBusiness.UserBusinessService
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.dao.DataAccessException
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.io.IOException
;
import
java.util.List
;
@RestController
@RequestMapping
(
value
=
"/functions"
)
public
class
FunctionsController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
FunctionsController
.
class
);
@Resource
private
FunctionsService
functionsService
;
@Resource
private
UserBusinessService
userBusinessService
;
@PostMapping
(
value
=
"/findMenu"
)
public
JSONArray
findMenu
(
@RequestParam
(
value
=
"pNumber"
)
String
pNumber
,
@RequestParam
(
value
=
"hasFunctions"
)
String
hasFunctions
,
HttpServletRequest
request
)
{
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
try
{
String
fc
=
hasFunctions
;
//当前用户所拥有的功能列表,格式如:[1][2][5]
List
<
Functions
>
dataList
=
functionsService
.
getRoleFunctions
(
pNumber
);
if
(
null
!=
dataList
)
{
for
(
Functions
functions
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
functions
.
getId
());
List
<
Functions
>
dataList1
=
functionsService
.
getRoleFunctions
(
functions
.
getNumber
());
JSONArray
dataArray1
=
new
JSONArray
();
if
(
dataList1
.
size
()
!=
0
)
{
item
.
put
(
"text"
,
functions
.
getName
());
//是目录就没链接
for
(
Functions
functions1
:
dataList1
)
{
item
.
put
(
"state"
,
"open"
);
//如果不为空,节点展开
JSONObject
item1
=
new
JSONObject
();
List
<
Functions
>
dataList2
=
functionsService
.
getRoleFunctions
(
functions1
.
getNumber
());
if
(
fc
.
indexOf
(
"["
+
functions1
.
getId
().
toString
()
+
"]"
)
!=
-
1
||
dataList2
.
size
()
!=
0
)
{
item1
.
put
(
"id"
,
functions1
.
getId
());
JSONArray
dataArray2
=
new
JSONArray
();
if
(
dataList2
.
size
()
!=
0
)
{
item1
.
put
(
"text"
,
functions1
.
getName
());
//是目录就没链接
for
(
Functions
functions2
:
dataList2
)
{
item1
.
put
(
"state"
,
"closed"
);
//如果不为空,节点不展开
JSONObject
item2
=
new
JSONObject
();
List
<
Functions
>
dataList3
=
functionsService
.
getRoleFunctions
(
functions2
.
getNumber
());
if
(
fc
.
indexOf
(
"["
+
functions2
.
getId
().
toString
()
+
"]"
)
!=
-
1
||
dataList3
.
size
()
!=
0
)
{
item2
.
put
(
"id"
,
functions2
.
getId
());
JSONArray
dataArray3
=
new
JSONArray
();
if
(
dataList3
.
size
()
!=
0
)
{
item2
.
put
(
"text"
,
functions2
.
getName
());
//是目录就没链接
for
(
Functions
functions3
:
dataList3
)
{
item2
.
put
(
"state"
,
"closed"
);
//如果不为空,节点不展开
JSONObject
item3
=
new
JSONObject
();
item3
.
put
(
"id"
,
functions3
.
getId
());
item3
.
put
(
"text"
,
functions3
.
getName
());
//
dataArray3
.
add
(
item3
);
item2
.
put
(
"children"
,
dataArray3
);
}
}
else
{
//不是目录,有链接
item2
.
put
(
"text"
,
"<a onclick=\"NewTab('"
+
functions2
.
getName
()
+
"','"
+
functions2
.
getUrl
()
+
"','"
+
functions2
.
getId
()
+
"')\">"
+
functions2
.
getName
()
+
"</a>"
);
}
}
else
{
//不是目录,有链接
item2
.
put
(
"text"
,
"<a onclick=\"NewTab('"
+
functions2
.
getName
()
+
"','"
+
functions2
.
getUrl
()
+
"','"
+
functions2
.
getId
()
+
"')\">"
+
functions2
.
getName
()
+
"</a>"
);
}
dataArray2
.
add
(
item2
);
item1
.
put
(
"children"
,
dataArray2
);
}
}
else
{
//不是目录,有链接
item1
.
put
(
"text"
,
"<a onclick=\"NewTab('"
+
functions1
.
getName
()
+
"','"
+
functions1
.
getUrl
()
+
"','"
+
functions1
.
getId
()
+
"')\">"
+
functions1
.
getName
()
+
"</a>"
);
}
}
else
{
//不是目录,有链接
item1
.
put
(
"text"
,
"<a onclick=\"NewTab('"
+
functions1
.
getName
()
+
"','"
+
functions1
.
getUrl
()
+
"','"
+
functions1
.
getId
()
+
"')\">"
+
functions1
.
getName
()
+
"</a>"
);
}
dataArray1
.
add
(
item1
);
item
.
put
(
"children"
,
dataArray1
);
}
}
else
{
//不是目录,有链接
item
.
put
(
"text"
,
"<a onclick=\"NewTab('"
+
functions
.
getName
()
+
"','"
+
functions
.
getUrl
()
+
"','"
+
functions
.
getId
()
+
"')\">"
+
functions
.
getName
()
+
"</a>"
);
}
dataArray
.
add
(
item
);
}
}
}
catch
(
DataAccessException
e
)
{
logger
.
error
(
">>>>>>>>>>>>>>>>>>>查找应用异常"
,
e
);
}
return
dataArray
;
}
/**
* 角色对应功能显示
* @param request
* @return
*/
@PostMapping
(
value
=
"/findRoleFunctions"
)
public
JSONArray
findRoleFunctions
(
@RequestParam
(
"UBType"
)
String
type
,
@RequestParam
(
"UBKeyId"
)
String
keyId
,
HttpServletRequest
request
)
{
JSONArray
arr
=
new
JSONArray
();
try
{
List
<
Functions
>
dataList
=
functionsService
.
findRoleFunctions
(
"0"
);
//开始拼接json数据
JSONObject
outer
=
new
JSONObject
();
outer
.
put
(
"id"
,
1
);
outer
.
put
(
"text"
,
"功能列表"
);
outer
.
put
(
"state"
,
"open"
);
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
Functions
functions
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
functions
.
getId
());
item
.
put
(
"text"
,
functions
.
getName
());
//勾选判断1
Boolean
flag
=
false
;
try
{
flag
=
userBusinessService
.
checkIsUserBusinessExist
(
type
,
keyId
,
"["
+
functions
.
getId
().
toString
()
+
"]"
);
}
catch
(
Exception
e
)
{
logger
.
error
(
">>>>>>>>>>>>>>>>>设置角色对应的功能:类型"
+
type
+
" KeyId为: "
+
keyId
+
" 存在异常!"
);
}
if
(
flag
==
true
)
{
item
.
put
(
"checked"
,
true
);
}
//结束
List
<
Functions
>
dataList1
=
functionsService
.
findRoleFunctions
(
functions
.
getNumber
());
JSONArray
dataArray1
=
new
JSONArray
();
if
(
null
!=
dataList1
)
{
for
(
Functions
functions1
:
dataList1
)
{
item
.
put
(
"state"
,
"open"
);
//如果不为空,节点不展开
JSONObject
item1
=
new
JSONObject
();
item1
.
put
(
"id"
,
functions1
.
getId
());
item1
.
put
(
"text"
,
functions1
.
getName
());
//勾选判断2
//Boolean flag = false;
try
{
flag
=
userBusinessService
.
checkIsUserBusinessExist
(
type
,
keyId
,
"["
+
functions1
.
getId
().
toString
()
+
"]"
);
}
catch
(
Exception
e
)
{
logger
.
error
(
">>>>>>>>>>>>>>>>>设置角色对应的功能:类型"
+
type
+
" KeyId为: "
+
keyId
+
" 存在异常!"
);
}
if
(
flag
==
true
)
{
item1
.
put
(
"checked"
,
true
);
}
//结束
List
<
Functions
>
dataList2
=
functionsService
.
findRoleFunctions
(
functions1
.
getNumber
());
JSONArray
dataArray2
=
new
JSONArray
();
if
(
null
!=
dataList2
)
{
for
(
Functions
functions2
:
dataList2
)
{
item1
.
put
(
"state"
,
"closed"
);
//如果不为空,节点不展开
JSONObject
item2
=
new
JSONObject
();
item2
.
put
(
"id"
,
functions2
.
getId
());
item2
.
put
(
"text"
,
functions2
.
getName
());
//勾选判断3
//Boolean flag = false;
try
{
flag
=
userBusinessService
.
checkIsUserBusinessExist
(
type
,
keyId
,
"["
+
functions2
.
getId
().
toString
()
+
"]"
);
}
catch
(
Exception
e
)
{
logger
.
error
(
">>>>>>>>>>>>>>>>>设置角色对应的功能:类型"
+
type
+
" KeyId为: "
+
keyId
+
" 存在异常!"
);
}
if
(
flag
==
true
)
{
item2
.
put
(
"checked"
,
true
);
}
//结束
List
<
Functions
>
dataList3
=
functionsService
.
findRoleFunctions
(
functions2
.
getNumber
());
JSONArray
dataArray3
=
new
JSONArray
();
if
(
null
!=
dataList3
)
{
for
(
Functions
functions3
:
dataList3
)
{
item2
.
put
(
"state"
,
"closed"
);
//如果不为空,节点不展开
JSONObject
item3
=
new
JSONObject
();
item3
.
put
(
"id"
,
functions3
.
getId
());
item3
.
put
(
"text"
,
functions3
.
getName
());
//勾选判断4
//Boolean flag = false;
try
{
flag
=
userBusinessService
.
checkIsUserBusinessExist
(
type
,
keyId
,
"["
+
functions3
.
getId
().
toString
()
+
"]"
);
}
catch
(
Exception
e
)
{
logger
.
error
(
">>>>>>>>>>>>>>>>>设置角色对应的功能:类型"
+
type
+
" KeyId为: "
+
keyId
+
" 存在异常!"
);
}
if
(
flag
==
true
)
{
item3
.
put
(
"checked"
,
true
);
}
//结束
dataArray3
.
add
(
item3
);
item2
.
put
(
"children"
,
dataArray3
);
}
}
dataArray2
.
add
(
item2
);
item1
.
put
(
"children"
,
dataArray2
);
}
}
dataArray1
.
add
(
item1
);
item
.
put
(
"children"
,
dataArray1
);
}
}
dataArray
.
add
(
item
);
}
outer
.
put
(
"children"
,
dataArray
);
arr
.
add
(
outer
);
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
arr
;
}
}
src/main/java/com/jsh/erp/controller/InOutItemController.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.datasource.entities.InOutItem
;
import
com.jsh.erp.service.inOutItem.InOutItemService
;
import
com.jsh.erp.utils.BaseResponseInfo
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@RestController
@RequestMapping
(
value
=
"/inOutItem"
)
public
class
InOutItemController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
InOutItemController
.
class
);
@Resource
private
InOutItemService
inOutItemService
;
/**
* 查找收支项目信息-下拉框
* @param request
* @return
*/
@GetMapping
(
value
=
"/findBySelect"
)
public
String
findBySelect
(
@RequestParam
(
"type"
)
String
type
,
HttpServletRequest
request
)
{
String
res
=
null
;
try
{
List
<
InOutItem
>
dataList
=
inOutItemService
.
findBySelect
(
type
);
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
InOutItem
inOutItem
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"Id"
,
inOutItem
.
getId
());
//收支项目名称
item
.
put
(
"InOutItemName"
,
inOutItem
.
getName
());
dataArray
.
add
(
item
);
}
}
res
=
dataArray
.
toJSONString
();
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
=
"获取数据失败"
;
}
return
res
;
}
}
src/main/java/com/jsh/erp/controller/MaterialCategoryController.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.datasource.entities.MaterialCategory
;
import
com.jsh.erp.service.materialCategory.MaterialCategoryService
;
import
com.jsh.erp.utils.BaseResponseInfo
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.List
;
@RestController
@RequestMapping
(
value
=
"/materialCategory"
)
public
class
MaterialCategoryController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
MaterialCategoryController
.
class
);
@Resource
private
MaterialCategoryService
materialCategoryService
;
@GetMapping
(
value
=
"/getAllList"
)
public
BaseResponseInfo
getAllList
(
@RequestParam
(
"parentId"
)
Long
parentId
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
try
{
List
<
MaterialCategory
>
materialCategoryList
=
materialCategoryService
.
getAllList
(
parentId
);
res
.
code
=
200
;
res
.
data
=
materialCategoryList
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 根据id来查询商品名称
* @param id
* @param request
* @return
*/
@GetMapping
(
value
=
"/findById"
)
public
BaseResponseInfo
findById
(
@RequestParam
(
"id"
)
Long
id
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
try
{
List
<
MaterialCategory
>
dataList
=
materialCategoryService
.
findById
(
id
);
JSONObject
outer
=
new
JSONObject
();
if
(
null
!=
dataList
)
{
for
(
MaterialCategory
mc
:
dataList
)
{
outer
.
put
(
"name"
,
mc
.
getName
());
outer
.
put
(
"parentId"
,
mc
.
getParentid
());
}
}
res
.
code
=
200
;
res
.
data
=
dataList
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
}
src/main/java/com/jsh/erp/controller/MaterialController.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.datasource.entities.Material
;
import
com.jsh.erp.datasource.entities.MaterialVo4Unit
;
import
com.jsh.erp.service.material.MaterialService
;
import
com.jsh.erp.utils.BaseResponseInfo
;
import
com.jsh.erp.utils.ErpInfo
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
static
com
.
jsh
.
erp
.
utils
.
ResponseJsonUtil
.
returnJson
;
@RestController
@RequestMapping
(
value
=
"/material"
)
public
class
MaterialController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
MaterialController
.
class
);
@Resource
private
MaterialService
materialService
;
@GetMapping
(
value
=
"/checkIsExist"
)
public
String
checkIsExist
(
@RequestParam
(
"materialId"
)
Long
id
,
@RequestParam
(
"name"
)
String
name
,
@RequestParam
(
"model"
)
String
model
,
@RequestParam
(
"color"
)
String
color
,
@RequestParam
(
"standard"
)
String
standard
,
@RequestParam
(
"mfrs"
)
String
mfrs
,
@RequestParam
(
"otherField1"
)
String
otherField1
,
@RequestParam
(
"otherField2"
)
String
otherField2
,
@RequestParam
(
"otherField3"
)
String
otherField3
,
@RequestParam
(
"unit"
)
String
unit
,
@RequestParam
(
"unitId"
)
Long
unitId
,
HttpServletRequest
request
)
{
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
int
exist
=
materialService
.
checkIsExist
(
id
,
name
,
model
,
color
,
standard
,
mfrs
,
otherField1
,
otherField2
,
otherField3
,
unit
,
unitId
);
if
(
exist
>
0
)
{
objectMap
.
put
(
"status"
,
true
);
}
else
{
objectMap
.
put
(
"status"
,
false
);
}
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
/**
* 批量设置状态-启用或者禁用
* @param enabled
* @param materialIDs
* @param request
* @return
*/
@PostMapping
(
value
=
"/batchSetEnable"
)
public
String
batchSetEnable
(
@RequestParam
(
"enabled"
)
Boolean
enabled
,
@RequestParam
(
"materialIDs"
)
String
materialIDs
,
HttpServletRequest
request
)
{
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
int
res
=
materialService
.
batchSetEnable
(
enabled
,
materialIDs
);
if
(
res
>
0
)
{
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
else
{
return
returnJson
(
objectMap
,
ErpInfo
.
ERROR
.
name
,
ErpInfo
.
ERROR
.
code
);
}
}
/**
* 根据id来查询商品名称
* @param id
* @param request
* @return
*/
@GetMapping
(
value
=
"/findById"
)
public
BaseResponseInfo
findById
(
@RequestParam
(
"id"
)
Long
id
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
try
{
List
<
MaterialVo4Unit
>
list
=
materialService
.
findById
(
id
);
res
.
code
=
200
;
res
.
data
=
list
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 查找商品信息-下拉框
* @param mpList
* @param request
* @return
*/
@GetMapping
(
value
=
"/findBySelect"
)
public
JSONArray
findBySelect
(
@RequestParam
(
"mpList"
)
String
mpList
,
HttpServletRequest
request
)
{
JSONArray
dataArray
=
new
JSONArray
();
try
{
List
<
MaterialVo4Unit
>
dataList
=
materialService
.
findBySelect
();
String
[]
mpArr
=
mpList
.
split
(
","
);
//存放数据json数组
if
(
null
!=
dataList
)
{
for
(
MaterialVo4Unit
material
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"Id"
,
material
.
getId
());
String
ratio
;
//比例
if
(
material
.
getUnitid
()
==
null
||
material
.
getUnitid
().
equals
(
""
))
{
ratio
=
""
;
}
else
{
ratio
=
material
.
getUnitName
();
ratio
=
ratio
.
substring
(
ratio
.
indexOf
(
"("
));
}
//品名/型号/扩展信息/包装
String
MaterialName
=
material
.
getName
()
+
((
material
.
getModel
()
==
null
||
material
.
getModel
().
equals
(
""
))
?
""
:
"("
+
material
.
getModel
()
+
")"
);
for
(
int
i
=
0
;
i
<
mpArr
.
length
;
i
++)
{
if
(
mpArr
[
i
].
equals
(
"颜色"
))
{
MaterialName
=
MaterialName
+
((
material
.
getColor
()
==
null
||
material
.
getColor
().
equals
(
""
))
?
""
:
"("
+
material
.
getColor
()
+
")"
);
}
if
(
mpArr
[
i
].
equals
(
"规格"
))
{
MaterialName
=
MaterialName
+
((
material
.
getStandard
()
==
null
||
material
.
getStandard
().
equals
(
""
))
?
""
:
"("
+
material
.
getStandard
()
+
")"
);
}
if
(
mpArr
[
i
].
equals
(
"制造商"
))
{
MaterialName
=
MaterialName
+
((
material
.
getMfrs
()
==
null
||
material
.
getMfrs
().
equals
(
""
))
?
""
:
"("
+
material
.
getMfrs
()
+
")"
);
}
if
(
mpArr
[
i
].
equals
(
"自定义1"
))
{
MaterialName
=
MaterialName
+
((
material
.
getOtherfield1
()
==
null
||
material
.
getOtherfield1
().
equals
(
""
))
?
""
:
"("
+
material
.
getOtherfield1
()
+
")"
);
}
if
(
mpArr
[
i
].
equals
(
"自定义2"
))
{
MaterialName
=
MaterialName
+
((
material
.
getOtherfield2
()
==
null
||
material
.
getOtherfield2
().
equals
(
""
))
?
""
:
"("
+
material
.
getOtherfield2
()
+
")"
);
}
if
(
mpArr
[
i
].
equals
(
"自定义3"
))
{
MaterialName
=
MaterialName
+
((
material
.
getOtherfield3
()
==
null
||
material
.
getOtherfield3
().
equals
(
""
))
?
""
:
"("
+
material
.
getOtherfield3
()
+
")"
);
}
}
MaterialName
=
MaterialName
+
((
material
.
getUnit
()
==
null
||
material
.
getUnit
().
equals
(
""
))
?
""
:
"("
+
material
.
getUnit
()
+
")"
)
+
ratio
;
item
.
put
(
"MaterialName"
,
MaterialName
);
dataArray
.
add
(
item
);
}
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
dataArray
;
}
/**
* 查找商品信息-统计排序
* @param request
* @return
*/
@GetMapping
(
value
=
"/findByOrder"
)
public
BaseResponseInfo
findByOrder
(
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
Material
>
dataList
=
materialService
.
findByOrder
();
String
mId
=
""
;
if
(
null
!=
dataList
)
{
for
(
Material
material
:
dataList
)
{
mId
=
mId
+
material
.
getId
()
+
","
;
}
}
if
(
mId
!=
""
)
{
mId
=
mId
.
substring
(
0
,
mId
.
lastIndexOf
(
","
));
}
map
.
put
(
"mIds"
,
mId
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
}
src/main/java/com/jsh/erp/controller/PersonController.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.datasource.entities.Person
;
import
com.jsh.erp.service.person.PersonService
;
import
com.jsh.erp.utils.BaseResponseInfo
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@RestController
@RequestMapping
(
value
=
"/person"
)
public
class
PersonController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
PersonController
.
class
);
@Resource
private
PersonService
personService
;
@GetMapping
(
value
=
"/getAllList"
)
public
BaseResponseInfo
getAllList
(
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
Person
>
personList
=
personService
.
getPerson
();
map
.
put
(
"personList"
,
personList
);
res
.
code
=
200
;
res
.
data
=
personList
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 根据Id获取经手人信息
* @param personIDs
* @param request
* @return
*/
@GetMapping
(
value
=
"/getPersonByIds"
)
public
BaseResponseInfo
getPersonByIds
(
@RequestParam
(
"personIDs"
)
String
personIDs
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
String
names
=
personService
.
getPersonByIds
(
personIDs
);
map
.
put
(
"names"
,
names
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 根据类型获取经手人信息
* @param type
* @param request
* @return
*/
@GetMapping
(
value
=
"/getPersonByType"
)
public
BaseResponseInfo
getPersonByType
(
@RequestParam
(
"type"
)
String
type
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
try
{
List
<
Person
>
personList
=
personService
.
getPersonByType
(
type
);
map
.
put
(
"personList"
,
personList
);
res
.
code
=
200
;
res
.
data
=
map
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
/**
* 根据类型获取经手人信息 1-业务员,2-仓管员,3-财务员
* @param typeNum
* @param request
* @return
*/
@PostMapping
(
value
=
"/getPersonByNumType"
)
public
JSONArray
getPersonByNumType
(
@RequestParam
(
"type"
)
String
typeNum
,
HttpServletRequest
request
)
{
JSONArray
dataArray
=
new
JSONArray
();
try
{
String
type
=
""
;
if
(
typeNum
.
equals
(
"1"
))
{
type
=
"业务员"
;
}
else
if
(
typeNum
.
equals
(
"2"
))
{
type
=
"仓管员"
;
}
else
if
(
typeNum
.
equals
(
"3"
))
{
type
=
"财务员"
;
}
List
<
Person
>
personList
=
personService
.
getPersonByType
(
type
);
if
(
null
!=
personList
)
{
for
(
Person
person
:
personList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
person
.
getId
());
item
.
put
(
"name"
,
person
.
getName
());
dataArray
.
add
(
item
);
}
}
}
catch
(
Exception
e
){
e
.
printStackTrace
();
}
return
dataArray
;
}
}
src/main/java/com/jsh/erp/controller/ResourceController.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.service.CommonQueryManager
;
import
com.jsh.erp.utils.*
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.*
;
import
static
com
.
jsh
.
erp
.
utils
.
ResponseJsonUtil
.
returnJson
;
/**
* by jishenghua 2018-9-12 23:58:10
*/
@RestController
public
class
ResourceController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
ResourceController
.
class
);
@Resource
private
CommonQueryManager
configResourceManager
;
@GetMapping
(
value
=
"/test/heart"
)
public
JSONObject
exitHeart
(
HttpServletRequest
request
)
{
return
JsonUtils
.
ok
();
}
@GetMapping
(
value
=
"/{apiName}/list"
)
public
String
getList
(
@PathVariable
(
"apiName"
)
String
apiName
,
@RequestParam
(
value
=
Constants
.
PAGE_SIZE
,
required
=
false
)
Integer
pageSize
,
@RequestParam
(
value
=
Constants
.
CURRENT_PAGE
,
required
=
false
)
Integer
currentPage
,
@RequestParam
(
value
=
Constants
.
SEARCH
,
required
=
false
)
String
search
,
HttpServletRequest
request
)
{
Map
<
String
,
String
>
parameterMap
=
ParamUtils
.
requestToMap
(
request
);
parameterMap
.
put
(
Constants
.
SEARCH
,
search
);
PageQueryInfo
queryInfo
=
new
PageQueryInfo
();
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
if
(
pageSize
!=
null
&&
pageSize
<=
0
)
{
pageSize
=
10
;
}
String
offset
=
ParamUtils
.
getPageOffset
(
currentPage
,
pageSize
);
if
(
StringUtil
.
isNotEmpty
(
offset
))
{
parameterMap
.
put
(
Constants
.
OFFSET
,
offset
);
}
List
<?>
list
=
configResourceManager
.
select
(
apiName
,
parameterMap
);
objectMap
.
put
(
"page"
,
queryInfo
);
if
(
list
==
null
)
{
queryInfo
.
setRows
(
new
ArrayList
<
Object
>());
queryInfo
.
setTotal
(
0
);
return
returnJson
(
objectMap
,
"查找不到数据"
,
ErpInfo
.
OK
.
code
);
}
queryInfo
.
setRows
(
list
);
queryInfo
.
setTotal
(
configResourceManager
.
counts
(
apiName
,
parameterMap
));
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
@PostMapping
(
value
=
"/{apiName}/add"
,
produces
=
{
"application/javascript"
,
"application/json"
})
public
String
addResource
(
@PathVariable
(
"apiName"
)
String
apiName
,
@RequestParam
(
"info"
)
String
beanJson
,
HttpServletRequest
request
)
{
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
int
insert
=
configResourceManager
.
insert
(
apiName
,
beanJson
,
request
);
if
(
insert
>
0
)
{
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
else
{
return
returnJson
(
objectMap
,
ErpInfo
.
ERROR
.
name
,
ErpInfo
.
ERROR
.
code
);
}
}
@PostMapping
(
value
=
"/{apiName}/update"
,
produces
=
{
"application/javascript"
,
"application/json"
})
public
String
updateResource
(
@PathVariable
(
"apiName"
)
String
apiName
,
@RequestParam
(
"info"
)
String
beanJson
,
@RequestParam
(
"id"
)
Long
id
,
HttpServletRequest
request
)
{
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
int
update
=
configResourceManager
.
update
(
apiName
,
beanJson
,
id
);
if
(
update
>
0
)
{
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
else
{
return
returnJson
(
objectMap
,
ErpInfo
.
ERROR
.
name
,
ErpInfo
.
ERROR
.
code
);
}
}
@PostMapping
(
value
=
"/{apiName}/{id}/delete"
,
produces
=
{
"application/javascript"
,
"application/json"
})
public
String
deleteResource
(
@PathVariable
(
"apiName"
)
String
apiName
,
@PathVariable
Long
id
,
HttpServletRequest
request
)
{
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
int
delete
=
configResourceManager
.
delete
(
apiName
,
id
);
if
(
delete
>
0
)
{
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
else
{
return
returnJson
(
objectMap
,
ErpInfo
.
ERROR
.
name
,
ErpInfo
.
ERROR
.
code
);
}
}
@PostMapping
(
value
=
"/{apiName}/batchDelete"
,
produces
=
{
"application/javascript"
,
"application/json"
})
public
String
batchDeleteResource
(
@PathVariable
(
"apiName"
)
String
apiName
,
@RequestParam
(
"ids"
)
String
ids
,
HttpServletRequest
request
)
{
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
int
delete
=
configResourceManager
.
batchDelete
(
apiName
,
ids
);
if
(
delete
>
0
)
{
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
else
{
return
returnJson
(
objectMap
,
ErpInfo
.
ERROR
.
name
,
ErpInfo
.
ERROR
.
code
);
}
}
@GetMapping
(
value
=
"/{apiName}/checkIsNameExist"
)
public
String
checkIsNameExist
(
@PathVariable
(
"apiName"
)
String
apiName
,
@RequestParam
Long
id
,
@RequestParam
(
value
=
"name"
,
required
=
false
)
String
name
,
HttpServletRequest
request
)
{
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
int
exist
=
configResourceManager
.
checkIsNameExist
(
apiName
,
id
,
name
);
if
(
exist
>
0
)
{
objectMap
.
put
(
"status"
,
true
);
}
else
{
objectMap
.
put
(
"status"
,
false
);
}
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
}
src/main/java/com/jsh/erp/controller/RoleController.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.datasource.entities.Role
;
import
com.jsh.erp.service.role.RoleService
;
import
com.jsh.erp.service.userBusiness.UserBusinessService
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.List
;
@RestController
@RequestMapping
(
value
=
"/role"
)
public
class
RoleController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
RoleController
.
class
);
@Resource
private
RoleService
roleService
;
@Resource
private
UserBusinessService
userBusinessService
;
/**
* 角色对应应用显示
* @param request
* @return
*/
@PostMapping
(
value
=
"/findUserRole"
)
public
JSONArray
findUserRole
(
@RequestParam
(
"UBType"
)
String
type
,
@RequestParam
(
"UBKeyId"
)
String
keyId
,
HttpServletRequest
request
)
{
JSONArray
arr
=
new
JSONArray
();
try
{
List
<
Role
>
dataList
=
roleService
.
findUserRole
();
//开始拼接json数据
JSONObject
outer
=
new
JSONObject
();
outer
.
put
(
"id"
,
1
);
outer
.
put
(
"text"
,
"角色列表"
);
outer
.
put
(
"state"
,
"open"
);
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
Role
role
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
role
.
getId
());
item
.
put
(
"text"
,
role
.
getName
());
//勾选判断1
Boolean
flag
=
false
;
try
{
flag
=
userBusinessService
.
checkIsUserBusinessExist
(
type
,
keyId
,
"["
+
role
.
getId
().
toString
()
+
"]"
);
}
catch
(
Exception
e
)
{
logger
.
error
(
">>>>>>>>>>>>>>>>>设置用户对应的角色:类型"
+
type
+
" KeyId为: "
+
keyId
+
" 存在异常!"
);
}
if
(
flag
==
true
)
{
item
.
put
(
"checked"
,
true
);
}
//结束
dataArray
.
add
(
item
);
}
}
outer
.
put
(
"children"
,
dataArray
);
arr
.
add
(
outer
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
arr
;
}
}
src/main/java/com/jsh/erp/controller/SupplierController.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.datasource.entities.Supplier
;
import
com.jsh.erp.service.supplier.SupplierService
;
import
com.jsh.erp.service.userBusiness.UserBusinessService
;
import
com.jsh.erp.utils.BaseResponseInfo
;
import
com.jsh.erp.utils.ErpInfo
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.dao.DataAccessException
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
static
com
.
jsh
.
erp
.
utils
.
ResponseJsonUtil
.
returnJson
;
@RestController
@RequestMapping
(
value
=
"/supplier"
)
public
class
SupplierController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
SupplierController
.
class
);
@Resource
private
SupplierService
supplierService
;
@Resource
private
UserBusinessService
userBusinessService
;
/**
* 更新供应商-只更新预付款,其余用原来的值
* @param supplierId
* @param advanceIn
* @param request
* @return
*/
@PostMapping
(
value
=
"/updateAdvanceIn"
)
public
String
updateAdvanceIn
(
@RequestParam
(
"supplierId"
)
Long
supplierId
,
@RequestParam
(
"advanceIn"
)
Double
advanceIn
,
HttpServletRequest
request
)
{
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
int
res
=
supplierService
.
updateAdvanceIn
(
supplierId
,
advanceIn
);
if
(
res
>
0
)
{
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
else
{
return
returnJson
(
objectMap
,
ErpInfo
.
ERROR
.
name
,
ErpInfo
.
ERROR
.
code
);
}
}
/**
* 查找客户信息-下拉框
* @param request
* @return
*/
@PostMapping
(
value
=
"/findBySelect_cus"
)
public
JSONArray
findBySelectCus
(
HttpServletRequest
request
)
{
JSONArray
arr
=
new
JSONArray
();
try
{
List
<
Supplier
>
supplierList
=
supplierService
.
findBySelectCus
();
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
supplierList
)
{
for
(
Supplier
supplier
:
supplierList
)
{
JSONObject
item
=
new
JSONObject
();
//勾选判断1
Boolean
flag
=
false
;
try
{
flag
=
userBusinessService
.
checkIsUserBusinessExist
(
null
,
null
,
"["
+
supplier
.
getId
().
toString
()
+
"]"
);
}
catch
(
DataAccessException
e
)
{
logger
.
error
(
">>>>>>>>>>>>>>>>>查询用户对应的客户:存在异常!"
);
}
if
(
flag
==
true
)
{
item
.
put
(
"id"
,
supplier
.
getId
());
item
.
put
(
"supplier"
,
supplier
.
getSupplier
());
//客户名称
dataArray
.
add
(
item
);
}
}
}
arr
=
dataArray
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
}
return
arr
;
}
/**
* 查找供应商信息-下拉框
* @param request
* @return
*/
@PostMapping
(
value
=
"/findBySelect_sup"
)
public
JSONArray
findBySelectSup
(
HttpServletRequest
request
)
{
JSONArray
arr
=
new
JSONArray
();
try
{
List
<
Supplier
>
supplierList
=
supplierService
.
findBySelectSup
();
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
supplierList
)
{
for
(
Supplier
supplier
:
supplierList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
supplier
.
getId
());
//供应商名称
item
.
put
(
"supplier"
,
supplier
.
getSupplier
());
dataArray
.
add
(
item
);
}
}
arr
=
dataArray
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
}
return
arr
;
}
/**
* 查找会员信息-下拉框
* @param request
* @return
*/
@PostMapping
(
value
=
"/findBySelect_retail"
)
public
JSONArray
findBySelectRetail
(
HttpServletRequest
request
)
{
JSONArray
arr
=
new
JSONArray
();
try
{
List
<
Supplier
>
supplierList
=
supplierService
.
findBySelectRetail
();
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
supplierList
)
{
for
(
Supplier
supplier
:
supplierList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
supplier
.
getId
());
//客户名称
item
.
put
(
"supplier"
,
supplier
.
getSupplier
());
item
.
put
(
"advanceIn"
,
supplier
.
getAdvancein
());
//预付款金额
dataArray
.
add
(
item
);
}
}
arr
=
dataArray
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
}
return
arr
;
}
/**
* 根据id查找信息
* @param supplierId
* @param request
* @return
*/
@GetMapping
(
value
=
"/findById"
)
public
BaseResponseInfo
findById
(
@RequestParam
(
"supplierId"
)
Long
supplierId
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
try
{
JSONArray
dataArray
=
new
JSONArray
();
List
<
Supplier
>
dataList
=
supplierService
.
findById
(
supplierId
);
if
(
null
!=
dataList
)
{
for
(
Supplier
supplier
:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
supplier
.
getId
());
//名称
item
.
put
(
"supplier"
,
supplier
.
getSupplier
());
item
.
put
(
"type"
,
supplier
.
getType
());
item
.
put
(
"contacts"
,
supplier
.
getContacts
());
item
.
put
(
"phonenum"
,
supplier
.
getPhonenum
());
item
.
put
(
"email"
,
supplier
.
getEmail
());
item
.
put
(
"AdvanceIn"
,
supplier
.
getAdvancein
());
item
.
put
(
"BeginNeedGet"
,
supplier
.
getBeginneedget
());
item
.
put
(
"BeginNeedPay"
,
supplier
.
getBeginneedpay
());
item
.
put
(
"isystem"
,
supplier
.
getIsystem
()
==
(
short
)
0
?
"是"
:
"否"
);
item
.
put
(
"description"
,
supplier
.
getDescription
());
item
.
put
(
"fax"
,
supplier
.
getFax
());
item
.
put
(
"telephone"
,
supplier
.
getTelephone
());
item
.
put
(
"address"
,
supplier
.
getAddress
());
item
.
put
(
"taxNum"
,
supplier
.
getTaxnum
());
item
.
put
(
"bankName"
,
supplier
.
getBankname
());
item
.
put
(
"accountNumber"
,
supplier
.
getAccountnumber
());
item
.
put
(
"taxRate"
,
supplier
.
getTaxrate
());
item
.
put
(
"enabled"
,
supplier
.
getEnabled
());
dataArray
.
add
(
item
);
}
res
.
code
=
200
;
res
.
data
=
dataArray
;
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取数据失败"
;
}
return
res
;
}
}
src/main/java/com/jsh/erp/controller/UserBusinessController.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.controller
;
import
com.alibaba.fastjson.JSONObject
;
import
com.jsh.erp.datasource.entities.UserBusiness
;
import
com.jsh.erp.service.userBusiness.UserBusinessService
;
import
com.jsh.erp.utils.BaseResponseInfo
;
import
com.jsh.erp.utils.ErpInfo
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
static
com
.
jsh
.
erp
.
utils
.
ResponseJsonUtil
.
returnJson
;
@RestController
@RequestMapping
(
value
=
"/userBusiness"
)
public
class
UserBusinessController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
UserBusinessController
.
class
);
@Resource
private
UserBusinessService
userBusinessService
;
@GetMapping
(
value
=
"/getBasicData"
)
public
BaseResponseInfo
getBasicData
(
@RequestParam
(
value
=
"KeyId"
)
String
keyId
,
@RequestParam
(
value
=
"Type"
)
String
type
,
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
try
{
List
<
UserBusiness
>
list
=
userBusinessService
.
getBasicData
(
keyId
,
type
);
Map
<
String
,
List
>
mapData
=
new
HashMap
<
String
,
List
>();
mapData
.
put
(
"userBusinessList"
,
list
);
res
.
code
=
200
;
res
.
data
=
mapData
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"查询权限失败"
;
}
return
res
;
}
@GetMapping
(
value
=
"/checkIsValueExist"
)
public
String
checkIsValueExist
(
@RequestParam
(
value
=
"type"
,
required
=
false
)
String
type
,
@RequestParam
(
value
=
"keyId"
,
required
=
false
)
String
keyId
,
HttpServletRequest
request
)
{
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
Long
id
=
userBusinessService
.
checkIsValueExist
(
type
,
keyId
);
if
(
id
!=
null
)
{
objectMap
.
put
(
"id"
,
id
);
}
else
{
objectMap
.
put
(
"id"
,
null
);
}
return
returnJson
(
objectMap
,
ErpInfo
.
OK
.
name
,
ErpInfo
.
OK
.
code
);
}
}
src/main/java/com/jsh/erp/controller/UserController.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.controller
;
import
com.jsh.erp.datasource.entities.User
;
import
com.jsh.erp.service.user.UserService
;
import
com.jsh.erp.utils.*
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.security.NoSuchAlgorithmException
;
import
java.util.HashMap
;
import
java.util.Map
;
import
static
com
.
jsh
.
erp
.
utils
.
ResponseJsonUtil
.
returnJson
;
/**
* 用户管理 2018-10-13 21:24:06
* @author jishenghua qq:752718920
*/
@RestController
@RequestMapping
(
value
=
"/user"
)
public
class
UserController
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
ResourceController
.
class
);
@Resource
private
UserService
userService
;
private
static
String
message
=
"成功"
;
@PostMapping
(
value
=
"/login"
)
public
BaseResponseInfo
login
(
@RequestParam
(
value
=
"loginame"
,
required
=
false
)
String
loginame
,
@RequestParam
(
value
=
"password"
,
required
=
false
)
String
password
,
HttpServletRequest
request
)
{
logger
.
info
(
"============用户登录 login 方法调用开始=============="
);
String
msgTip
=
""
;
BaseResponseInfo
res
=
new
BaseResponseInfo
();
try
{
String
username
=
loginame
.
trim
();
password
=
password
.
trim
();
//因密码用MD5加密,需要对密码进行转化
try
{
password
=
Tools
.
md5Encryp
(
password
);
}
catch
(
NoSuchAlgorithmException
e
)
{
e
.
printStackTrace
();
logger
.
error
(
">>>>>>>>>>>>>>转化MD5字符串错误 :"
+
e
.
getMessage
(),
e
);
}
//判断用户是否已经登录过,登录过不再处理
Object
userInfo
=
request
.
getSession
().
getAttribute
(
"user"
);
User
sessionUser
=
new
User
();
if
(
userInfo
!=
null
)
{
sessionUser
=
(
User
)
userInfo
;
}
if
(
sessionUser
!=
null
&&
username
.
equalsIgnoreCase
(
sessionUser
.
getLoginame
())
&&
sessionUser
.
getPassword
().
equals
(
password
))
{
logger
.
info
(
"====用户 "
+
username
+
"已经登录过, login 方法调用结束===="
);
msgTip
=
"user already login"
;
}
//获取用户状态
int
userStatus
=
-
1
;
try
{
userStatus
=
userService
.
validateUser
(
username
,
password
);
}
catch
(
Exception
e
)
{
logger
.
error
(
">>>>>>>>>>>>>用户 "
+
username
+
" 登录 login 方法 访问服务层异常===="
,
e
);
msgTip
=
"access service exception"
;
}
switch
(
userStatus
)
{
case
ExceptionCodeConstants
.
UserExceptionCode
.
USER_NOT_EXIST
:
msgTip
=
"user is not exist"
;
break
;
case
ExceptionCodeConstants
.
UserExceptionCode
.
USER_PASSWORD_ERROR
:
msgTip
=
"user password error"
;
break
;
case
ExceptionCodeConstants
.
UserExceptionCode
.
BLACK_USER
:
msgTip
=
"user is black"
;
break
;
case
ExceptionCodeConstants
.
UserExceptionCode
.
USER_ACCESS_EXCEPTION
:
msgTip
=
"access service error"
;
break
;
default
:
try
{
//验证通过 ,可以登录,放入session,记录登录日志
User
user
=
userService
.
getUserByUserName
(
username
);
// logService.create(new Logdetails(user, "登录系统", model.getClientIp(),
// new Timestamp(System.currentTimeMillis()), (short) 0, "管理用户:" + username + " 登录系统", username + " 登录系统"));
msgTip
=
"user can login"
;
request
.
getSession
().
setAttribute
(
"user"
,
user
);
}
catch
(
Exception
e
)
{
logger
.
error
(
">>>>>>>>>>>>>>>查询用户名为:"
+
username
+
" ,用户信息异常"
,
e
);
}
break
;
}
Map
<
String
,
Object
>
data
=
new
HashMap
<
String
,
Object
>();
data
.
put
(
"msgTip"
,
msgTip
);
res
.
code
=
200
;
res
.
data
=
data
;
logger
.
info
(
"===============用户登录 login 方法调用结束==============="
);
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"用户登录失败"
;
}
return
res
;
}
@GetMapping
(
value
=
"/getUserSession"
)
public
BaseResponseInfo
getSessionUser
(
HttpServletRequest
request
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
try
{
Map
<
String
,
Object
>
data
=
new
HashMap
<
String
,
Object
>();
Object
userInfo
=
request
.
getSession
().
getAttribute
(
"user"
);
if
(
userInfo
!=
null
)
{
User
user
=
(
User
)
userInfo
;
user
.
setPassword
(
null
);
data
.
put
(
"user"
,
user
);
}
res
.
code
=
200
;
res
.
data
=
data
;
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"获取session失败"
;
}
return
res
;
}
@GetMapping
(
value
=
"/logout"
)
public
BaseResponseInfo
logout
(
HttpServletRequest
request
,
HttpServletResponse
response
)
{
BaseResponseInfo
res
=
new
BaseResponseInfo
();
try
{
request
.
getSession
().
removeAttribute
(
"user"
);
response
.
sendRedirect
(
"/login.html"
);
}
catch
(
Exception
e
){
e
.
printStackTrace
();
res
.
code
=
500
;
res
.
data
=
"退出失败"
;
}
return
res
;
}
@PostMapping
(
value
=
"/resetPwd"
)
public
String
resetPwd
(
@RequestParam
(
"id"
)
Long
id
,
HttpServletRequest
request
)
throws
NoSuchAlgorithmException
{
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
String
password
=
"123456"
;
String
md5Pwd
=
Tools
.
md5Encryp
(
password
);
int
update
=
userService
.
resetPwd
(
md5Pwd
,
id
);
if
(
update
>
0
)
{
return
returnJson
(
objectMap
,
message
,
ErpInfo
.
OK
.
code
);
}
else
{
return
returnJson
(
objectMap
,
message
,
ErpInfo
.
ERROR
.
code
);
}
}
@PostMapping
(
value
=
"/updatePwd"
)
public
String
updatePwd
(
@RequestParam
(
"userId"
)
Long
userId
,
@RequestParam
(
"password"
)
String
password
,
@RequestParam
(
"oldpwd"
)
String
oldpwd
,
HttpServletRequest
request
)
{
Integer
flag
=
0
;
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<
String
,
Object
>();
try
{
User
user
=
userService
.
getUser
(
userId
);
String
oldPassword
=
Tools
.
md5Encryp
(
oldpwd
);
String
md5Pwd
=
Tools
.
md5Encryp
(
password
);
//必须和原始密码一致才可以更新密码
if
(
user
.
getLoginame
().
equals
(
"jsh"
)){
flag
=
3
;
//管理员jsh不能修改密码
}
else
if
(
oldPassword
.
equalsIgnoreCase
(
user
.
getPassword
()))
{
user
.
setPassword
(
md5Pwd
);
flag
=
userService
.
updateUserByObj
(
user
);
//1-成功
}
else
{
flag
=
2
;
//原始密码输入错误
}
objectMap
.
put
(
"status"
,
flag
);
if
(
flag
>
0
)
{
return
returnJson
(
objectMap
,
message
,
ErpInfo
.
OK
.
code
);
}
else
{
return
returnJson
(
objectMap
,
message
,
ErpInfo
.
ERROR
.
code
);
}
}
catch
(
Exception
e
)
{
logger
.
error
(
">>>>>>>>>>>>>修改用户ID为 : "
+
userId
+
"密码信息失败"
,
e
);
flag
=
3
;
objectMap
.
put
(
"status"
,
flag
);
return
returnJson
(
objectMap
,
message
,
ErpInfo
.
ERROR
.
code
);
}
}
}
src/main/java/com/jsh/erp/datasource/entities/Account.java
0 → 100644
View file @
5cc26a22
package
com.jsh.erp.datasource.entities
;
public
class
Account
{
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column jsh_account.Id
*
* @mbggenerated
*/
private
Long
id
;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column jsh_account.Name
*
* @mbggenerated
*/
private
String
name
;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column jsh_account.SerialNo
*
* @mbggenerated
*/
private
String
serialno
;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column jsh_account.InitialAmount
*
* @mbggenerated
*/
private
Double
initialamount
;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column jsh_account.CurrentAmount
*
* @mbggenerated
*/
private
Double
currentamount
;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column jsh_account.Remark
*
* @mbggenerated
*/
private
String
remark
;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column jsh_account.IsDefault
*
* @mbggenerated
*/
private
Boolean
isdefault
;
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column jsh_account.Id
*
* @return the value of jsh_account.Id
*
* @mbggenerated
*/
public
Long
getId
()
{
return
id
;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column jsh_account.Id
*
* @param id the value for jsh_account.Id
*
* @mbggenerated
*/
public
void
setId
(
Long
id
)
{
this
.
id
=
id
;
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column jsh_account.Name
*
* @return the value of jsh_account.Name
*
* @mbggenerated
*/
public
String
getName
()
{
return
name
;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column jsh_account.Name
*
* @param name the value for jsh_account.Name
*
* @mbggenerated
*/
public
void
setName
(
String
name
)
{
this
.
name
=
name
==
null
?
null
:
name
.
trim
();
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column jsh_account.SerialNo
*
* @return the value of jsh_account.SerialNo
*
* @mbggenerated
*/
public
String
getSerialno
()
{
return
serialno
;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column jsh_account.SerialNo
*
* @param serialno the value for jsh_account.SerialNo
*
* @mbggenerated
*/
public
void
setSerialno
(
String
serialno
)
{
this
.
serialno
=
serialno
==
null
?
null
:
serialno
.
trim
();
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column jsh_account.InitialAmount
*
* @return the value of jsh_account.InitialAmount
*
* @mbggenerated
*/
public
Double
getInitialamount
()
{
return
initialamount
;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column jsh_account.InitialAmount
*
* @param initialamount the value for jsh_account.InitialAmount
*
* @mbggenerated
*/
public
void
setInitialamount
(
Double
initialamount
)
{
this
.
initialamount
=
initialamount
;
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column jsh_account.CurrentAmount
*
* @return the value of jsh_account.CurrentAmount
*
* @mbggenerated
*/
public
Double
getCurrentamount
()
{
return
currentamount
;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column jsh_account.CurrentAmount
*
* @param currentamount the value for jsh_account.CurrentAmount
*
* @mbggenerated
*/
public
void
setCurrentamount
(
Double
currentamount
)
{
this
.
currentamount
=
currentamount
;
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column jsh_account.Remark
*
* @return the value of jsh_account.Remark
*
* @mbggenerated
*/
public
String
getRemark
()
{
return
remark
;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column jsh_account.Remark
*
* @param remark the value for jsh_account.Remark
*
* @mbggenerated
*/
public
void
setRemark
(
String
remark
)
{
this
.
remark
=
remark
==
null
?
null
:
remark
.
trim
();
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column jsh_account.IsDefault
*
* @return the value of jsh_account.IsDefault
*
* @mbggenerated
*/
public
Boolean
getIsdefault
()
{
return
isdefault
;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column jsh_account.IsDefault
*
* @param isdefault the value for jsh_account.IsDefault
*
* @mbggenerated
*/
public
void
setIsdefault
(
Boolean
isdefault
)
{
this
.
isdefault
=
isdefault
;
}
}
\ No newline at end of file
Prev
1
2
3
4
5
6
7
8
9
10
Next
Write
Preview
Supports
Markdown
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