materialSelect.html 8.94 KB
<!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>
								物料编码:<input type="text" name="code" value=""/>
							</li>
							<li>
								名称:<input type="text" name="name" value=""/>
							</li>
							<li>
								规格:<input type="text" name="spec" value=""/>
							</li>
							<li>
								物料类别:<select name="type" th:with="type=${@materialType.list()}">
								<option value="">所有</option>
								<option th:each="e : ${type}" th:text="${e['name']}" th:value="${e['code']}"></option>
							</select>
							</li>
<!--							<li class="time">-->
<!--								<label>创建时间: </label>-->
<!--								<input type="text" class="time-input" id="startTime" placeholder="开始时间" name="createdBegin"/>-->
<!--								<span>-</span>-->
<!--								<input type="text" class="time-input" id="endTime" placeholder="结束时间" name="createdEnd"/>-->
<!--							</li>-->
							<li>
								<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
								<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset('material-form')"><i class="fa fa-refresh"></i>&nbsp;重置</a>
								<!--<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>-->
							</li>
						</ul>
					</div>
				</form>
			</div>


			
		<div class="col-sm-12 select-info">
			<table id="bootstrap-table" data-mobile-responsive="true" class="table table-bordered table-hover text-nowrap"></table>
		</div>
		</div>
    </div>
    <div th:include="include :: footer"></div>
    <script th:inline="javascript">
        var editFlag = [[${@permission.hasPermi('config:material:edit')}]];
        var removeFlag = [[${@permission.hasPermi('config:material:remove')}]];
        var prefix = ctx + "config/material";
        var datas = [[${@dict.getType('sys_normal_disable')}]];
        var mType = [[${@materialType.queryType()}]];
		var materialArea = [[${@materialArea.queryCode()}]];

        $(function() {
            var options = {
                url: prefix + "/list",
                createUrl: prefix + "/add",
                updateUrl: prefix + "/edit/{id}",
                removeUrl: prefix + "/remove",
                printUrl: prefix + "/print",
				importTemplateUrl: prefix + "/importTemplate",
				importUrl: prefix+"/importData",
                modalName: "物料",
				search: false,
				queryParams: function (params){
					return {
						name : $("#name").val(),
						code : $("#code").val(),
						spec : $("#spec").val(),
						type : $("#type").val(),
						pageSize:       params.limit,
						pageNum:        params.offset / params.limit + 1,
						searchValue:    params.search,
						orderByColumn:  params.sort,
					}
				},
                sortName: "id",
                sortOrder: "desc",
                columns: [{
		            checkbox: true
		        },
				{
					title: '操作',
					align: 'center',
					formatter: function(value, row, index) {
						var actions = [];
						actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="getMaterial(\'' + row.code+ '\',\''+row.name+'\',\''+row.spec+'\',\''+row.unit+'\')"><i class="fa fa-edit"></i>选取</a> ');
						return actions.join('');
					}
				},
				{
					field : 'id',
					title : 'id',
					visible: false
				},
				{
					field : 'code',
					title : '物料编码'
				},
				{
					field : 'type', 
					title : '物料类别' ,
                    align: 'center',
                    formatter: function(value, row, index) {
						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('');
                    }
				},
				{
					field : 'name', 
					title : '名称' 
				},
				{
					field : 'spec',
					title : '规格' 
				},
				{
					field: 'materialAreaCode',
					title: '物料分区',
					align: 'center',
					formatter: function(value, row, index) {
						var actions = [];
						$.each(materialArea, function(index, dict) {
							if (dict.code == value) {
								actions.push("<span class='badge badge-" + dict.code + "'>" + dict.name + "</span>");
								return false;
							}
						});
						return actions.join('');
					}
				},
				{
					field : 'unit',
					title : '单位' ,
                    visible:true
				},
				{
					field : 'abcClass',
					title : 'ABC分类' ,
					align: 'center',
				},
				{
					field : 'daysToExpire',
					title : '保质期(天)' ,
                    visible:false
				},
				{
					field : 'locatingRule',
					title : '定位规则',
				},
				{
					field : 'allocationRule',
					title : '分配规则' ,
				},
				{
					field : 'replenishmentRule',
					title : '补货规则' ,
				},
				{
					field : 'emptyLocRule',
					title : '空货位规则' ,
				},
				{
					field : 'receivingFlow',
					title : '入库流程' ,
				},
				{
					field : 'shippingFlow',
					title : '出库流程' ,
				},
				{
					field : 'attributeTemplateCode',
					title : '属性模板' ,
					visible:false,
				},
				{
					field : 'trackSerialNum',
					title : '记录序列号' ,
					visible:false,
				},
				{
					field : 'autoGenSerialNum',
					title : '自动生成序列号',
					visible:false,
					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('');
					}
				},
				{
					field : 'autoGenSerialNumFormat',
					title : '自动生成序列号表达式' ,
					visible:false,
				},
				{
					field : 'snTemplateCode',
					title : '序列号模板' ,
					visible:false,
				},
				{
					field : 'expiringDays',
					title : '临期预警天数' ,
                    visible:false
				},
				{
					field : 'minShelfLifeDays', 
					title : '收货预警天数' ,
                    visible:false
				},
				// {
				// 	field : "version",
				// 	title: "数据版本"
				// },
				// {
				// 	field : 'created',
				// 	title : '创建时间'
				// },
				// {
				// 	field : 'createdBy',
				// 	title : '创建用户'
				// },
				// {
				// 	field : 'lastUpdated',
				// 	title : '更新时间'
				// },
				// {
				// 	field : 'lastUpdatedBy',
				// 	title : '更新用户'
				// },
				{
					field : 'enable', 
					title : '状态'  ,
                    align: 'center',
                    formatter: function(value, row, index) {
                        return $.table.selectDictLabel(datas, value);
                    }
				},
				{
					field: 'isMix',
					title: '是否允许混放',
					visible:false,
					align: 'center',
					formatter: function (value, row, index) {
						return $.table.selectLogicLabel(value);
					}
				}]
            };
            $.table.init(options);
        });

		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 + "," // 物料编码id
			}
			let url=prefix+'/print/' + ids;
            // 打印参数表示打印的加载窗口该窗口显示spring返回的页面
            $.modal.open("打印", url); // 该页面打开print.html之后在进行调用改方法

		}

		function batEdit() {
			let rows =  $.table.selectColumns("id");
			if (rows.length == 0) {
				$.modal.alertWarning("请至少选择一条记录");
				return;
			} else {
				$.modal.open("修改物料", prefix+"/editBatch/"+rows.join(","));
			}
		}


		function getMaterial(code,name,spec,unit){
			parent.$('#materialCode').val(code);
			parent.$('#materialName').val(name);
			parent.$('#materialSpec').val(spec);
			parent.$('#materialUnit').val(unit);
			$.modal.close();
		}
    </script>

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