예제 #1
0
        private void bwLoad_DoWork(object sender, DoWorkEventArgs e)
        {
            try
            {
                orderList          = OrdersController.Select();
                rawMaterialList    = RawMaterialController.Select();
                sewingMasterList   = SewingMasterController.Select();
                productionMemoList = ProductionMemoController.Select();
                offDayList         = OffDayController.Select();
                privateDefine      = PrivateDefineController.GetDefine();
            }
            catch (Exception ex)
            {
                Dispatcher.Invoke(new Action(() => {
                    MessageBox.Show(ex.Message, this.Title, MessageBoxButton.OK, MessageBoxImage.Error);
                }));
                return;
            }

            _SEW_VS_OTHERS_CUT_A = privateDefine.SewingVsOthersCutTypeA;
            _SEW_VS_OTHERS_CUT_B = privateDefine.SewingVsOthersCutTypeB;

            //sewingMasterList.RemoveAll(s => DateTimeHelper.Create(s.SewingBalance) != dtDefault && DateTimeHelper.Create(s.SewingBalance) != dtNothing);
            sewingMasterList = sewingMasterList.OrderBy(s => s.Sequence).ToList();

            int[] materialIdUpperArray   = { 1, 2, 3, 4, 10 };
            int[] materialIdSewingArray  = { 5, 7 };
            int[] materialIdOutsoleArray = { 6 };

            foreach (SewingMasterModel sewingMaster in sewingMasterList)
            {
                CutprepMasterExportViewModel cutprepMasterExportView = new CutprepMasterExportViewModel();
                cutprepMasterExportView.Sequence  = sewingMaster.Sequence;
                cutprepMasterExportView.ProductNo = sewingMaster.ProductNo;
                OrdersModel order  = orderList.FirstOrDefault(f => f.ProductNo == sewingMaster.ProductNo);
                string      memoId = "";
                if (order != null)
                {
                    cutprepMasterExportView.Country   = order.Country;
                    cutprepMasterExportView.ShoeName  = order.ShoeName;
                    cutprepMasterExportView.ArticleNo = order.ArticleNo;
                    cutprepMasterExportView.PatternNo = order.PatternNo;
                    cutprepMasterExportView.Quantity  = order.Quantity;
                    cutprepMasterExportView.ETD       = order.ETD;

                    List <ProductionMemoModel> productionMemoByProductionNumberList = productionMemoList.Where(p => p.ProductionNumbers.Contains(order.ProductNo) == true).ToList();
                    for (int p = 0; p <= productionMemoByProductionNumberList.Count - 1; p++)
                    {
                        ProductionMemoModel productionMemo = productionMemoByProductionNumberList[p];
                        memoId += productionMemo.MemoId;
                        if (p < productionMemoByProductionNumberList.Count - 1)
                        {
                            memoId += "\n";
                        }
                    }
                    cutprepMasterExportView.MemoId = memoId;
                }

                MaterialArrivalViewModel materialArrivalUpper = MaterialArrival(order.ProductNo, materialIdUpperArray);
                cutprepMasterExportView.IsUpperMatsArrivalOk = false;
                if (materialArrivalUpper != null)
                {
                    cutprepMasterExportView.UpperMatsArrival     = String.Format(new CultureInfo("en-US"), "{0:dd-MMM}", materialArrivalUpper.Date);
                    cutprepMasterExportView.IsUpperMatsArrivalOk = materialArrivalUpper.IsMaterialArrivalOk;
                }
                cutprepMasterExportView.SewingLine        = sewingMaster.SewingLine;
                cutprepMasterExportView.SewingStartDate   = sewingMaster.SewingStartDate;
                cutprepMasterExportView.SewingQuota       = sewingMaster.SewingQuota;
                cutprepMasterExportView.SewingBalance     = sewingMaster.SewingBalance;
                cutprepMasterExportView.CutAStartDate     = sewingMaster.CutAStartDate;
                cutprepMasterExportView.CutAFinishDate    = sewingMaster.CutAFinishDate;
                cutprepMasterExportView.CutAQuota         = sewingMaster.CutAQuota;
                cutprepMasterExportView.AutoCut           = sewingMaster.AutoCut;
                cutprepMasterExportView.LaserCut          = sewingMaster.LaserCut;
                cutprepMasterExportView.HuasenCut         = sewingMaster.HuasenCut;
                cutprepMasterExportView.CutABalance       = sewingMaster.CutABalance;
                cutprepMasterExportView.PrintingBalance   = sewingMaster.PrintingBalance;
                cutprepMasterExportView.H_FBalance        = sewingMaster.H_FBalance;
                cutprepMasterExportView.EmbroideryBalance = sewingMaster.EmbroideryBalance;
                cutprepMasterExportView.CutBBalance       = sewingMaster.CutBBalance;

                // Cut type A before sewing 18days
                var cutTypeABeforeSewing       = sewingMaster.SewingStartDate.AddDays(-_SEW_VS_OTHERS_CUT_A);
                var dtCheckOffDateCutTypeAList = CheckOffDay(cutTypeABeforeSewing, sewingMaster.SewingStartDate);

                // Cut type B before sewing 10days
                var cutTypeBBeforeSewing       = sewingMaster.SewingStartDate.AddDays(-_SEW_VS_OTHERS_CUT_B);
                var dtCheckOffDateCutTypeBList = CheckOffDay(cutTypeBBeforeSewing, sewingMaster.SewingStartDate);

                var firstDateCheckOffCutTypeA = String.Format("{0:M/d}", dtCheckOffDateCutTypeAList.FirstOrDefault());
                var firstDateCheckOffCutTypeB = String.Format("{0:M/d}", dtCheckOffDateCutTypeBList.FirstOrDefault());

                if (!String.IsNullOrEmpty(sewingMaster.CutBStartDate))
                {
                    cutprepMasterExportView.CutBStartDate = sewingMaster.CutBStartDate;
                }
                else if (sewingMaster.SewingStartDate != dtDefault)
                {
                    cutprepMasterExportView.CutBStartDate = firstDateCheckOffCutTypeB;
                }
                else
                {
                    cutprepMasterExportView.CutBStartDate = "";
                }


                if (!String.IsNullOrEmpty(sewingMaster.AtomCutA))
                {
                    cutprepMasterExportView.AtomCutA = sewingMaster.AtomCutA;
                }
                else if (sewingMaster.SewingStartDate != dtDefault)
                {
                    cutprepMasterExportView.AtomCutA = firstDateCheckOffCutTypeA;
                }
                else
                {
                    cutprepMasterExportView.AtomCutA = "";
                }


                if (!String.IsNullOrEmpty(sewingMaster.AtomCutB))
                {
                    cutprepMasterExportView.AtomCutB = sewingMaster.AtomCutB;
                }
                else if (sewingMaster.SewingStartDate != dtDefault)
                {
                    cutprepMasterExportView.AtomCutB = firstDateCheckOffCutTypeB;
                }
                else
                {
                    cutprepMasterExportView.AtomCutB = "";
                }


                if (!String.IsNullOrEmpty(sewingMaster.LaserCutA))
                {
                    cutprepMasterExportView.LaserCutA = sewingMaster.LaserCutA;
                }
                else if (sewingMaster.SewingStartDate != dtDefault)
                {
                    cutprepMasterExportView.LaserCutA = firstDateCheckOffCutTypeA;
                }
                else
                {
                    cutprepMasterExportView.LaserCutA = "";
                }

                if (!String.IsNullOrEmpty(sewingMaster.LaserCutB))
                {
                    cutprepMasterExportView.LaserCutB = sewingMaster.LaserCutB;
                }
                else if (sewingMaster.SewingStartDate != dtDefault)
                {
                    cutprepMasterExportView.LaserCutB = firstDateCheckOffCutTypeB;
                }
                else
                {
                    cutprepMasterExportView.LaserCutB = "";
                }


                if (!String.IsNullOrEmpty(sewingMaster.HuasenCutA))
                {
                    cutprepMasterExportView.HuasenCutA = sewingMaster.HuasenCutA;
                }
                else if (sewingMaster.SewingStartDate != dtDefault)
                {
                    cutprepMasterExportView.HuasenCutA = firstDateCheckOffCutTypeA;
                }
                else
                {
                    cutprepMasterExportView.HuasenCutA = "";
                }


                if (!String.IsNullOrEmpty(sewingMaster.HuasenCutB))
                {
                    cutprepMasterExportView.HuasenCutB = sewingMaster.HuasenCutB;
                }
                else if (sewingMaster.SewingStartDate != dtDefault)
                {
                    cutprepMasterExportView.HuasenCutB = firstDateCheckOffCutTypeB;
                }
                else
                {
                    cutprepMasterExportView.HuasenCutB = "";
                }

                if (!String.IsNullOrEmpty(sewingMaster.ComelzCutA))
                {
                    cutprepMasterExportView.ComelzCutA = sewingMaster.ComelzCutA;
                }
                else if (sewingMaster.SewingStartDate != dtDefault)
                {
                    cutprepMasterExportView.ComelzCutA = firstDateCheckOffCutTypeA;
                }
                else
                {
                    cutprepMasterExportView.ComelzCutA = "";
                }

                if (!String.IsNullOrEmpty(sewingMaster.ComelzCutB))
                {
                    cutprepMasterExportView.ComelzCutB = sewingMaster.ComelzCutB;
                }
                else if (sewingMaster.SewingStartDate != dtDefault)
                {
                    cutprepMasterExportView.ComelzCutB = firstDateCheckOffCutTypeB;
                }
                else
                {
                    cutprepMasterExportView.ComelzCutB = "";
                }


                cutprepMasterExportViewList.Add(cutprepMasterExportView);
            }
        }
예제 #2
0
        private void bwLoad_DoWork(object sender, DoWorkEventArgs e)
        {
            orderList          = OrdersController.Select();
            rawMaterialList    = RawMaterialController.Select();
            sewingMasterList   = SewingMasterController.Select();
            productionMemoList = ProductionMemoController.Select();
            //sewingMasterList.RemoveAll(s => DateTimeHelper.Create(s.SewingBalance) != dtDefault && DateTimeHelper.Create(s.SewingBalance) != dtNothing);
            sewingMasterList = sewingMasterList.OrderBy(s => s.Sequence).ToList();

            int[] materialIdUpperArray   = { 1, 2, 3, 4, 10 };
            int[] materialIdSewingArray  = { 5, 7 };
            int[] materialIdOutsoleArray = { 6 };

            foreach (SewingMasterModel sewingMaster in sewingMasterList)
            {
                CutprepMasterExportViewModel cutprepMasterExportView = new CutprepMasterExportViewModel();
                cutprepMasterExportView.Sequence  = sewingMaster.Sequence;
                cutprepMasterExportView.ProductNo = sewingMaster.ProductNo;
                OrdersModel order  = orderList.Where(o => o.ProductNo == sewingMaster.ProductNo).FirstOrDefault();
                string      memoId = "";
                if (order != null)
                {
                    cutprepMasterExportView.Country   = order.Country;
                    cutprepMasterExportView.ShoeName  = order.ShoeName;
                    cutprepMasterExportView.ArticleNo = order.ArticleNo;
                    cutprepMasterExportView.PatternNo = order.PatternNo;
                    cutprepMasterExportView.Quantity  = order.Quantity;
                    cutprepMasterExportView.ETD       = order.ETD;

                    List <ProductionMemoModel> productionMemoByProductionNumberList = productionMemoList.Where(p => p.ProductionNumbers.Contains(order.ProductNo) == true).ToList();
                    for (int p = 0; p <= productionMemoByProductionNumberList.Count - 1; p++)
                    {
                        ProductionMemoModel productionMemo = productionMemoByProductionNumberList[p];
                        memoId += productionMemo.MemoId;
                        if (p < productionMemoByProductionNumberList.Count - 1)
                        {
                            memoId += "\n";
                        }
                    }
                    cutprepMasterExportView.MemoId = memoId;
                }

                MaterialArrivalViewModel materialArrivalUpper = MaterialArrival(order.ProductNo, materialIdUpperArray);
                cutprepMasterExportView.IsUpperMatsArrivalOk = false;
                if (materialArrivalUpper != null)
                {
                    cutprepMasterExportView.UpperMatsArrival     = String.Format(new CultureInfo("en-US"), "{0:dd-MMM}", materialArrivalUpper.Date);
                    cutprepMasterExportView.IsUpperMatsArrivalOk = materialArrivalUpper.IsMaterialArrivalOk;
                }
                cutprepMasterExportView.SewingLine        = sewingMaster.SewingLine;
                cutprepMasterExportView.SewingStartDate   = sewingMaster.SewingStartDate;
                cutprepMasterExportView.SewingQuota       = sewingMaster.SewingQuota;
                cutprepMasterExportView.SewingBalance     = sewingMaster.SewingBalance;
                cutprepMasterExportView.CutAStartDate     = sewingMaster.CutAStartDate;
                cutprepMasterExportView.CutAFinishDate    = sewingMaster.CutAFinishDate;
                cutprepMasterExportView.CutAQuota         = sewingMaster.CutAQuota;
                cutprepMasterExportView.AutoCut           = sewingMaster.AutoCut;
                cutprepMasterExportView.LaserCut          = sewingMaster.LaserCut;
                cutprepMasterExportView.HuasenCut         = sewingMaster.HuasenCut;
                cutprepMasterExportView.CutABalance       = sewingMaster.CutABalance;
                cutprepMasterExportView.PrintingBalance   = sewingMaster.PrintingBalance;
                cutprepMasterExportView.H_FBalance        = sewingMaster.H_FBalance;
                cutprepMasterExportView.EmbroideryBalance = sewingMaster.EmbroideryBalance;
                cutprepMasterExportView.CutBBalance       = sewingMaster.CutBBalance;

                cutprepMasterExportViewList.Add(cutprepMasterExportView);
            }
        }