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
2aaad2bc
"vscode:/vscode.git/clone" did not exist on "01319f1de9926ba5b0df3bd54498bafacc78ac97"
Commit
2aaad2bc
authored
Nov 26, 2016
by
季圣华
Browse files
新增收支项目和结算账户功能
parent
55135aca
Changes
62
Hide whitespace changes
Inline
Side-by-side
WebRoot/WEB-INF/classes/com/jsh/service/basic/InOutItemIService.class
0 → 100644
View file @
2aaad2bc
File added
WebRoot/WEB-INF/classes/com/jsh/service/basic/InOutItemService.class
0 → 100644
View file @
2aaad2bc
File added
WebRoot/WEB-INF/classes/com/jsh/service/materials/DepotItemIService.class
View file @
2aaad2bc
No preview for this file type
WebRoot/WEB-INF/classes/com/jsh/service/materials/DepotItemService.class
View file @
2aaad2bc
No preview for this file type
WebRoot/WEB-INF/classes/hibernate/hibernate.cfg.xml
View file @
2aaad2bc
...
...
@@ -18,6 +18,7 @@
org.hibernate.dialect.MySQL5Dialect
</property>
<property
name=
"show_sql"
>
true
</property>
<!-- 一般重新建库用create(慎用),只更新字段用update -->
<property
name=
"hbm2ddl.auto"
>
update
</property>
<!-- 对应的实体映射 -->
...
...
@@ -39,5 +40,7 @@
<mapping
resource=
"com/jsh/model/po/Building.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/DepotHead.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/DepotItem.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/Account.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/InOutItem.hbm.xml"
/>
</session-factory>
</hibernate-configuration>
\ No newline at end of file
</hibernate-configuration>
WebRoot/WEB-INF/classes/spring/basic-applicationContext.xml
View file @
2aaad2bc
...
...
@@ -321,4 +321,28 @@
<property
name=
"logService"
ref=
"logService"
/>
</bean>
<!--仓管通明细配置结束 -->
</beans>
\ No newline at end of file
<!--结算账户配置开始 -->
<bean
id=
"accountService"
class=
"com.jsh.service.basic.AccountService"
>
<property
name=
"baseDao"
ref=
"baseDao"
/>
<property
name=
"accountDao"
ref=
"accountDao"
/>
</bean>
<!-- spring整合struts2需要默认为request或者 prototype,不能是单例 -->
<bean
id=
"accountAction"
class=
"com.jsh.action.basic.AccountAction"
scope=
"prototype"
>
<property
name=
"accountService"
ref=
"accountService"
/>
<property
name=
"logService"
ref=
"logService"
/>
</bean>
<!--结算账户配置结束 -->
<!--收支项目配置开始 -->
<bean
id=
"inOutItemService"
class=
"com.jsh.service.basic.InOutItemService"
>
<property
name=
"baseDao"
ref=
"baseDao"
/>
<property
name=
"inOutItemDao"
ref=
"inOutItemDao"
/>
</bean>
<!-- spring整合struts2需要默认为request或者 prototype,不能是单例 -->
<bean
id=
"inOutItemAction"
class=
"com.jsh.action.basic.InOutItemAction"
scope=
"prototype"
>
<property
name=
"inOutItemService"
ref=
"inOutItemService"
/>
<property
name=
"logService"
ref=
"logService"
/>
</bean>
<!--收支项目配置结束 -->
</beans>
WebRoot/WEB-INF/classes/spring/dao-applicationContext.xml
View file @
2aaad2bc
...
...
@@ -47,5 +47,9 @@
<!-- 配置depotHeadDao组件 -->
<bean
id=
"depotHeadDao"
parent=
"daoTemplate"
class=
"com.jsh.dao.materials.DepotHeadDAO"
/>
<!-- 配置depotItemDao组件 -->
<bean
id=
"depotItemDao"
parent=
"daoTemplate"
class=
"com.jsh.dao.materials.DepotItemDAO"
/>
<bean
id=
"depotItemDao"
parent=
"daoTemplate"
class=
"com.jsh.dao.materials.DepotItemDAO"
/>
<!-- 配置accountDao组件 -->
<bean
id=
"accountDao"
parent=
"daoTemplate"
class=
"com.jsh.dao.basic.AccountDAO"
/>
<!-- 配置inOutItemDao组件 -->
<bean
id=
"inOutItemDao"
parent=
"daoTemplate"
class=
"com.jsh.dao.basic.InOutItemDAO"
/>
</beans>
\ No newline at end of file
WebRoot/WEB-INF/classes/struts2/account-struts.xml
0 → 100644
View file @
2aaad2bc
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<struts>
<package
name=
"account"
namespace=
"/account"
extends=
"json-default"
>
<action
name=
"*"
class=
"accountAction"
method=
"{1}"
>
<result
type=
"json"
/>
</action>
</package>
</struts>
WebRoot/WEB-INF/classes/struts2/inOutItem-struts.xml
0 → 100644
View file @
2aaad2bc
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<struts>
<package
name=
"inOutItem"
namespace=
"/inOutItem"
extends=
"json-default"
>
<action
name=
"*"
class=
"inOutItemAction"
method=
"{1}"
>
<result
type=
"json"
/>
</action>
</package>
</struts>
WebRoot/pages/common/main.jsp
View file @
2aaad2bc
...
...
@@ -12,35 +12,6 @@
<title>
ERP系统
</title>
<link
href=
"
<%=
path
%>
/js/HoorayOS_mini/js/HoorayLibs/hooraylibs.css"
rel=
"stylesheet"
/>
<link
href=
"
<%=
path
%>
/js/HoorayOS_mini/img/ui/index.css"
rel=
"stylesheet"
/>
<style
type=
"text/css"
>
.newsTitle
{
text-align
:
center
;
color
:
red
;
font-weight
:
bold
;
font-size
:
20px
;
}
.newsContent
{
padding-top
:
10px
;
color
:
red
;
font-weight
:
bold
;
height
:
140px
;
overflow
:
hidden
;
line-height
:
20px
;
}
.newsFoot
{
text-align
:
right
;
color
:
red
;
font-weight
:
bold
;
}
.newsTime
{
text-align
:
right
;
color
:
red
;
font-weight
:
bold
;
}
</style>
</head>
<body>
<div
class=
"loading"
></div>
...
...
@@ -134,16 +105,6 @@
//加载桌面
HROS
.
base
.
init
();
}
if
(
'
@ViewData["News"].ToString()
'
.
length
>
0
)
{
$
.
messager
.
show
({
title
:
'
公 告
'
,
msg
:
'
最新公告
'
,
timeout
:
20000
,
showType
:
'
slide
'
,
width
:
500
,
height
:
280
});
}
function
JSGetCookie
(
Name
)
{
var
search
=
Name
+
"
=
"
if
(
document
.
cookie
.
length
>
0
)
{
...
...
WebRoot/pages/manage/account.jsp
0 → 100644
View file @
2aaad2bc
<%@page
import=
"com.jsh.util.common.Tools"
%>
<%@ page
language=
"java"
import=
"java.util.*"
pageEncoding=
"utf-8"
%>
<%
String
path
=
request
.
getContextPath
();
String
basePath
=
request
.
getScheme
()+
"://"
+
request
.
getServerName
()+
":"
+
request
.
getServerPort
()+
path
+
"/"
;
String
clientIp
=
Tools
.
getCurrentUserIP
();
%>
<!DOCTYPE html>
<html>
<head>
<title>
结算账户
</title>
<meta
http-equiv=
"Content-Type"
content=
"text/html; charset=utf-8"
/>
<!-- 指定以IE8的方式来渲染 -->
<meta
http-equiv=
"X-UA-Compatible"
content=
"IE=EmulateIE8"
/>
<link
rel=
"shortcut icon"
href=
"
<%=
path
%>
/images/favicon.ico"
type=
"image/x-icon"
/>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"
<%=
path
%>
/js/easyui-1.3.5/themes/default/easyui.css"
/>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"
<%=
path
%>
/js/easyui-1.3.5/themes/icon.css"
/>
<link
type=
"text/css"
rel=
"stylesheet"
href=
"
<%=
path
%>
/css/common.css"
/>
<script
type=
"text/javascript"
src=
"
<%=
path
%>
/js/jquery-1.8.0.min.js"
></script>
<script
type=
"text/javascript"
src=
"
<%=
path
%>
/js/easyui-1.3.5/jquery.easyui.min.js"
></script>
<script
type=
"text/javascript"
src=
"
<%=
path
%>
/js/easyui-1.3.5/locale/easyui-lang-zh_CN.js"
></script>
<script
type=
"text/javascript"
src=
"
<%=
path
%>
/js/common/common.js"
></script>
</head>
<body>
<!-- 查询 -->
<div
id =
"searchPanel"
class=
"easyui-panel"
style=
"padding:10px;"
title=
"查询窗口"
iconCls=
"icon-search"
collapsible=
"true"
closable=
"false"
>
<table
id=
"searchTable"
>
<tr>
<td>
名
称:
</td>
<td>
<input
type=
"text"
name=
"searchName"
id=
"searchName"
style=
"width:70px;"
/>
</td>
<td>
</td>
<td>
</td>
<td
id=
"searchSerialNoLabel"
>
编
号:
</td>
<td>
<input
type=
"text"
name=
"searchSerialNo"
id=
"searchSerialNo"
style=
"width:70px;"
/>
</td>
<td>
</td>
<td>
</td>
<td
id=
"searchRemarkLabel"
>
备
注:
</td>
<td>
<input
type=
"text"
name=
"searchRemark"
id=
"searchRemark"
style=
"width:70px;"
/>
</td>
<td>
</td>
<td>
</td>
<td>
<a
href=
"javascript:void(0)"
class=
"easyui-linkbutton"
iconCls=
"icon-search"
id=
"searchBtn"
>
查询
</a>
<a
href=
"javascript:void(0)"
class=
"easyui-linkbutton"
iconCls=
"icon-redo"
id=
"searchResetBtn"
>
重置
</a>
</td>
</tr>
</table>
</div>
<!-- 数据显示table -->
<div
id =
"tablePanel"
class=
"easyui-panel"
style=
"padding:1px;top:300px;"
title=
"结算账户"
iconCls=
"icon-list"
collapsible=
"true"
closable=
"false"
>
<table
id=
"tableData"
style=
"top:300px;border-bottom-color:#FFFFFF"
></table>
</div>
<div
id=
"accountDlg"
class=
"easyui-dialog"
style=
"width:380px;padding:10px 20px"
closed=
"true"
buttons=
"#dlg-buttons"
modal=
"true"
collapsible=
"false"
closable=
"true"
>
<form
id=
"accountFM"
method=
"post"
novalidate
>
<div
class=
"fitem"
style=
"padding:5px"
>
<label
id=
"nameLabel"
>
名
称
</label>
<input
name=
"name"
id=
"name"
class=
"easyui-validatebox"
data-options=
"required:true,validType:'length[2,30]'"
style=
"width: 230px;height: 20px"
/>
</div>
<div
class=
"fitem"
style=
"padding:5px"
>
<label
id=
"serialNoLabel"
>
编
号
</label>
<input
name=
"serialNo"
id=
"serialNo"
class=
"easyui-validatebox"
data-options=
"required:true,validType:'length[2,30]'"
style=
"width: 230px;height: 20px"
/>
</div>
<div
class=
"fitem"
style=
"padding:5px"
>
<label
id=
"initialAmountLabel"
>
期初金额
</label>
<input
name=
"initialAmount"
id=
"initialAmount"
type=
"text"
class=
"easyui-numberbox"
data-options=
"min:0,precision:2"
style=
"width: 230px;height: 20px"
></input>
</div>
<div
class=
"fitem"
style=
"padding:5px"
>
<label
id=
"currentAmountLabel"
>
当前余额
</label>
<input
name=
"currentAmount"
id=
"currentAmount"
type=
"text"
class=
"easyui-numberbox"
data-options=
"min:0,precision:2"
style=
"width: 230px;height: 20px"
></input>
</div>
<div
class=
"fitem"
style=
"padding:5px"
>
<label
id=
"remarkLabel"
>
备
注
</label>
<textarea
name=
"remark"
id=
"remark"
rows=
"2"
cols=
"2"
style=
"width: 230px;"
></textarea>
</div>
<input
type=
"hidden"
name=
"clientIp"
id=
"clientIp"
value=
"
<%=
clientIp
%>
"
/>
</form>
</div>
<div
id=
"dlg-buttons"
>
<a
href=
"javascript:void(0)"
id=
"saveAccount"
class=
"easyui-linkbutton"
iconCls=
"icon-ok"
>
保存
</a>
<a
href=
"javascript:void(0)"
id=
"cancelAccount"
class=
"easyui-linkbutton"
iconCls=
"icon-cancel"
onclick=
"javascript:$('#accountDlg').dialog('close')"
>
取消
</a>
</div>
<script
type=
"text/javascript"
>
//初始化界面
$
(
function
()
{
initTableData
();
ininPager
();
browserFit
();
});
//浏览器适配
function
browserFit
()
{
if
(
getOs
()
==
'
MSIE
'
)
{
$
(
"
#searchSerialNoLabel
"
).
empty
().
append
(
"
编 号:
"
);
$
(
"
#searchRemarkLabel
"
).
empty
().
append
(
"
备 注:
"
);
$
(
"
#nameLabel
"
).
empty
().
append
(
"
名 称
"
);
$
(
"
#serialNoLabel
"
).
empty
().
append
(
"
编 号
"
);
$
(
"
#initialAmountLabel
"
).
empty
().
append
(
"
期初金额
"
);
$
(
"
#currentAmountLabel
"
).
empty
().
append
(
"
当前余额
"
);
$
(
"
#remarkLabel
"
).
empty
().
append
(
"
备 注
"
);
}
else
{
$
(
"
#searchSerialNoLabel
"
).
empty
().
append
(
"
编 号:
"
);
$
(
"
#searchRemarkLabel
"
).
empty
().
append
(
"
备 注:
"
);
$
(
"
#nameLabel
"
).
empty
().
append
(
"
名 称
"
);
$
(
"
#serialNoLabel
"
).
empty
().
append
(
"
编 号
"
);
$
(
"
#initialAmountLabel
"
).
empty
().
append
(
"
期初金额
"
);
$
(
"
#currentAmountLabel
"
).
empty
().
append
(
"
当前余额
"
);
$
(
"
#remarkLabel
"
).
empty
().
append
(
"
备 注
"
);
}
}
//初始化表格数据
function
initTableData
()
{
$
(
'
#tableData
'
).
datagrid
({
//title:'结算账户',
//iconCls:'icon-save',
//width:700,
height
:
heightInfo
,
nowrap
:
false
,
rownumbers
:
false
,
//动画效果
animate
:
false
,
//选中单行
singleSelect
:
true
,
collapsible
:
false
,
selectOnCheck
:
false
,
//fitColumns:true,
//单击行是否选中
checkOnSelect
:
false
,
//交替出现背景
striped
:
true
,
url
:
'
<%=
path
%>
/account/findBy.action?pageSize=
'
+
initPageSize
,
pagination
:
true
,
//自动截取数据
//nowrap : true,
//loadFilter: pagerFilter,
pageSize
:
initPageSize
,
pageList
:
initPageNum
,
columns
:[[
{
field
:
'
id
'
,
width
:
35
,
align
:
"
center
"
,
checkbox
:
true
},
{
title
:
'
名称
'
,
field
:
'
name
'
,
width
:
100
},
{
title
:
'
编号
'
,
field
:
'
serialNo
'
,
width
:
100
,
align
:
"
center
"
},
{
title
:
'
期初金额
'
,
field
:
'
initialAmount
'
,
width
:
100
,
align
:
"
center
"
},
{
title
:
'
当前余额
'
,
field
:
'
currentAmount
'
,
width
:
100
,
align
:
"
center
"
},
{
title
:
'
备注
'
,
field
:
'
remark
'
,
width
:
100
},
{
title
:
'
操作
'
,
field
:
'
op
'
,
align
:
"
center
"
,
width
:
130
,
formatter
:
function
(
value
,
rec
)
{
var
str
=
''
;
var
rowInfo
=
rec
.
id
+
'
AaBb
'
+
rec
.
name
+
'
AaBb
'
+
rec
.
serialNo
+
'
AaBb
'
+
rec
.
initialAmount
+
'
AaBb
'
+
rec
.
currentAmount
+
'
AaBb
'
+
rec
.
remark
;
if
(
1
==
value
)
{
str
+=
'
<img src="
<%=
path
%>
/js/easyui-1.3.5/themes/icons/pencil.png" style="cursor: pointer;" onclick="editAccount(
\'
'
+
rowInfo
+
'
\'
);"/> <a onclick="editAccount(
\'
'
+
rowInfo
+
'
\'
);" style="text-decoration:none;color:black;" href="javascript:void(0)">编辑</a>
'
;
str
+=
'
<img src="
<%=
path
%>
/js/easyui-1.3.5/themes/icons/edit_remove.png" style="cursor: pointer;" onclick="deleteAccount(
\'
'
+
rowInfo
+
'
\'
);"/> <a onclick="deleteAccount(
\'
'
+
rowInfo
+
'
\'
);" style="text-decoration:none;color:black;" href="javascript:void(0)">删除</a>
'
;
}
return
str
;
}
}
]],
toolbar
:[
{
id
:
'
addAccount
'
,
text
:
'
增加
'
,
iconCls
:
'
icon-add
'
,
handler
:
function
()
{
addAccount
();
}
},
{
id
:
'
deleteAccount
'
,
text
:
'
删除
'
,
iconCls
:
'
icon-remove
'
,
handler
:
function
()
{
batDeleteAccount
();
}
}
],
onLoadError
:
function
()
{
$
.
messager
.
alert
(
'
页面加载提示
'
,
'
页面加载异常,请稍后再试!
'
,
'
error
'
);
return
;
}
});
}
//初始化键盘enter事件
$
(
document
).
keydown
(
function
(
event
)
{
//兼容 IE和firefox 事件
var
e
=
window
.
event
||
event
;
var
k
=
e
.
keyCode
||
e
.
which
||
e
.
charCode
;
//兼容 IE,firefox 兼容
var
obj
=
e
.
srcElement
?
e
.
srcElement
:
e
.
target
;
//绑定键盘事件为 id是指定的输入框才可以触发键盘事件 13键盘事件
if
(
k
==
"
13
"
&&
(
obj
.
id
==
"
name
"
||
obj
.
id
==
"
serialNo
"
||
obj
.
id
==
"
initialAmount
"
||
obj
.
id
==
"
currentAmount
"
||
obj
.
id
==
"
remark
"
))
{
$
(
"
#saveAccount
"
).
click
();
}
//搜索按钮添加快捷键
if
(
k
==
"
13
"
&&
(
obj
.
id
==
"
searchName
"
||
obj
.
id
==
"
searchSerialNo
"
||
obj
.
id
==
"
searchRemark
"
))
{
$
(
"
#searchBtn
"
).
click
();
}
});
//分页信息处理
function
ininPager
()
{
try
{
var
opts
=
$
(
"
#tableData
"
).
datagrid
(
'
options
'
);
var
pager
=
$
(
"
#tableData
"
).
datagrid
(
'
getPager
'
);
pager
.
pagination
({
onSelectPage
:
function
(
pageNum
,
pageSize
)
{
opts
.
pageNumber
=
pageNum
;
opts
.
pageSize
=
pageSize
;
pager
.
pagination
(
'
refresh
'
,
{
pageNumber
:
pageNum
,
pageSize
:
pageSize
});
showAccountDetails
(
pageNum
,
pageSize
);
}
});
}
catch
(
e
)
{
$
.
messager
.
alert
(
'
异常处理提示
'
,
"
分页信息异常 :
"
+
e
.
name
+
"
:
"
+
e
.
message
,
'
error
'
);
}
}
//删除结算账户
function
deleteAccount
(
accountInfo
)
{
$
.
messager
.
confirm
(
'
删除确认
'
,
'
确定要删除此结算账户吗?
'
,
function
(
r
)
{
if
(
r
)
{
var
accountTotalInfo
=
accountInfo
.
split
(
"
AaBb
"
);
$
.
ajax
({
type
:
"
post
"
,
url
:
"
<%=
path
%>
/account/delete.action
"
,
dataType
:
"
json
"
,
data
:
({
accountID
:
accountTotalInfo
[
0
],
name
:
accountTotalInfo
[
1
],
clientIp
:
'
<%=
clientIp
%>
'
}),
success
:
function
(
tipInfo
)
{
var
msg
=
tipInfo
.
showModel
.
msgTip
;
if
(
msg
==
'
成功
'
)
//加载完以后重新初始化
$
(
"
#searchBtn
"
).
click
();
else
$
.
messager
.
alert
(
'
删除提示
'
,
'
删除结算账户失败,请稍后再试!
'
,
'
error
'
);
},
//此处添加错误处理
error
:
function
()
{
$
.
messager
.
alert
(
'
删除提示
'
,
'
删除结算账户异常,请稍后再试!
'
,
'
error
'
);
return
;
}
});
}
});
}
//批量删除结算账户
function
batDeleteAccount
()
{
var
row
=
$
(
'
#tableData
'
).
datagrid
(
'
getChecked
'
);
if
(
row
.
length
==
0
)
{
$
.
messager
.
alert
(
'
删除提示
'
,
'
没有记录被选中!
'
,
'
info
'
);
return
;
}
if
(
row
.
length
>
0
)
{
$
.
messager
.
confirm
(
'
删除确认
'
,
'
确定要删除选中的
'
+
row
.
length
+
'
条结算账户吗?
'
,
function
(
r
)
{
if
(
r
)
{
var
ids
=
""
;
for
(
var
i
=
0
;
i
<
row
.
length
;
i
++
)
{
if
(
i
==
row
.
length
-
1
)
{
ids
+=
row
[
i
].
id
;
break
;
}
ids
+=
row
[
i
].
id
+
"
,
"
;
}
$
.
ajax
({
type
:
"
post
"
,
url
:
"
<%=
path
%>
/account/batchDelete.action
"
,
dataType
:
"
json
"
,
async
:
false
,
data
:
({
accountIDs
:
ids
,
clientIp
:
'
<%=
clientIp
%>
'
}),
success
:
function
(
tipInfo
)
{
var
msg
=
tipInfo
.
showModel
.
msgTip
;
if
(
msg
==
'
成功
'
)
{
//加载完以后重新初始化
$
(
"
#searchBtn
"
).
click
();
$
(
"
:checkbox
"
).
attr
(
"
checked
"
,
false
);
}
else
$
.
messager
.
alert
(
'
删除提示
'
,
'
删除结算账户失败,请稍后再试!
'
,
'
error
'
);
},
//此处添加错误处理
error
:
function
()
{
$
.
messager
.
alert
(
'
删除提示
'
,
'
删除结算账户异常,请稍后再试!
'
,
'
error
'
);
return
;
}
});
}
});
}
}
//增加结算账户
var
url
;
var
accountID
=
0
;
//保存编辑前的名称
var
orgaccount
=
""
;
function
addAccount
()
{
$
(
'
#accountDlg
'
).
dialog
(
'
open
'
).
dialog
(
'
setTitle
'
,
'
<img src="
<%=
path
%>
/js/easyui-1.3.5/themes/icons/edit_add.png"/> 增加结算账户
'
);
$
(
"
.window-mask
"
).
css
({
width
:
webW
,
height
:
webH
});
$
(
'
#accountFM
'
).
form
(
'
clear
'
);
var
row
=
{
clientIp
:
'
<%=
clientIp
%>
'
};
$
(
'
#accountFM
'
).
form
(
'
load
'
,
row
);
$
(
"
#account
"
).
focus
();
orgAccount
=
""
;
accountID
=
0
;
url
=
'
<%=
path
%>
/account/create.action
'
;
}
//保存结算账户
$
(
"
#saveAccount
"
).
unbind
().
bind
({
click
:
function
()
{
if
(
checkAccountName
())
return
;
$
(
'
#accountFM
'
).
form
(
'
submit
'
,{
url
:
url
,
onSubmit
:
function
()
{
return
$
(
this
).
form
(
'
validate
'
);
},
success
:
function
(
result
)
{
var
result
=
eval
(
'
(
'
+
result
+
'
)
'
);
if
(
!
result
)
{
$
.
messager
.
show
({
title
:
'
错误提示
'
,
msg
:
'
保存结算账户失败,请稍后重试!
'
});
}
else
{
$
(
'
#accountDlg
'
).
dialog
(
'
close
'
);
//$('#tableData').datagrid('reload');
//加载完以后重新初始化
//$("#searchBtn").click();
var
opts
=
$
(
"
#tableData
"
).
datagrid
(
'
options
'
);
showAccountDetails
(
opts
.
pageNumber
,
opts
.
pageSize
);
}
}
});
}
});
//编辑结算账户
function
editAccount
(
accountTotalInfo
)
{
var
accountInfo
=
accountTotalInfo
.
split
(
"
AaBb
"
);
var
row
=
{
name
:
accountInfo
[
1
],
serialNo
:
accountInfo
[
2
],
initialAmount
:
accountInfo
[
3
],
currentAmount
:
accountInfo
[
4
],
remark
:
accountInfo
[
5
],
clientIp
:
'
<%=
clientIp
%>
'
};
orgAccount
=
accountInfo
[
1
];
$
(
'
#accountDlg
'
).
dialog
(
'
open
'
).
dialog
(
'
setTitle
'
,
'
<img src="
<%=
path
%>
/js/easyui-1.3.5/themes/icons/pencil.png"/> 编辑结算账户
'
);
$
(
"
.window-mask
"
).
css
({
width
:
webW
,
height
:
webH
});
$
(
'
#accountFM
'
).
form
(
'
load
'
,
row
);
accountID
=
accountInfo
[
0
];
//焦点在名称输入框==定焦在输入文字后面
$
(
"
#account
"
).
val
(
""
).
focus
().
val
(
accountInfo
[
1
]);
url
=
'
<%=
path
%>
/account/update.action?accountID=
'
+
accountInfo
[
0
];
}
//检查结算账户 名称是否存在 ++ 重名无法提示问题需要跟进
function
checkAccountName
()
{
var
accountName
=
$
.
trim
(
$
(
"
#name
"
).
val
());
//表示是否存在 true == 存在 false = 不存在
var
flag
=
false
;
//开始ajax名称检验,不能重名
if
(
accountName
.
length
>
0
&&
(
orgAccount
.
length
==
0
||
accountName
!=
orgAccount
))
{
$
.
ajax
({
type
:
"
post
"
,
url
:
"
<%=
path
%>
/account/checkIsNameExist.action
"
,
dataType
:
"
json
"
,
async
:
false
,
data
:
({
accountID
:
accountID
,
name
:
accountName
}),
success
:
function
(
tipInfo
)
{
flag
=
tipInfo
;
if
(
tipInfo
)
{
$
.
messager
.
alert
(
'
提示
'
,
'
结算账户名称已经存在
'
,
'
info
'
);
return
;
}
},
//此处添加错误处理
error
:
function
()
{
$
.
messager
.
alert
(
'
提示
'
,
'
检查结算账户名称是否存在异常,请稍后再试!
'
,
'
error
'
);
return
;
}
});
}
return
flag
;
}
//搜索处理
$
(
"
#searchBtn
"
).
unbind
().
bind
({
click
:
function
()
{
showAccountDetails
(
1
,
initPageSize
);
var
opts
=
$
(
"
#tableData
"
).
datagrid
(
'
options
'
);
var
pager
=
$
(
"
#tableData
"
).
datagrid
(
'
getPager
'
);
opts
.
pageNumber
=
1
;
opts
.
pageSize
=
initPageSize
;
pager
.
pagination
(
'
refresh
'
,
{
pageNumber
:
1
,
pageSize
:
initPageSize
});
}
});
function
showAccountDetails
(
pageNo
,
pageSize
)
{
$
.
ajax
({
type
:
"
post
"
,
url
:
"
<%=
path
%>
/account/findBy.action
"
,
dataType
:
"
json
"
,
data
:
({
name
:
$
.
trim
(
$
(
"
#searchName
"
).
val
()),
serialNo
:
$
.
trim
(
$
(
"
#searchSerialNo
"
).
val
()),
remark
:
$
.
trim
(
$
(
"
#searchRemark
"
).
val
()),
pageNo
:
pageNo
,
pageSize
:
pageSize
}),
success
:
function
(
data
)
{
$
(
"
#tableData
"
).
datagrid
(
'
loadData
'
,
data
);
},
//此处添加错误处理
error
:
function
()
{
$
.
messager
.
alert
(
'
查询提示
'
,
'
查询数据后台异常,请稍后再试!
'
,
'
error
'
);
return
;
}
});
}
//重置按钮
$
(
"
#searchResetBtn
"
).
unbind
().
bind
({
click
:
function
(){
$
(
"
#searchName
"
).
val
(
""
);
$
(
"
#searchSerialNo
"
).
val
(
""
);
$
(
"
#searchRemark
"
).
val
(
""
);
//加载完以后重新初始化
$
(
"
#searchBtn
"
).
click
();
}
});
</script>
</body>
</html>
WebRoot/pages/manage/inOutItem.jsp
0 → 100644
View file @
2aaad2bc
<%@page
import=
"com.jsh.util.common.Tools"
%>
<%@ page
language=
"java"
import=
"java.util.*"
pageEncoding=
"utf-8"
%>
<%
String
path
=
request
.
getContextPath
();
String
basePath
=
request
.
getScheme
()+
"://"
+
request
.
getServerName
()+
":"
+
request
.
getServerPort
()+
path
+
"/"
;
String
clientIp
=
Tools
.
getCurrentUserIP
();
%>
<!DOCTYPE html>
<html>
<head>
<title>
收支项目
</title>
<meta
http-equiv=
"Content-Type"
content=
"text/html; charset=utf-8"
/>
<!-- 指定以IE8的方式来渲染 -->
<meta
http-equiv=
"X-UA-Compatible"
content=
"IE=EmulateIE8"
/>
<link
rel=
"shortcut icon"
href=
"
<%=
path
%>
/images/favicon.ico"
type=
"image/x-icon"
/>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"
<%=
path
%>
/js/easyui-1.3.5/themes/default/easyui.css"
/>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"
<%=
path
%>
/js/easyui-1.3.5/themes/icon.css"
/>
<link
type=
"text/css"
rel=
"stylesheet"
href=
"
<%=
path
%>
/css/common.css"
/>
<script
type=
"text/javascript"
src=
"
<%=
path
%>
/js/jquery-1.8.0.min.js"
></script>
<script
type=
"text/javascript"
src=
"
<%=
path
%>
/js/easyui-1.3.5/jquery.easyui.min.js"
></script>
<script
type=
"text/javascript"
src=
"
<%=
path
%>
/js/easyui-1.3.5/locale/easyui-lang-zh_CN.js"
></script>
<script
type=
"text/javascript"
src=
"
<%=
path
%>
/js/common/common.js"
></script>
</head>
<body>
<!-- 查询 -->
<div
id =
"searchPanel"
class=
"easyui-panel"
style=
"padding:10px;"
title=
"查询窗口"
iconCls=
"icon-search"
collapsible=
"true"
closable=
"false"
>
<table
id=
"searchTable"
>
<tr>
<td>
名
称:
</td>
<td>
<input
type=
"text"
name=
"searchName"
id=
"searchName"
style=
"width:70px;"
/>
</td>
<td>
</td>
<td>
</td>
<td
id=
"searchTypeLabel"
>
类
型:
</td>
<td>
<select
name=
"searchType"
id=
"searchType"
style=
"width:70px;"
>
<option
value=
""
>
全部
</option>
<option
value=
"收入"
>
收入
</option>
<option
value=
"支出"
>
支出
</option>
</select>
</td>
<td>
</td>
<td>
</td>
<td
id=
"searchRemarkLabel"
>
备
注:
</td>
<td>
<input
type=
"text"
name=
"searchRemark"
id=
"searchRemark"
style=
"width:70px;"
/>
</td>
<td>
</td>
<td>
</td>
<td>
<a
href=
"javascript:void(0)"
class=
"easyui-linkbutton"
iconCls=
"icon-search"
id=
"searchBtn"
>
查询
</a>
<a
href=
"javascript:void(0)"
class=
"easyui-linkbutton"
iconCls=
"icon-redo"
id=
"searchResetBtn"
>
重置
</a>
</td>
</tr>
</table>
</div>
<!-- 数据显示table -->
<div
id =
"tablePanel"
class=
"easyui-panel"
style=
"padding:1px;top:300px;"
title=
"收支项目"
iconCls=
"icon-list"
collapsible=
"true"
closable=
"false"
>
<table
id=
"tableData"
style=
"top:300px;border-bottom-color:#FFFFFF"
></table>
</div>
<div
id=
"inOutItemDlg"
class=
"easyui-dialog"
style=
"width:380px;padding:10px 20px"
closed=
"true"
buttons=
"#dlg-buttons"
modal=
"true"
collapsible=
"false"
closable=
"true"
>
<form
id=
"inOutItemFM"
method=
"post"
novalidate
>
<div
class=
"fitem"
style=
"padding:5px"
>
<label
id=
"nameLabel"
>
名
称
</label>
<input
name=
"name"
id=
"name"
class=
"easyui-validatebox"
data-options=
"required:true,validType:'length[2,30]'"
style=
"width: 230px;height: 20px"
/>
</div>
<div
class=
"fitem"
style=
"padding:5px"
>
<label
id=
"typeLabel"
>
类
型
</label>
<select
name=
"type"
id=
"type"
style=
"width:230px;"
>
<option
value=
"收入"
>
收入
</option>
<option
value=
"支出"
>
支出
</option>
</select>
</div>
<div
class=
"fitem"
style=
"padding:5px"
>
<label
id=
"remarkLabel"
>
备
注
</label>
<textarea
name=
"remark"
id=
"remark"
rows=
"2"
cols=
"2"
style=
"width: 230px;"
></textarea>
</div>
<input
type=
"hidden"
name=
"clientIp"
id=
"clientIp"
value=
"
<%=
clientIp
%>
"
/>
</form>
</div>
<div
id=
"dlg-buttons"
>
<a
href=
"javascript:void(0)"
id=
"saveInOutItem"
class=
"easyui-linkbutton"
iconCls=
"icon-ok"
>
保存
</a>
<a
href=
"javascript:void(0)"
id=
"cancelInOutItem"
class=
"easyui-linkbutton"
iconCls=
"icon-cancel"
onclick=
"javascript:$('#inOutItemDlg').dialog('close')"
>
取消
</a>
</div>
<script
type=
"text/javascript"
>
//初始化界面
$
(
function
()
{
initTableData
();
ininPager
();
browserFit
();
});
//浏览器适配
function
browserFit
()
{
if
(
getOs
()
==
'
MSIE
'
)
{
$
(
"
#searchTypeLabel
"
).
empty
().
append
(
"
类 型:
"
);
$
(
"
#searchRemarkLabel
"
).
empty
().
append
(
"
备 注:
"
);
$
(
"
#nameLabel
"
).
empty
().
append
(
"
名 称
"
);
$
(
"
#typeLabel
"
).
empty
().
append
(
"
类 型
"
);
$
(
"
#remarkLabel
"
).
empty
().
append
(
"
备 注
"
);
}
else
{
$
(
"
#searchTypeLabel
"
).
empty
().
append
(
"
类 型:
"
);
$
(
"
#searchRemarkLabel
"
).
empty
().
append
(
"
备 注:
"
);
$
(
"
#nameLabel
"
).
empty
().
append
(
"
名 称
"
);
$
(
"
#typeLabel
"
).
empty
().
append
(
"
类 型
"
);
$
(
"
#remarkLabel
"
).
empty
().
append
(
"
备 注
"
);
}
}
//初始化表格数据
function
initTableData
()
{
$
(
'
#tableData
'
).
datagrid
({
//title:'收支项目',
//iconCls:'icon-save',
//width:700,
height
:
heightInfo
,
nowrap
:
false
,
rownumbers
:
false
,
//动画效果
animate
:
false
,
//选中单行
singleSelect
:
true
,
collapsible
:
false
,
selectOnCheck
:
false
,
//fitColumns:true,
//单击行是否选中
checkOnSelect
:
false
,
//交替出现背景
striped
:
true
,
url
:
'
<%=
path
%>
/inOutItem/findBy.action?pageSize=
'
+
initPageSize
,
pagination
:
true
,
//自动截取数据
//nowrap : true,
//loadFilter: pagerFilter,
pageSize
:
initPageSize
,
pageList
:
initPageNum
,
columns
:[[
{
field
:
'
id
'
,
width
:
35
,
align
:
"
center
"
,
checkbox
:
true
},
{
title
:
'
名称
'
,
field
:
'
name
'
,
width
:
200
},
{
title
:
'
类型
'
,
field
:
'
type
'
,
width
:
100
,
align
:
"
center
"
},
{
title
:
'
描述
'
,
field
:
'
remark
'
,
width
:
200
},
{
title
:
'
操作
'
,
field
:
'
op
'
,
align
:
"
center
"
,
width
:
130
,
formatter
:
function
(
value
,
rec
)
{
var
str
=
''
;
var
rowInfo
=
rec
.
id
+
'
AaBb
'
+
rec
.
name
+
'
AaBb
'
+
rec
.
type
+
'
AaBb
'
+
rec
.
remark
;
if
(
1
==
value
)
{
str
+=
'
<img src="
<%=
path
%>
/js/easyui-1.3.5/themes/icons/pencil.png" style="cursor: pointer;" onclick="editInOutItem(
\'
'
+
rowInfo
+
'
\'
);"/> <a onclick="editInOutItem(
\'
'
+
rowInfo
+
'
\'
);" style="text-decoration:none;color:black;" href="javascript:void(0)">编辑</a>
'
;
str
+=
'
<img src="
<%=
path
%>
/js/easyui-1.3.5/themes/icons/edit_remove.png" style="cursor: pointer;" onclick="deleteInOutItem(
\'
'
+
rowInfo
+
'
\'
);"/> <a onclick="deleteInOutItem(
\'
'
+
rowInfo
+
'
\'
);" style="text-decoration:none;color:black;" href="javascript:void(0)">删除</a>
'
;
}
return
str
;
}
}
]],
toolbar
:[
{
id
:
'
addInOutItem
'
,
text
:
'
增加
'
,
iconCls
:
'
icon-add
'
,
handler
:
function
()
{
addInOutItem
();
}
},
{
id
:
'
deleteInOutItem
'
,
text
:
'
删除
'
,
iconCls
:
'
icon-remove
'
,
handler
:
function
()
{
batDeleteInOutItem
();
}
}
],
onLoadError
:
function
()
{
$
.
messager
.
alert
(
'
页面加载提示
'
,
'
页面加载异常,请稍后再试!
'
,
'
error
'
);
return
;
}
});
}
//初始化键盘enter事件
$
(
document
).
keydown
(
function
(
event
)
{
//兼容 IE和firefox 事件
var
e
=
window
.
event
||
event
;
var
k
=
e
.
keyCode
||
e
.
which
||
e
.
charCode
;
//兼容 IE,firefox 兼容
var
obj
=
e
.
srcElement
?
e
.
srcElement
:
e
.
target
;
//绑定键盘事件为 id是指定的输入框才可以触发键盘事件 13键盘事件
if
(
k
==
"
13
"
&&
(
obj
.
id
==
"
name
"
||
obj
.
id
==
"
remark
"
))
{
$
(
"
#saveInOutItem
"
).
click
();
}
//搜索按钮添加快捷键
if
(
k
==
"
13
"
&&
(
obj
.
id
==
"
searchName
"
||
obj
.
id
==
"
searchRemark
"
))
{
$
(
"
#searchBtn
"
).
click
();
}
});
//分页信息处理
function
ininPager
()
{
try
{
var
opts
=
$
(
"
#tableData
"
).
datagrid
(
'
options
'
);
var
pager
=
$
(
"
#tableData
"
).
datagrid
(
'
getPager
'
);
pager
.
pagination
({
onSelectPage
:
function
(
pageNum
,
pageSize
)
{
opts
.
pageNumber
=
pageNum
;
opts
.
pageSize
=
pageSize
;
pager
.
pagination
(
'
refresh
'
,
{
pageNumber
:
pageNum
,
pageSize
:
pageSize
});
showInOutItemDetails
(
pageNum
,
pageSize
);
}
});
}
catch
(
e
)
{
$
.
messager
.
alert
(
'
异常处理提示
'
,
"
分页信息异常 :
"
+
e
.
name
+
"
:
"
+
e
.
message
,
'
error
'
);
}
}
//删除收支项目
function
deleteInOutItem
(
inOutItemInfo
)
{
$
.
messager
.
confirm
(
'
删除确认
'
,
'
确定要删除此收支项目吗?
'
,
function
(
r
)
{
if
(
r
)
{
var
inOutItemTotalInfo
=
inOutItemInfo
.
split
(
"
AaBb
"
);
$
.
ajax
({
type
:
"
post
"
,
url
:
"
<%=
path
%>
/inOutItem/delete.action
"
,
dataType
:
"
json
"
,
data
:
({
inOutItemID
:
inOutItemTotalInfo
[
0
],
name
:
inOutItemTotalInfo
[
1
],
clientIp
:
'
<%=
clientIp
%>
'
}),
success
:
function
(
tipInfo
)
{
var
msg
=
tipInfo
.
showModel
.
msgTip
;
if
(
msg
==
'
成功
'
)
//加载完以后重新初始化
$
(
"
#searchBtn
"
).
click
();
else
$
.
messager
.
alert
(
'
删除提示
'
,
'
删除收支项目失败,请稍后再试!
'
,
'
error
'
);
},
//此处添加错误处理
error
:
function
()
{
$
.
messager
.
alert
(
'
删除提示
'
,
'
删除收支项目异常,请稍后再试!
'
,
'
error
'
);
return
;
}
});
}
});
}
//批量删除收支项目
function
batDeleteInOutItem
()
{
var
row
=
$
(
'
#tableData
'
).
datagrid
(
'
getChecked
'
);
if
(
row
.
length
==
0
)
{
$
.
messager
.
alert
(
'
删除提示
'
,
'
没有记录被选中!
'
,
'
info
'
);
return
;
}
if
(
row
.
length
>
0
)
{
$
.
messager
.
confirm
(
'
删除确认
'
,
'
确定要删除选中的
'
+
row
.
length
+
'
条收支项目吗?
'
,
function
(
r
)
{
if
(
r
)
{
var
ids
=
""
;
for
(
var
i
=
0
;
i
<
row
.
length
;
i
++
)
{
if
(
i
==
row
.
length
-
1
)
{
ids
+=
row
[
i
].
id
;
break
;
}
ids
+=
row
[
i
].
id
+
"
,
"
;
}
$
.
ajax
({
type
:
"
post
"
,
url
:
"
<%=
path
%>
/inOutItem/batchDelete.action
"
,
dataType
:
"
json
"
,
async
:
false
,
data
:
({
inOutItemIDs
:
ids
,
clientIp
:
'
<%=
clientIp
%>
'
}),
success
:
function
(
tipInfo
)
{
var
msg
=
tipInfo
.
showModel
.
msgTip
;
if
(
msg
==
'
成功
'
)
{
//加载完以后重新初始化
$
(
"
#searchBtn
"
).
click
();
$
(
"
:checkbox
"
).
attr
(
"
checked
"
,
false
);
}
else
$
.
messager
.
alert
(
'
删除提示
'
,
'
删除收支项目失败,请稍后再试!
'
,
'
error
'
);
},
//此处添加错误处理
error
:
function
()
{
$
.
messager
.
alert
(
'
删除提示
'
,
'
删除收支项目异常,请稍后再试!
'
,
'
error
'
);
return
;
}
});
}
});
}
}
//增加收支项目
var
url
;
var
inOutItemID
=
0
;
//保存编辑前的名称
var
orgInOutItem
=
""
;
function
addInOutItem
()
{
$
(
'
#inOutItemDlg
'
).
dialog
(
'
open
'
).
dialog
(
'
setTitle
'
,
'
<img src="
<%=
path
%>
/js/easyui-1.3.5/themes/icons/edit_add.png"/> 增加收支项目
'
);
$
(
"
.window-mask
"
).
css
({
width
:
webW
,
height
:
webH
});
$
(
'
#inOutItemFM
'
).
form
(
'
clear
'
);
var
row
=
{
clientIp
:
'
<%=
clientIp
%>
'
};
$
(
'
#inOutItemFM
'
).
form
(
'
load
'
,
row
);
$
(
"
#inOutItem
"
).
focus
();
orgInOutItem
=
""
;
inOutItemID
=
0
;
url
=
'
<%=
path
%>
/inOutItem/create.action
'
;
}
//保存收支项目
$
(
"
#saveInOutItem
"
).
unbind
().
bind
({
click
:
function
()
{
if
(
checkInOutItemName
())
return
;
$
(
'
#inOutItemFM
'
).
form
(
'
submit
'
,{
url
:
url
,
onSubmit
:
function
()
{
return
$
(
this
).
form
(
'
validate
'
);
},
success
:
function
(
result
)
{
var
result
=
eval
(
'
(
'
+
result
+
'
)
'
);
if
(
!
result
)
{
$
.
messager
.
show
({
title
:
'
错误提示
'
,
msg
:
'
保存收支项目失败,请稍后重试!
'
});
}
else
{
$
(
'
#inOutItemDlg
'
).
dialog
(
'
close
'
);
//$('#tableData').datagrid('reload');
//加载完以后重新初始化
//$("#searchBtn").click();
var
opts
=
$
(
"
#tableData
"
).
datagrid
(
'
options
'
);
showInOutItemDetails
(
opts
.
pageNumber
,
opts
.
pageSize
);
}
}
});
}
});
//编辑收支项目
function
editInOutItem
(
inOutItemTotalInfo
)
{
var
inOutItemInfo
=
inOutItemTotalInfo
.
split
(
"
AaBb
"
);
var
row
=
{
name
:
inOutItemInfo
[
1
],
type
:
inOutItemInfo
[
2
],
remark
:
inOutItemInfo
[
3
],
clientIp
:
'
<%=
clientIp
%>
'
};
orgInOutItem
=
inOutItemInfo
[
1
];
$
(
'
#inOutItemDlg
'
).
dialog
(
'
open
'
).
dialog
(
'
setTitle
'
,
'
<img src="
<%=
path
%>
/js/easyui-1.3.5/themes/icons/pencil.png"/> 编辑收支项目
'
);
$
(
"
.window-mask
"
).
css
({
width
:
webW
,
height
:
webH
});
$
(
'
#inOutItemFM
'
).
form
(
'
load
'
,
row
);
inOutItemID
=
inOutItemInfo
[
0
];
//焦点在名称输入框==定焦在输入文字后面
$
(
"
#inOutItem
"
).
val
(
""
).
focus
().
val
(
inOutItemInfo
[
1
]);
url
=
'
<%=
path
%>
/inOutItem/update.action?inOutItemID=
'
+
inOutItemInfo
[
0
];
}
//检查收支项目 名称是否存在 ++ 重名无法提示问题需要跟进
function
checkInOutItemName
()
{
var
inOutItemName
=
$
.
trim
(
$
(
"
#name
"
).
val
());
//表示是否存在 true == 存在 false = 不存在
var
flag
=
false
;
//开始ajax名称检验,不能重名
if
(
inOutItemName
.
length
>
0
&&
(
orgInOutItem
.
length
==
0
||
inOutItemName
!=
orgInOutItem
))
{
$
.
ajax
({
type
:
"
post
"
,
url
:
"
<%=
path
%>
/inOutItem/checkIsNameExist.action
"
,
dataType
:
"
json
"
,
async
:
false
,
data
:
({
inOutItemID
:
inOutItemID
,
name
:
inOutItemName
}),
success
:
function
(
tipInfo
)
{
flag
=
tipInfo
;
if
(
tipInfo
)
{
$
.
messager
.
alert
(
'
提示
'
,
'
收支项目名称已经存在
'
,
'
info
'
);
return
;
}
},
//此处添加错误处理
error
:
function
()
{
$
.
messager
.
alert
(
'
提示
'
,
'
检查收支项目名称是否存在异常,请稍后再试!
'
,
'
error
'
);
return
;
}
});
}
return
flag
;
}
//搜索处理
$
(
"
#searchBtn
"
).
unbind
().
bind
({
click
:
function
()
{
showInOutItemDetails
(
1
,
initPageSize
);
var
opts
=
$
(
"
#tableData
"
).
datagrid
(
'
options
'
);
var
pager
=
$
(
"
#tableData
"
).
datagrid
(
'
getPager
'
);
opts
.
pageNumber
=
1
;
opts
.
pageSize
=
initPageSize
;
pager
.
pagination
(
'
refresh
'
,
{
pageNumber
:
1
,
pageSize
:
initPageSize
});
}
});
function
showInOutItemDetails
(
pageNo
,
pageSize
)
{
$
.
ajax
({
type
:
"
post
"
,
url
:
"
<%=
path
%>
/inOutItem/findBy.action
"
,
dataType
:
"
json
"
,
data
:
({
name
:
$
.
trim
(
$
(
"
#searchName
"
).
val
()),
type
:
$
.
trim
(
$
(
"
#searchType
"
).
val
()),
remark
:
$
.
trim
(
$
(
"
#searchRemark
"
).
val
()),
pageNo
:
pageNo
,
pageSize
:
pageSize
}),
success
:
function
(
data
)
{
$
(
"
#tableData
"
).
datagrid
(
'
loadData
'
,
data
);
},
//此处添加错误处理
error
:
function
()
{
$
.
messager
.
alert
(
'
查询提示
'
,
'
查询数据后台异常,请稍后再试!
'
,
'
error
'
);
return
;
}
});
}
//重置按钮
$
(
"
#searchResetBtn
"
).
unbind
().
bind
({
click
:
function
(){
$
(
"
#searchName
"
).
val
(
""
);
$
(
"
#searchType
"
).
val
(
""
);
$
(
"
#searchRemark
"
).
val
(
""
);
//加载完以后重新初始化
$
(
"
#searchBtn
"
).
click
();
}
});
</script>
</body>
</html>
config/hibernate/hibernate.cfg.xml
View file @
2aaad2bc
...
...
@@ -18,6 +18,7 @@
org.hibernate.dialect.MySQL5Dialect
</property>
<property
name=
"show_sql"
>
true
</property>
<!-- 一般重新建库用create(慎用),只更新字段用update -->
<property
name=
"hbm2ddl.auto"
>
update
</property>
<!-- 对应的实体映射 -->
...
...
@@ -39,5 +40,7 @@
<mapping
resource=
"com/jsh/model/po/Building.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/DepotHead.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/DepotItem.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/Account.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/InOutItem.hbm.xml"
/>
</session-factory>
</hibernate-configuration>
\ No newline at end of file
</hibernate-configuration>
config/spring/basic-applicationContext.xml
View file @
2aaad2bc
...
...
@@ -321,4 +321,28 @@
<property
name=
"logService"
ref=
"logService"
/>
</bean>
<!--仓管通明细配置结束 -->
</beans>
\ No newline at end of file
<!--结算账户配置开始 -->
<bean
id=
"accountService"
class=
"com.jsh.service.basic.AccountService"
>
<property
name=
"baseDao"
ref=
"baseDao"
/>
<property
name=
"accountDao"
ref=
"accountDao"
/>
</bean>
<!-- spring整合struts2需要默认为request或者 prototype,不能是单例 -->
<bean
id=
"accountAction"
class=
"com.jsh.action.basic.AccountAction"
scope=
"prototype"
>
<property
name=
"accountService"
ref=
"accountService"
/>
<property
name=
"logService"
ref=
"logService"
/>
</bean>
<!--结算账户配置结束 -->
<!--收支项目配置开始 -->
<bean
id=
"inOutItemService"
class=
"com.jsh.service.basic.InOutItemService"
>
<property
name=
"baseDao"
ref=
"baseDao"
/>
<property
name=
"inOutItemDao"
ref=
"inOutItemDao"
/>
</bean>
<!-- spring整合struts2需要默认为request或者 prototype,不能是单例 -->
<bean
id=
"inOutItemAction"
class=
"com.jsh.action.basic.InOutItemAction"
scope=
"prototype"
>
<property
name=
"inOutItemService"
ref=
"inOutItemService"
/>
<property
name=
"logService"
ref=
"logService"
/>
</bean>
<!--收支项目配置结束 -->
</beans>
config/spring/dao-applicationContext.xml
View file @
2aaad2bc
...
...
@@ -47,5 +47,9 @@
<!-- 配置depotHeadDao组件 -->
<bean
id=
"depotHeadDao"
parent=
"daoTemplate"
class=
"com.jsh.dao.materials.DepotHeadDAO"
/>
<!-- 配置depotItemDao组件 -->
<bean
id=
"depotItemDao"
parent=
"daoTemplate"
class=
"com.jsh.dao.materials.DepotItemDAO"
/>
<bean
id=
"depotItemDao"
parent=
"daoTemplate"
class=
"com.jsh.dao.materials.DepotItemDAO"
/>
<!-- 配置accountDao组件 -->
<bean
id=
"accountDao"
parent=
"daoTemplate"
class=
"com.jsh.dao.basic.AccountDAO"
/>
<!-- 配置inOutItemDao组件 -->
<bean
id=
"inOutItemDao"
parent=
"daoTemplate"
class=
"com.jsh.dao.basic.InOutItemDAO"
/>
</beans>
\ No newline at end of file
config/struts2/account-struts.xml
0 → 100644
View file @
2aaad2bc
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<struts>
<package
name=
"account"
namespace=
"/account"
extends=
"json-default"
>
<action
name=
"*"
class=
"accountAction"
method=
"{1}"
>
<result
type=
"json"
/>
</action>
</package>
</struts>
config/struts2/inOutItem-struts.xml
0 → 100644
View file @
2aaad2bc
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<struts>
<package
name=
"inOutItem"
namespace=
"/inOutItem"
extends=
"json-default"
>
<action
name=
"*"
class=
"inOutItemAction"
method=
"{1}"
>
<result
type=
"json"
/>
</action>
</package>
</struts>
src/com/jsh/action/basic/AccountAction.java
0 → 100644
View file @
2aaad2bc
package
com.jsh.action.basic
;
import
java.io.IOException
;
import
java.sql.Timestamp
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
net.sf.json.JSONArray
;
import
net.sf.json.JSONObject
;
import
org.springframework.dao.DataAccessException
;
import
com.jsh.base.BaseAction
;
import
com.jsh.base.Log
;
import
com.jsh.model.po.Logdetails
;
import
com.jsh.model.po.Account
;
import
com.jsh.model.vo.basic.AccountModel
;
import
com.jsh.service.basic.AccountIService
;
import
com.jsh.util.common.PageUtil
;
/**
* 结算账户
* @author ji sheng hua
*/
@SuppressWarnings
(
"serial"
)
public
class
AccountAction
extends
BaseAction
<
AccountModel
>
{
private
AccountIService
accountService
;
private
AccountModel
model
=
new
AccountModel
();
/**
* 增加结算账户
* @return
*/
public
void
create
()
{
Log
.
infoFileSync
(
"==================开始调用增加结算账户方法==================="
);
Boolean
flag
=
false
;
try
{
Account
Account
=
new
Account
();
Account
.
setName
(
model
.
getName
());
Account
.
setSerialNo
(
model
.
getSerialNo
());
Account
.
setInitialAmount
(
model
.
getInitialAmount
());
Account
.
setCurrentAmount
(
model
.
getCurrentAmount
());
Account
.
setRemark
(
model
.
getRemark
());
accountService
.
create
(
Account
);
//========标识位===========
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
(
"==================结束调用增加结算账户方法==================="
);
}
/**
* 删除结算账户
* @return
*/
public
String
delete
()
{
Log
.
infoFileSync
(
"====================开始调用删除结算账户信息方法delete()================"
);
try
{
accountService
.
delete
(
model
.
getAccountID
());
tipMsg
=
"成功"
;
tipType
=
0
;
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>删除ID为 "
+
model
.
getAccountID
()
+
" 的结算账户异常"
,
e
);
tipMsg
=
"失败"
;
tipType
=
1
;
}
model
.
getShowModel
().
setMsgTip
(
tipMsg
);
logService
.
create
(
new
Logdetails
(
getUser
(),
"删除结算账户"
,
model
.
getClientIp
(),
new
Timestamp
(
System
.
currentTimeMillis
())
,
tipType
,
"删除结算账户ID为 "
+
model
.
getAccountID
()
+
",名称为 "
+
model
.
getName
()
+
tipMsg
+
"!"
,
"删除结算账户"
+
tipMsg
));
Log
.
infoFileSync
(
"====================结束调用删除结算账户信息方法delete()================"
);
return
SUCCESS
;
}
/**
* 更新结算账户
* @return
*/
public
void
update
()
{
Boolean
flag
=
false
;
try
{
Account
Account
=
accountService
.
get
(
model
.
getAccountID
());
Account
.
setName
(
model
.
getName
());
Account
.
setSerialNo
(
model
.
getSerialNo
());
Account
.
setInitialAmount
(
model
.
getInitialAmount
());
Account
.
setCurrentAmount
(
model
.
getCurrentAmount
());
Account
.
setRemark
(
model
.
getRemark
());
accountService
.
update
(
Account
);
flag
=
true
;
tipMsg
=
"成功"
;
tipType
=
0
;
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>修改结算账户ID为 : "
+
model
.
getAccountID
()
+
"信息失败"
,
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
.
getAccountID
()
+
" "
+
tipMsg
+
"!"
,
"更新结算账户"
+
tipMsg
));
}
/**
* 批量删除指定ID结算账户
* @return
*/
public
String
batchDelete
()
{
try
{
accountService
.
batchDelete
(
model
.
getAccountIDs
());
model
.
getShowModel
().
setMsgTip
(
"成功"
);
//记录操作日志使用
tipMsg
=
"成功"
;
tipType
=
0
;
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>批量删除结算账户ID为:"
+
model
.
getAccountIDs
()
+
"信息异常"
,
e
);
tipMsg
=
"失败"
;
tipType
=
1
;
}
logService
.
create
(
new
Logdetails
(
getUser
(),
"批量删除结算账户"
,
model
.
getClientIp
(),
new
Timestamp
(
System
.
currentTimeMillis
())
,
tipType
,
"批量删除结算账户ID为 "
+
model
.
getAccountIDs
()
+
" "
+
tipMsg
+
"!"
,
"批量删除结算账户"
+
tipMsg
));
return
SUCCESS
;
}
/**
* 检查输入名称是否存在
*/
public
void
checkIsNameExist
()
{
Boolean
flag
=
false
;
try
{
flag
=
accountService
.
checkIsNameExist
(
"name"
,
model
.
getName
(),
"id"
,
model
.
getAccountID
());
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>检查结算账户名称为:"
+
model
.
getName
()
+
" ID为: "
+
model
.
getAccountID
()
+
" 是否存在异常!"
);
}
finally
{
try
{
toClient
(
flag
.
toString
());
}
catch
(
IOException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>回写检查结算账户名称为:"
+
model
.
getName
()
+
" ID为: "
+
model
.
getAccountID
()
+
" 是否存在异常!"
,
e
);
}
}
}
/**
* 查找结算账户信息
* @return
*/
public
void
findBy
()
{
try
{
PageUtil
<
Account
>
pageUtil
=
new
PageUtil
<
Account
>();
pageUtil
.
setPageSize
(
model
.
getPageSize
());
pageUtil
.
setCurPage
(
model
.
getPageNo
());
pageUtil
.
setAdvSearch
(
getCondition
());
accountService
.
find
(
pageUtil
);
List
<
Account
>
dataList
=
pageUtil
.
getPageList
();
JSONObject
outer
=
new
JSONObject
();
outer
.
put
(
"total"
,
pageUtil
.
getTotalCount
());
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
Account
account:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
account
.
getId
());
//结算账户名称
item
.
put
(
"name"
,
account
.
getName
());
item
.
put
(
"serialNo"
,
account
.
getSerialNo
());
item
.
put
(
"initialAmount"
,
account
.
getInitialAmount
());
item
.
put
(
"currentAmount"
,
account
.
getCurrentAmount
());
item
.
put
(
"remark"
,
account
.
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
*/
public
void
findBySelect
()
{
try
{
PageUtil
<
Account
>
pageUtil
=
new
PageUtil
<
Account
>();
pageUtil
.
setPageSize
(
0
);
pageUtil
.
setCurPage
(
0
);
pageUtil
.
setAdvSearch
(
getCondition_select
());
accountService
.
find
(
pageUtil
);
List
<
Account
>
dataList
=
pageUtil
.
getPageList
();
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
Account
account:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
account
.
getId
());
//结算账户名称
item
.
put
(
"name"
,
account
.
getName
());
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
(
"serialNo_s_like"
,
model
.
getSerialNo
());
condition
.
put
(
"remark_s_like"
,
model
.
getRemark
());
condition
.
put
(
"id_s_order"
,
"desc"
);
return
condition
;
}
/**
* 拼接搜索条件-下拉框-结算账户
* @return
*/
private
Map
<
String
,
Object
>
getCondition_select
()
{
/**
* 拼接搜索条件
*/
Map
<
String
,
Object
>
condition
=
new
HashMap
<
String
,
Object
>();
condition
.
put
(
"id_s_order"
,
"desc"
);
return
condition
;
}
//=============以下spring注入以及Model驱动公共方法,与Action处理无关==================
@Override
public
AccountModel
getModel
()
{
return
model
;
}
public
void
setAccountService
(
AccountIService
accountService
)
{
this
.
accountService
=
accountService
;
}
}
src/com/jsh/action/basic/AppAction.java
View file @
2aaad2bc
...
...
@@ -30,7 +30,10 @@ import com.jsh.service.basic.AppIService;
import
com.jsh.service.basic.UserBusinessIService
;
import
com.jsh.util.common.PageUtil
;
//import com.opensymphony.xwork2.ActionContext;
/**
* 应用
* @author ji_sheng_hua
*/
@SuppressWarnings
(
"serial"
)
public
class
AppAction
extends
BaseAction
<
AppModel
>
{
...
...
src/com/jsh/action/basic/InOutItemAction.java
0 → 100644
View file @
2aaad2bc
package
com.jsh.action.basic
;
import
java.io.IOException
;
import
java.sql.Timestamp
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
net.sf.json.JSONArray
;
import
net.sf.json.JSONObject
;
import
org.springframework.dao.DataAccessException
;
import
com.jsh.base.BaseAction
;
import
com.jsh.base.Log
;
import
com.jsh.model.po.Logdetails
;
import
com.jsh.model.po.InOutItem
;
import
com.jsh.model.vo.basic.InOutItemModel
;
import
com.jsh.service.basic.InOutItemIService
;
import
com.jsh.util.common.PageUtil
;
/**
* 收支项目
* @author ji*sheng*hua
*/
@SuppressWarnings
(
"serial"
)
public
class
InOutItemAction
extends
BaseAction
<
InOutItemModel
>
{
private
InOutItemIService
inOutItemService
;
private
InOutItemModel
model
=
new
InOutItemModel
();
/**
* 增加收支项目
* @return
*/
public
void
create
()
{
Log
.
infoFileSync
(
"==================开始调用增加收支项目方法==================="
);
Boolean
flag
=
false
;
try
{
InOutItem
inOutItem
=
new
InOutItem
();
inOutItem
.
setName
(
model
.
getName
());
inOutItem
.
setType
(
model
.
getType
());
inOutItem
.
setRemark
(
model
.
getRemark
());
inOutItemService
.
create
(
inOutItem
);
//========标识位===========
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
(
"==================结束调用增加收支项目方法==================="
);
}
/**
* 删除收支项目
* @return
*/
public
String
delete
()
{
Log
.
infoFileSync
(
"====================开始调用删除收支项目信息方法delete()================"
);
try
{
inOutItemService
.
delete
(
model
.
getInOutItemID
());
tipMsg
=
"成功"
;
tipType
=
0
;
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>删除ID为 "
+
model
.
getInOutItemID
()
+
" 的收支项目异常"
,
e
);
tipMsg
=
"失败"
;
tipType
=
1
;
}
model
.
getShowModel
().
setMsgTip
(
tipMsg
);
logService
.
create
(
new
Logdetails
(
getUser
(),
"删除收支项目"
,
model
.
getClientIp
(),
new
Timestamp
(
System
.
currentTimeMillis
())
,
tipType
,
"删除收支项目ID为 "
+
model
.
getInOutItemID
()
+
",名称为 "
+
model
.
getName
()
+
tipMsg
+
"!"
,
"删除收支项目"
+
tipMsg
));
Log
.
infoFileSync
(
"====================结束调用删除收支项目信息方法delete()================"
);
return
SUCCESS
;
}
/**
* 更新收支项目
* @return
*/
public
void
update
()
{
Boolean
flag
=
false
;
try
{
InOutItem
inOutItem
=
inOutItemService
.
get
(
model
.
getInOutItemID
());
inOutItem
.
setName
(
model
.
getName
());
inOutItem
.
setType
(
model
.
getType
());
inOutItem
.
setRemark
(
model
.
getRemark
());
inOutItemService
.
update
(
inOutItem
);
flag
=
true
;
tipMsg
=
"成功"
;
tipType
=
0
;
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>修改收支项目ID为 : "
+
model
.
getInOutItemID
()
+
"信息失败"
,
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
.
getInOutItemID
()
+
" "
+
tipMsg
+
"!"
,
"更新收支项目"
+
tipMsg
));
}
/**
* 批量删除指定ID收支项目
* @return
*/
public
String
batchDelete
()
{
try
{
inOutItemService
.
batchDelete
(
model
.
getInOutItemIDs
());
model
.
getShowModel
().
setMsgTip
(
"成功"
);
//记录操作日志使用
tipMsg
=
"成功"
;
tipType
=
0
;
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>批量删除收支项目ID为:"
+
model
.
getInOutItemIDs
()
+
"信息异常"
,
e
);
tipMsg
=
"失败"
;
tipType
=
1
;
}
logService
.
create
(
new
Logdetails
(
getUser
(),
"批量删除收支项目"
,
model
.
getClientIp
(),
new
Timestamp
(
System
.
currentTimeMillis
())
,
tipType
,
"批量删除收支项目ID为 "
+
model
.
getInOutItemIDs
()
+
" "
+
tipMsg
+
"!"
,
"批量删除收支项目"
+
tipMsg
));
return
SUCCESS
;
}
/**
* 检查输入名称是否存在
*/
public
void
checkIsNameExist
()
{
Boolean
flag
=
false
;
try
{
flag
=
inOutItemService
.
checkIsNameExist
(
"name"
,
model
.
getName
(),
"id"
,
model
.
getInOutItemID
());
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>检查收支项目名称为:"
+
model
.
getName
()
+
" ID为: "
+
model
.
getInOutItemID
()
+
" 是否存在异常!"
);
}
finally
{
try
{
toClient
(
flag
.
toString
());
}
catch
(
IOException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>回写检查收支项目名称为:"
+
model
.
getName
()
+
" ID为: "
+
model
.
getInOutItemID
()
+
" 是否存在异常!"
,
e
);
}
}
}
/**
* 查找收支项目信息
* @return
*/
public
void
findBy
()
{
try
{
PageUtil
<
InOutItem
>
pageUtil
=
new
PageUtil
<
InOutItem
>();
pageUtil
.
setPageSize
(
model
.
getPageSize
());
pageUtil
.
setCurPage
(
model
.
getPageNo
());
pageUtil
.
setAdvSearch
(
getCondition
());
inOutItemService
.
find
(
pageUtil
);
List
<
InOutItem
>
dataList
=
pageUtil
.
getPageList
();
JSONObject
outer
=
new
JSONObject
();
outer
.
put
(
"total"
,
pageUtil
.
getTotalCount
());
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
InOutItem
inOutItem:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
inOutItem
.
getId
());
//收支项目名称
item
.
put
(
"name"
,
inOutItem
.
getName
());
item
.
put
(
"type"
,
inOutItem
.
getType
());
item
.
put
(
"remark"
,
inOutItem
.
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
*/
public
void
findBySelect
()
{
try
{
PageUtil
<
InOutItem
>
pageUtil
=
new
PageUtil
<
InOutItem
>();
pageUtil
.
setPageSize
(
0
);
pageUtil
.
setCurPage
(
0
);
pageUtil
.
setAdvSearch
(
getCondition_select
());
inOutItemService
.
find
(
pageUtil
);
List
<
InOutItem
>
dataList
=
pageUtil
.
getPageList
();
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
InOutItem
inOutItem:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
inOutItem
.
getId
());
//收支项目名称
item
.
put
(
"name"
,
inOutItem
.
getName
());
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
(
"remark_s_like"
,
model
.
getRemark
());
condition
.
put
(
"id_s_order"
,
"desc"
);
return
condition
;
}
/**
* 拼接搜索条件-下拉框-收支项目
* @return
*/
private
Map
<
String
,
Object
>
getCondition_select
()
{
/**
* 拼接搜索条件
*/
Map
<
String
,
Object
>
condition
=
new
HashMap
<
String
,
Object
>();
condition
.
put
(
"id_s_order"
,
"desc"
);
return
condition
;
}
//=============以下spring注入以及Model驱动公共方法,与Action处理无关==================
@Override
public
InOutItemModel
getModel
()
{
return
model
;
}
public
void
setInOutItemService
(
InOutItemIService
inOutItemService
)
{
this
.
inOutItemService
=
inOutItemService
;
}
}
Prev
1
2
3
4
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