| | |
| | | if (response == null || response.code != "000") throw new Exception("æ¥å£è¿åæ°æ®æ¥é"); |
| | | var deviceNames = response.data.Select(x => x.name?.Trim()).Distinct().ToList(); |
| | | var containers = BaseDal.QueryData(x => deviceNames.Contains(x.deviceName)).ToList(); |
| | | if (containers == null || containers.Count < 1) return WebResponseContent.Instance.Error(); |
| | | List<Dt_Container> containersAdd = new List<Dt_Container>(); |
| | | List<Dt_Container> containersUp = new List<Dt_Container>(); |
| | | foreach (var item in response.data) |
| | |
| | | cool.AlarmInformation = item.message; |
| | | cool.ModifyDate = currentTime; |
| | | updateList.Add(cool); |
| | | if (cool.Alarm!="æ£å¸¸") |
| | | if (cool.Alarm != "æ£å¸¸") |
| | | { |
| | | _messageInfoService.AddMessageInfo(MessageGroupByEnum.EquipmentAlarm, $"å·æ{item.alarm}", item.message, MessageStatusEnum.Undisposed); |
| | | } |
| | |
| | | |
| | | if (codes.Count < 1) return content; |
| | | List<Dt_EquipmentAlarmInfor> equipmentAlarmInfors = BaseDal.QueryData(x => codes.Contains(x.RobotCode)); |
| | | if (equipmentAlarmInfors.Count < 1) return content; |
| | | List<Dt_EquipmentAlarmInfor> equipmentAlarmInforsAdd = new List<Dt_EquipmentAlarmInfor>(); |
| | | List<Dt_EquipmentAlarmInfor> equipmentAlarmInforsUp = new List<Dt_EquipmentAlarmInfor>(); |
| | | foreach (var item in response.data.robot) |
| | |
| | | } |
| | | if (string.Equals(item.status, nameof(DeviceStatus.Error), StringComparison.OrdinalIgnoreCase)) |
| | | { |
| | | _messageInfoService.AddMessageInfo(MessageGroupByEnum.EquipmentAlarm,"å°è½¦ç¼å·"+ item.robotCode, item.status); |
| | | _messageInfoService.AddMessageInfo(MessageGroupByEnum.EquipmentAlarm, "å°è½¦ç¼å·" + item.robotCode, item.status); |
| | | } |
| | | } |
| | | foreach (var item in response.data.sorters) |
| | |
| | | } |
| | | if (string.Equals(item.status, nameof(DeviceStatus.Error), StringComparison.OrdinalIgnoreCase)) |
| | | { |
| | | _messageInfoService.AddMessageInfo(MessageGroupByEnum.EquipmentAlarm, "忣å°åå"+ item.sorterCode, item.status); |
| | | _messageInfoService.AddMessageInfo(MessageGroupByEnum.EquipmentAlarm, "忣å°åå" + item.sorterCode, item.status); |
| | | } |
| | | } |
| | | if (equipmentAlarmInforsAdd.Count > 0) BaseDal.AddData(equipmentAlarmInforsAdd); |
| | |
| | | return content; |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | } |
| | |
| | | List<object> lists = new List<object>(); |
| | | #region å·å»åº |
| | | string WareCodeLD = WarehouseEnum.å·å»åº.ObjToInt().ToString("000"); |
| | | List<Dt_InventoryInfo> inventoryInfosLD = BaseDal.QueryData(x => x.WarehouseCode == WareCodeLD); |
| | | object LDQty = new |
| | | var LDQty = Convert.ToInt32(BaseDal.QueryData(x => x.WarehouseCode == WareCodeLD).Sum(x => x.StockQuantity)); |
| | | lists.Add(new |
| | | { |
| | | name = WarehouseEnum.å·å»åº.ObjToString(), |
| | | count = inventoryInfosLD.Sum(x => x.StockQuantity).ObjToInt() |
| | | }; |
| | | lists.Add(LDQty); |
| | | count = LDQty |
| | | }); |
| | | #endregion |
| | | #region éº»ç²¾åº |
| | | string WareCodeMJ = WarehouseEnum.麻精åº.ObjToInt().ToString("000"); |
| | | List<Dt_InventoryInfo> inventoryInfosMJ = BaseDal.QueryData(x => x.WarehouseCode == WareCodeMJ); |
| | | object MJQty = new |
| | | var MJQty = Convert.ToInt32(BaseDal.QueryData(x => x.WarehouseCode == WareCodeMJ).Sum(x => x.StockQuantity)); |
| | | lists.Add(new |
| | | { |
| | | name = WarehouseEnum.麻精åº.ObjToString(), |
| | | count = inventoryInfosMJ.Sum(x => x.StockQuantity).ObjToInt() |
| | | }; |
| | | lists.Add(MJQty); |
| | | count = MJQty |
| | | }); |
| | | #endregion |
| | | #region å¤§ä»¶åº |
| | | string WareCodeDJ = WarehouseEnum.大件åº.ObjToInt().ToString("000"); |
| | | List<Dt_InventoryInfo> inventoryInfosDJ = BaseDal.QueryData(x => x.WarehouseCode == WareCodeDJ); |
| | | object DJQty = new |
| | | var DJQty = Convert.ToInt32(BaseDal.QueryData(x => x.WarehouseCode == WareCodeDJ).Sum(x => x.StockQuantity)); |
| | | lists.Add(new |
| | | { |
| | | name = WarehouseEnum.大件åº.ObjToString(), |
| | | count = inventoryInfosDJ.Sum(x => x.StockQuantity).ObjToInt() |
| | | }; |
| | | lists.Add(DJQty); |
| | | count = DJQty |
| | | }); |
| | | #endregion |
| | | content.OK(data: lists); |
| | | } |
| | |
| | | namespace WIDESEA_DTO.Outbound |
| | | { |
| | | [ModelValidate] |
| | | public class DeliveryOrderDetailAddDTO |
| | | { |
| | | public int id { get; set; } |
| | | /// <summary> |
| | | /// ç©æç¼å· |
| | | /// </summary> |
| | | [PropertyValidate("ç©æç¼å·", NotNullAndEmpty = true)] |
| | | public string goods_no { get; set; } |
| | | /// <summary> |
| | | /// æ¹æ¬¡å· |
| | | /// </summary> |
| | | public string batch_num { get; set; } |
| | | /// <summary> |
| | | /// ææ |
| | | /// </summary> |
| | | public string exp_date { get; set; } |
| | | /// <summary> |
| | | /// è´§ä½å· |
| | | /// </summary> |
| | | public string locationCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ°é |
| | | /// </summary> |
| | | [PropertyValidate("åæ®æ°é", NotNullAndEmpty = true, MinValue = 0, IsContainMinValue = false)] |
| | | public int order_Outqty { get; set; } |
| | | } |
| | | public class OutboundOrderDetailAddDTO |
| | | { |
| | | /// <summary> |
| | |
| | | #region è´§ä½ |
| | | var location = _locationInfoService.Repository.QueryFirst(x => x.LocationCode == LocationCode); |
| | | if (location == null) return WebResponseContent.Instance.Error($"请维æ¤è´§ä½ç¼å·ã{LocationCode}ãçè´§ä½ä¿¡æ¯"); |
| | | if (location.EnableStatus == EnableStatusEnum.Disable.ObjToInt()) |
| | | return WebResponseContent.Instance.Error($"è´§ä½ç¼å·ã{LocationCode}ãå·²ç¦ç¨ï¼è¯·æ¢å¤æ£å¸¸å使ç¨"); |
| | | //if (location.EnableStatus == EnableStatusEnum.Disable.ObjToInt()) |
| | | // return WebResponseContent.Instance.Error($"è´§ä½ç¼å·ã{LocationCode}ãå·²ç¦ç¨ï¼è¯·æ¢å¤æ£å¸¸å使ç¨"); |
| | | if (location.WarehouseCode != cabinOrderDetail.Reservoirarea) |
| | | return WebResponseContent.Instance.Error($"è´§ä½ç¼å·ã{LocationCode}ãæå±åºæ¿ä¸å½åå
¥åºåæå±åºæ¿ä¸å¹é
"); |
| | | if (location.LocationStatus == LocationStatusEnum.Free.ObjToInt()) |
| | |
| | | using WIDESEA_Core.BaseServices; |
| | | using WIDESEA_Core.Enums; |
| | | using WIDESEA_Core.Helper; |
| | | using WIDESEA_DTO.Outbound; |
| | | using WIDESEA_DTO.SquareCabin; |
| | | using WIDESEA_IBasicService; |
| | | using WIDESEA_ISquareCabinServices; |
| | |
| | | } |
| | | public override WebResponseContent UpdateData(SaveModel saveModel) |
| | | { |
| | | return base.UpdateData(saveModel); |
| | | try |
| | | { |
| | | int id = saveModel.MainData["id"].ObjToInt(); |
| | | var warehouse_no = saveModel.MainData["warehouse_no"].ToString(); |
| | | var out_no = saveModel.MainData["out_no"].ToString(); |
| | | //OutboundOrderAddDTO outboundOrder = saveModel.MainData.DicToModel<OutboundOrderAddDTO>(); |
| | | //Dt_DeliveryOrder deliveryOrder = BaseDal.QueryFirst(x => x.Id == id); |
| | | List<DeliveryOrderDetailAddDTO> orderDetailAddDTOs = saveModel.DetailData.DicToIEnumerable<DeliveryOrderDetailAddDTO>(); |
| | | orderDetailAddDTOs = orderDetailAddDTOs.Where(x => x.id == 0).ToList(); |
| | | if (orderDetailAddDTOs.Count < 1) return WebResponseContent.Instance.OK(); |
| | | if (orderDetailAddDTOs.Where(x => string.IsNullOrEmpty(x.locationCode)).Any()) return WebResponseContent.Instance.Error("è´§ä½å·ä¸ºå¿
å¡«åæ®µ!"); |
| | | if (orderDetailAddDTOs.Where(x => string.IsNullOrEmpty(x.exp_date)).Any()) return WebResponseContent.Instance.Error("ææä¸ºå¿
å¡«åæ®µ!"); |
| | | var LocationCodes = orderDetailAddDTOs.Select(x => x.locationCode); |
| | | List<Dt_LocationInfo> locationInfos = _locationInfoService.Repository.QueryData(x => x.WarehouseCode == warehouse_no && LocationCodes.Contains(x.LocationCode)); |
| | | var diff = LocationCodes.Except(locationInfos.Select(x => x.LocationCode)).ToArray(); |
| | | if (diff.Length > 0) return WebResponseContent.Instance.Error($"è´§ä½ç¼å·ã{string.Join(", ", diff)}ãä¸å±äºå½ååºæ¿"); |
| | | var array1 = orderDetailAddDTOs.Select(x => x.goods_no); |
| | | var MaterielInfos = _materielInfoService.Repository.QueryData(x => array1.Contains(x.MaterielCode)); |
| | | var array2 = MaterielInfos.Select(x => x.MaterielCode); |
| | | diff = array1.Except(array2).ToArray(); |
| | | if (diff.Length > 0) return WebResponseContent.Instance.Error($"请维æ¤ç©æç¼å·ã{string.Join(", ", diff)}ãçç©æä¿¡æ¯"); |
| | | if (warehouse_no == WarehouseEnum.ç«åº.ObjToInt().ToString("000")) |
| | | { |
| | | var MaterielInfos1 = MaterielInfos.Where(x => x.MaterielSourceType == MaterielSourceTypeEnum.PurchasePart).ToList(); |
| | | if (MaterielInfos1.Count > 0) |
| | | { |
| | | return WebResponseContent.Instance.Error($"ç©æç¼å·ã{string.Join(", ", MaterielInfos1.Select(x => x.MaterielCode))}ãçç©æå±æ§å类为大件ï¼ä¸å¯å
¥ç«åº"); |
| | | } |
| | | } |
| | | var InventoryInfos = _inventoryInfoService.Repository.QueryData(x => x.WarehouseCode == warehouse_no && array2.ToList().Contains(x.MaterielCode)); |
| | | var Batchs = _inventory_BatchServices.Repository.QueryData(x => array2.Contains(x.MaterielCode)); |
| | | List<Dt_DeliveryOrderDetail> deliveryOrderDetails = new List<Dt_DeliveryOrderDetail>(); |
| | | List<Dt_SupplyTask> supplyTasks = new List<Dt_SupplyTask>(); |
| | | List<Dt_InventoryInfo> inventoryInfos = new List<Dt_InventoryInfo>(); |
| | | List<Dt_Inventory_Batch> inventory_Batches = new List<Dt_Inventory_Batch>(); |
| | | foreach (var item in orderDetailAddDTOs) |
| | | { |
| | | if (InventoryInfos.Where(x => x.MaterielCode == item.goods_no && x.BatchNo == item.batch_num).Any()) |
| | | return WebResponseContent.Instance.Error($"ç©æç¼å·ã{item.goods_no}ãç©ææ¹æ¬¡ã{item.batch_num}ãå·²åå¨åºå"); |
| | | #region æ·»å çç¹å详æ
|
| | | Dt_DeliveryOrderDetail dt_DeliveryOrde = new Dt_DeliveryOrderDetail() |
| | | { |
| | | DeliveryOrderId = id, |
| | | Reservoirarea = warehouse_no, |
| | | Status = 2, |
| | | Order_qty = 0, |
| | | Order_Outqty = item.order_Outqty, |
| | | Goods_no = item.goods_no, |
| | | OotDetailStatus = "æ°å»º", |
| | | Batch_num = item.batch_num, |
| | | Creater = App.User.UserName, |
| | | CreateDate = DateTime.Now, |
| | | }; |
| | | deliveryOrderDetails.Add(dt_DeliveryOrde); |
| | | #endregion |
| | | |
| | | #region æ·»å åºåãæ¹æ¬¡ä¿¡æ¯ãçç¹ä»»å¡ |
| | | var MaterielInfo = MaterielInfos.First(x => x.MaterielCode == item.goods_no); |
| | | Dt_InventoryInfo inventoryInfo = new Dt_InventoryInfo() |
| | | { |
| | | BatchNo = item.batch_num, |
| | | MaterielCode = MaterielInfo.MaterielCode, |
| | | AvailableQuantity = 0, |
| | | CreateDate = DateTime.Now, |
| | | Creater = App.User.UserName, |
| | | InDate = DateTime.Now, |
| | | LocationCode = item.locationCode, |
| | | MaterielName = MaterielInfo.MaterielName, |
| | | MaterielSpec = MaterielInfo.MaterielSpec, |
| | | OutboundQuantity = 0, |
| | | StockQuantity = 0, |
| | | StockStatus = StockStatusEmun.çç¹éå®.ObjToInt(), |
| | | SupplyQuantity = 0, |
| | | WarehouseCode = warehouse_no, |
| | | ValidityPeriod = item.exp_date |
| | | }; |
| | | inventoryInfos.Add(inventoryInfo); |
| | | Dt_Inventory_Batch? inventory_Batch = Batchs.FirstOrDefault(x => x.BatchNo == item.batch_num && x.MaterielCode == item.goods_no); |
| | | if (inventory_Batch == null) |
| | | { |
| | | inventory_Batch = new Dt_Inventory_Batch() |
| | | { |
| | | BatchNo = inventoryInfo.BatchNo, |
| | | CreateDate = inventoryInfo.CreateDate, |
| | | Creater = inventoryInfo.Creater, |
| | | MaterielCode = inventoryInfo.MaterielCode, |
| | | ERPStockQuantity = 0, |
| | | MaterielName = inventoryInfo.MaterielName, |
| | | MaterielSpec = inventoryInfo.MaterielSpec, |
| | | OutboundQuantity = inventoryInfo.OutboundQuantity, |
| | | ProductionDate = inventoryInfo.ProductionDate, |
| | | Status = false, |
| | | StockQuantity = inventoryInfo.StockQuantity, |
| | | AvailableQuantity = inventoryInfo.AvailableQuantity, |
| | | ValidityPeriod = inventoryInfo.ValidityPeriod.ObjToDate(), |
| | | SupplyQuantity = inventoryInfo.SupplyQuantity, |
| | | }; |
| | | inventory_Batches.Add(inventory_Batch); |
| | | } |
| | | Dt_SupplyTask supplyTask = new Dt_SupplyTask() |
| | | { |
| | | WarehouseCode = warehouse_no, |
| | | TaskStatus = SupplyStatusEnum.NewCheck.ObjToInt(), |
| | | BatchNo = inventoryInfo.BatchNo, |
| | | MaterielName = inventoryInfo.MaterielName, |
| | | MaterielCode = inventoryInfo.MaterielCode, |
| | | MaterielSpec = inventoryInfo.MaterielSpec, |
| | | TaskType = TaskTypeEnum.OutInventory.ObjToInt(), |
| | | CreateDate = DateTime.Now, |
| | | Creater = App.User.UserName, |
| | | LocationCode = inventoryInfo.LocationCode, |
| | | OrderNo = out_no, |
| | | StockQuantity = inventoryInfo.StockQuantity, |
| | | SupplyQuantity = 0, |
| | | Remark = "çç¹" |
| | | }; |
| | | supplyTasks.Add(supplyTask); |
| | | #endregion |
| | | } |
| | | _unitOfWorkManage.BeginTran(); |
| | | _deliveryOrderDetailServices.AddData(deliveryOrderDetails); |
| | | _inventoryInfoService.AddData(inventoryInfos); |
| | | if (inventory_Batches.Count > 0) _inventory_BatchServices.AddData(inventory_Batches); |
| | | _supplyTaskService.AddData(supplyTasks); |
| | | _unitOfWorkManage.CommitTran(); |
| | | return WebResponseContent.Instance.OK("çç¹è¯¦æ
æ·»å æå,请éè¿ERP平账ï¼"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | _unitOfWorkManage.RollbackTran(); |
| | | return WebResponseContent.Instance.Error(ex.Message); |
| | | } |
| | | } |
| | | |
| | | #region å建åºåºå |
| | |
| | | var supplyTasks = _supplyTaskService.Repository.QueryData(x => x.MaterielCode == item.MaterielCode && x.BatchNo == item.BatchNo && x.TaskStatus == SupplyStatusEnum.NewCheck.ObjToInt()).ToList(); |
| | | if (supplyTasks.Count > 0) throw new Exception($"ç©æç¼å·ã{item.MaterielCode}ãæ¹æ¬¡å·ã{item.BatchNo}ãå·²åå¨çç¹ä»»å¡ï¼è¯·å
宿å½åçç¹ä»»å¡"); |
| | | supplyTasks = _supplyTaskService.Repository.QueryData(x => x.MaterielCode == item.MaterielCode && x.BatchNo == item.BatchNo && x.TaskStatus == SupplyStatusEnum.NewOut.ObjToInt()).ToList(); |
| | | if (supplyTasks.Count > 0) throw new Exception($"ç©æç¼å·ã{item.MaterielCode}ãæ¹æ¬¡å·ã{item.BatchNo}ãå·²åå¨çç¹ä»»å¡ï¼è¯·å
宿å½åçç¹ä»»å¡"); |
| | | if (supplyTasks.Count > 0) throw new Exception($"ç©æç¼å·ã{item.MaterielCode}ãæ¹æ¬¡å·ã{item.BatchNo}ãå·²åå¨åºåºä»»å¡ï¼è¯·å
宿å½ååºåºä»»å¡"); |
| | | List<Dt_InventoryInfo> inventoryInfos = _inventoryInfoService.Repository.QueryData(x => item.MaterielCode == x.MaterielCode && x.BatchNo == item.BatchNo); |
| | | if (inventoryInfos.Count > 0) |
| | | { |
| | |
| | | _inventoryInfoService = inventoryInfoService; |
| | | } |
| | | //æ¯é1ç§æ§è¡ä¸æ¬¡ |
| | | [Invoke(Begin = "2025-11-01", Interval = 1000 * 5, IsEnabled = true, SkipWhileExecuting = true)] |
| | | [Invoke(Begin = "2025-11-01", Interval = 1000 * 10, IsEnabled = true, SkipWhileExecuting = true)] |
| | | public void Run() |
| | | { |
| | | //å·åº |
| | |
| | | _materielInfoService = materielInfoService; |
| | | } |
| | | //æ¯é1ç§æ§è¡ä¸æ¬¡ |
| | | [Invoke(Begin = "2025-11-01", Interval = 1000 * 5, IsEnabled = true, SkipWhileExecuting = true)] |
| | | [Invoke(Begin = "2025-11-01", Interval = 1000 * 8, IsEnabled = true, SkipWhileExecuting = true)] |
| | | public void Run() |
| | | { |
| | | //è·å䏿¸¸åºåºåæ°æ® |
| | |
| | | //æ¤jsæä»¶æ¯ç¨æ¥èªå®ä¹æ©å±ä¸å¡ä»£ç ï¼å¯ä»¥æ©å±ä¸äºèªå®ä¹é¡µé¢æè
éæ°é
ç½®çæç代ç |
| | | import gridBody from './extend/outOrderDetail.vue' |
| | | import http from '../../api/http'; |
| | | import { el } from 'element-plus/es/locales.mjs'; |
| | | import { el, fa, sw } from 'element-plus/es/locales.mjs'; |
| | | let extension = { |
| | | components: { |
| | | //æ¥è¯¢ç颿©å±ç»ä»¶ |
| | |
| | | }); |
| | | } |
| | | } |
| | | // this.detailOptions.buttons.unshift({//è¿éå¯ä»¥ä½¿ç¨pushæ·»å æåä¸ä¸ªä½ç½® |
| | | // name: 'èªå®ä¹æé®', //æé®åç§° |
| | | // icon: 'el-icon-document', //æé®å¾æ :ç»ä»¶ç¤ºä¾->徿 |
| | | // //primaryãsuccessãwarningãerrorãinfoãtextãdanger |
| | | // type: 'primary', |
| | | // plain: true, |
| | | // onClick: () => { } |
| | | // }) |
| | | }, |
| | | onInited() { |
| | | //æ¡æ¶åå§åé
ç½®å |
| | |
| | | }) |
| | | }) |
| | | this.detailOptions.buttons.forEach((btn) => { |
| | | if (btn.name != 'æ·»å è¡') { |
| | | btn.hidden = true; |
| | | //æè
设置åªè¯» |
| | | //btn.readonly=true; |
| | | if (row.out_type == "20" && row.warehouse_no != "001") { |
| | | btn.hidden = btn.name != 'æ·»å è¡' && btn.name != 'èªå®ä¹æé®' |
| | | } else { |
| | | btn.hidden = true |
| | | } |
| | | // if (row.out_type != "20") { |
| | | // btn.hidden = true |
| | | // } else { |
| | | // btn.hidden = btn.name != 'æ·»å è¡' |
| | | // } |
| | | // if (btn.name != 'æ·»å è¡') { |
| | | // btn.hidden = btn.name != 'æ·»å è¡'; |
| | | // //æè
设置åªè¯» |
| | | // //btn.readonly=true; |
| | | // } |
| | | }); |
| | | if (row.out_type == "20") { |
| | | this.detail.columns.forEach((x) => { |
| | | if (x.field == "order_Outqty") { |
| | | x.title = "çç¹æ°é", |
| | | x.edit = true |
| | | } |
| | | }) |
| | | } else { |
| | | |
| | | } |
| | | this.detail.columns.forEach((x) => { |
| | | switch (x.field) { |
| | | case "creater": |
| | | x.hidden = (row.out_type != "20" && row.out_type != "215"); |
| | | break; |
| | | case "locationCode": |
| | | if (row.warehouse_no != "001" && row.out_type == "20") { |
| | | x.hidden = false |
| | | } else { |
| | | x.hidden = true |
| | | } |
| | | case "exp_date": |
| | | x.hidden = row.out_type == "215" || row.out_type == "20" && row.warehouse_no === "001"; |
| | | // x.title = (row.out_type == "20") ? "è´§ä½å·" : "ææ"; |
| | | x.edit = row.out_type == "20" |
| | | break; |
| | | case "order_qty": |
| | | x.title = row.out_type == "20" ? "åºåæ°é" : "è®¢åæ°é"; |
| | | x.readonly = row.out_type != "20"; |
| | | break; |
| | | case "order_Outqty": |
| | | x.title = row.out_type == "20" ? "çç¹æ°é" : "宿æ°é"; |
| | | x.readonly = row.out_type != "20"; |
| | | break; |
| | | case "goods_no": |
| | | x.readonly = row.out_type != "20"; |
| | | break; |
| | | case "batch_num": |
| | | x.readonly = row.out_type != "20"; |
| | | break; |
| | | } |
| | | }) |
| | | } |
| | | } |
| | | }; |
| | |
| | | this.buttons.forEach(x => {//nameæ¹ä¸ºè¦éèçæé®åå |
| | | if (x.name == 'ç¼ è¾') { |
| | | x.name = 'è° æ¨'; |
| | | x.onClick = function () { |
| | | let rows = this.$refs.table.getSelected(); |
| | | if (rows.length == 0) return this.$error("è¯·éæ©æ°æ®!"); |
| | | if (rows.length > 1) return this.$error("åªè½éæ©ä¸æ¡æ°æ®") |
| | | let row = rows[0]; |
| | | this.edit(row) |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | |
| | | this.editFormOptions.forEach((editForm) => { |
| | | editForm.forEach((x) => { |
| | | if (x.field == "availableQuantity") { |
| | | |
| | | |
| | | } else { |
| | | x.readonly = true |
| | | } |
| | |
| | | locationStatus: "", |
| | | enableStatus: "", |
| | | remark: "", |
| | | warehouseCode:"", |
| | | warehouseCode: "", |
| | | }); |
| | | const editFormOptions = ref([ |
| | | [ |
| | |
| | | // type: "select", |
| | | // required: true, |
| | | // span: 12, |
| | | // dataKey: "warehouseNuber", |
| | | // dataKey: "warehouseNuber", |
| | | // data: [] |
| | | // }, |
| | | { |
| | | { |
| | | field: "warehouseCode", |
| | | title: "åºæ¿ç¼å·", |
| | | type: "select", |
| | | required: true, |
| | | span: 12, |
| | | dataKey: "warehouseNuber", |
| | | data: [] |
| | | dataKey: "warehouseNuber", |
| | | data: [], |
| | | }, |
| | | |
| | | |
| | | { |
| | | field: "locationCode", |
| | | title: "è´§ä½ç¼å·", |
| | | type: "string", |
| | | span: 12 |
| | | } |
| | | span: 12, |
| | | }, |
| | | ], |
| | | [ |
| | | { |
| | | field: "locationName", |
| | | title: "è´§ä½åç§°", |
| | | type: "string", |
| | | span: 12 |
| | | span: 12, |
| | | }, |
| | | { |
| | | field: "roadwayNo", |
| | | title: "å··éç¼å·", |
| | | type: "string", |
| | | span: 12 |
| | | } |
| | | span: 12, |
| | | }, |
| | | ], |
| | | [ |
| | | { |
| | | field: "row", |
| | | title: "è´§ä½è¡", |
| | | type: "int", |
| | | span: 8 |
| | | span: 8, |
| | | }, |
| | | { |
| | | field: "column", |
| | | title: "è´§ä½å", |
| | | type: "int", |
| | | span: 8 |
| | | span: 8, |
| | | }, |
| | | |
| | | ], |
| | | [ |
| | | { |
| | | field: "depth", |
| | | title: "è´§ä½æ·±åº¦", |
| | | type: "int", |
| | | span: 12 |
| | | span: 12, |
| | | }, |
| | | // { |
| | | // field: "locationType", |
| | |
| | | // data: [], |
| | | // dataKey: "locationTypeEnum", |
| | | // } |
| | | { |
| | | { |
| | | field: "layer", |
| | | title: "è´§ä½å±", |
| | | type: "int", |
| | | span: 8 |
| | | } |
| | | span: 8, |
| | | }, |
| | | ], |
| | | [ |
| | | { |
| | |
| | | type: "select", |
| | | span: 12, |
| | | data: [], |
| | | dataKey: "locationStatusEnum", |
| | | dataKey: "locationStatusEnum", |
| | | }, |
| | | { |
| | | field: "enableStatus", |
| | | title: "ç¦ç¨ç¶æ", |
| | | type: "select", |
| | | span: 12, |
| | | dataKey:"EnableStatusEnum", |
| | | dataKey: "EnableStatusEnum", |
| | | data: [], |
| | | } |
| | | }, |
| | | ], |
| | | // [ |
| | | // { |
| | |
| | | row: "", |
| | | column: "", |
| | | layer: "", |
| | | warehouseCode: "" |
| | | warehouseCode: "", |
| | | }); |
| | | const searchFormOptions = ref([ |
| | | [ |
| | | // { title: "åºæ¿ç¼å·", field: "warehouseId", type: "select", dataKey: "warehouseNuber", data: [] } , |
| | | { title: "åºæ¿ç¼å·", field: "warehousecode", type: "select", dataKey: "warehouseNuber", data: [] } , |
| | | { |
| | | title: "åºæ¿ç¼å·", |
| | | field: "warehousecode", |
| | | type: "select", |
| | | dataKey: "warehouseNuber", |
| | | data: [], |
| | | }, |
| | | { title: "è´§ä½ç¼å·", field: "locationCode", type: "like" }, |
| | | { title: "è´§ä½åç§°", field: "locationName", type: "like" }, |
| | | ], |
| | | [ |
| | | { title: "å··éç¼å·", field: "roadwayNo", type: "like" }, |
| | | // { title: "è´§ä½ç±»å", field: "locationType", type: "select", dataKey: "locationTypeEnum", data: [] }, |
| | | { title: "è´§ä½ç¶æ", field: "locationStatus", type: "select", dataKey: "locationStatusEnum",data: []}, |
| | | { title: "ç¦ç¨ç¶æ", field: "enableStatus", type: "select", data: [], dataKey:"status" }, |
| | | // { title: "è´§ä½ç±»å", field: "locationType", type: "select", dataKey: "locationTypeEnum", data: [] }, |
| | | { |
| | | title: "è´§ä½ç¶æ", |
| | | field: "locationStatus", |
| | | type: "select", |
| | | dataKey: "locationStatusEnum", |
| | | data: [], |
| | | }, |
| | | { |
| | | title: "ç¦ç¨ç¶æ", |
| | | field: "enableStatus", |
| | | type: "select", |
| | | data: [], |
| | | dataKey: "status", |
| | | }, |
| | | ], |
| | | [ |
| | | |
| | | { title: "è¡", field: "row", type: "int" }, |
| | | { title: "å", field: "column", type: "int" }, |
| | | { title: "å±", field: "layer", type: "int" } |
| | | { title: "å±", field: "layer", type: "int" }, |
| | | ], |
| | | ]); |
| | | const columns = ref([ |
| | |
| | | width: 120, |
| | | align: "left", |
| | | data: [], |
| | | bind: { key: "warehouseNuber", data: [] } |
| | | bind: { key: "warehouseNuber", data: [] }, |
| | | }, |
| | | { |
| | | field: "locationCode", |
| | |
| | | type: "string", |
| | | width: 100, |
| | | align: "left", |
| | | hidden: true, |
| | | }, |
| | | { |
| | | field: "row", |
| | |
| | | width: 160, |
| | | align: "left", |
| | | sort: true, |
| | | } |
| | | }, |
| | | ]); |
| | | const detail = ref({ |
| | | cnName: "#detailCnName", |
| | |
| | | |
| | | <template> |
| | | <view-grid ref="grid" |
| | | :columns="columns" |
| | | :detail="detail" |
| | | :editFormFields="editFormFields" |
| | | :editFormOptions="editFormOptions" |
| | | :searchFormFields="searchFormFields" |
| | | :searchFormOptions="searchFormOptions" |
| | | :table="table" |
| | | :extend="extend"> |
| | | </view-grid> |
| | | <view-grid |
| | | ref="grid" |
| | | :columns="columns" |
| | | :detail="detail" |
| | | :editFormFields="editFormFields" |
| | | :editFormOptions="editFormOptions" |
| | | :searchFormFields="searchFormFields" |
| | | :searchFormOptions="searchFormOptions" |
| | | :table="table" |
| | | :extend="extend" |
| | | > |
| | | </view-grid> |
| | | </template> |
| | | <script> |
| | | import extend from "@/extension/outbound/outboundOrder.js"; |
| | | import { ref, defineComponent } from "vue"; |
| | | export default defineComponent({ |
| | | setup() { |
| | | const table = ref({ |
| | | key: 'id', |
| | | footer: "Foots", |
| | | cnName: 'åºåºå', |
| | | name: 'DeliveryOrder', |
| | | url: "/DeliveryOrder/", |
| | | sortName: "id" |
| | | }); |
| | | |
| | | const editFormFields = ref({ |
| | | out_no: "", |
| | | out_type: "", |
| | | client_no: "", |
| | | client_name: "", |
| | | warehouse_no: "", |
| | | account_time: "", |
| | | outStatus: "", |
| | | }); |
| | | |
| | | const editFormOptions = ref([ |
| | | [ |
| | | { |
| | | title: "åºåºåå·", |
| | | field: "out_no", |
| | | type: "string", |
| | | required: true, |
| | | width: 150 |
| | | }, |
| | | { |
| | | title: "åºåºåç±»å", |
| | | field: "out_type", |
| | | type: "select", |
| | | dataKey: "out_type", |
| | | data: [], |
| | | required: true, |
| | | width: 120 |
| | | } |
| | | ], |
| | | [ |
| | | { |
| | | title: "客æ·ä»£ç ", |
| | | field: "client_no", |
| | | type: "string", |
| | | width: 120 |
| | | }, |
| | | { |
| | | title: "客æ·åç§°", |
| | | field: "client_name", |
| | | type: "string", |
| | | width: 150 |
| | | } |
| | | ], |
| | | [ |
| | | { |
| | | title: "åºæ¿å·", |
| | | field: "warehouse_no", |
| | | type: "select", |
| | | dataKey: "warehouseNuber", |
| | | data: [], |
| | | width: 100 |
| | | }, |
| | | { |
| | | title: "ç¶æ", |
| | | field: "outStatus", |
| | | type: "string", |
| | | dataKey: "outStatus", |
| | | data: [], |
| | | width: 120 |
| | | } |
| | | ], |
| | | [ |
| | | { |
| | | title: "åºåºè®°è´¦æ¶é´", |
| | | field: "account_time", |
| | | type: "datetime", |
| | | width: 160 |
| | | } |
| | | ] |
| | | ]); |
| | | |
| | | const searchFormFields = ref({ |
| | | out_no: "", |
| | | out_type: "", |
| | | client_no: "", |
| | | client_name: "", |
| | | warehouse_no: "", |
| | | outStatus: "", |
| | | account_time: "", |
| | | }); |
| | | |
| | | const searchFormOptions = ref([ |
| | | [ |
| | | { title: "åºåºåå·", field: "out_no", type: "like" }, |
| | | { title: "客æ·ä»£ç ", field: "client_no", type: "like" }, |
| | | { title: "åºæ¿å·", field: "warehouse_no", type: "select", dataKey: "warehouseNuber", data: [] }, |
| | | { |
| | | title: "åºåºåç±»å", |
| | | field: "out_type", |
| | | type: "select", |
| | | dataKey: "out_type", |
| | | data: [], |
| | | }, |
| | | ], |
| | | [ |
| | | // { |
| | | // title: "ç¶æ", |
| | | // field: "outStatus", |
| | | // type: "select", |
| | | // dataKey: "outStatus", |
| | | // data: [], |
| | | // }, |
| | | { title: "客æ·åç§°", field: "client_name", type: "like" }, |
| | | { title: "åºåºè®°è´¦æ¶é´", field: "account_time", type: "datetime" }, |
| | | ] |
| | | ]); |
| | | |
| | | const columns = ref([ |
| | | { |
| | | field: 'id', |
| | | title: '主é®', |
| | | type: 'int', |
| | | width: 90, |
| | | hidden: true, |
| | | readonly: true, |
| | | require: true, |
| | | align: 'left' |
| | | }, |
| | | { |
| | | field: 'out_no', |
| | | title: 'åºåºåå·', |
| | | type: 'string', |
| | | width: 150, |
| | | require: true, |
| | | align: 'left', |
| | | sort: true, |
| | | link: true |
| | | }, |
| | | { |
| | | field: 'out_type', |
| | | title: 'åºåºåç±»å', |
| | | type: 'string', |
| | | width: 120, |
| | | require: true, |
| | | align: 'left', |
| | | bind: { key: "out_type", data: [] } |
| | | }, |
| | | { |
| | | field: 'client_no', |
| | | title: '客æ·ä»£ç ', |
| | | type: 'string', |
| | | width: 120, |
| | | align: 'left' |
| | | }, |
| | | { |
| | | field: 'client_name', |
| | | title: '客æ·åç§°', |
| | | type: 'string', |
| | | width: 150, |
| | | align: 'left' |
| | | }, |
| | | { |
| | | field: 'warehouse_no', |
| | | title: 'åºæ¿å·', |
| | | type: 'string', |
| | | width: 100, |
| | | align: 'left', |
| | | bind: { key: "warehouseNuber", data: [] } |
| | | }, |
| | | { |
| | | field: 'account_time', |
| | | title: 'åºåºè®°è´¦æ¶é´', |
| | | type: 'datetime', |
| | | width: 160, |
| | | align: 'left' |
| | | }, |
| | | { |
| | | field: 'outStatus', |
| | | title: 'ç¶æ', |
| | | type: 'string', |
| | | width: 120, |
| | | align: 'left', |
| | | // bind: { key: "outStatus", data: [] } |
| | | // edit:{type:""} |
| | | }, |
| | | // { |
| | | // field: 'creater', |
| | | // title: 'å建人', |
| | | // type: 'string', |
| | | // width: 90, |
| | | // align: 'left' |
| | | // }, |
| | | { |
| | | field: 'createDate', |
| | | title: 'å建æ¶é´', |
| | | type: 'datetime', |
| | | width: 160, |
| | | align: 'left', |
| | | sort: true |
| | | }, |
| | | // { |
| | | // field: 'modifier', |
| | | // title: 'ä¿®æ¹äºº', |
| | | // type: 'string', |
| | | // width: 100, |
| | | // align: 'left' |
| | | // }, |
| | | { |
| | | field: 'modifyDate', |
| | | title: 'ä¿®æ¹æ¶é´', |
| | | type: 'datetime', |
| | | width: 160, |
| | | align: 'left', |
| | | sort: true |
| | | } |
| | | ]); |
| | | |
| | | const detail = ref({ |
| | | cnName: "åºåºåæç»", |
| | | table: "DeliveryOrderDetail", |
| | | url: "/DeliveryOrderDetail/", |
| | | columns: [ |
| | | { |
| | | field: 'id', |
| | | title: '主é®', |
| | | type: 'int', |
| | | width: 90, |
| | | hidden: true, |
| | | readonly: true, |
| | | require: true, |
| | | align: 'left' |
| | | }, |
| | | { |
| | | field: 'deliveryOrderId', |
| | | title: 'å
³èåºåºåID', |
| | | type: 'int', |
| | | width: 120, |
| | | require: true, |
| | | align: 'left', |
| | | sort: true, |
| | | hidden: true |
| | | }, |
| | | { |
| | | field: 'reservoirarea', |
| | | title: 'åºåº', |
| | | type: 'string', |
| | | width: 120, |
| | | align: 'left', |
| | | bind: { key: "warehouseNuber", data: [] }, |
| | | // edit:{type:""} |
| | | |
| | | }, |
| | | { |
| | | field: "goods_no", |
| | | title: "ç©æåç§°", |
| | | type: "string", |
| | | width: 150, |
| | | align: "left", |
| | | required: true, |
| | | // edit:{type:""}, |
| | | bind: { key: "MaterielNames", data: [] }, |
| | | }, |
| | | { |
| | | field: 'goods_no', |
| | | title: 'è¯åç¼ç ', |
| | | type: 'string', |
| | | width: 150, |
| | | require: true, |
| | | align: 'left', |
| | | bind: { key: "medicineGoods", data: [] }, |
| | | // edit:{type:""} |
| | | }, |
| | | { |
| | | field: 'order_qty', |
| | | title: 'è®¢åæ°é', |
| | | type: 'decimal', |
| | | width: 100, |
| | | require: true, |
| | | align: 'left', |
| | | // edit:{type:"number"} |
| | | }, |
| | | { |
| | | field: 'order_Outqty', |
| | | title: '宿æ°é', |
| | | type: 'decimal', |
| | | width: 100, |
| | | require: true, |
| | | align: 'left', |
| | | edit:{type:"number"} |
| | | }, |
| | | { |
| | | field: 'batch_num', |
| | | title: 'æ¹å·', |
| | | type: 'string', |
| | | width: 120, |
| | | require: true, |
| | | align: 'left', |
| | | edit:{type:""} |
| | | }, |
| | | { |
| | | field: 'exp_date', |
| | | title: 'æ ¡æ', |
| | | type: 'string', |
| | | width: 120, |
| | | align: 'left', |
| | | edit:{type:""} |
| | | }, |
| | | { |
| | | field: 'ootDetailStatus', |
| | | title: 'ç¶æ', |
| | | type: 'string', |
| | | width: 120, |
| | | align: 'left', |
| | | // edit:{type:""} |
| | | }, |
| | | { |
| | | field: 'status', |
| | | title: 'åæ¥ç¶æ', |
| | | type: 'int', |
| | | width: 120, |
| | | align: 'left', |
| | | bind: { key: "syncStatus", data: [] }, |
| | | // edit:{type:'select',dataKey:'syncStatus',data:[]} |
| | | }, |
| | | { |
| | | field: 'creater', |
| | | title: 'å建人', |
| | | type: 'string', |
| | | width: 90, |
| | | align: 'left' |
| | | }, |
| | | { |
| | | field: 'createDate', |
| | | title: 'å建æ¶é´', |
| | | type: 'datetime', |
| | | width: 160, |
| | | align: 'left', |
| | | sort: true |
| | | }, |
| | | { |
| | | field: 'modifier', |
| | | title: 'ä¿®æ¹äºº', |
| | | type: 'string', |
| | | width: 100, |
| | | align: 'left' |
| | | }, |
| | | { |
| | | field: 'modifyDate', |
| | | title: 'ä¿®æ¹æ¶é´', |
| | | type: 'datetime', |
| | | width: 160, |
| | | align: 'left', |
| | | sort: true |
| | | } |
| | | ], |
| | | sortName: "id", |
| | | key: "id" |
| | | }); |
| | | |
| | | return { |
| | | table, |
| | | extend, |
| | | editFormFields, |
| | | editFormOptions, |
| | | searchFormFields, |
| | | searchFormOptions, |
| | | columns, |
| | | detail, |
| | | }; |
| | | }, |
| | | import extend from "@/extension/outbound/outboundOrder.js"; |
| | | import { ref, defineComponent } from "vue"; |
| | | export default defineComponent({ |
| | | setup() { |
| | | const table = ref({ |
| | | key: "id", |
| | | footer: "Foots", |
| | | cnName: "åºåºå", |
| | | name: "DeliveryOrder", |
| | | url: "/DeliveryOrder/", |
| | | sortName: "id", |
| | | }); |
| | | |
| | | const editFormFields = ref({ |
| | | out_no: "", |
| | | out_type: "", |
| | | client_no: "", |
| | | client_name: "", |
| | | warehouse_no: "", |
| | | account_time: "", |
| | | outStatus: "", |
| | | locationCode: "", |
| | | }); |
| | | |
| | | const editFormOptions = ref([ |
| | | [ |
| | | { |
| | | title: "åºåºåå·", |
| | | field: "out_no", |
| | | type: "string", |
| | | required: true, |
| | | width: 150, |
| | | }, |
| | | { |
| | | title: "åºåºåç±»å", |
| | | field: "out_type", |
| | | type: "select", |
| | | dataKey: "out_type", |
| | | data: [], |
| | | required: true, |
| | | width: 120, |
| | | }, |
| | | ], |
| | | [ |
| | | { |
| | | title: "客æ·ä»£ç ", |
| | | field: "client_no", |
| | | type: "string", |
| | | width: 120, |
| | | }, |
| | | { |
| | | title: "客æ·åç§°", |
| | | field: "client_name", |
| | | type: "string", |
| | | width: 150, |
| | | }, |
| | | ], |
| | | [ |
| | | { |
| | | title: "åºæ¿å·", |
| | | field: "warehouse_no", |
| | | type: "select", |
| | | dataKey: "warehouseNuber", |
| | | data: [], |
| | | width: 100, |
| | | }, |
| | | { |
| | | title: "ç¶æ", |
| | | field: "outStatus", |
| | | type: "string", |
| | | dataKey: "outStatus", |
| | | data: [], |
| | | width: 120, |
| | | }, |
| | | ], |
| | | ]); |
| | | |
| | | const searchFormFields = ref({ |
| | | out_no: "", |
| | | out_type: "", |
| | | client_no: "", |
| | | client_name: "", |
| | | warehouse_no: "", |
| | | outStatus: "", |
| | | account_time: "", |
| | | }); |
| | | |
| | | const searchFormOptions = ref([ |
| | | [ |
| | | { title: "åºåºåå·", field: "out_no", type: "like" }, |
| | | { title: "客æ·ä»£ç ", field: "client_no", type: "like" }, |
| | | { |
| | | title: "åºæ¿å·", |
| | | field: "warehouse_no", |
| | | type: "select", |
| | | dataKey: "warehouseNuber", |
| | | data: [], |
| | | }, |
| | | { |
| | | title: "åºåºåç±»å", |
| | | field: "out_type", |
| | | type: "select", |
| | | dataKey: "out_type", |
| | | data: [], |
| | | }, |
| | | ], |
| | | [ |
| | | // { |
| | | // title: "ç¶æ", |
| | | // field: "outStatus", |
| | | // type: "select", |
| | | // dataKey: "outStatus", |
| | | // data: [], |
| | | // }, |
| | | { title: "客æ·åç§°", field: "client_name", type: "like" }, |
| | | { title: "åºåºè®°è´¦æ¶é´", field: "account_time", type: "datetime" }, |
| | | ], |
| | | ]); |
| | | |
| | | const columns = ref([ |
| | | { |
| | | field: "id", |
| | | title: "主é®", |
| | | type: "int", |
| | | width: 90, |
| | | hidden: true, |
| | | readonly: true, |
| | | require: true, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "out_no", |
| | | title: "åºåºåå·", |
| | | type: "string", |
| | | width: 150, |
| | | require: true, |
| | | align: "left", |
| | | sort: true, |
| | | link: true, |
| | | }, |
| | | { |
| | | field: "out_type", |
| | | title: "åºåºåç±»å", |
| | | type: "string", |
| | | width: 120, |
| | | require: true, |
| | | align: "left", |
| | | bind: { key: "out_type", data: [] }, |
| | | }, |
| | | { |
| | | field: "client_no", |
| | | title: "客æ·ä»£ç ", |
| | | type: "string", |
| | | width: 120, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "client_name", |
| | | title: "客æ·åç§°", |
| | | type: "string", |
| | | width: 150, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "warehouse_no", |
| | | title: "åºæ¿å·", |
| | | type: "string", |
| | | width: 100, |
| | | align: "left", |
| | | bind: { key: "warehouseNuber", data: [] }, |
| | | }, |
| | | { |
| | | field: "account_time", |
| | | title: "åºåºè®°è´¦æ¶é´", |
| | | type: "datetime", |
| | | width: 160, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "outStatus", |
| | | title: "ç¶æ", |
| | | type: "string", |
| | | width: 120, |
| | | align: "left", |
| | | // bind: { key: "outStatus", data: [] } |
| | | // edit:{type:""} |
| | | }, |
| | | // { |
| | | // field: 'creater', |
| | | // title: 'å建人', |
| | | // type: 'string', |
| | | // width: 90, |
| | | // align: 'left' |
| | | // }, |
| | | { |
| | | field: "createDate", |
| | | title: "å建æ¶é´", |
| | | type: "datetime", |
| | | width: 160, |
| | | align: "left", |
| | | sort: true, |
| | | }, |
| | | // { |
| | | // field: 'modifier', |
| | | // title: 'ä¿®æ¹äºº', |
| | | // type: 'string', |
| | | // width: 100, |
| | | // align: 'left' |
| | | // }, |
| | | { |
| | | field: "modifyDate", |
| | | title: "ä¿®æ¹æ¶é´", |
| | | type: "datetime", |
| | | width: 160, |
| | | align: "left", |
| | | sort: true, |
| | | }, |
| | | ]); |
| | | |
| | | const detail = ref({ |
| | | cnName: "åºåºåæç»", |
| | | table: "DeliveryOrderDetail", |
| | | url: "/DeliveryOrderDetail/", |
| | | columns: [ |
| | | { |
| | | field: "id", |
| | | title: "主é®", |
| | | type: "int", |
| | | width: 90, |
| | | hidden: true, |
| | | readonly: true, |
| | | require: true, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "deliveryOrderId", |
| | | title: "å
³èåºåºåID", |
| | | type: "int", |
| | | width: 120, |
| | | require: true, |
| | | align: "left", |
| | | sort: true, |
| | | hidden: true, |
| | | }, |
| | | { |
| | | field: "reservoirarea", |
| | | title: "åºåº", |
| | | type: "string", |
| | | width: 120, |
| | | align: "left", |
| | | bind: { key: "warehouseNuber", data: [] }, |
| | | hidden: true, |
| | | }, |
| | | { |
| | | field: "goods_no", |
| | | title: "ç©æåç§°", |
| | | type: "string", |
| | | width: 150, |
| | | align: "left", |
| | | required: true, |
| | | // edit:{type:""}, |
| | | bind: { key: "MaterielNames", data: [] }, |
| | | }, |
| | | { |
| | | field: "goods_no", |
| | | title: "è¯åç¼ç ", |
| | | type: "string", |
| | | width: 150, |
| | | require: true, |
| | | align: "left", |
| | | bind: { key: "medicineGoods", data: [] }, |
| | | edit: true, |
| | | }, |
| | | { |
| | | field: "order_qty", |
| | | title: "è®¢åæ°é", |
| | | type: "decimal", |
| | | width: 100, |
| | | require: true, |
| | | align: "left", |
| | | // edit:{type:"number"} |
| | | }, |
| | | { |
| | | field: "order_Outqty", |
| | | title: "宿æ°é", |
| | | type: "decimal", |
| | | width: 100, |
| | | require: true, |
| | | align: "left", |
| | | // edit:{type:"number"} |
| | | }, |
| | | { |
| | | field: "batch_num", |
| | | title: "æ¹å·", |
| | | type: "string", |
| | | width: 120, |
| | | require: true, |
| | | align: "left", |
| | | edit: true, |
| | | }, |
| | | { |
| | | field: "exp_date", |
| | | title: "ææ", |
| | | type: "string", |
| | | width: 120, |
| | | align: "left", |
| | | // edit:{type:""} |
| | | }, |
| | | { |
| | | field: "locationCode", |
| | | title: "è´§ä½å·", |
| | | type: "string", |
| | | width: 120, |
| | | align: "left", |
| | | hidden: true, |
| | | edit: true, |
| | | }, |
| | | { |
| | | field: "ootDetailStatus", |
| | | title: "ç¶æ", |
| | | type: "string", |
| | | width: 120, |
| | | align: "left", |
| | | // edit:{type:""} |
| | | }, |
| | | { |
| | | field: "status", |
| | | title: "åæ¥ç¶æ", |
| | | type: "int", |
| | | width: 120, |
| | | align: "left", |
| | | bind: { key: "syncStatus", data: [] }, |
| | | // edit:{type:'select',dataKey:'syncStatus',data:[]} |
| | | }, |
| | | { |
| | | field: "creater", |
| | | title: "å建人", |
| | | type: "string", |
| | | width: 90, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "createDate", |
| | | title: "å建æ¶é´", |
| | | type: "datetime", |
| | | width: 160, |
| | | align: "left", |
| | | sort: true, |
| | | }, |
| | | { |
| | | field: "modifier", |
| | | title: "ä¿®æ¹äºº", |
| | | type: "string", |
| | | width: 100, |
| | | align: "left", |
| | | hidden: true, |
| | | }, |
| | | { |
| | | field: "modifyDate", |
| | | title: "ä¿®æ¹æ¶é´", |
| | | type: "datetime", |
| | | width: 160, |
| | | align: "left", |
| | | hidden: true, |
| | | sort: true, |
| | | }, |
| | | ], |
| | | sortName: "id", |
| | | key: "id", |
| | | }); |
| | | |
| | | return { |
| | | table, |
| | | extend, |
| | | editFormFields, |
| | | editFormOptions, |
| | | searchFormFields, |
| | | searchFormOptions, |
| | | columns, |
| | | detail, |
| | | }; |
| | | }, |
| | | }); |
| | | </script> |