Blame view

src/main/resources/templates/config/material/material.html 8.18 KB
tangying authored
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"/>
tangying authored
14
15
16
17
18
							</li>
							<li>
								名称:<input type="text" name="name"/>
							</li>
							<li>
19
								规格:<input type="text" name="spec"/>
tangying authored
20
21
							</li>
							<li>
22
								物料类别:<select name="type" th:with="type=${@materialType.list()}">
tangying authored
23
								<option value="">所有</option>
24
								<option th:each="e : ${type}" th:text="${e['name']}" th:value="${e['code']}"></option>
tangying authored
25
26
27
28
							</select>
							</li>
							<li class="time">
								<label>创建时间: </label>
29
								<input type="text" class="time-input" id="startTime" placeholder="开始时间" name="createdBegin"/>
tangying authored
30
								<span>-</span>
31
								<input type="text" class="time-input" id="endTime" placeholder="结束时间" name="createdEnd"/>
tangying authored
32
33
34
							</li>
							<li>
								<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
35
								<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset('material-form')"><i class="fa fa-refresh"></i>&nbsp;重置</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>&nbsp;导出</a>-->
tangying authored
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">
tangying authored
45
46
				<i class="fa fa-plus"></i> 新增
			</a>
47
			<a class="btn btn-outline btn-danger btn-rounded" onclick="$.operate.batRemove()" shiro:hasPermission="config:material:remove">
tangying authored
48
49
				<i class="fa fa-trash-o"></i> 删除
			</a>
50
51
52
			<a class="btn btn-outline btn-info btn-rounded" onclick="$.table.importExcel()">
				<i class="fa fa-upload"></i> 导入
			</a>
wangyanxiong authored
53
54
55
56
			<a class="btn btn-outline btn-success btn-rounded" onclick="report()"
			   shiro:hasPermission="inventory:inventoryTransaction:report">
				<i class="fa fa-plus"></i> 打印
			</a>
tangying authored
57
58
59
		</div>

		<div class="col-sm-12 select-info">
mahuandong authored
60
			<table id="bootstrap-table" data-mobile-responsive="true" class="table table-bordered table-hover text-nowrap"></table>
tangying authored
61
62
63
64
65
		</div>
		</div>
    </div>
    <div th:include="include :: footer"></div>
    <script th:inline="javascript">
66
67
68
        var editFlag = [[${@permission.hasPermi('config:material:edit')}]];
        var removeFlag = [[${@permission.hasPermi('config:material:remove')}]];
        var prefix = ctx + "config/material";
tangying authored
69
        var datas = [[${@dict.getType('sys_normal_disable')}]];
70
        var mType = [[${@materialType.queryType()}]];
tangying authored
71
72
73
74
75
76
        $(function() {
            var options = {
                url: prefix + "/list",
                createUrl: prefix + "/add",
                updateUrl: prefix + "/edit/{id}",
                removeUrl: prefix + "/remove",
77
78
				importTemplateUrl: prefix + "/importTemplate",
				importUrl: prefix+"/importData",
tangying authored
79
80
81
82
83
84
85
86
87
88
89
90
91
                modalName: "物料",
                search: false,
                sortName: "id",
                sortOrder: "desc",
                columns: [{
		            checkbox: true
		        },
				{
					field : 'id', 
					title : 'id'
				},
				{
					field : 'code',
mahuandong authored
92
					title : '物料编码'
tangying authored
93
94
95
96
97
98
				},
				{
					field : 'type', 
					title : '物料类别' ,
                    align: 'center',
                    formatter: function(value, row, index) {
99
100
101
102
103
104
105
106
						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('');
tangying authored
107
108
                    }
				},
mahuandong authored
109
110
111
112
113
				{
					field : 'abcClass',
					title : 'ABC分类' ,
					align: 'center',
				},
tangying authored
114
115
116
117
118
				{
					field : 'name', 
					title : '名称' 
				},
				{
mahuandong authored
119
					field : 'spec',
tangying authored
120
121
122
					title : '规格' 
				},
				{
mahuandong authored
123
124
					field : 'unit',
					title : '单位' ,
tangying authored
125
126
127
                    visible:false
				},
				{
mahuandong authored
128
129
					field : 'daysToExpire',
					title : '保质期(天)' ,
tangying authored
130
131
132
                    visible:false
				},
				{
mahuandong authored
133
134
					field : 'locatingRule',
					title : '定位规则',
tangying authored
135
136
				},
				{
mahuandong authored
137
138
					field : 'allocationRule',
					title : '分配规则' ,
tangying authored
139
140
				},
				{
mahuandong authored
141
142
					field : 'replenishmentRule',
					title : '补货规则' ,
tangying authored
143
144
				},
				{
mahuandong authored
145
146
					field : 'emptyLocRule',
					title : '空货位规则' ,
tangying authored
147
148
				},
				{
mahuandong authored
149
150
					field : 'receivingFlow',
					title : '入库流程' ,
tangying authored
151
152
				},
				{
mahuandong authored
153
154
					field : 'shippingFlow',
					title : '出库流程' ,
tangying authored
155
156
				},
				{
mahuandong authored
157
158
159
160
161
162
163
164
165
					field : 'attributeTemplateCode',
					title : '属性模板' ,
				},
				{
					field : 'trackSerialNum',
					title : '记录序列号' ,
				},
				{
					field : 'autoGenSerialNum',
166
167
168
169
170
171
172
173
174
175
176
					title : '自动生成序列号',
					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('');
					}
mahuandong authored
177
178
179
180
181
182
183
184
185
186
187
188
				},
				{
					field : 'autoGenSerialNumFormat',
					title : '自动生成序列号表达式' ,
				},
				{
					field : 'snTemplateCode',
					title : '序列号模板' ,
				},
				{
					field : 'expiringDays',
					title : '临期预警天数' ,
tangying authored
189
190
191
                    visible:false
				},
				{
mahuandong authored
192
193
					field : 'minShelfLifeDays', 
					title : '收货预警天数' ,
tangying authored
194
195
                    visible:false
				},
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
				// {
				// 	field : "version",
				// 	title: "数据版本"
				// },
				// {
				// 	field : 'created',
				// 	title : '创建时间'
				// },
				// {
				// 	field : 'createdBy',
				// 	title : '创建用户'
				// },
				// {
				// 	field : 'lastUpdated',
				// 	title : '更新时间'
				// },
				// {
				// 	field : 'lastUpdatedBy',
				// 	title : '更新用户'
				// },
tangying authored
216
217
				{
					field : 'enable', 
mahuandong authored
218
					title : '状态'  ,
tangying authored
219
220
221
222
223
                    align: 'center',
                    formatter: function(value, row, index) {
                        return $.table.selectDictLabel(datas, value);
                    }
				},
mahuandong authored
224
225
226
227
228
229
230
231
				{
					field: 'isMix',
					title: '是否允许混放',
					align: 'center',
					formatter: function (value, row, index) {
						return $.table.selectLogicLabel(value);
					}
				},
tangying authored
232
233
234
235
236
		        {
		            title: '操作',
		            align: 'center',
		            formatter: function(value, row, index) {
		            	var actions = [];
237
		            	// actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
mahuandong authored
238
                        actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-trash-o"></i>删除</a>');
239
                        return actions.join('');
tangying authored
240
241
242
243
244
		            }
		        }]
            };
            $.table.init(options);
        });
wangyanxiong authored
245
246
247
248
249
250
251
252
253
254
255
256
257
258

		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++) {
				ids = ids + rows[i].id + ","
			}
			let url=prefix+'/print/' + ids;
			$.modal.open("打印",url);
		}
tangying authored
259
    </script>
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274

	<!-- 导入区域 -->
	<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>
tangying authored
275
276
</body>
</html>