示例#1
0
        public ActionResult _FilterPost(ProdOrderLineFilterViewModel vm)
        {
            List <ProdOrderLineViewModel> temp = _ProdOrderLineService.GetProdOrderForFilters(vm).ToList();

            ProdOrderMasterDetailModel svm = new ProdOrderMasterDetailModel();

            svm.ProdOrderLineViewModel = temp;
            return(PartialView("_Results", svm));
        }
示例#2
0
        public ActionResult _ResultsPost(ProdOrderMasterDetailModel vm)
        {
            int Serial = _ProdOrderLineService.GetMaxSr(vm.ProdOrderLineViewModel.FirstOrDefault().ProdOrderHeaderId);
            int Pk     = 0;

            if (ModelState.IsValid)
            {
                foreach (var item in vm.ProdOrderLineViewModel)
                {
                    if (item.Qty > 0)
                    {
                        ProdOrderLine line = new ProdOrderLine();

                        line.ProdOrderHeaderId  = item.ProdOrderHeaderId;
                        line.MaterialPlanLineId = item.MaterialPlanLineId;
                        line.ProductId          = item.ProductId;
                        line.Dimension1Id       = item.Dimension1Id;
                        line.Dimension2Id       = item.Dimension2Id;
                        line.Specification      = item.Specification;
                        line.Remark             = item.Remark;
                        line.Qty             = item.Qty;
                        line.Sr              = Serial++;
                        line.ProdOrderLineId = Pk;
                        line.CreatedDate     = DateTime.Now;
                        line.ModifiedDate    = DateTime.Now;
                        line.CreatedBy       = User.Identity.Name;
                        line.ModifiedBy      = User.Identity.Name;

                        line.ObjectState = Model.ObjectState.Added;
                        _ProdOrderLineService.Create(line);

                        new ProdOrderLineStatusService(_unitOfWork).CreateLineStatus(line.ProdOrderLineId);

                        Pk++;
                    }
                }

                ProdOrderHeader Header = db.ProdOrderHeader.Find(vm.ProdOrderLineViewModel.FirstOrDefault().ProdOrderHeaderId);

                if (Header.Status != (int)StatusConstants.Drafted && Header.Status != (int)StatusConstants.Import)
                {
                    Header.Status       = (int)StatusConstants.Modified;
                    Header.ModifiedBy   = User.Identity.Name;
                    Header.ModifiedDate = DateTime.Now;
                    Header.ObjectState  = Model.ObjectState.Modified;

                    new ProdOrderHeaderService(_unitOfWork).Update(Header);
                }

                try
                {
                    _unitOfWork.Save();
                }
                catch (Exception ex)
                {
                    string message = _exception.HandleException(ex);
                    TempData["CSEXCL"] += message;
                    return(PartialView("_Results", vm));
                }

                LogActivity.LogActivityDetail(LogVm.Map(new ActiivtyLogViewModel
                {
                    DocTypeId    = Header.DocTypeId,
                    DocId        = Header.ProdOrderHeaderId,
                    ActivityType = (int)ActivityTypeContants.MultipleCreate,
                    DocNo        = Header.DocNo,
                    DocDate      = Header.DocDate,
                    DocStatus    = Header.Status,
                }));

                return(Json(new { success = true }));
            }
            return(PartialView("_Results", vm));
        }