Esempio n. 1
0
        public void GenerateSchedulekDetails(ScheduleGeneratorViewModel viewmodel)
        {
            var productionschedule = this.Queryable().Where(x => x.Id == viewmodel.ProductionScheduleId).First();
            var workdetails        = this._workdetailservice.Queryable().Where(x => viewmodel.WorkDetails.Contains(x.Id)).ToList();
            var list = new List <ScheduleDetail>();

            foreach (var workdetail in workdetails)
            {
                ScheduleDetail item = new ScheduleDetail();
                item.ActualConsumeTime    = 0;
                item.ActualProductionQty  = 0;
                item.AltConsumeTime       = 0;
                item.AltProdctionDate1    = workdetail.AltProdctionDate1;
                item.ActualProdctionDate1 = workdetail.ActualProdctionDate1;
                item.AltProdctionDate2    = workdetail.AltProdctionDate1;
                item.BomComponentId       = workdetail.BomComponentId;
                item.ParentBomComponentId = workdetail.ParentBomComponentId;
                item.ComponentSKUId       = workdetail.ComponentSKUId;
                item.ConsumeQty           = workdetail.ConsumeQty;
                item.GraphSKU             = workdetail.GraphSKU;
                item.GraphVer             = workdetail.GraphVer;
                item.OrderKey             = workdetail.OrderKey;
                item.ParentSKUId          = workdetail.ParentSKUId;
                item.ProductionScheduleId = productionschedule.Id;
                item.Remark1               = workdetail.Remark1;
                item.Remark2               = workdetail.Remark2;
                item.RequirementQty        = workdetail.RequirementQty;
                item.ScheduleNo            = productionschedule.ScheduleNo;
                item.ScheduleProductionQty = workdetail.RequirementQty;
                item.Status       = 0;
                item.WorkDetailId = workdetail.Id;
                item.WorkNo       = workdetail.WorkNo;
                list.Add(item);
            }
            _scheduledetailservice.InsertRange(list);
        }