| | |
| | | },function() {}); |
| | | return; |
| | | } |
| | | if($("#Type").val()=='6'){ |
| | | if($("#CustomerNo").val()==''){ |
| | | layer.msg("代储单据请选择货主!", { |
| | | icon: 2, |
| | | time: 2000 //2秒关闭(如果不配置,默认是3秒) |
| | | }, function () { |
| | | |
| | | }); |
| | | return; |
| | | } |
| | | } |
| | | layer.open({ |
| | | type: 2, |
| | | title: '选择物品信息', |
| | | content: 'ExportSelectSkuFrom.html?Type='+$("#Type").val(), |
| | | content: 'ExportSelectSkuFrom.html?Type='+$("#Type").val()+'&OwnerNo='+$("#CustomerNo").val(), |
| | | maxmin: true, |
| | | area: ['950px', '90%'], |
| | | fixed: false, |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">客户名称</label> |
| | | <label class="layui-form-label" id="CustomerNamep">客户名称</label> |
| | | <div class="layui-input-inline"> |
| | | <select name="CustomerNo" id="CustomerNo" lay-search> |
| | | <option value=""></option> |
| | |
| | | console.log(soNo); |
| | | console.log(id); |
| | | // getWareHouseList(); |
| | | getCustomerList(); |
| | | getLogisticsInfoList(); |
| | | getData(); |
| | | |
| | | getData();//获取入库单类型 |
| | | var arr = []; |
| | | window.success = function(data) { |
| | | refreshTable(data); |
| | |
| | | if(res.code == 0){ |
| | | console.log(res.data); |
| | | $("#Type option[value='"+ res.data.Type+"']").attr("selected", "selected") |
| | | $("#CustomerNo option[value='"+ res.data.CustomerNo+"']").attr("selected", "selected") |
| | | $("#LogisticsId option[value='"+ res.data.LogisticsId+"']").attr("selected", "selected") |
| | | |
| | | |
| | | |
| | | form.render('select'); |
| | | refreshTable(res.data.Detail); |
| | | |
| | | //获取客户/货主 |
| | | getCustomerList(res.data.CustomerNo); |
| | | //获取供应商 |
| | | getLogisticsInfoList(res.data.LogisticsId); |
| | | } |
| | | else{ |
| | | layer.msg(res.msg, { |
| | |
| | | // }); |
| | | // } |
| | | //获取客户下拉框信息 |
| | | function getCustomerList() { |
| | | function getCustomerList(customerNo) { |
| | | sendData(IP + "/Basis/GetCustomerSelect", {}, 'get', function(res) { |
| | | if (res.code == 0) { //成功 |
| | | var TypeNum = 0; |
| | | |
| | | switch($("#Type").val()) |
| | | { |
| | | case "0": //成品出库 |
| | | TypeNum = 0; |
| | | console.log(TypeNum) |
| | | break; |
| | | case "1": //领料出库 |
| | | case "2": //抽检出库 |
| | | case "3": //物料取样出库 |
| | | case "4": //不合格品出库 |
| | | case "5": //中间品出库 |
| | | case "6": //代储出库 |
| | | case "7": //其他出库 |
| | | case "8": //寄存出库 |
| | | TypeNum = 2; |
| | | console.log('TypeNum:'+ TypeNum) |
| | | break; |
| | | } |
| | | $("#CustomerNo").empty(); |
| | | $("#CustomerNo").append('<option value =""></option>'); |
| | | for (var i = 0; i < res.data.length; i++) { |
| | | var TypeNum = 0; |
| | | |
| | | switch($("#Type").val()) |
| | | { |
| | | case "0": //成品出库 |
| | | TypeNum = 0; |
| | | console.log(TypeNum) |
| | | break; |
| | | case "1": //领料出库 |
| | | case "2": //抽检出库 |
| | | case "3": //物料取样出库 |
| | | case "4": //不合格品出库 |
| | | case "5": //中间品出库 |
| | | case "6": //代储出库 |
| | | case "7": //其他出库 |
| | | case "8": //寄存出库 |
| | | TypeNum = 2; |
| | | console.log(TypeNum) |
| | | break; |
| | | } |
| | | for (var i = 0; i < res.data.length; i++) { |
| | | //判断单据类型 |
| | | if (TypeNum == 0) |
| | | { |
| | |
| | | } |
| | | } |
| | | } |
| | | $("#CustomerNo option[value='"+ customerNo +"']").attr("selected", "selected") |
| | | form.render('select'); |
| | | } else { //不成功 |
| | | layer.msg(res.msg, { |
| | |
| | | }); |
| | | } |
| | | //获取物流承运商下拉框信息 |
| | | function getLogisticsInfoList() { |
| | | function getLogisticsInfoList(logisticsId) { |
| | | sendData(IP + "/Basis/GetLogisticsInfoSelect", {}, 'get', function(res) { |
| | | if (res.code == 0) { //成功 |
| | | $("#LogisticsId").empty(); |
| | |
| | | $("#LogisticsId").append('<option value =' + res.data[i].Id + '>' + |
| | | res.data[i].CarrierName + '</option>'); |
| | | } |
| | | $("#LogisticsId option[value='"+logisticsId +"']").attr("selected", "selected") |
| | | form.render('select'); |
| | | } else { //不成功 |
| | | layer.msg(res.msg, { |
| | |
| | | var param = { |
| | | WareHouseNo:getQueryString('houseId'), |
| | | Type:getQueryString('Type'), |
| | | OwnerNo:getQueryString('OwnerNo'), |
| | | Msg: $("#Msg").val(), |
| | | }; |
| | | table.render({ |
| | |
| | | { |
| | | public string WareHouseNo { get; set; } |
| | | public string Type { get; set; } |
| | | public string OwnerNo { get; set; } |
| | | public string Msg { get; set; } |
| | | } |
| | | public class AddEditExportNoticeVm |
| | |
| | | int isDel = 0; |
| | | |
| | | //删除或修改库存明细 |
| | | stockDetail.BitPalletMark = "1";//修改为零托标识 |
| | | stockDetail.Qty -= int.Parse(PickQty); |
| | | stockDetail.LockQty -= int.Parse(PickQty); |
| | | if (stockDetail.Qty == stockDetail.LockQty) |
| | | { |
| | | stockDetail.Status = "2"; |
| | | } |
| | | else if (stockDetail.Qty > stockDetail.LockQty && stockDetail.LockQty > 0) |
| | | { |
| | | stockDetail.Status = "1"; |
| | | } |
| | | else |
| | | { |
| | | stockDetail.Status = "0"; |
| | | } |
| | | if (stockDetail.Qty <= 0) |
| | | { |
| | | Db.Deleteable(stockDetail).ExecuteCommand(); |
| | |
| | | } |
| | | } |
| | | |
| | | public List<ExStockInfoDto> GetStockGroupList(string type, string msg) |
| | | public List<ExStockInfoDto> GetStockGroupList(string type, string ownerNo, string msg) |
| | | { |
| | | try |
| | | { |
| | | if (string.IsNullOrEmpty(type)) |
| | | { |
| | | throw new Exception("请选择出库单类型"); |
| | | } |
| | | if (type == "6" && string.IsNullOrEmpty(ownerNo)) |
| | | { |
| | | throw new Exception("代储单据请选择货主"); |
| | | } |
| | | var plnList = new List<string>() { "100099" }; |
| | | var skuList = new List<string>(); |
| | | var sku = Db.Queryable<SysMaterials>().Where(m => m.IsDel == "0" && !plnList.Contains(m.SkuNo)); //排除空托盘的物料集合 |
| | |
| | | string inspectStatus = string.Empty; |
| | | switch (type)//0:原料 1:包材 2:成品 3:耗材 4:半成品 |
| | | { |
| | | case "0"://成品入库 |
| | | case "0"://成品出库 |
| | | skuType = "(2)"; |
| | | inspectStatus = "1"; |
| | | break; |
| | |
| | | break; |
| | | case "6"://代储出库 |
| | | skuType = "(0,1,2,3)"; |
| | | inspectStatus = "0"; |
| | | inspectStatus = "0,1"; |
| | | break; |
| | | case "8"://寄存出库 |
| | | skuType = "(0,1,2,3)"; |
| | | inspectStatus = "0"; |
| | | inspectStatus = "0,1"; |
| | | break; |
| | | default: //其它出库 |
| | | skuType = "(0,1,2,3,4)"; |
| | | inspectStatus = "0"; |
| | | inspectStatus = "0,1"; |
| | | break; |
| | | } |
| | | skuList = sku.Where(m => skuType.Contains(m.Type)).Select(m => m.SkuNo).ToList(); |
| | |
| | | //.And(it => it.WareHouseNo == wareHouseNo) |
| | | .AndIF(!string.IsNullOrWhiteSpace(inspectStatus), it => inspectStatus.Contains(it.InspectStatus)) |
| | | .And(m => skuList.Contains(m.SkuNo)) |
| | | .AndIF(type == "6", m => m.OwnerNo == ownerNo)//代储出库需要关联货主 |
| | | .AndIF(!string.IsNullOrWhiteSpace(msg), it => (it.SkuNo.Contains(msg) || it.SkuName.Contains(msg) || it.LotNo.Contains(msg))) |
| | | .And(it => (it.Qty - it.LockQty - it.FrozenQty) > 0) |
| | | .And(it => (it.Status == "0" || it.Status == "1")) |
| | |
| | | } |
| | | else if (notice.Type == "3" || notice.Type == "5" || notice.Type == "6" || notice.Type == "7" || notice.Type == "8")//取样出库 |
| | | { |
| | | stockDetail = stockDetail.Where(m => m.InspectStatus == "0").ToList(); |
| | | stockDetail = stockDetail.Where(m => m.InspectStatus == "0" || m.InspectStatus == "1").ToList(); |
| | | } |
| | | else if (notice.Type == "4")//不合格出库 |
| | | { |
| | |
| | | /// <param name="type">类型</param> |
| | | /// <param name="msg">物流编码、名称、批次</param> |
| | | /// <returns></returns> |
| | | List<ExStockInfoDto> GetStockGroupList( string type, string msg); |
| | | List<ExStockInfoDto> GetStockGroupList( string type, string ownerNo, string msg); |
| | | /// <summary> |
| | | /// 添加出库单 |
| | | /// </summary> |
| | |
| | | { |
| | | try |
| | | { |
| | | var bolls = _exNoticeSvc.GetStockGroupList(model.Type,model.Msg); |
| | | var bolls = _exNoticeSvc.GetStockGroupList(model.Type,model.OwnerNo,model.Msg); |
| | | |
| | | return Ok(new { code = 0, count=0, msg = "出库单信息", data = bolls }); |
| | | } |