Exemple #1
0
        private void DeleteDepart_Click(object sender, EventArgs e)
        {
            try
            { string       c            = this.DepartmentList.SelectedRows[0].Cells[0].Value.ToString();
              DialogResult dialogResult = MessageBox.Show("Are you you want to delete " + DeptName.Text + "?", "Delete?", MessageBoxButtons.YesNo);
              if (dialogResult == DialogResult.Yes)
              {
                  foreach (DataGridViewRow row in this.DepartmentList.SelectedRows)
                  {
                      //Logical delete in database
                      dbConnect.Update("Update tblDepartment set boolDepIsDel = true where strDepCode = '" + row.Cells[0].Value.ToString() + "';");
                  }
                  DeptName.Clear();
                  AddDepart.Visible    = true;
                  DeleteDepart.Visible = true;
                  button5.Visible      = false;
                  CancelDep.Visible    = false;

                  //to generate code and refresh departments
                  this.DeptCode.Text = codeGenerator.generateCodeParent("tblDepartment", "strDepCode", "Dep");
                  refreshDepartments();
              }
              else if (dialogResult == DialogResult.No)
              {
              }
            }
            catch (ArgumentOutOfRangeException)
            {
                MessageBox.Show("No selected Department");
            }
            //refresh Departments
            refreshDepartments();
        }
Exemple #2
0
        private void AddDepart_Click(object sender, EventArgs e)
        {
            string txtDepCode = DeptCode.Text;
            string txtDepName = DeptName.Text;

            if (DeptName.Text != "")
            {
                //search if existing
                if (!isExisting(txtDepName, DepartmentList))
                {
                    dbConnect.Insert("insert into tblDepartment values('" + txtDepCode + "','" + txtDepName + "',false);");
                    DeptName.Clear();
                    this.Close();
                }
            }
            else
            {
                MessageBox.Show("Input a Department name");
            }
            //Generate new Department Code
            this.DeptCode.Text = codeGenerator.generateCodeParent("tblDepartment", "strDepCode", "Dep");

            //refresh DepartmentList
            refreshDepartments();
        }
 public string this[string columnName]
 {
     get
     {
         switch (columnName)
         {
         case nameof(DeptName):
             return(DeptName != null && DeptName.Trim().Length > 0 ? null : "请输入或选择部门");
         }
         return(null);
     }
 }
Exemple #4
0
        private void CancelDep_Click(object sender, EventArgs e)
        {
            DeptName.Clear();
            AddDepart.Visible    = true;
            DeleteDepart.Visible = true;
            button5.Visible      = false;
            CancelDep.Visible    = false;

            //to generate code and refresh departments
            this.DeptCode.Text = codeGenerator.generateCodeParent("tblDepartment", "strDepCode", "Dep");
            refreshDepartments();
        }
Exemple #5
0
        private void button5_Click(object sender, EventArgs e)
        {
            if (!isExisting(DeptName.Text, DepartmentList))
            {
                dbConnect.Update("update tblDepartment set strDepName = '" + DeptName.Text + "' where strDepCode = '" + DeptCode.Text + "';");
                MessageBox.Show("Update Successful!");

                DeptName.Clear();
                AddDepart.Visible    = true;
                DeleteDepart.Visible = true;
                button5.Visible      = false;
                CancelDep.Visible    = false;

                //to generate code and refresh departments
                this.DeptCode.Text = codeGenerator.generateCodeParent("tblDepartment", "strDepCode", "Dep");
                refreshDepartments();
            }
        }
        public override bool Resolve(IWorkflowContext context)
        {
            if (string.IsNullOrEmpty(DeptName))
            {
                throw new ArgumentNullException("部门条件必须设置部门名称");
            }
            var    result            = false;
            string currentDepartment = string.Empty;

            if (DepartmentType == DepartmentConditionType.CreatorDepartment)
            {
                var user = context.CurrentUser as IUser;
                if (user != null)
                {
                    currentDepartment = user.Department.Name;
                }
            }
            else
            {
                var instance = context.FlowInstance;
                currentDepartment = instance.Creator.Department.Name;
            }
            if (DeptName.IndexOf(',') > 0)
            {
                string[] depts = DeptName.Split(',');
                if (depts.Contains(currentDepartment, StringComparer.Create(Thread.CurrentThread.CurrentCulture, true)))
                {
                    result = true;
                }
            }
            else
            {
                if (currentDepartment.Equals(DeptName, StringComparison.CurrentCultureIgnoreCase))
                {
                    result = true;
                }
            }
            return(result);
        }
Exemple #7
0
 /// <summary>
 /// 新增科室
 /// </summary>
 /// <param name="sender">控件</param>
 /// <param name="e">参数</param>
 private void DetailAdd_Click(object sender, EventArgs e)
 {
     isNew = true;
     ClearData();
     DeptName.Focus();
 }
        //public ActionResult OrgChart()
        //{
        //    DSRCManagementSystemEntities1 db = new DSRCManagementSystemEntities1();
        //    DSRCManagementSystem.Models.Users obj_User = new DSRCManagementSystem.Models.Users();
        //    //var OrgChart1 = from r in db.Roles
        //    //                join rh in db.RoleHierarchies on r.RoleID equals rh.RoleID
        //    //                join ur in db.UserRoles on r.RoleID equals ur.RoleID
        //    //var OrgChart = (from u in db.Users
        //    //                join ur in db.UserReportings on u.UserID equals ur.UserID
        //    //                select ur).GroupBy(i => i.UserID);

        //    var result = (from r in db.Roles
        //                  from rh in db.RoleHierarchies
        //                  from ur in db.UserRoles
        //                  from u in db.Users
        //                  join ure in db.UserReportings on u.UserID equals ure.UserID into ps
        //                  from ure in ps.DefaultIfEmpty()
        //                  from d in db.Departments
        //                  where r.RoleID == rh.RoleID && r.RoleID == ur.RoleID && ur.UserID == u.UserID && u.DepartmentId == d.DepartmentId
        //                  select new
        //                  {
        //                      parent = rh.Parent,
        //                      roleid = r.RoleID,
        //                      rolename = r.RoleName,
        //                      userid = u.UserID,
        //                      username = u.FirstName,
        //                      departmentname = d.DepartmentName,
        //                      reportinguserid = ure.ReportingUserID
        //                  }).OrderBy(i => i.parent);//.GroupBy(i => i.reportinguserid);

        //        //from u in db.Users
        //        //         from d in db.Departments
        //        //         where u.DepartmentId == d.DepartmentId
        //        //         select new {
        //        //             userid = u.UserID,
        //        //             username = u.FirstName,
        //        //             departmentid = u.DepartmentId,
        //        //             departmentname = d.DepartmentName
        //        //        };

        //    var resultList = new List<Org>();
        //    var urList = db.Users.ToList();
        //    foreach (var item in result)
        //    {
        //        //var current = item.First().ReportingUserID;
        //        resultList.Add(new Org
        //        {
        //            Name = item.,
        //            Format = "",
        //            ReportingName = urList.FirstOrDefault(i => i.UserID == current).FirstName
        //        });
        //    }
        //    return View(resultList);
        //}

        //public ActionResult OrgChart()
        //{
        //    DSRCManagementSystemEntities1 db = new DSRCManagementSystemEntities1();
        //    //var result = (from r in db.Roles
        //    //              from rh in db.RoleHierarchies
        //    //              from ur in db.UserRoles
        //    //              from u in db.Users
        //    //              join ure in db.UserReportings on u.UserID equals ure.UserID into ps
        //    //              from ure in ps.DefaultIfEmpty()
        //    //              from d in db.Departments
        //    //              where r.RoleID == rh.RoleID && r.RoleID == ur.RoleID && ur.UserID == u.UserID && u.DepartmentId == d.DepartmentId
        //    //              select new
        //    //              {
        //    //                  parent = rh.Parent,
        //    //                  roleid = r.RoleID,
        //    //                  rolename = r.RoleName,
        //    //                  userid = u.UserID,
        //    //                  username = u.FirstName,
        //    //                  departmentname = d.DepartmentName,
        //    //                  reportinguserid = ure.ReportingUserID
        //    //              }).OrderBy(i => i.parent);//.GroupBy(i => i.reportinguserid);

        //    //List<OrgChart> resultSet = new List<OrgChart>();

        //    //foreach (var item in result)
        //    //{
        //    //    resultSet.Add(new OrgChart()
        //    //    {
        //    //        UserID = item.userid,
        //    //        Name = item.username,
        //    //        ReportingUserId = item.reportinguserid ?? null,
        //    //        Tooltip = item.rolename
        //    //    });
        //    //}

        //    //var result = from oc in db.OrgCharts
        //    //             join d in db.Departments on oc.DepartmentID equals d.DepartmentId
        //    //             select new
        //    //             {
        //    //                UserId = oc.UserID,
        //    //                DepartmentID = d.DepartmentId,
        //    //                DepartmentName = d.DepartmentName,
        //    //                PrecendenceOrder = oc.PrecedenceOrder
        //    //             };
        //    //List<OrgChart> resultset = new List<OrgChart>();

        //    //foreach (var item in result)
        //    //{
        //    //    resultset.Add(new OrgChart()
        //    //    {
        //    //        UserID = item.UserId,
        //    //        DepartmentID = item.DepartmentID,
        //    //        //DepartmentName = item.DepartmentName,
        //    //        PrecedenceOrder  = item.PrecendenceOrder

        //    //    });
        //    //}
        //    return View(result);
        //}


        //public ActionResult ChartData()
        //{
        //    DSRCManagementSystemEntities1 db = new DSRCManagementSystemEntities1();
        //    var result = (from r in db.Roles
        //                  from rh in db.RoleHierarchies
        //                  from ur in db.UserRoles
        //                  from u in db.Users
        //                  join ure in db.UserReportings on u.UserID equals ure.UserID into ps
        //                  from ure in ps.DefaultIfEmpty()
        //                  from d in db.Departments
        //                  where r.RoleID == rh.RoleID && r.RoleID == ur.RoleID && ur.UserID == u.UserID && u.DepartmentId == d.DepartmentId
        //                  select new
        //                  {
        //                      parent = rh.Parent,
        //                      roleid = r.RoleID,
        //                      rolename = r.RoleName,
        //                      userid = u.UserID,
        //                      username = u.FirstName,
        //                      departmentname = d.DepartmentName,
        //                      reportinguserid = ure.ReportingUserID
        //                  }).OrderBy(i => i.parent);//.GroupBy(i => i.reportinguserid);

        //    List<OrgChart> resultSet = new List<OrgChart>();

        //    foreach (var item in result)
        //    {
        //        resultSet.Add(new OrgChart()
        //        {
        //            UserID = item.userid,
        //            Name = item.username,
        //            ReportingUserId = (int)item.reportinguserid,
        //            Tooltip = item.rolename
        //        });
        //    }

        //    return Json(resultSet, JsonRequestBehavior.AllowGet);
        //}

        public ActionResult Node()
        {
            List <Node> Data = new List <Node>();

            try
            {
                Data.Add(new Node()
                {
                    NodeId = "0", Name = "Rohan", ParentNodeId = "", Tooltip = "MD"
                });
                DSRCManagementSystemEntities1 db = new DSRCManagementSystemEntities1();
                //var resultList = (from d in db.Departments
                //                  join oc in db.OrgCharts on d.DepartmentId equals oc.DepartmentID into DeptName
                //                  from em in DeptName.DefaultIfEmpty()
                //                  join u in db.Users on em.UserID eq uals u.UserID into Resu
                //                  from final in resultList

                var resultList = (from d in db.Departments
                                  join oc in db.OrgCharts on d.DepartmentId equals oc.DepartmentID into DeptName
                                  from de in DeptName.DefaultIfEmpty()
                                  join u in db.Users on de.UserID equals u.UserID into res
                                  from final in res.DefaultIfEmpty()
                                  select new ChartStructure
                {
                    RecordID = de.ID,
                    UserId = de.UserID,
                    UserName = final.FirstName,
                    DepartmentID = d.DepartmentId,
                    DepartmentName = d.DepartmentName,
                    PrecendenceOrder = de.PrecedenceOrder
                }).GroupBy(i => i.DepartmentID);

                //var joins = (from d in db.Departments
                //             join oc in db.OrgCharts on d.DepartmentId equals oc.DepartmentID into DeptName
                //             from de in DeptName.DefaultIfEmpty()
                //             join u in db.Users on de.UserID equals u.UserID into res
                //             from final in res.DefaultIfEmpty()
                //             select new Temp
                //             {
                //                 RecordID = de.ID,
                //                 UserId = final.UserID,
                //                 DepartmentID = d.DepartmentId,
                //                 DepartmentName = d.DepartmentName,
                //                 PrecendenceOrder = de.PrecedenceOrder
                //             }).GroupBy(i => i.DepartmentID);



                foreach (var item in resultList)
                {
                    var deptId = item.Key;
                    Data.Add(new Node()
                    {
                        NodeId = deptId.ToString(), Name = item.FirstOrDefault().DepartmentName, ParentNodeId = "0", Tooltip = "Department"
                    });
                    var childParentId = deptId;
                    var childNodeId   = deptId * 10;

                    foreach (var userNode in item.OrderBy(i => i.PrecendenceOrder))
                    {
                        if (userNode.RecordID != null && userNode.UserId != null && userNode.UserName != null && userNode.PrecendenceOrder != null)
                        {
                            Data.Add(new Node()
                            {
                                NodeId = childNodeId.ToString(), Name = userNode.UserName, ParentNodeId = childParentId.ToString(), Tooltip = "Employee"
                            });
                            childParentId = childNodeId;
                            childNodeId++;
                        }
                    }
                }
            }
            catch (Exception Ex)
            {
                string actionName     = this.ControllerContext.RouteData.Values["action"].ToString();
                string controllerName = this.ControllerContext.RouteData.Values["controller"].ToString();
                ExceptionHandlingController.ExceptionDetails(Ex, actionName, controllerName);
            }
            return(View(Data));
        }