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
db7052de
Commit
db7052de
authored
Oct 16, 2017
by
季圣华
Browse files
增加商品属性的模块
parent
d82e3daa
Changes
19
Show whitespace changes
Inline
Side-by-side
src/main/java/com/jsh/action/materials/MaterialAction.java
View file @
db7052de
...
...
@@ -67,6 +67,9 @@ public class MaterialAction extends BaseAction<MaterialModel>
material
.
setPriceStrategy
(
model
.
getPriceStrategy
());
material
.
setRemark
(
model
.
getRemark
());
material
.
setEnabled
(
model
.
getEnabled
());
material
.
setOtherField1
(
model
.
getOtherField1
());
material
.
setOtherField2
(
model
.
getOtherField2
());
material
.
setOtherField3
(
model
.
getOtherField3
());
materialService
.
create
(
material
);
//========标识位===========
...
...
@@ -161,6 +164,9 @@ public class MaterialAction extends BaseAction<MaterialModel>
material
.
setFirstInUnit
(
model
.
getFirstInUnit
());
material
.
setPriceStrategy
(
model
.
getPriceStrategy
());
material
.
setRemark
(
model
.
getRemark
());
material
.
setOtherField1
(
model
.
getOtherField1
());
material
.
setOtherField2
(
model
.
getOtherField2
());
material
.
setOtherField3
(
model
.
getOtherField3
());
materialService
.
update
(
material
);
flag
=
true
;
...
...
@@ -329,6 +335,9 @@ public class MaterialAction extends BaseAction<MaterialModel>
item
.
put
(
"PriceStrategy"
,
material
.
getPriceStrategy
());
item
.
put
(
"Enabled"
,
material
.
getEnabled
());
item
.
put
(
"Remark"
,
material
.
getRemark
());
item
.
put
(
"OtherField1"
,
material
.
getOtherField1
());
item
.
put
(
"OtherField2"
,
material
.
getOtherField2
());
item
.
put
(
"OtherField3"
,
material
.
getOtherField3
());
item
.
put
(
"op"
,
1
);
dataArray
.
add
(
item
);
}
...
...
src/main/java/com/jsh/action/materials/MaterialPropertyAction.java
0 → 100644
View file @
db7052de
package
com.jsh.action.materials
;
import
com.jsh.base.BaseAction
;
import
com.jsh.base.Log
;
import
com.jsh.model.po.Logdetails
;
import
com.jsh.model.po.MaterialProperty
;
import
com.jsh.model.vo.materials.MaterialPropertyModel
;
import
com.jsh.service.materials.MaterialPropertyIService
;
import
com.jsh.util.PageUtil
;
import
net.sf.json.JSONArray
;
import
net.sf.json.JSONObject
;
import
org.springframework.dao.DataAccessException
;
import
java.io.IOException
;
import
java.sql.Timestamp
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/*
* 商品属性
* @author ji s h e n g hua qq:75 27 18 920
*/
@SuppressWarnings
(
"serial"
)
public
class
MaterialPropertyAction
extends
BaseAction
<
MaterialPropertyModel
>
{
private
MaterialPropertyIService
materialPropertyService
;
private
MaterialPropertyModel
model
=
new
MaterialPropertyModel
();
/**
* 更新商品属性
* @return
*/
public
void
update
()
{
Boolean
flag
=
false
;
try
{
MaterialProperty
materialProperty
=
materialPropertyService
.
get
(
model
.
getId
());
materialProperty
.
setNativeName
(
model
.
getNativeName
());
materialProperty
.
setEnabled
(
model
.
getEnabled
());
materialProperty
.
setSort
(
model
.
getSort
());
materialProperty
.
setAnotherName
(
model
.
getAnotherName
());
materialPropertyService
.
update
(
materialProperty
);
flag
=
true
;
tipMsg
=
"成功"
;
tipType
=
0
;
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>修改商品属性ID为 : "
+
model
.
getId
()
+
"失败"
,
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
.
getId
()
+
" "
+
tipMsg
+
"!"
,
"更新商品属性"
+
tipMsg
));
}
/**
* 查找商品属性
* @return
*/
public
void
findBy
()
{
try
{
PageUtil
<
MaterialProperty
>
pageUtil
=
new
PageUtil
<
MaterialProperty
>();
pageUtil
.
setPageSize
(
0
);
pageUtil
.
setCurPage
(
0
);
pageUtil
.
setAdvSearch
(
getCondition
());
materialPropertyService
.
find
(
pageUtil
);
List
<
MaterialProperty
>
dataList
=
pageUtil
.
getPageList
();
JSONObject
outer
=
new
JSONObject
();
outer
.
put
(
"total"
,
pageUtil
.
getTotalCount
());
//存放数据json数组
JSONArray
dataArray
=
new
JSONArray
();
if
(
null
!=
dataList
)
{
for
(
MaterialProperty
materialProperty:
dataList
)
{
JSONObject
item
=
new
JSONObject
();
item
.
put
(
"id"
,
materialProperty
.
getId
());
item
.
put
(
"nativeName"
,
materialProperty
.
getNativeName
());
item
.
put
(
"enabled"
,
materialProperty
.
getEnabled
());
item
.
put
(
"sort"
,
materialProperty
.
getSort
());
item
.
put
(
"anotherName"
,
materialProperty
.
getAnotherName
());
dataArray
.
add
(
item
);
}
}
outer
.
put
(
"rows"
,
dataArray
);
//回写查询结果
toClient
(
outer
.
toString
());
}
catch
(
DataAccessException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>>>查找商品属性异常"
,
e
);
}
catch
(
IOException
e
)
{
Log
.
errorFileSync
(
">>>>>>>>>>>>>>>>>>>回写查询商品属性结果异常"
,
e
);
}
}
/**
* 拼接搜索条件
* @return
*/
private
Map
<
String
,
Object
>
getCondition
()
{
/**
* 拼接搜索条件
*/
Map
<
String
,
Object
>
condition
=
new
HashMap
<
String
,
Object
>();
condition
.
put
(
"nativeName_s_like"
,
model
.
getNativeName
());
condition
.
put
(
"sort_s_order"
,
"asc"
);
return
condition
;
}
//=============以下spring注入以及Model驱动公共方法,与Action处理无关==================
@Override
public
MaterialPropertyModel
getModel
()
{
return
model
;
}
public
void
setMaterialPropertyService
(
MaterialPropertyIService
materialPropertyService
)
{
this
.
materialPropertyService
=
materialPropertyService
;
}
}
src/main/java/com/jsh/dao/materials/MaterialPropertyDAO.java
0 → 100644
View file @
db7052de
package
com.jsh.dao.materials
;
import
com.jsh.base.BaseDAO
;
import
com.jsh.model.po.MaterialProperty
;
public
class
MaterialPropertyDAO
extends
BaseDAO
<
MaterialProperty
>
implements
MaterialPropertyIDAO
{
/**
* 设置dao映射基类
* @return
*/
@Override
public
Class
<
MaterialProperty
>
getEntityClass
()
{
return
MaterialProperty
.
class
;
}
}
src/main/java/com/jsh/dao/materials/MaterialPropertyIDAO.java
0 → 100644
View file @
db7052de
package
com.jsh.dao.materials
;
import
com.jsh.base.BaseIDAO
;
import
com.jsh.model.po.MaterialProperty
;
public
interface
MaterialPropertyIDAO
extends
BaseIDAO
<
MaterialProperty
>
{
}
src/main/java/com/jsh/model/po/Material.java
View file @
db7052de
...
...
@@ -25,6 +25,9 @@ public class Material implements java.io.Serializable
private
String
PriceStrategy
;
private
String
Remark
;
private
Boolean
Enabled
;
private
String
OtherField1
;
private
String
OtherField2
;
private
String
OtherField3
;
//----------以下属性导入exel表格使用--------------------
/**
...
...
@@ -52,7 +55,8 @@ public class Material implements java.io.Serializable
public
Material
(
MaterialCategory
materialCategory
,
String
name
,
String
mfrs
,
Double
packing
,
Double
safetyStock
,
String
model
,
String
standard
,
String
color
,
String
unit
,
String
remark
,
Double
retailPrice
,
Double
lowPrice
,
Double
presetPriceOne
,
Double
presetPriceTwo
,
Unit
unitId
,
String
firstOutUnit
,
String
firstInUnit
,
String
priceStrategy
,
Boolean
enabled
)
{
Unit
unitId
,
String
firstOutUnit
,
String
firstInUnit
,
String
priceStrategy
,
Boolean
enabled
,
String
otherField1
,
String
otherField2
,
String
otherField3
)
{
super
();
this
.
materialCategory
=
materialCategory
;
Name
=
name
;
...
...
@@ -73,6 +77,9 @@ public class Material implements java.io.Serializable
FirstInUnit
=
firstInUnit
;
PriceStrategy
=
priceStrategy
;
Enabled
=
enabled
;
OtherField1
=
otherField1
;
OtherField2
=
otherField2
;
OtherField3
=
otherField3
;
}
public
Long
getId
()
...
...
@@ -255,6 +262,30 @@ public class Material implements java.io.Serializable
Enabled
=
enabled
;
}
public
String
getOtherField1
()
{
return
OtherField1
;
}
public
void
setOtherField1
(
String
otherField1
)
{
OtherField1
=
otherField1
;
}
public
String
getOtherField3
()
{
return
OtherField3
;
}
public
void
setOtherField3
(
String
otherField3
)
{
OtherField3
=
otherField3
;
}
public
String
getOtherField2
()
{
return
OtherField2
;
}
public
void
setOtherField2
(
String
otherField2
)
{
OtherField2
=
otherField2
;
}
public
Map
<
Integer
,
String
>
getCellInfo
()
{
return
cellInfo
;
}
...
...
src/main/java/com/jsh/model/po/MaterialProperty.java
0 → 100644
View file @
db7052de
package
com.jsh.model.po
;
@SuppressWarnings
(
"serial"
)
public
class
MaterialProperty
implements
java
.
io
.
Serializable
{
private
Long
id
;
private
String
nativeName
;
private
Boolean
enabled
;
private
String
sort
;
private
String
anotherName
;
public
MaterialProperty
()
{
}
public
MaterialProperty
(
Long
id
)
{
this
.
id
=
id
;
}
public
MaterialProperty
(
String
nativeName
,
Boolean
enabled
,
String
sort
,
String
anotherName
)
{
nativeName
=
nativeName
;
enabled
=
enabled
;
sort
=
sort
;
anotherName
=
anotherName
;
}
public
Long
getId
()
{
return
id
;
}
public
void
setId
(
Long
id
)
{
this
.
id
=
id
;
}
public
String
getNativeName
()
{
return
nativeName
;
}
public
void
setNativeName
(
String
nativeName
)
{
this
.
nativeName
=
nativeName
;
}
public
Boolean
getEnabled
()
{
return
enabled
;
}
public
void
setEnabled
(
Boolean
enabled
)
{
this
.
enabled
=
enabled
;
}
public
String
getSort
()
{
return
sort
;
}
public
void
setSort
(
String
sort
)
{
this
.
sort
=
sort
;
}
public
String
getAnotherName
()
{
return
anotherName
;
}
public
void
setAnotherName
(
String
anotherName
)
{
this
.
anotherName
=
anotherName
;
}
}
\ No newline at end of file
src/main/java/com/jsh/model/vo/materials/MaterialModel.java
View file @
db7052de
...
...
@@ -77,6 +77,12 @@ public class MaterialModel implements Serializable
private
Boolean
Enabled
=
true
;
//是否启用
private
String
OtherField1
;
private
String
OtherField2
;
private
String
OtherField3
;
/**
* CategoryId
*/
...
...
@@ -332,6 +338,30 @@ public class MaterialModel implements Serializable
Enabled
=
enabled
;
}
public
String
getOtherField1
()
{
return
OtherField1
;
}
public
void
setOtherField1
(
String
otherField1
)
{
OtherField1
=
otherField1
;
}
public
String
getOtherField2
()
{
return
OtherField2
;
}
public
void
setOtherField2
(
String
otherField2
)
{
OtherField2
=
otherField2
;
}
public
String
getOtherField3
()
{
return
OtherField3
;
}
public
void
setOtherField3
(
String
otherField3
)
{
OtherField3
=
otherField3
;
}
public
String
getBrowserType
()
{
return
browserType
;
}
...
...
src/main/java/com/jsh/model/vo/materials/MaterialPropertyModel.java
0 → 100644
View file @
db7052de
package
com.jsh.model.vo.materials
;
import
java.io.Serializable
;
@SuppressWarnings
(
"serial"
)
public
class
MaterialPropertyModel
implements
Serializable
{
private
MaterialCategoryShowModel
showModel
=
new
MaterialCategoryShowModel
();
/**======开始接受页面参数=================**/
/**
* 名称
*/
private
String
nativeName
;
/**
* 是否启用
*/
private
Boolean
enabled
=
true
;
/**
* 排序
*/
private
String
sort
;
/**
* 别名
*/
private
String
anotherName
;
/**
* Id编号
*/
private
Long
id
;
/**
* 每页显示的个数
*/
private
int
pageSize
=
10
;
/**
* 当前页码
*/
private
int
pageNo
=
1
;
/**
* 用户IP,用户记录操作日志
*/
private
String
clientIp
=
""
;
public
MaterialCategoryShowModel
getShowModel
()
{
return
showModel
;
}
public
void
setShowModel
(
MaterialCategoryShowModel
showModel
)
{
this
.
showModel
=
showModel
;
}
public
String
getNativeName
()
{
return
nativeName
;
}
public
void
setNativeName
(
String
nativeName
)
{
this
.
nativeName
=
nativeName
;
}
public
Boolean
getEnabled
()
{
return
enabled
;
}
public
void
setEnabled
(
Boolean
enabled
)
{
this
.
enabled
=
enabled
;
}
public
String
getSort
()
{
return
sort
;
}
public
void
setSort
(
String
sort
)
{
this
.
sort
=
sort
;
}
public
String
getAnotherName
()
{
return
anotherName
;
}
public
void
setAnotherName
(
String
anotherName
)
{
this
.
anotherName
=
anotherName
;
}
public
Long
getId
()
{
return
id
;
}
public
void
setId
(
Long
id
)
{
this
.
id
=
id
;
}
public
int
getPageSize
()
{
return
pageSize
;
}
public
void
setPageSize
(
int
pageSize
)
{
this
.
pageSize
=
pageSize
;
}
public
int
getPageNo
()
{
return
pageNo
;
}
public
void
setPageNo
(
int
pageNo
)
{
this
.
pageNo
=
pageNo
;
}
public
String
getClientIp
()
{
return
clientIp
;
}
public
void
setClientIp
(
String
clientIp
)
{
this
.
clientIp
=
clientIp
;
}
}
src/main/java/com/jsh/model/vo/materials/MaterialPropertyShowModel.java
0 → 100644
View file @
db7052de
package
com.jsh.model.vo.materials
;
import
java.io.Serializable
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@SuppressWarnings
(
"serial"
)
public
class
MaterialPropertyShowModel
implements
Serializable
{
/**
* 提示信息
*/
private
String
msgTip
=
""
;
/**
* 系统数据
*/
@SuppressWarnings
(
"rawtypes"
)
private
Map
<
String
,
List
>
map
=
new
HashMap
<
String
,
List
>();
public
String
getMsgTip
()
{
return
msgTip
;
}
public
void
setMsgTip
(
String
msgTip
)
{
this
.
msgTip
=
msgTip
;
}
@SuppressWarnings
(
"rawtypes"
)
public
Map
<
String
,
List
>
getMap
()
{
return
map
;
}
@SuppressWarnings
(
"rawtypes"
)
public
void
setMap
(
Map
<
String
,
List
>
map
)
{
this
.
map
=
map
;
}
}
src/main/java/com/jsh/service/materials/MaterialPropertyIService.java
0 → 100644
View file @
db7052de
package
com.jsh.service.materials
;
import
com.jsh.base.BaseIService
;
import
com.jsh.model.po.MaterialProperty
;
public
interface
MaterialPropertyIService
extends
BaseIService
<
MaterialProperty
>
{
}
src/main/java/com/jsh/service/materials/MaterialPropertyService.java
0 → 100644
View file @
db7052de
package
com.jsh.service.materials
;
import
com.jsh.base.BaseService
;
import
com.jsh.dao.materials.MaterialPropertyIDAO
;
import
com.jsh.model.po.MaterialProperty
;
public
class
MaterialPropertyService
extends
BaseService
<
MaterialProperty
>
implements
MaterialPropertyIService
{
@SuppressWarnings
(
"unused"
)
private
MaterialPropertyIDAO
materialPropertyDao
;
public
void
setMaterialPropertyDao
(
MaterialPropertyIDAO
materialPropertyDao
)
{
this
.
materialPropertyDao
=
materialPropertyDao
;
}
@Override
protected
Class
<
MaterialProperty
>
getEntityClass
()
{
return
MaterialProperty
.
class
;
}
}
src/main/resources/hibernate/Material.hbm.xml
View file @
db7052de
...
...
@@ -100,5 +100,20 @@
<comment>
启用
</comment>
</column>
</property>
<property
generated=
"never"
lazy=
"false"
name=
"OtherField1"
type=
"java.lang.String"
>
<column
length=
"50"
name=
"OtherField1"
>
<comment>
自定义1
</comment>
</column>
</property>
<property
generated=
"never"
lazy=
"false"
name=
"OtherField2"
type=
"java.lang.String"
>
<column
length=
"50"
name=
"OtherField2"
>
<comment>
自定义2
</comment>
</column>
</property>
<property
generated=
"never"
lazy=
"false"
name=
"OtherField3"
type=
"java.lang.String"
>
<column
length=
"50"
name=
"OtherField3"
>
<comment>
自定义3
</comment>
</column>
</property>
</class>
</hibernate-mapping>
src/main/resources/hibernate/MaterialProperty.hbm.xml
0 → 100644
View file @
db7052de
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class
name=
"com.jsh.model.po.MaterialProperty"
table=
"jsh_materialproperty"
>
<id
name=
"id"
type=
"java.lang.Long"
>
<column
name=
"id"
/>
<generator
class=
"native"
/>
</id>
<property
generated=
"never"
lazy=
"false"
name=
"nativeName"
type=
"java.lang.String"
>
<column
length=
"50"
name=
"nativeName"
>
<comment>
原始名称
</comment>
</column>
</property>
<property
generated=
"never"
lazy=
"false"
name=
"enabled"
type=
"boolean"
>
<column
length=
"1"
name=
"enabled"
>
<comment>
是否启用
</comment>
</column>
</property>
<property
generated=
"never"
lazy=
"false"
name=
"sort"
type=
"java.lang.String"
>
<column
length=
"10"
name=
"sort"
>
<comment>
排序
</comment>
</column>
</property>
<property
generated=
"never"
lazy=
"false"
name=
"anotherName"
type=
"java.lang.String"
>
<column
length=
"50"
name=
"anotherName"
>
<comment>
别名
</comment>
</column>
</property>
</class>
</hibernate-mapping>
src/main/resources/hibernate/hibernate.cfg.xml
View file @
db7052de
...
...
@@ -44,5 +44,6 @@
<mapping
resource=
"hibernate/AccountHead.hbm.xml"
/>
<mapping
resource=
"hibernate/AccountItem.hbm.xml"
/>
<mapping
resource=
"hibernate/SystemConfig.hbm.xml"
/>
<mapping
resource=
"hibernate/MaterialProperty.hbm.xml"
/>
</session-factory>
</hibernate-configuration>
src/main/resources/spring/basic-applicationContext.xml
View file @
db7052de
...
...
@@ -126,6 +126,17 @@
</bean>
<!--系统配置结束 -->
<!--商品属性开始 -->
<bean
id=
"materialPropertyService"
class=
"com.jsh.service.materials.MaterialPropertyService"
>
<property
name=
"baseDao"
ref=
"baseDao"
/>
</bean>
<!-- spring整合struts2需要默认为request或者 prototype,不能是单例 -->
<bean
id=
"materialPropertyAction"
class=
"com.jsh.action.materials.MaterialPropertyAction"
scope=
"prototype"
>
<property
name=
"materialPropertyService"
ref=
"materialPropertyService"
/>
<property
name=
"logService"
ref=
"logService"
/>
</bean>
<!--商品属性结束 -->
<!--分类配置开始 -->
<bean
id=
"categoryService"
class=
"com.jsh.service.basic.CategoryService"
>
<property
name=
"baseDao"
ref=
"baseDao"
/>
...
...
src/main/resources/spring/dao-applicationContext.xml
View file @
db7052de
...
...
@@ -56,4 +56,6 @@
<bean
id=
"accountItemDao"
parent=
"daoTemplate"
class=
"com.jsh.dao.materials.AccountItemDAO"
/>
<!-- 配置systemConfigDAO组件 -->
<bean
id=
"systemConfigDAO"
parent=
"daoTemplate"
class=
"com.jsh.dao.basic.SystemConfigDAO"
/>
<!-- 配置materialPropertyDAO组件 -->
<bean
id=
"materialPropertyDAO"
parent=
"daoTemplate"
class=
"com.jsh.dao.materials.MaterialPropertyDAO"
/>
</beans>
src/main/resources/struts2/materialProperty-struts.xml
0 → 100644
View file @
db7052de
<?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=
"materialProperty"
namespace=
"/materialProperty"
extends=
"json-default"
>
<action
name=
"*"
class=
"materialPropertyAction"
method=
"{1}"
>
<result
type=
"json"
/>
</action>
</package>
</struts>
\ No newline at end of file
src/main/webapp/pages/materials/material.jsp
View file @
db7052de
...
...
@@ -59,10 +59,10 @@
<table
id=
"tableData"
style=
"top:300px;border-bottom-color:#FFFFFF"
></table>
</div>
<div
id=
"materialDlg"
class=
"easyui-dialog"
style=
"width:860px;height:4
0
0px;padding:10px 20px"
<div
id=
"materialDlg"
class=
"easyui-dialog"
style=
"width:860px;height:4
2
0px;padding:10px 20px"
closed=
"true"
buttons=
"#dlg-buttons"
modal=
"true"
collapsible=
"false"
closable=
"true"
>
<form
id=
"materialFM"
method=
"post"
novalidate
>
<div
id=
"tt"
class=
"easyui-tabs"
style=
"width:800px;height:3
0
0px;"
>
<div
id=
"tt"
class=
"easyui-tabs"
style=
"width:800px;height:3
2
0px;"
>
<div
title=
"基本信息"
style=
"padding:20px;"
>
<table>
<tr>
...
...
@@ -183,6 +183,30 @@
<input
name=
"Standard"
id=
"Standard"
class=
"easyui-validatebox"
data-options=
"validType:'length[1,30]'"
style=
"width: 250px;height: 20px"
/>
</td>
</tr>
<tr>
<td>
制造商
</td>
<td
style=
"padding:5px"
>
<input
name=
"Mfrs"
id=
"Mfrs"
class=
"easyui-validatebox"
data-options=
"validType:'length[1,30]'"
style=
"width: 250px;height: 20px"
/>
</td>
</tr>
<tr>
<td>
自定义1
</td>
<td
style=
"padding:5px"
>
<input
name=
"OtherField1"
id=
"OtherField1"
class=
"easyui-validatebox"
data-options=
"validType:'length[1,30]'"
style=
"width: 250px;height: 20px"
/>
</td>
</tr>
<tr>
<td>
自定义2
</td>
<td
style=
"padding:5px"
>
<input
name=
"OtherField2"
id=
"OtherField2"
class=
"easyui-validatebox"
data-options=
"validType:'length[1,30]'"
style=
"width: 250px;height: 20px"
/>
</td>
</tr>
<tr>
<td>
自定义3
</td>
<td
style=
"padding:5px"
>
<input
name=
"OtherField3"
id=
"OtherField3"
class=
"easyui-validatebox"
data-options=
"validType:'length[1,30]'"
style=
"width: 250px;height: 20px"
/>
</td>
</tr>
</table>
</div>
</div>
...
...
@@ -521,7 +545,8 @@
var
rowInfo
=
rec
.
Id
+
'
AaBb
'
+
rec
.
Name
+
'
AaBb
'
+
rec
.
Model
+
'
AaBb
'
+
rec
.
Color
+
'
AaBb
'
+
rec
.
Unit
+
'
AaBb
'
+
rec
.
RetailPrice
+
'
AaBb
'
+
rec
.
LowPrice
+
'
AaBb
'
+
rec
.
PresetPriceOne
+
'
AaBb
'
+
rec
.
PresetPriceTwo
+
'
AaBb
'
+
rec
.
Remark
+
'
AaBb
'
+
rec
.
Standard
+
'
AaBb
'
+
rec
.
Color
+
'
AaBb
'
+
rec
.
Packing
+
'
AaBb
'
+
rec
.
SafetyStock
+
'
AaBb
'
+
rec
.
CategoryId
+
'
AaBb
'
+
rec
.
CategoryName
+
'
AaBb
'
+
rec
.
UnitId
+
'
AaBb
'
+
rec
.
UnitName
+
'
AaBb
'
+
rec
.
FirstOutUnit
+
'
AaBb
'
+
rec
.
FirstInUnit
;
+
'
AaBb
'
+
rec
.
UnitId
+
'
AaBb
'
+
rec
.
UnitName
+
'
AaBb
'
+
rec
.
FirstOutUnit
+
'
AaBb
'
+
rec
.
FirstInUnit
+
'
AaBb
'
+
rec
.
Mfrs
+
'
AaBb
'
+
rec
.
OtherField1
+
'
AaBb
'
+
rec
.
OtherField2
+
'
AaBb
'
+
rec
.
OtherField3
;
if
(
1
==
value
)
{
str
+=
'
<img title="编辑" src="
<%=
path
%>
/js/easyui-1.3.5/themes/icons/pencil.png" style="cursor: pointer;" onclick="editMaterial(
\'
'
+
rowInfo
+
'
\'
);"/>
'
;
...
...
@@ -1025,7 +1050,10 @@
SafetyStock
:
$
.
trim
(
$
(
"
#SafetyStock
"
).
val
()),
Model
:
$
.
trim
(
$
(
"
#Model
"
).
val
()),
Standard
:
$
.
trim
(
$
(
"
#Standard
"
).
val
()),
Mfrs
:
""
,
Mfrs
:
$
.
trim
(
$
(
"
#Mfrs
"
).
val
()),
OtherField1
:
$
.
trim
(
$
(
"
#OtherField1
"
).
val
()),
OtherField2
:
$
.
trim
(
$
(
"
#OtherField2
"
).
val
()),
OtherField3
:
$
.
trim
(
$
(
"
#OtherField3
"
).
val
()),
Unit
:
$
.
trim
(
$
(
"
#Unit
"
).
val
()),
RetailPrice
:
$
.
trim
(
$
(
"
#RetailPrice
"
).
val
()),
LowPrice
:
$
.
trim
(
$
(
"
#LowPrice
"
).
val
()),
...
...
@@ -1136,6 +1164,10 @@
$
(
"
#Model
"
).
val
(
materialInfo
[
2
]);
$
(
"
#Standard
"
).
val
(
materialInfo
[
10
]
==
"
undefined
"
?
""
:
materialInfo
[
10
]);
$
(
"
#Color
"
).
val
(
materialInfo
[
3
]
==
"
undefined
"
?
""
:
materialInfo
[
3
]);
$
(
"
#Mfrs
"
).
val
(
materialInfo
[
20
]
==
"
undefined
"
?
""
:
materialInfo
[
20
]);
$
(
"
#OtherField1
"
).
val
(
materialInfo
[
21
]
==
"
undefined
"
?
""
:
materialInfo
[
21
]);
$
(
"
#OtherField2
"
).
val
(
materialInfo
[
22
]
==
"
undefined
"
?
""
:
materialInfo
[
22
]);
$
(
"
#OtherField3
"
).
val
(
materialInfo
[
23
]
==
"
undefined
"
?
""
:
materialInfo
[
23
]);
$
(
"
#Unit
"
).
val
(
materialInfo
[
4
]
==
"
undefined
"
?
""
:
materialInfo
[
4
]);
$
(
"
#RetailPrice
"
).
val
(
materialInfo
[
5
]
==
"
undefined
"
?
""
:
materialInfo
[
5
]);
$
(
"
#LowPrice
"
).
val
(
materialInfo
[
6
]
==
"
undefined
"
?
""
:
materialInfo
[
6
]);
...
...
src/main/webapp/pages/materials/materialProperty.jsp
0 → 100644
View file @
db7052de
<%@page
import=
"com.jsh.util.Tools"
%>
<%@ page
language=
"java"
import=
"java.util.*"
pageEncoding=
"utf-8"
%>
<%
String
path
=
request
.
getContextPath
();
String
clientIp
=
Tools
.
getLocalIp
(
request
);
%>
<!DOCTYPE html>
<html>
<head>
<title>
商品属性
</title>
<meta
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"
/>
<script
type=
"text/javascript"
src=
"
<%=
path
%>
/js/jquery-1.8.0.min.js"
></script>
<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/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
name=
"searchNativeName"
id=
"searchNativeName"
style=
"width:120px;"
/>
</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=
"materialPropertyDlg"
class=
"easyui-dialog"
style=
"width:380px;padding:10px 20px"
closed=
"true"
buttons=
"#dlg-buttons"
modal=
"true"
cache=
"false"
collapsible=
"false"
closable=
"true"
>
<form
id=
"materialPropertyFM"
method=
"post"
novalidate
>
<table>
<tr>
<td>
名称
</td>
<td
style=
"padding:5px"
>
<span
id=
"nativeName"
/>
</td>
</tr>
<tr>
<td>
是否启用
</td>
<td
style=
"padding:5px"
>
<input
name=
"enabled"
id=
"enabled"
type=
"checkbox"
style=
"width: 50px;height: 20px"
/>
</td>
</tr>
<tr>
<td>
排序
</td>
<td
style=
"padding:5px"
>
<input
name=
"sort"
id=
"sort"
class=
"easyui-validatebox"
data-options=
"required:true,validType:'length[2,30]'"
style=
"width: 230px;height: 20px"
/>
</td>
</tr>
<tr>
<td>
别名
</td>
<td
style=
"padding:5px"
>
<input
name=
"anotherName"
id=
"anotherName"
class=
"easyui-validatebox"
data-options=
"validType:'length[2,30]'"
style=
"width: 230px;height: 20px"
/>
</td>
</tr>
</table>
<input
type=
"hidden"
name=
"clientIp"
id=
"clientIp"
value=
"
<%=
clientIp
%>
"
/>
</form>
</div>
<div
id=
"dlg-buttons"
>
<a
href=
"javascript:void(0)"
id=
"saveMaterialProperty"
class=
"easyui-linkbutton"
iconCls=
"icon-ok"
>
保存
</a>
<a
href=
"javascript:void(0)"
id=
"cancelMaterialProperty"
class=
"easyui-linkbutton"
iconCls=
"icon-cancel"
onclick=
"javascript:$('#materialPropertyDlg').dialog('close')"
>
取消
</a>
</div>
<script
type=
"text/javascript"
>
//初始化界面
$
(
function
()
{
initTableData
();
ininPager
();
initForm
();
});
//防止表单提交重复
function
initForm
()
{
$
(
'
#materialPropertyFM
'
).
form
({
onSubmit
:
function
(){
return
false
;
}
});
}
//初始化表格数据
function
initTableData
()
{
$
(
'
#tableData
'
).
datagrid
({
height
:
heightInfo
,
nowrap
:
false
,
rownumbers
:
true
,
//动画效果
animate
:
false
,
//选中单行
singleSelect
:
true
,
collapsible
:
false
,
selectOnCheck
:
false
,
//fitColumns:true,
//单击行是否选中
//checkOnSelect : false,
url
:
'
<%=
path
%>
/materialProperty/findBy.action?pageSize=
'
+
initPageSize
,
pagination
:
false
,
//交替出现背景
striped
:
true
,
//loadFilter: pagerFilter,
columns
:[[
{
field
:
'
id
'
,
width
:
10
,
align
:
"
center
"
,
hidden
:
true
},
{
title
:
'
名称
'
,
field
:
'
nativeName
'
,
width
:
100
},
{
title
:
'
是否启用
'
,
field
:
'
enabled
'
,
width
:
100
,
formatter
:
function
(
value
,
rec
){
if
(
rec
.
enabled
){
return
"
启用
"
;
}
else
{
return
"
禁用
"
;
}
}},
{
title
:
'
排序
'
,
field
:
'
sort
'
,
width
:
100
},
{
title
:
'
别名
'
,
field
:
'
anotherName
'
,
width
:
100
},
{
title
:
'
操作
'
,
field
:
'
op
'
,
align
:
"
center
"
,
width
:
80
,
formatter
:
function
(
value
,
rec
)
{
var
str
=
''
;
var
rowInfo
=
rec
.
id
+
'
AaBb
'
+
rec
.
nativeName
+
'
AaBb
'
+
rec
.
enabled
+
'
AaBb
'
+
rec
.
sort
+
'
AaBb
'
+
rec
.
anotherName
;
str
+=
'
<img src="
<%=
path
%>
/js/easyui-1.3.5/themes/icons/pencil.png" style="cursor: pointer;" onclick="editMaterialProperty(
\'
'
+
rowInfo
+
'
\'
);"/> <a onclick="editMaterialProperty(
\'
'
+
rowInfo
+
'
\'
);" style="text-decoration:none;color:black;" href="javascript:void(0)">编辑</a>
'
;
return
str
;
}
}
]],
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键盘事件 ---遗留问题 enter键效验 对话框会关闭问题
if
(
k
==
"
13
"
&&
(
obj
.
id
==
"
nativeName
"
))
{
$
(
"
#saveMaterialProperty
"
).
click
();
}
//搜索按钮添加快捷键
if
(
k
==
"
13
"
&&
(
obj
.
id
==
"
searchNativeName
"
))
{
$
(
"
#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
});
showMaterialPropertyDetails
(
pageNum
,
pageSize
);
}
});
}
catch
(
e
)
{
$
.
messager
.
alert
(
'
异常处理提示
'
,
"
分页信息异常 :
"
+
e
.
name
+
"
:
"
+
e
.
message
,
'
error
'
);
}
}
//增加
var
url
;
//保存信息
$
(
"
#saveMaterialProperty
"
).
unbind
().
bind
({
click
:
function
()
{
if
(
!
$
(
'
#materialPropertyFM
'
).
form
(
'
validate
'
))
return
;
else
{
$
.
ajax
({
type
:
"
post
"
,
url
:
url
,
dataType
:
"
json
"
,
async
:
false
,
data
:
({
nativeName
:
$
.
trim
(
$
(
"
#nativeName
"
).
val
()),
enabled
:
$
(
"
#enabled
"
).
is
(
'
:checked
'
),
sort
:
$
.
trim
(
$
(
"
#sort
"
).
val
()),
anotherName
:
$
.
trim
(
$
(
"
#anotherName
"
).
val
()),
clientIp
:
'
<%=
clientIp
%>
'
}),
success
:
function
(
tipInfo
)
{
if
(
tipInfo
)
{
$
(
'
#materialPropertyDlg
'
).
dialog
(
'
close
'
);
var
opts
=
$
(
"
#tableData
"
).
datagrid
(
'
options
'
);
showMaterialPropertyDetails
(
opts
.
pageNumber
,
opts
.
pageSize
);
}
else
{
$
.
messager
.
show
({
title
:
'
错误提示
'
,
msg
:
'
保存商品属性失败,请稍后重试!
'
});
}
},
//此处添加错误处理
error
:
function
()
{
$
.
messager
.
alert
(
'
提示
'
,
'
保存商品属性异常,请稍后再试!
'
,
'
error
'
);
return
;
}
});
}
}
});
//编辑信息
function
editMaterialProperty
(
totalInfo
)
{
var
materialPropertyInfo
=
totalInfo
.
split
(
"
AaBb
"
);
$
(
"
#clientIp
"
).
val
(
'
<%=
clientIp
%>
'
);
$
(
"
#nativeName
"
).
text
(
materialPropertyInfo
[
1
]);
$
(
"
#enabled
"
).
attr
(
"
checked
"
,
materialPropertyInfo
[
2
]
==
'
true
'
?
true
:
false
);
$
(
"
#sort
"
).
val
(
materialPropertyInfo
[
3
]);
$
(
"
#anotherName
"
).
val
(
materialPropertyInfo
[
4
]);
$
(
'
#materialPropertyDlg
'
).
dialog
(
'
open
'
).
dialog
(
'
setTitle
'
,
'
<img src="
<%=
path
%>
/js/easyui-1.3.5/themes/icons/pencil.png"/> 编辑商品属性
'
);
$
(
"
.window-mask
"
).
css
({
width
:
webW
,
height
:
webH
});
//焦点在名称输入框==定焦在输入文字后面
$
(
"
#nativeName
"
).
val
(
""
).
focus
().
val
(
materialPropertyInfo
[
1
]);
url
=
'
<%=
path
%>
/materialProperty/update.action?id=
'
+
materialPropertyInfo
[
0
];
}
//搜索处理
$
(
"
#searchBtn
"
).
unbind
().
bind
({
click
:
function
()
{
showMaterialPropertyDetails
(
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
showMaterialPropertyDetails
(
pageNo
,
pageSize
)
{
$
.
ajax
({
type
:
"
post
"
,
url
:
"
<%=
path
%>
/materialProperty/findBy.action
"
,
dataType
:
"
json
"
,
data
:
({
nativeName
:
$
.
trim
(
$
(
"
#searchNativeName
"
).
val
()),
pageNo
:
pageNo
,
pageSize
:
pageSize
}),
success
:
function
(
data
)
{
$
(
"
#tableData
"
).
datagrid
(
'
loadData
'
,
data
);
},
//此处添加错误处理
error
:
function
()
{
$
.
messager
.
alert
(
'
查询提示
'
,
'
查询数据后台异常,请稍后再试!
'
,
'
error
'
);
return
;
}
});
}
//重置按钮
$
(
"
#searchResetBtn
"
).
off
().
on
(
"
click
"
,
function
(){
$
(
"
#searchNativeName
"
).
val
(
""
);
//加载完以后重新初始化
$
(
"
#searchBtn
"
).
click
();
});
</script>
</body>
</html>
\ No newline at end of file
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