private int DeleteTblApproval(TblApproval row) { using (var context = new WorkFlowManagerDBEntities()) { var oldRow = (from e in context.TblApprovals where e.Iserial == row.Iserial select e).SingleOrDefault(); if (oldRow != null) { context.DeleteObject(oldRow); } context.SaveChanges(); } return(row.Iserial); }
public void SaveMainRow() { foreach (var row in MainRowList.Where(x => x.Iserial == 0)) { var isvalid = Validator.TryValidateObject(row, new ValidationContext(row, null, null), null, true); if (isvalid) { var saveRow = new TblApproval(); saveRow.InjectFrom(row); //CheckTNA if (saveRow.ApprovalType == 1 && saveRow.ApprovedStatus == 1) { LkpData.LkpDataClient _client = new LkpData.LkpDataClient(); _client.CheckTNAAsync(SelectedMainRow.TblSalesOrder, LoggedUserInfo.WFM_UserJob.Value); _client.CheckTNACompleted += (s, sv) => { if (sv.Result == true) { Client.UpdateOrInsertTblApprovalAsync(saveRow, MainRowList.IndexOf(row), Perm); TempStyleViewModel.Loading = true; Loading = true; } else { MessageBox.Show("Kindly Check TNA"); } }; } else { Client.UpdateOrInsertTblApprovalAsync(saveRow, MainRowList.IndexOf(row), Perm); TempStyleViewModel.Loading = true; Loading = true; } } } }
private TblApproval UpdateOrInsertTblApproval(TblApproval newRow, int index, int perm, out int outindex, out decimal?tempprice, out float?tempCost) { tempprice = 0; tempCost = 0; outindex = index; using (var context = new WorkFlowManagerDBEntities()) { // context.Connection.ConnectionTimeout = 0; var oldRow = (from e in context.TblApprovals where e.Iserial == newRow.Iserial select e).SingleOrDefault(); if (oldRow != null) { GenericUpdate(oldRow, newRow, context); } else { context.TblApprovals.AddObject(newRow); } var salesorder = context.TblSalesOrders.Include("TblStyle1.TblLkpBrandSection1.TblBrandSectionPermissions.TblAuthPermission1").Include("BOMs").FirstOrDefault(x => x.Iserial == newRow.TblSalesOrder); if (newRow.ApprovedStatus == (int)Enums.ApprovalStatus.Approved) { switch (newRow.ApprovalType) { case 1: salesorder.IsRetailApproved = newRow.ApprovedStatus == 1; break; case 2: salesorder.IsFinancialApproved = newRow.ApprovedStatus == 1; break; case 3: salesorder.IsTechnicalApproved = newRow.ApprovedStatus == 1; break; } var premissions = salesorder.TblStyle1.TblLkpBrandSection1.TblBrandSectionPermissions.FirstOrDefault(x => x.TblAuthPermission == perm && x.BrandCode == salesorder.TblStyle1.Brand); if (salesorder.IsRetailApproved == premissions.Retail && salesorder.IsFinancialApproved == premissions.Financial && salesorder.IsTechnicalApproved == premissions.Technical) { if (salesorder.TblStyle1.tbl_FabricAttriputes == 0) { salesorder.TblStyle1.tbl_FabricAttriputes = 270; } context.SaveChanges(); if ((int)Enums.SalesOrderType.AdvancedSampleRequest != salesorder.SalesOrderType) { var postPo = (int)Enums.SalesOrderType.RetailPo == salesorder.SalesOrderType; if ((int)Enums.SalesOrderType.SalesOrderPo == salesorder.SalesOrderType && salesorder.TblStyle1.Brand != "DH" && salesorder.TblStyle1.Brand != "OR" && salesorder.TblStyle1.Brand != "OT") { PostStyleToPo(salesorder.TblStyle, salesorder.Iserial, postPo, newRow.TblAuthUser, out tempprice, out tempCost); } else if ((int)Enums.SalesOrderType.RetailPo == salesorder.SalesOrderType) { PostStyleToPo(salesorder.TblStyle, salesorder.Iserial, postPo, newRow.TblAuthUser, out tempprice, out tempCost); } salesorder.Status = (int)Enums.ApprovalStatus.Approved; if ((int)Enums.SalesOrderType.SalesOrderPo == salesorder.SalesOrderType) { PostBomToAx(salesorder, newRow.TblAuthUser); // var IsSample= isSample(salesorder.SalesOrderCode); CreateEstimatedBom(salesorder); } } } } else if (newRow.ApprovedStatus == (int)Enums.ApprovalStatus.Canceled) { salesorder.Status = (int)Enums.ApprovalStatus.Canceled; } else if (newRow.ApprovedStatus == (int)Enums.ApprovalStatus.FinalCost) { salesorder.Status = (int)Enums.ApprovalStatus.FinalCost; } context.SaveChanges(); newRow.TblSalesOrder1 = salesorder; return(newRow); } }