1
2
3
4
5
6
7
8
9
10
11
12
<!DOCTYPE HTML>
<html lang= "zh" xmlns:th= "http://www.thymeleaf.org" xmlns:shiro= "http://www.pollix.at/thymeleaf/shiro" >
<meta charset= "utf-8" >
<head th:include= "include :: header" ></head>
<body class= "gray-bg" >
<div class= "container-div" >
<div class= "row" >
<div class= "col-sm-12 select-info" >
<form id= "material-form" >
<div class= "select-list" >
<ul>
<li>
13
物料编码:<input type= "text" name= "code" value= "" />
14
15
</li>
<li>
16
名称:<input type= "text" name= "name" value= "" />
17
18
</li>
<li>
19
规格:<input type= "text" name= "spec" value= "" />
20
21
</li>
<li>
22
物料类别:<select name= "type" th:with= "type=${@materialType.list()}" >
23
<option value= "" > 所有</option>
24
<option th:each= "e : ${type}" th:text= "${e['name']}" th:value= "${e['code']}" ></option>
25
26
27
28
</select>
</li>
<li class= "time" >
<label> 创建时间: </label>
29
<input type= "text" class= "time-input" id= "startTime" placeholder= "开始时间" name= "createdBegin" />
30
<span> -</span>
31
<input type= "text" class= "time-input" id= "endTime" placeholder= "结束时间" name= "createdEnd" />
32
33
34
</li>
<li>
<a class= "btn btn-primary btn-rounded btn-sm" onclick= "$.table.search()" ><i class= "fa fa-search" ></i> 搜索</a>
35
<a class= "btn btn-warning btn-rounded btn-sm" onclick= "$.form.reset('material-form')" ><i class= "fa fa-refresh" ></i> 重置</a>
36
<!--<a class="btn btn-success btn-rounded btn-sm" onclick="$.table.exportExcel()" shiro:hasPermission="config:material:export"><i class="fa fa-download"></i> 导出</a>-->
37
38
39
40
41
42
43
</li>
</ul>
</div>
</form>
</div>
<div class= "btn-group hidden-xs" id= "toolbar" role= "group" >
44
<a class= "btn btn-outline btn-success btn-rounded" onclick= "$.operate.add()" shiro:hasPermission= "config:material:add" >
45
46
<i class= "fa fa-plus" ></i> 新增
</a>
47
48
49
<a class= "btn btn-outline btn-success btn-rounded" onclick= "batEdit()" shiro:hasPermission= "config:material:add" >
<i class= "fa fa-edit" ></i> 批量编辑
</a>
50
<a class= "btn btn-outline btn-danger btn-rounded" onclick= "$.operate.batRemove()" shiro:hasPermission= "config:material:remove" >
51
52
<i class= "fa fa-trash-o" ></i> 删除
</a>
53
54
55
<a class= "btn btn-outline btn-info btn-rounded" onclick= "$.table.importExcel()" >
<i class= "fa fa-upload" ></i> 导入
</a>
56
<a class= "btn btn-outline btn-success btn-rounded" onclick= "$.operate.batPrint()" >
57
58
<i class= "fa fa-plus" ></i> 打印
</a>
59
60
61
</div>
<div class= "col-sm-12 select-info" >
62
<table id= "bootstrap-table" data-mobile-responsive= "true" class= "table table-bordered table-hover text-nowrap" ></table>
63
64
65
66
67
</div>
</div>
</div>
<div th:include= "include :: footer" ></div>
<script th:inline= "javascript" >
68
69
70
var editFlag = [[${@permission.hasPermi('config:material:edit')}]];
var removeFlag = [[${@permission.hasPermi('config:material:remove')}]];
var prefix = ctx + "config/material";
71
var datas = [[${@dict.getType('sys_normal_disable')}]];
72
var mType = [[${@materialType.queryType()}]];
73
var materialArea = [[${@materialArea.queryCode()}]];
74
75
76
77
78
79
80
$(function() {
var options = {
url: prefix + "/list",
createUrl: prefix + "/add",
updateUrl: prefix + "/edit/{id}",
removeUrl: prefix + "/remove",
81
printUrl: prefix + "/print",
82
83
importTemplateUrl: prefix + "/importTemplate",
importUrl: prefix+"/importData",
84
85
modalName: "物料",
search: false,
86
87
88
89
90
91
92
93
94
95
96
97
queryParams: function (params){
return {
name : $("#name").val(),
code : $("#code").val(),
spec : $("#spec").val(),
type : $("#type option:selected").val(),
pageSize: params.limit,
pageNum: params.offset / params.limit + 1,
searchValue: params.search,
orderByColumn: params.sort,
}
},
98
99
100
101
102
103
sortName: "id",
sortOrder: "desc",
columns: [{
checkbox: true
},
{
huhai
authored
5 years ago
104
105
106
107
title: '操作',
align: 'center',
formatter: function(value, row, index) {
var actions = [];
108
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
huhai
authored
5 years ago
109
110
111
112
113
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-trash-o"></i>删除</a>');
return actions.join('');
}
},
{
114
field : 'id',
huhai
authored
5 years ago
115
116
title : 'id',
visible: false
117
118
119
},
{
field : 'code',
120
title : '物料编码'
121
122
123
124
125
126
},
{
field : 'type',
title : '物料类别' ,
align: 'center',
formatter: function(value, row, index) {
127
128
129
130
131
132
133
134
var actions = [];
$.each(mType, function(index, dict) {
if (dict.code == value) {
actions.push("<span class='badge badge-" + dict.code + "'>" + dict.name + "</span>");
return false;
}
});
return actions.join('');
135
136
}
},
137
{
138
139
140
141
field : 'name',
title : '名称'
},
{
142
field : 'spec',
143
144
145
title : '规格'
},
{
146
147
148
149
150
151
152
field: 'materialAreaCode',
title: '物料分区',
align: 'center',
formatter: function(value, row, index) {
var actions = [];
$.each(materialArea, function(index, dict) {
if (dict.code == value) {
153
actions.push("<span class='badge badge-" + dict.code + "'>" + dict.name + "</span>");
154
155
156
157
158
159
160
return false;
}
});
return actions.join('');
}
},
{
161
162
field : 'unit',
title : '单位' ,
163
164
visible:true
},
165
166
167
168
{
field: 'useCount',
title: '任务总数'
},
169
170
171
172
{
field : 'abcClass',
title : 'ABC分类' ,
align: 'center',
173
174
},
{
175
176
field : 'daysToExpire',
title : '保质期(天)' ,
177
178
179
visible:false
},
{
180
181
field : 'locatingRule',
title : '定位规则',
182
183
},
{
184
185
field : 'allocationRule',
title : '分配规则' ,
186
187
},
{
188
189
field : 'replenishmentRule',
title : '补货规则' ,
190
191
},
{
192
193
field : 'emptyLocRule',
title : '空货位规则' ,
194
195
},
{
196
197
field : 'receivingFlow',
title : '入库流程' ,
198
199
},
{
200
201
field : 'shippingFlow',
title : '出库流程' ,
202
203
},
{
204
205
field : 'attributeTemplateCode',
title : '属性模板' ,
206
visible:false,
207
208
209
210
},
{
field : 'trackSerialNum',
title : '记录序列号' ,
211
visible:false,
212
213
214
},
{
field : 'autoGenSerialNum',
215
title : '自动生成序列号',
216
visible:false,
217
218
219
220
221
222
223
224
225
226
align: 'center',
formatter: function(value, row, index) {
var actions = [];
if (value == 0){
actions.push("<span class='badge badge-primary'>自动生成</span>");
} else {
actions.push("<span class='badge badge-primary'>不自动生成</span>");
}
return actions.join('');
}
227
228
229
230
},
{
field : 'autoGenSerialNumFormat',
title : '自动生成序列号表达式' ,
231
visible:false,
232
233
234
235
},
{
field : 'snTemplateCode',
title : '序列号模板' ,
236
visible:false,
237
238
239
240
},
{
field : 'expiringDays',
title : '临期预警天数' ,
241
242
243
visible:false
},
{
244
245
field : 'minShelfLifeDays',
title : '收货预警天数' ,
246
247
visible:false
},
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
// {
// field : "version",
// title: "数据版本"
// },
// {
// field : 'created',
// title : '创建时间'
// },
// {
// field : 'createdBy',
// title : '创建用户'
// },
// {
// field : 'lastUpdated',
// title : '更新时间'
// },
// {
// field : 'lastUpdatedBy',
// title : '更新用户'
// },
268
269
{
field : 'enable',
270
title : '状态' ,
271
272
273
274
275
align: 'center',
formatter: function(value, row, index) {
return $.table.selectDictLabel(datas, value);
}
},
276
277
278
{
field: 'isMix',
title: '是否允许混放',
279
visible:false,
280
281
282
283
align: 'center',
formatter: function (value, row, index) {
return $.table.selectLogicLabel(value);
}
284
}]
285
286
287
};
$.table.init(options);
});
288
289
290
291
292
293
294
295
296
function report() {
var rows=$("#bootstrap-table").bootstrapTable('getSelections');
if (rows.length == 0) {
$.modal.alertWarning("请至少选择一条记录");
return;
}
var ids = "";
for(var i=0; i<rows.length; i++) {
297
ids = ids + rows[i].id + "," // 物料编码id
298
299
}
let url=prefix+'/print/' + ids;
300
301
302
// 打印参数表示打印的加载窗口该窗口显示spring返回的页面
$.modal.open("打印", url); // 该页面打开print.html之后在进行调用改方法
303
}
304
305
306
307
308
309
310
311
312
313
function batEdit() {
let rows = $.table.selectColumns("id");
if (rows.length == 0) {
$.modal.alertWarning("请至少选择一条记录");
return;
} else {
$.modal.open("修改物料", prefix+"/editBatch/"+rows.join(","));
}
}
314
</script>
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
<!-- 导入区域 -->
<script id= "importTpl" type= "text/template" >
<form enctype="multipart/form-data" class="mt20 mb10">
<div class="col-xs-offset-1">
<input type="file" id="file" name="file"/>
<div class="mt10 pt5">
<a onclick="$.table.importTemplate()" class="btn btn-default btn-xs"><i class="fa fa-file-excel-o"></i> 下载模板</a>
</div>
<font color="red" class="pull-left mt10">
提示:仅允许导入“xls”或“xlsx”格式文件!
</font>
</div>
</form>
</script>
330
331
</body>
</html>