private async Task <MessageReport> SendMessageProject(PM_Project project, PM_Component component) { var result = new MessageReport(false, "error"); try { //Lấy danh sách người dùng liên quan tới component + người tạo dự án var users = await GetUserInvolved(component.Id); users.Add(project.UserCreatedId); //Lấy Players var players = await _OS_PlayerService.GetPlayerIdsByUserIds(users); //Gửi var model = new OneSignalrMessage() { Id = "", Title = string.Format("Dự án: {0}", project.Title), Description = string.Format("Nhắc nhở hoàn thành Component: {0}", component.Code), UserIds = "", PlayerIds = players.Select(n => n.PlayerId).ToArray(), View = "HomePage" }; result = await _OS_PlayerService.SendMessage(model); } catch (System.Exception ex) { result = new MessageReport(false, ex.Message); } return(result); }
public async Task <MessageReport> Update(PM_Project model) { var query = new StringBuilder(); query.AppendLine("{"); query.AppendLine("'_id': { '$eq': '" + model.Id + "' }"); query.AppendLine("}"); return(await _PM_ProjectRepository.Update(MongoHelper.ConvertQueryStringToDocument(query.ToString()), model)); }
public async Task <IActionResult> CreateNewProject(PM_Project model) { var result = new MessageReport(false, "Có lỗi xảy ra"); try { if (string.IsNullOrWhiteSpace(model.Title)) { result = new MessageReport(false, "Vui lòng điền tên dự án"); return(Json(result)); } // var currentUser = await SessionCookieHelper.CurrentUser(this.HttpContext); //Gán model.Id = ObjectId.GenerateNewId().ToString(); model.Description = ""; model.Note = ""; model.DateStart = DateTime.Now; model.DateEnd = DateTime.Now; model.DateCreated = DateTime.Now; model.Status = 0; model.UserCreatedId = currentUser != null ? currentUser.UserId : ""; // result = await _PM_ProjectService.Create(model); if (result.isSuccess) { result.Message = model.Id; } } catch (Exception ex) { result = new MessageReport(false, ex.Message); } return(Json(result)); }
public int Manage(string Filter, PM_Project p) { return(pd.Manage(Filter, p.ProjectId, p.ProjectName, p.ScopeId, p.ClientId, p.EndClientId, p.ActualStartDate, p.ActualEndDate, p.StatusId, p.Color , p.Description, p.IsActive, p.PriorityId, p.IsEstimate, p.BudgetCost, p.TargetDate, p.TaskTypeId, p.CompletionPercent, p.IsWoLinked, p.PlannedDate, p.WorkingDays, p.ManagerId, p.EntityId, p.IsWorkflowAllowed, p.CategoryId, p.CurrencyId)); }
public async Task <MessageReport> Create(PM_Project model) { return(await _PM_ProjectRepository.Add(model)); }
public ActionResult New(PM_Project p) { Response res = new Response(); AL_AlertBL model = new AL_AlertBL(); try { // Insert Project Status Change Notification - Start AL_GetAlertSubscription Temp = new AL_GetAlertSubscription(); Temp = model.IsSubscribed("IsSubscribed", (int)ViewBag.UserId, 0, (int)p.ProjectId, "Project Status Change"); if (Temp.IsSubscribed) { int status = model.InsertAlert("Insert_Alert", (int)p.ProjectId, (int)ViewBag.UserId, 0, (int)p.ProjectId, "Project Status Change", (int)p.StatusId); } // Insert Project Status Change Notification - End int x = 0; PM_ProjectBL pb = new PM_ProjectBL(); PM_GazetteHolidaysBL gh = new PM_GazetteHolidaysBL(); PM_WorkGroupsBL PWG = new PM_WorkGroupsBL(); PM_TaskStagesBL pM_TaskStagesBL = new PM_TaskStagesBL(); if (p.WorkingDays != null) { p.WorkingDays = p.WorkingDays.Substring(0, p.WorkingDays.Length - 1); } if (p.ProjectId > 0) { pb.Manage("Update", p); Int64 UID = ViewBag.UserId; pb.ProjectUserPermission("UpdateUserPermissions", p.ManagerId, p.ProjectId); //pb.ProjectUserPermission("UpdateUserPermissions", UID, p.ProjectId); Permission.UpdateEntity(ViewBag.UserId); PWG.Manage("Insert", p.ProjectId, p.WorkGroups); if (p.GH != null) { p.GH[0].ProjectId = p.ProjectId; gh.Manage("Delete", p.GH[0]); gh.InsertBulk(p.ProjectId, p.GH); } else { PM_GazetteHolidays g = new PM_GazetteHolidays(); g.ProjectId = p.ProjectId; g.Date = DateTime.Now; gh.Manage("Delete", g); pb.ProjectUserPermission("UpdateUserPermissions", p.ManagerId, p.ProjectId); //pb.ProjectUserPermission("UpdateUserPermissions", UID, p.ProjectId); Permission.UpdateEntity(ViewBag.UserId); } // Update AND Add Task Stages if (p.TS?.Count > 0) { bool IsEXE = pM_TaskStagesBL.UpdateOrAdd("UpdateOrAdd", p.ProjectId, p.TS); } res.Message = "Update successfully"; } else { p.IsActive = true; var PId = pb.Manage("Insert", p); PWG.Manage("Insert", PId, p.WorkGroups); Int64 UID = ViewBag.UserId; pb.ProjectUserPermission("InsertUserPermissions", p.ManagerId, PId); pb.ProjectUserPermission("InsertUserPermissions", UID, PId); Permission.UpdateEntity(ViewBag.UserId); if (p.GH != null) { gh.InsertBulk(PId, p.GH); } if (p?.TS?.Count > 0) { var IsInserted = pM_TaskStagesBL.InsertBulk(PId, p.TS); } res.Value = PId; Permission.AddProject(PId); res.Message = "Save successfully"; } res.Status = "success"; } catch (Exception ex) { res.Status = "danger"; if (ex.Message == "Object cannot be cast from DBNull to other types.") { res.Message = "You Can't Insert Project who is already entered with same name and same client "; } else { res.Message = ex.Message; } } return(Json(res, JsonRequestBehavior.AllowGet)); }
public static Common.Business.PM_Project Fetch(PM_Project data) { Common.Business.PM_Project item = (Common.Business.PM_Project)Activator.CreateInstance(typeof(Common.Business.PM_Project)); //using (ObjectFactory.BypassPropertyChecks(item)) { item.Client = data.Client; item.ProjCode = data.ProjCode; item.ProjName = data.ProjName; item.DeptCode = data.DeptCode; item.CostCtr = data.CostCtr; item.CtrlDeptCode = data.CtrlDeptCode; item.ProjTypeCode = data.ProjTypeCode; item.ProjFund = data.ProjFund; item.ContrastCode1 = data.ContrastCode1; item.ContrastCode2 = data.ContrastCode2; item.ConBudProjCode = data.ConBudProjCode; item.StartTime = data.StartTime; item.EndTime = data.EndTime; item.CloseDate = data.CloseDate; item.LPersonId = data.LPersonId; item.LPositionCode = data.LPositionCode; item.DPositionCode = data.DPositionCode; item.CLPositionCode = data.CLPositionCode; item.SCLPositionCode = data.SCLPositionCode; item.DLPersonId = data.DLPersonId; item.CLPersonId = data.CLPersonId; item.SCLPersonId = data.SCLPersonId; item.StatusCode = data.StatusCode; item.Memo = data.Memo; item.ModProjCode = data.ModProjCode; item.CanBud = data.CanBud; item.IsAssPur = data.IsAssPur; item.AssAmt = data.AssAmt; item.IsUnderConstruction = data.IsUnderConstruction; item.IsFinConCtrl = data.IsFinConCtrl; item.IsPublic = data.IsPublic; item.IsComDef = data.IsComDef; item.IsPirFund = data.IsPirFund; item.IsDepInc = data.IsDepInc; item.IsMemCtrl = data.IsMemCtrl; item.IsInCtrl = data.IsInCtrl; item.IsRateCtrl = data.IsRateCtrl; item.IncomeCode = data.IncomeCode; item.IncDetCode = data.IncDetCode; item.AllotTypeCode = data.AllotTypeCode; item.IsIRIn = data.IsIRIn; item.Attribute = data.Attribute; item.AttrCode = data.AttrCode; item.IsCarryOver = data.IsCarryOver; item.IsBudCarryOver = data.IsBudCarryOver; item.IsInCarryOver = data.IsInCarryOver; item.IsBudAppCtrl = data.IsBudAppCtrl; item.IsFoucsAppro = data.IsFoucsAppro; item.IsFlowAppro = data.IsFlowAppro; item.IsVBudProj = data.IsVBudProj; item.BudProjCode = data.BudProjCode; item.IsPBud = data.IsPBud; item.IsCHK = data.IsCHK; item.IsCWCHK = data.IsCWCHK; item.CanDeficit = data.CanDeficit; item.IsDeficit = data.IsDeficit; item.MaxDeficit = data.MaxDeficit; item.FDAmt = data.FDAmt; item.EscorwAmt = data.EscorwAmt; item.CEscorwAmt = data.CEscorwAmt; item.NeedTaxAmt = data.NeedTaxAmt; item.CNeedTaxAmt = data.CNeedTaxAmt; item.IsInv = data.IsInv; item.InvAmt = data.InvAmt; item.RcvAmt = data.RcvAmt; item.TaxAmt = data.TaxAmt; item.VATAmt = data.VATAmt; item.DisAmt = data.DisAmt; item.IsFixFee = data.IsFixFee; item.FixMFee = data.FixMFee; item.CFixMFee = data.CFixMFee; item.IsPurCont = data.IsPurCont; item.ProjSource = data.ProjSource; item.OEntity = data.OEntity; item.YSWF = data.YSWF; item.YTWF = data.YTWF; item.ZXWF = data.ZXWF; item.JKWF = data.JKWF; item.LWWF = data.LWWF; item.XDWF = data.XDWF; item.ComGrpCode = data.ComGrpCode; item.RDprojLevCode = data.RDprojLevCode; item.RDProjSouUnitCode = data.RDProjSouUnitCode; item.RDProjTypeCode = data.RDProjTypeCode; item.RDProjSubTypeCode = data.RDProjSubTypeCode; item.RDauthorizeSn = data.RDauthorizeSn; item.RDAchievement = data.RDAchievement; item.RDAuthorizeFee = data.RDAuthorizeFee; item.RDAttachFee = data.RDAttachFee; item.Active = data.Active; item.CreatedUser = data.CreatedUser; item.CreatedDate = data.CreatedDate; item.ChangedUser = data.ChangedUser; item.ChangedDate = data.ChangedDate; item.CCheckedUser = data.CCheckedUser; item.CCheckedDate = data.CCheckedDate; item.CWCheckedUser = data.CWCheckedUser; item.CWCheckedDate = data.CWCheckedDate; } ObjectFactory.MarkAsChild(item); ObjectFactory.MarkOld(item); return(item); }