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
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 @@
...
@@ -18,6 +18,7 @@
org.hibernate.dialect.MySQL5Dialect
org.hibernate.dialect.MySQL5Dialect
</property>
</property>
<property
name=
"show_sql"
>
true
</property>
<property
name=
"show_sql"
>
true
</property>
<!-- 一般重新建库用create(慎用),只更新字段用update -->
<property
name=
"hbm2ddl.auto"
>
update
</property>
<property
name=
"hbm2ddl.auto"
>
update
</property>
<!-- 对应的实体映射 -->
<!-- 对应的实体映射 -->
...
@@ -39,5 +40,7 @@
...
@@ -39,5 +40,7 @@
<mapping
resource=
"com/jsh/model/po/Building.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/Building.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/DepotHead.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/DepotItem.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/Account.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/InOutItem.hbm.xml"
/>
</session-factory>
</session-factory>
</hibernate-configuration>
</hibernate-configuration>
\ No newline at end of file
WebRoot/WEB-INF/classes/spring/basic-applicationContext.xml
View file @
2aaad2bc
...
@@ -321,4 +321,28 @@
...
@@ -321,4 +321,28 @@
<property
name=
"logService"
ref=
"logService"
/>
<property
name=
"logService"
ref=
"logService"
/>
</bean>
</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 @@
...
@@ -47,5 +47,9 @@
<!-- 配置depotHeadDao组件 -->
<!-- 配置depotHeadDao组件 -->
<bean
id=
"depotHeadDao"
parent=
"daoTemplate"
class=
"com.jsh.dao.materials.DepotHeadDAO"
/>
<bean
id=
"depotHeadDao"
parent=
"daoTemplate"
class=
"com.jsh.dao.materials.DepotHeadDAO"
/>
<!-- 配置depotItemDao组件 -->
<!-- 配置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>
</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 @@
...
@@ -12,35 +12,6 @@
<title>
ERP系统
</title>
<title>
ERP系统
</title>
<link
href=
"
<%=
path
%>
/js/HoorayOS_mini/js/HoorayLibs/hooraylibs.css"
rel=
"stylesheet"
/>
<link
href=
"
<%=
path
%>
/js/HoorayOS_mini/js/HoorayLibs/hooraylibs.css"
rel=
"stylesheet"
/>
<link
href=
"
<%=
path
%>
/js/HoorayOS_mini/img/ui/index.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>
</head>
<body>
<body>
<div
class=
"loading"
></div>
<div
class=
"loading"
></div>
...
@@ -134,16 +105,6 @@
...
@@ -134,16 +105,6 @@
//加载桌面
//加载桌面
HROS
.
base
.
init
();
HROS
.
base
.
init
();
}
}
if
(
'
@ViewData["News"].ToString()
'
.
length
>
0
)
{
$
.
messager
.
show
({
title
:
'
公 告
'
,
msg
:
'
最新公告
'
,
timeout
:
20000
,
showType
:
'
slide
'
,
width
:
500
,
height
:
280
});
}
function
JSGetCookie
(
Name
)
{
function
JSGetCookie
(
Name
)
{
var
search
=
Name
+
"
=
"
var
search
=
Name
+
"
=
"
if
(
document
.
cookie
.
length
>
0
)
{
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 @@
...
@@ -18,6 +18,7 @@
org.hibernate.dialect.MySQL5Dialect
org.hibernate.dialect.MySQL5Dialect
</property>
</property>
<property
name=
"show_sql"
>
true
</property>
<property
name=
"show_sql"
>
true
</property>
<!-- 一般重新建库用create(慎用),只更新字段用update -->
<property
name=
"hbm2ddl.auto"
>
update
</property>
<property
name=
"hbm2ddl.auto"
>
update
</property>
<!-- 对应的实体映射 -->
<!-- 对应的实体映射 -->
...
@@ -39,5 +40,7 @@
...
@@ -39,5 +40,7 @@
<mapping
resource=
"com/jsh/model/po/Building.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/Building.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/DepotHead.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/DepotItem.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/Account.hbm.xml"
/>
<mapping
resource=
"com/jsh/model/po/InOutItem.hbm.xml"
/>
</session-factory>
</session-factory>
</hibernate-configuration>
</hibernate-configuration>
\ No newline at end of file
config/spring/basic-applicationContext.xml
View file @
2aaad2bc
...
@@ -321,4 +321,28 @@
...
@@ -321,4 +321,28 @@
<property
name=
"logService"
ref=
"logService"
/>
<property
name=
"logService"
ref=
"logService"
/>
</bean>
</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 @@
...
@@ -47,5 +47,9 @@
<!-- 配置depotHeadDao组件 -->
<!-- 配置depotHeadDao组件 -->
<bean
id=
"depotHeadDao"
parent=
"daoTemplate"
class=
"com.jsh.dao.materials.DepotHeadDAO"
/>
<bean
id=
"depotHeadDao"
parent=
"daoTemplate"
class=
"com.jsh.dao.materials.DepotHeadDAO"
/>
<!-- 配置depotItemDao组件 -->
<!-- 配置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>
</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;
...
@@ -30,7 +30,10 @@ import com.jsh.service.basic.AppIService;
import
com.jsh.service.basic.UserBusinessIService
;
import
com.jsh.service.basic.UserBusinessIService
;
import
com.jsh.util.common.PageUtil
;
import
com.jsh.util.common.PageUtil
;
//import com.opensymphony.xwork2.ActionContext;
//import com.opensymphony.xwork2.ActionContext;
/**
* 应用
* @author ji_sheng_hua
*/
@SuppressWarnings
(
"serial"
)
@SuppressWarnings
(
"serial"
)
public
class
AppAction
extends
BaseAction
<
AppModel
>
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