Files
jshERP/erp_web/pages/materials/materialProperty.html
2020-12-27 15:10:43 +08:00

277 lines
10 KiB
Java

<!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="/images/favicon.ico" type="image/x-icon"/>
<link rel="stylesheet" href="/js/bootstrap/css/bootstrap.min.css">
<link type="text/css" rel="stylesheet" href="/css/jsherp.css"/>
<script type="text/javascript" src="/js/jquery-1.8.0.min.js"></script>
<link rel="stylesheet" type="text/css" href="/js/easyui/themes/gray/easyui.css"/>
<link rel="stylesheet" type="text/css" href="/js/easyui/themes/icon.css"/>
<link type="text/css" rel="stylesheet" href="/css/common.css"/>
<script type="text/javascript" src="/js/easyui/jquery.easyui.min.js"></script>
<script type="text/javascript" src="/js/easyui/locale/easyui-lang-zh_CN.js"></script>
<script type="text/javascript" src="/js/common/common.js"></script>
</head>
<body>
<!-- 数据显示table -->
<div id="tablePanel" class="easyui-panel" data-options="fit:true" style="padding:5px;" title="商品属性列表" iconCls="icon-list">
<div class="box-body form-inline">
<div class="form-group">
<label class="control-label">名称:</label>
<div class="control-inline">
<input type="text" id="searchNativeName" name="searchNativeName" value="" maxlength="100" class="easyui-textbox width-90"/>
</div>
</div>
<div class="form-group">
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-search" id="searchBtn">查询</a>&nbsp;
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-redo" id="searchResetBtn">重置</a>
</div>
</div>
<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-textbox"
data-options="required:true,validType:'length[2,30]'" style="width: 230px;"/>
</td>
</tr>
<tr>
<td>别名</td>
<td style="padding:5px">
<input name="anotherName" id="anotherName" class="easyui-textbox"
data-options="validType:'length[2,30]'" style="width: 230px;"/>
</td>
</tr>
</table>
</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,
pagination: false,
//交替出现背景
striped: true,
//loadFilter: pagerFilter,
columns: [[
{field: 'id', width: 10, align: "center", hidden: true},
{
title: '操作', field: 'op', align: "center", width: 80, formatter: function (value, rec, index) {
var str = '';
str += '<img src="/js/easyui/themes/icons/pencil.png" style="cursor: pointer;" onclick="editMaterialProperty(\'' + index + '\');"/>';
return str;
}
},
{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}
]],
onLoadError: function () {
$.messager.alert('页面加载提示', '页面加载异常,请稍后再试!', 'error');
return;
}
});
dgResize();
showMaterialPropertyDetails(1, initPageSize);
}
//初始化键盘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").off("click").on("click", function () {
var obj = $("#materialPropertyFM").serializeObject();
obj.enabled = $("#enabled").is(':checked');
$.ajax({
url: url,
type: "post",
dataType: "json",
data: ({
info: JSON.stringify(obj)
}),
success: function(res) {
if(res && res.code === 200) {
$('#materialPropertyDlg').dialog('close');
//加载完以后重新初始化
var opts = $("#tableData").datagrid('options');
showMaterialPropertyDetails(opts.pageNumber, opts.pageSize);
}
},
//此处添加错误处理
error: function () {
$.messager.alert('提示', '保存商品属性异常,请稍后再试!', 'error');
return;
}
});
});
//编辑信息
function editMaterialProperty(index) {
var rowsdata = $("#tableData").datagrid("getRows")[index];
$("#nativeName").text(rowsdata.nativeName);
$("#enabled").attr("checked", rowsdata.enabled == true ? true : false);
$("#sort").textbox("setValue", rowsdata.sort);
$("#anotherName").textbox("setValue", rowsdata.anotherName);
$('#materialPropertyDlg').dialog('open').dialog('setTitle', '<img src="/js/easyui/themes/icons/pencil.png"/>&nbsp;编辑商品属性');
$(".window-mask").css({width: webW, height: webH});
//焦点在名称输入框==定焦在输入文字后面
url = '/materialProperty/update?id=' + rowsdata.id;
}
//搜索处理
$("#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: "get",
url: "/materialProperty/list",
dataType: "json",
data: ({
search: JSON.stringify({
name: $.trim($("#searchNativeName").val())
}),
currentPage: pageNo,
pageSize: pageSize
}),
success: function (res) {
if(res && res.code === 200){
if(res.data && res.data.page) {
$("#tableData").datagrid('loadData', res.data.page);
}
}
},
//此处添加错误处理
error: function () {
$.messager.alert('查询提示', '查询数据后台异常,请稍后再试!', 'error');
return;
}
});
}
//重置按钮
$("#searchResetBtn").off().on("click", function () {
$("#searchNativeName").textbox("clear");
//加载完以后重新初始化
$("#searchBtn").click();
});
</script>
</body>
</html>