add.html 9.59 KB
<!DOCTYPE HTML>
<html  lang="zh" xmlns:th="http://www.thymeleaf.org">
<meta charset="utf-8">
<head>
	<th:block th:include="include :: header" />
	<th:block th:include="include :: select2-css" />
</head>
<body class="white-bg">
    <div class="wrapper wrapper-content animated fadeInRight ibox-content">
		<form class="form-horizontal m" id="form-shipmentDetail-add">

		<div class="form-group">
			<label class="col-sm-3 control-label">出库单id:</label>
			<div class="col-sm-8">
				<input id="shipmentId" name="shipmentId" class="form-control" type="text" th:value="${shipmentId}" readonly="readonly">
				<input id="companyId" name="companyId" type="hidden" th:value="${companyId}" >
				<input id="companyCode" name="companyCode" type="hidden" th:value="${companyCode}" >
			</div>
		</div>
		<div class="form-group">
			<label class="col-sm-3 control-label">出库单编码:</label>
			<div class="col-sm-8">

				<input id="shipmentCode" name="shipmentCode" class="form-control" type="text" th:value="${shipmentCode}" readonly="readonly">
			</div>
		</div>
		<div class="form-group">
			<label class="col-sm-3 control-label">物料编码:</label>
			<div class="col-sm-8">
				<select id="materialCode" name="materialCode" class="form-control"></select>
				<!--					<input id="materialCode" name="materialCode" class="form-control" type="text" onkeyup=" this.value=this.value.replace(/^\s+|\s+$/g,'')">-->
			</div>
		</div>
		<div class="form-group">
			<label class="col-sm-3 control-label">库存状态:</label>
			<div class="col-sm-8">
				<select id="inventorySts" name="inventorySts" class="form-control" th:with="inventoryStatus=${@dict.getType('inventorySts')}">
					<option th:each="dict : ${inventoryStatus}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}"></option>
				</select>
			</div>
		</div>
		<div class="form-group">
			<label class="col-sm-3 control-label">发货数量:</label>
			<div class="col-sm-8">
				<input id="shipQty" name="shipQty" class="form-control" type="text" onkeyup=" this.value=this.value.replace(/^\s+|\s+$/g,'')">
			</div>
		</div>
			<div class="form-group">
				<label class="col-sm-3 control-label">库存数量:</label>
				<div class="col-sm-8">
					<input id="inventoryQty" name="inventoryQty" class="form-control" type="text" readonly>
				</div>
			</div>
		<div class="form-group">
			<label class="col-sm-3 control-label">出库口:</label>
			<div class="col-sm-8">
				<select id="port" name="port" class="form-control"></select>
			</div>
		</div>
		<div class="form-group">
			<label class="col-sm-3 control-label">批次:</label>
			<div class="col-sm-8">
				<input id="batch" name="batch" class="form-control" type="text">
			</div>
		</div>
		<div class="form-group">
			<label class="col-sm-3 control-label">批号:</label>
			<div class="col-sm-8">
				<input id="lot" name="lot" class="form-control" type="text">
			</div>
		</div>
		<div class="form-group">
			<label class="col-sm-3 control-label">项目号:</label>
			<div class="col-sm-8">
				<input id="projectNo" name="project" class="form-control" type="text">
			</div>
		</div>
		<div class="form-group">
			<label class="col-sm-3 control-label">上游系统行号:</label>
			<div class="col-sm-8">
				<input id="referLineNum" name="referLineNum" class="form-control" type="text" onkeyup=" this.value=this.value.replace(/^\s+|\s+$/g,'')">
			</div>
		</div>
		<div class="form-group">
			<label class="col-sm-3 control-label">分配规则:</label>
			<div class="col-sm-8">
				<select id="allocationRule" class="form-control" th:with="allocationRule=${@FilterConfigDetailService.queryFilterConfigDetail('allocationRule')}">
					<option value=" " checked></option>
					<option th:each="allocationRules:${allocationRule}" th:text="${allocationRules['description']}" th:value="${allocationRules['code']}"></option>
				</select>
			</div>
		</div>
		<!--<div class="form-group">-->
		<!--<label class="col-sm-3 control-label">分配规则:</label>-->
		<!--<div class="col-sm-8">-->
		<!--<input id="allocationRule" name="allocationRule" class="form-control" type="text">-->
		<!--</div>-->
		<!--</div>-->
		<div class="form-group">
			<label class="col-sm-3 control-label">补货规则:</label>
			<div class="col-sm-8">
				<input id="replenishmentRule" name="replenishmentRule" class="form-control" type="text">
			</div>
		</div>
		<div class="form-group">
			<label class="col-sm-3 control-label">拣货规则:</label>
			<div class="col-sm-8">
				<select id="pickingRule" class="form-control" th:with="pickingRule=${@FilterConfigDetailService.queryFilterConfigDetail('shipmentPickingRule')}">
					<option value=" " checked></option>
					<option th:each="pickingRules:${pickingRule}" th:text="${pickingRules['description']}" th:value="${pickingRules['code']}"></option>
				</select>
			</div>
		</div>
		<div class="form-group">
			<label class="col-sm-3 control-label">生产日期:</label>
			<div class="col-sm-8">
				<input id="manufactureDate" name="manufactureDate" class="form-control" type="text">
			</div>
		</div>
		<div class="form-group">
			<label class="col-sm-3 control-label">失效日期:</label>
			<div class="col-sm-8">
				<input id="expirationDate" name="expirationDate" class="form-control" type="text">
			</div>
		</div>
		<div class="form-group">
				<div class="form-control-static col-sm-offset-9">
					<button type="submit" class="btn btn-primary">提交</button>
					<button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button>
				</div>
			</div>
		</form>
	<th:block th:include="include :: footer" />
	<th:block th:include="include :: select2-js" />
    <script type="text/javascript">
		var prefix = ctx + "shipment/shipmentDetail"
		$("#form-shipmentDetail-add").validate({
            rules:{
                receiptId:{
                    required:true
                },
                receiptCode:{
                    required:true
                },
                // materialId:{
                //     required:true
                // },
                materialCode:{
                    required:true
                },
                sourceLine:{
                    required:false,
                    digits:true
                },
				shipQty:{
                    required:true,
                    min:0
                },
                inventorySts:{
                    required:true,
                },
                price:{
                    required:false,
                    min:0
                },
            },
            submitHandler: function(form) {
                $.ajax({
                    cache : true,
                    type : "POST",
                    url : prefix + "/add",
                    data : $("#form-shipmentDetail-add").serializeArray(),
                    async : false,
                    error : function(request) {
                        $.modal.alertError("请求失败!");
                    },
                    success : function(data) {
                        if (data.code == web_status.SUCCESS) {
                            layer.msg("保存成功,正在刷新数据请稍后……", {icon: $.modal.icon(modal_status.SUCCESS), time: 500, shade: [0.1, "#8F8F8F"]}, function () {
                                window.parent.detail(shipment_id,shipment_code);
                                $.modal.close()
                            });
                        } else {
                            $.modal.alertError(data.msg)
                        }
                    }
                });
            }
		});
		var shipment_id=$("input[name='shipmentId']").val();
		var shipment_code=$("input[name='shipmentCode']").val();

        $(function () {
            layui.use('laydate', function() {
                var laydate = layui.laydate;
                laydate.render({ elem: '#manufactureDate', theme: 'molv', format: 'yyyy-MM-dd HH:mm:ss'});
                laydate.render({ elem: '#expirationDate', theme: 'molv', format: 'yyyy-MM-dd HH:mm:ss' });
                laydate.render({ elem: '#agingDate', theme: 'molv', format: 'yyyy-MM-dd HH:mm:ss' });
            });
			$('#materialCode').select2({
				ajax: {
					url: ctx+'config/material/getData',
					dataType: 'json',
					type: 'post',
					data: function (params) {
						let query = {
							materialName: params.term,
						}
						return query;
					}
				}
			});
			$('#materialCode').change(function() {
				var materialCode = $('#materialCode').select2('val');
				$.ajax({
					type:"post",
					url: ctx+'inventory/inventoryDetail/selectQty',
					data:{
						materialCode:$('#materialCode').select2('val'),
						warehouseCode:"CS0001",
						inventorySts:$('#inventorySts').val()
					},
					success:function(data){
						$("#inventoryQty").val(data.toString());
					}
				})
			});
			$('#inventorySts').change(function() {
				var materialCode = $('#materialCode').select2('val');
				$.ajax({
					type:"post",
					url: ctx+'inventory/inventoryDetail/selectQty',
					data:{
						materialCode:$('#materialCode').select2('val'),
						warehouseCode:"CS0001",
						inventorySts:$('#inventorySts').val()
					},
					success:function(data){
						$("#inventoryQty").val(data.toString());
					}
				})
			})
            $('#port').select2({
                ajax: {
                    url: ctx+'config/station/getData',
                    dataType: 'json',
                    type: 'post',
                    data: function (params) {
                        let query = {
                            code: params.term,
                        }
                        return query;
                    }
                }
            });
        })
	</script>
</body>
</html>