| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// éªè¯ç»çæ°æ® |
| | | /// </summary> |
| | | /// <param name="materielGroupDTO">ç©æç»çDTO</param> |
| | | /// <param name="matSerialNumberDTOs">æ«ç åºåå·</param> |
| | | /// <param name="materielInfos">ç©æä¿¡æ¯</param> |
| | | /// <param name="materielCodes">ç©æç¼å·</param> |
| | | /// <param name="inboundOrder">å
¥åºåæ®</param> |
| | | /// <param name="stockInfo">ç»çä¿¡æ¯</param> |
| | | /// <returns></returns> |
| | | //public (bool, string, object?) CheckMaterielGroupParam(MaterielGroupDTO materielGroupDTO, List<MatSerialNumberDTO> matSerialNumberDTOs, List<Dt_MaterielInfo> materielInfos, List<string> materielCodes, Dt_InboundOrder inboundOrder, Dt_StockInfo stockInfo) |
| | | //{ |
| | | // (bool, string, object?) result = ModelValidate.ValidateModelData(materielGroupDTO); |
| | | // if (!result.Item1) return result; |
| | | |
| | | // if (_taskRepository.QueryFirst(x => x.PalletCode == materielGroupDTO.PalletCode) != null) |
| | | // { |
| | | // return (false, "该æçå·å·²æä»»å¡", materielGroupDTO); |
| | | // } |
| | | |
| | | // if (stockInfo != null && !string.IsNullOrEmpty(stockInfo.LocationCode) && stockInfo.StockStatus != StockStatusEmun.ç»çæå.ObjToInt()) |
| | | // { |
| | | // return (false, "已䏿¶çæçä¸è½å次ç»ç", materielGroupDTO); |
| | | // } |
| | | |
| | | // if (_stockService.StockInfoDetailService.ExistSerialNumbers(materielGroupDTO.SerialNumbers)) |
| | | // { |
| | | // return (false, "æåºåå·å¨åºåä¸å·²åå¨", materielGroupDTO); |
| | | // } |
| | | |
| | | // if (materielInfos.Count != materielCodes.Count) |
| | | // { |
| | | // return (false, "æç©æä¿¡æ¯æªå½å
¥ï¼è¯·å½å
¥ç©æä¿¡æ¯", materielGroupDTO); |
| | | // } |
| | | |
| | | // if (materielCodes.Count > 1 && materielInfos.FirstOrDefault(x => !x.IsMixMateriel) != null) |
| | | // { |
| | | // return (false, "æç©æä¸å¯æ··æç»ç", materielGroupDTO); |
| | | // } |
| | | |
| | | // List<string> batchs = matSerialNumberDTOs.GroupBy(x => x.BatchNo).Select(x => x.Key).ToList(); |
| | | // if (batchs.Count > 1 && materielInfos.FirstOrDefault(x => !x.IsMixMateriel) != null) |
| | | // { |
| | | // return (false, "æç©æä¸å¯æ··æ¹ç»ç", materielGroupDTO); |
| | | // } |
| | | |
| | | // if (inboundOrder == null) |
| | | // { |
| | | // return (false, "åæ®ä¸åå¨", materielGroupDTO); |
| | | // } |
| | | |
| | | // if (inboundOrder.Details == null || inboundOrder.Details.Count == 0) |
| | | // { |
| | | // return (false, "æ åæ®æç»ä¿¡æ¯", materielGroupDTO); |
| | | // } |
| | | |
| | | // if (inboundOrder.OrderStatus != InboundStatusEnum.æªå¼å§.ObjToInt() && inboundOrder.OrderStatus != InboundStatusEnum.å
¥åºä¸.ObjToInt()) |
| | | // { |
| | | // return (false, "è¯¥åæ®ä¸å¯åç»ç", materielGroupDTO); |
| | | // } |
| | | |
| | | // List<Dt_InboundOrderDetail> inboundOrderDetails = inboundOrder.Details.Where(x => materielCodes.Contains(x.MaterielCode)).ToList(); |
| | | |
| | | // if (inboundOrderDetails.GroupBy(x => x.MaterielCode).Count() != materielCodes.Count) |
| | | // { |
| | | // return (false, "æç©æä¸å¨åæ®å
", materielGroupDTO); |
| | | // } |
| | | |
| | | // IGrouping<string, Dt_InboundOrderDetail>? temp = inboundOrder.Details.Where(x => materielCodes.Contains(x.MaterielCode)).GroupBy(x => x.MaterielCode).FirstOrDefault(x => x.Sum(v => v.OverInQuantity) >= x.Sum(v => v.OrderQuantity) || x.Sum(v => v.ReceiptQuantity) >= x.Sum(v => v.OrderQuantity)); |
| | | // if (temp != null) |
| | | // { |
| | | // return (false, "æç©æè¶
åºåæ®æ°é", materielGroupDTO); |
| | | // } |
| | | |
| | | // return (true, "æå", materielGroupDTO); |
| | | //} |
| | | |
| | | /// <summary> |
| | | /// PDAå页æ¥è¯¢æ°æ® |
| | | /// </summary> |
| | | /// <param name="pageNo">页ç </param> |