public string BrowseStaff(ISession ss, TransferGiftDTO obj, Stage stage, ClaimsPrincipal principal) { var result = string.Empty; var userinfo = ContextProvider.GetUserInfo(principal); try { SessionManager.DoWork(ss => { var workflow = ss.Query <Workflow>().Single(p => p.ProductId == obj.ProductId && p.UserId == userinfo.Id && p.Stage == "First Stage"); var assignUserId = workflow.AssignUserId; result = _storeService.ValidateData(ss, userinfo.Organization.Id, obj.Data); if (string.IsNullOrEmpty(result)) { var transfer = ss.Get <TransferGift>(obj.Id); var transferlog = ss.Query <TransferGiftLog>().Single(p => p.TransferGift.Id == obj.Id && p.Status == (int)ContextProvider.statusTransfer.Draft); transfer.Status = obj.Status; transfer.DepartmentId = obj.DepartmentId; //transfer.PromotionId = obj.PromotionId; transfer.CreatedDate = DateTime.ParseExact(DateTime.Now.ToString("u"), "u", CultureInfo.InvariantCulture); transferlog.Status = obj.Status; if (!string.IsNullOrEmpty(obj.Data.ToString())) { transferlog.Data = JsonConvert.SerializeObject(obj.Data); } transferlog.UpdateDate = transfer.CreatedDate; //ss.CreateSQLQuery($"delete ReceivingPromotion where TransferId = '{ obj.Id}'").UniqueResult(); //ss.CreateSQLQuery($"delete TransferDetail where TransferId = '{ obj.Id}'").UniqueResult(); result = _transferDetailService.Post(ss, transfer, obj); if (string.IsNullOrEmpty(result)) { var newtransferlog = new TransferGiftLog { Id = Guid.NewGuid(), TransferGift = transferlog.TransferGift, AssignUserId = assignUserId, AssignDeaprtmentId = userinfo.Organization.Id, Comment = obj.Comment, Data = transferlog.Data, Status = obj.Status, UpdateDate = DateTime.ParseExact(DateTime.Now.ToString("u"), "u", CultureInfo.InvariantCulture), StageId = obj.StageId, Dealine = null }; ss.Save(newtransferlog); result = "Browse Success"; } } }); } catch (Exception ex) { result = ex.Message; } return(result); }
public string BrowseStaff(ISession ss, TransferGiftDTO obj, Stage stage, ClaimsPrincipal principal) { var result = string.Empty; var userinfo = ContextProvider.GetUserInfo(principal); try { result = _storeService.ValidateData(ss, userinfo.Organization.Id, obj.Data); if (string.IsNullOrEmpty(result)) { var nextStage = ss.Get <Stage>(stage.NextStage); var transfer = ss.Get <TransferGift>(obj.Id); var transferlog = ss.Query <TransferGiftLog>().Single(p => p.TransferGift.Id == obj.Id && p.Status == (int)ContextProvider.statusTransfer.Draft); transfer.Status = obj.Status; transfer.PromotionId = obj.PromotionId; transfer.CreatedDate = DateTime.ParseExact(DateTime.Now.ToString("u"), "u", CultureInfo.InvariantCulture); transferlog.Status = obj.Status; if (!string.IsNullOrEmpty(obj.Data.ToString())) { transferlog.Data = JsonConvert.SerializeObject(obj.Data); } transferlog.UpdateDate = transfer.CreatedDate; result = _transferDetailService.Post(ss, transfer, obj); if (string.IsNullOrEmpty(result)) { var newtransferlog = new TransferGiftLog { Id = Guid.NewGuid(), TransferGift = transferlog.TransferGift, AssignUserId = null, AssignDeaprtmentId = userinfo.Organization.Id, Comment = obj.Comment, Data = transferlog.Data, Status = obj.Status, UpdateDate = DateTime.ParseExact(DateTime.Now.ToString("u"), "u", CultureInfo.InvariantCulture), Stage = nextStage, Dealine = null }; ss.Save(newtransferlog); result = "Browse Success"; } } } catch (Exception ex) { result = ex.Message; } return(result); }
public string BrowseStaff(ISession ss, TransferGiftDTO obj, Stage stage, ClaimsPrincipal principal) { var result = string.Empty; var userinfo = ContextProvider.GetUserInfo(principal); try { var nextStage = ss.Get <Stage>(stage.NextStage); var transfer = ss.Get <TransferGift>(obj.Id); var transferlog = ss.Query <TransferGiftLog>().Single(p => p.TransferGift.Id == obj.Id && p.Status == (int)ContextProvider.statusTransfer.Draft); //transfer.Status = obj.Status; transfer.Status = (int)ContextProvider.statusTransfer.Initialize; transfer.CreatedDate = DateTime.ParseExact(DateTime.Now.ToString("u"), "u", CultureInfo.InvariantCulture); transferlog.Status = (int)ContextProvider.statusTransfer.Initialize; if (!string.IsNullOrEmpty(obj.Data.ToString())) { transferlog.Data = JsonConvert.SerializeObject(obj.Data); } transferlog.UpdateDate = transfer.CreatedDate; //ss.CreateSQLQuery($"delete TransferDetail where TransferId = '{ obj.Id}'").UniqueResult(); // xử lý cục Data (phi cấu trúc => có cấu trúc) result = _transferDetailService.Post(ss, transfer, obj); if (string.IsNullOrEmpty(result)) { var newtransferlog = new TransferGiftLog { Id = Guid.NewGuid(), TransferGift = transferlog.TransferGift, AssignUserId = null, AssignDeaprtmentId = userinfo.Organization.Id, Comment = obj.Comment, Data = transferlog.Data, Status = (int)ContextProvider.statusTransfer.Initialize, UpdateDate = DateTime.ParseExact(DateTime.Now.ToString("u"), "u", CultureInfo.InvariantCulture), Stage = nextStage, Dealine = null }; ss.Save(newtransferlog); result = "Gửi duyệt thành công!"; } } catch (Exception ex) { result = ex.Message; } return(result); }
public string BrowseLeaderQLBH(Guid transferId, ClaimsPrincipal principal) { var result = string.Empty; var userinfo = ContextProvider.GetUserInfo(principal); try { SessionManager.DoWork(ss => { var transfer = ss.Get <TransferGift>(transferId); var workflow = ss.Query <Workflow>().Single(p => p.ProductId == transfer.Product.Id && p.UserId == userinfo.Id); var assignUserId = workflow.AssignUserId; var assignDepartmentId = ss.Get <User>(assignUserId).Organization.Id; transfer.Status = (int)ContextProvider.statusTransfer.Approve; var transferlog = ss.Query <TransferGiftLog>() .Where(p => p.TransferGift.Id == transferId && p.AssignUserId == userinfo.Id) .OrderByDescending(p => p.UpdateDate).First(); transferlog.Status = transfer.Status; transferlog.UpdateDate = DateTime.ParseExact(DateTime.Now.ToString("u"), "u", CultureInfo.InvariantCulture); var newtransferlog = new TransferGiftLog { Id = Guid.NewGuid(), TransferGift = transferlog.TransferGift, AssignUserId = assignUserId, AssignDeaprtmentId = assignDepartmentId, Comment = transferlog.Comment, Data = transferlog.Data, Status = transfer.Status, UpdateDate = DateTime.ParseExact(DateTime.Now.ToString("u"), "u", CultureInfo.InvariantCulture), StageId = transferlog.StageId, Dealine = null }; ss.Save(newtransferlog); result = "Browse Success"; }); } catch (Exception ex) { result = ex.Message; } return(result); }
public string BrowseLeader(ISession ss, Guid transferId, Stage stage, ClaimsPrincipal principal) { var result = string.Empty; var userinfo = ContextProvider.GetUserInfo(principal); try { var nextStage = ss.Get <Stage>(stage.NextStage); var transfer = ss.Get <TransferGift>(transferId); transfer.Status = (int)ContextProvider.statusTransfer.Approve; //if (stage.Name == "End Stage") // transfer.IsComplete = true; var transferlog = ss.Query <TransferGiftLog>() .Single(p => p.TransferGift.Id == transferId && p.Stage.Id == stage.Id && p.AssignDeaprtmentId == userinfo.Organization.Id); transferlog.AssignUserId = userinfo.Id; transferlog.Status = transfer.Status; transferlog.UpdateDate = DateTime.ParseExact(DateTime.Now.ToString("u"), "u", CultureInfo.InvariantCulture); var newtransferlog = new TransferGiftLog { Id = Guid.NewGuid(), TransferGift = transferlog.TransferGift, AssignUserId = null, AssignDeaprtmentId = userinfo.Organization.Id, Comment = transferlog.Comment, Data = transferlog.Data, Status = transferlog.Status, UpdateDate = DateTime.ParseExact(DateTime.Now.ToString("u"), "u", CultureInfo.InvariantCulture), Stage = nextStage, Dealine = null }; result = "Browse Success"; } catch (Exception ex) { result = ex.Message; } return(result); }