コード例 #1
0
        /// <summary>
        /// 窗体载入
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void FormUser_Load(object sender, EventArgs e)
        {
            if (GlobalObject.GeneralFunction.IsNullOrEmpty(m_dept))
            {
                m_findPersonnel = m_personnelServer.GetAllInfo();
            }
            else
            {
                m_findPersonnel = m_personnelServer.GetPersonnelViewInfo(Service_Peripheral_HR.PersonnelDefiniens.ParameterType.部门, m_dept);
            }

            if (m_findPersonnel == null || m_findPersonnel.Count() == 0)
            {
                return;
            }

            RefreshDataGridView(m_findPersonnel);

            // 显示列
            string[] showColumns = new string[] { "员工编号", "员工姓名", "部门", "职位" };

            for (int i = 0; i < dataGridView1.Columns.Count; i++)
            {
                dataGridView1.Columns[i].Width = 100;
                cmbFindItem.Items.Add(dataGridView1.Columns[i].Name);

                if (!showColumns.Contains(dataGridView1.Columns[i].Name))
                {
                    dataGridView1.Columns[i].Visible = false;
                }
            }

            cmbFindItem.SelectedIndex = 0;
        }
コード例 #2
0
        private void 提交toolStripButton_Click(object sender, EventArgs e)
        {
            if (txtStatus.Text.Trim() != "新建单据")
            {
                MessageDialog.ShowPromptMessage("请确认单据状态");
                return;
            }

            if (m_workSchedulingServer.IsExise(BasicInfo.LoginID, Convert.ToInt32(numMonth.Value.ToString())))
            {
                MessageDialog.ShowPromptMessage(numMonth.Value + "月已经存在排班!");
                return;
            }

            if (!CheckControl())
            {
                return;
            }

            List <HR_WorkSchedulingDetail> lstPersonnel = new List <HR_WorkSchedulingDetail>();

            int day1 = GlobalObject.Year.GetDays(dtpBegin.Value);
            int days = 0;

            for (int i = dtpBegin.Value.Day; i <= day1; i++)
            {
                days++;
            }

            for (int i = 0; i < dataGridView1.Rows.Count; i++)
            {
                DataGridViewCellCollection cells = dataGridView1.Rows[i].Cells;

                for (int j = 0; j < dataGridView1.Columns.Count; j++)
                {
                    HR_WorkSchedulingDetail    personnel         = new HR_WorkSchedulingDetail();
                    DataGridViewComboBoxColumn dgvComboBoxColumn = dataGridView1.Columns[j] as DataGridViewComboBoxColumn;

                    if (dataGridView1.Columns[j].CellType.Name == "DataGridViewComboBoxCell" && cells[j].Value != null)
                    {
                        personnel.WorkID = dataGridView1.Rows[i].Cells["工号"].Value.ToString();

                        if (dtpBegin.Value.Month == dtpEnd.Value.Month)
                        {
                            //personnel.Date = Convert.ToDateTime(numYear.Value + "-" + dtpBegin.Value.Month + "-" + dataGridView1.Columns[j].HeaderText);
                            if (j - 1 <= days)
                            {
                                personnel.Date = Convert.ToDateTime(numYear.Value + "-" + dtpBegin.Value.Month + "-" + dataGridView1.Columns[j].HeaderText);
                            }
                            else
                            {
                                break;
                            }
                        }
                        else
                        {
                            if (j - 1 <= days)
                            {
                                personnel.Date = Convert.ToDateTime(numYear.Value + "-" + dtpBegin.Value.Month + "-" + dataGridView1.Columns[j].HeaderText);
                            }
                            else
                            {
                                personnel.Date = Convert.ToDateTime(numYear.Value + "-" + dtpEnd.Value.Month + "-" + dataGridView1.Columns[j].HeaderText);
                            }
                        }

                        personnel.Code = cells[j].Value == DBNull.Value ? "" : cells[j].Value.ToString();
                        lstPersonnel.Add(personnel);
                    }
                }
            }

            HR_WorkScheduling workSchedule = new HR_WorkScheduling();
            bool isDeptDirector            = false;

            IQueryable <View_HR_PersonnelArchive> directorGroup = m_personnerServer.GetDeptDirector(m_personnerServer.GetPersonnelInfo(txtCreaterWorkID.Tag.ToString()).Dept, "0");
            bool flag = false;

            if (directorGroup != null && directorGroup.Count() > 0)
            {
                isDeptDirector = true;

                foreach (var item in directorGroup)
                {
                    if (BasicInfo.LoginID == item.员工编号)
                    {
                        flag = true;

                        break;
                    }
                }
            }

            IQueryable <View_HR_PersonnelArchive> directorGroup1 = m_personnerServer.GetDeptDirector(m_personnerServer.GetPersonnelInfo(txtCreaterWorkID.Tag.ToString()).Dept, "1");
            bool flagPri = false;

            if (directorGroup1 != null && directorGroup1.Count() > 0)
            {
                foreach (var item in directorGroup1)
                {
                    if (BasicInfo.LoginID == item.员工编号)
                    {
                        flagPri = true;

                        break;
                    }
                }
            }

            if (!flag && !flagPri)
            {
                if (isDeptDirector)
                {
                    workSchedule.BillStatus = OverTimeBillStatus.等待主管审核.ToString();
                }
                else
                {
                    workSchedule.BillStatus = OverTimeBillStatus.等待部门负责人审核.ToString();
                }
            }
            else if (flag && !flagPri)
            {
                workSchedule.BillStatus = OverTimeBillStatus.等待部门负责人审核.ToString();
            }

            workSchedule.ScheduleName  = txtScheduleName.Text;
            workSchedule.CreateDate    = dtpCreateDate.Value;
            workSchedule.CreaterWorkID = txtCreaterWorkID.Tag.ToString();
            workSchedule.BeginDate     = dtpBegin.Value;
            workSchedule.EndDate       = dtpEnd.Value;
            workSchedule.Remark        = txtRemark.Text;
            workSchedule.Year          = Convert.ToInt32(numYear.Value);
            workSchedule.Month         = Convert.ToInt32(numMonth.Value);
            workSchedule.PendingDate   = Convert.ToDateTime(dateTimePendingDate.Value.ToShortDateString());

            txtBillNo.Text = m_workSchedulingServer.AddWorkScheduling(workSchedule, lstPersonnel, out error).ToString();

            if (Convert.ToInt32(txtBillNo.Text) < 0)
            {
                MessageDialog.ShowPromptMessage(error);
                return;
            }
            else
            {
                MessageDialog.ShowPromptMessage("新增成功!");
                m_billMessageServer.DestroyMessage(txtBillNo.Text);

                if (workSchedule.BillStatus.Equals(OverTimeBillStatus.等待主管审核.ToString()))
                {
                    m_billMessageServer.SendNewFlowMessage(txtBillNo.Text, string.Format("{0}号请假申请单,请主管审核", txtBillNo.Text),
                                                           BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetDeptDirectorRoleName(
                                                               m_personnerServer.GetPersonnelViewInfo(txtCreaterWorkID.Tag.ToString()).部门编号).ToList());
                }
                else if (workSchedule.BillStatus == OverTimeBillStatus.等待部门负责人审核.ToString())
                {
                    m_billMessageServer.SendNewFlowMessage(txtBillNo.Text, string.Format("{0}号请假申请单,请部门负责人审核", m_billNo),
                                                           BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetDeptPrincipalRoleName(
                                                               m_personnerServer.GetPersonnelViewInfo(txtCreaterWorkID.Tag.ToString()).部门编号).ToList());
                }
            }

            this.Close();
        }
コード例 #3
0
        private void 提交单据ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (lblStatus.Text.Trim() == OverTimeBillStatus.新建单据.ToString())
            {
                if (!CheckControl())
                {
                    return;
                }

                List <HR_OvertimePersonnel> lstPersonnel = new List <HR_OvertimePersonnel>(dataGridView2.Rows.Count);

                for (int i = 0; i < dataGridView2.Rows.Count; i++)
                {
                    HR_OvertimePersonnel       personnel = new HR_OvertimePersonnel();
                    DataGridViewCellCollection cells     = dataGridView2.Rows[i].Cells;

                    personnel.WorkID = dataGridView2.Rows[i].Cells["员工编号"].Value.ToString();
                    lstPersonnel.Add(personnel);
                }

                HR_OvertimeBill overTimeBill = new HR_OvertimeBill();

                overTimeBill.Applicant         = txtApplicant.Tag.ToString();
                overTimeBill.Authorize         = false;
                overTimeBill.BeginTime         = dtpBeginTime.Value;
                overTimeBill.CompensateMode    = cmbCompensateMode.Text;
                overTimeBill.Date              = ServerTime.Time;
                overTimeBill.Errand            = txtErrand.Text;
                overTimeBill.Hours             = numHours.Value;
                overTimeBill.RealHours         = Convert.ToDouble(numHours.Value);
                overTimeBill.NumberOfPersonnel = Convert.ToInt32(txtNumOfPersonnel.Text);
                overTimeBill.VerifyFinish      = false;
                overTimeBill.EndTime           = dtpEndTime.Value;
                overTimeBill.OvertimeAddress   = cmbOvertimeAddress.Text;

                IQueryable <View_HR_PersonnelArchive> directorGroup1 = m_personnerServer.GetDeptDirector(
                    m_personnerServer.GetPersonnelInfo(txtApplicant.Tag.ToString()).Dept, "1");

                bool flagPri        = false; //判断申请人是不是负责人
                bool isDeptDirector = false; //申请部门有没有主管

                if (directorGroup1 != null && directorGroup1.Count() > 0)
                {
                    foreach (var item in directorGroup1)
                    {
                        if (BasicInfo.LoginID == item.员工编号)
                        {
                            flagPri = true;

                            break;
                        }
                    }
                }

                IQueryable <View_HR_PersonnelArchive> directorGroup = m_personnerServer.GetDeptDirector(
                    m_personnerServer.GetPersonnelInfo(txtApplicant.Tag.ToString()).Dept, "0");
                bool flag = false;//判断申请人是不是主管

                if (directorGroup != null && directorGroup.Count() > 0)
                {
                    isDeptDirector = true;

                    foreach (var item in directorGroup)
                    {
                        if (BasicInfo.LoginID == item.员工编号)
                        {
                            flag = true;

                            break;
                        }
                    }
                }

                if (!flag && !flagPri)
                {
                    if (isDeptDirector)
                    {
                        overTimeBill.BillStatus = OverTimeBillStatus.等待主管审核.ToString();
                    }
                    else
                    {
                        overTimeBill.BillStatus = OverTimeBillStatus.等待部门负责人审核.ToString();
                    }
                }
                else if (flag && !flagPri)
                {
                    overTimeBill.BillStatus = OverTimeBillStatus.等待部门负责人审核.ToString();
                }
                else
                {
                    overTimeBill.BillStatus = OverTimeBillStatus.等待分管领导审批.ToString();
                }

                m_billNo = m_overTimeServer.AddOverTimeBill(overTimeBill, lstPersonnel, out error).ToString();

                if (Convert.ToInt32(m_billNo) < 0)
                {
                    MessageDialog.ShowPromptMessage(error);
                    return;
                }
                else
                {
                    MessageDialog.ShowPromptMessage("新增成功!");

                    m_billMessageServer.DestroyMessage(m_billNo);

                    if (overTimeBill.BillStatus.Equals(OverTimeBillStatus.等待主管审核.ToString()))
                    {
                        m_billMessageServer.SendNewFlowMessage(m_billNo, string.Format("{0}号加班申请单,请主管审核", m_billNo),
                                                               BillFlowMessage_ReceivedUserType.角色,
                                                               m_billMessageServer.GetDeptDirectorRoleName(m_personnerServer.GetPersonnelViewInfo(
                                                                                                               txtApplicant.Tag.ToString()).部门编号).ToList());
                    }
                    else if (overTimeBill.BillStatus == OverTimeBillStatus.等待部门负责人审核.ToString())
                    {
                        m_billMessageServer.SendNewFlowMessage(m_billNo, string.Format("{0}号加班申请单,请部门负责人审核", m_billNo),
                                                               BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetDeptPrincipalRoleName(
                                                                   m_personnerServer.GetPersonnelViewInfo(txtApplicant.Tag.ToString()).部门编号).ToList());
                    }
                    else
                    {
                        m_billMessageServer.SendNewFlowMessage(m_billNo, string.Format("{0}号加班申请单,请分管领导审核", m_billNo),
                                                               BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetDeptLeaderRoleName(
                                                                   m_personnerServer.GetPersonnelViewInfo(txtApplicant.Tag.ToString()).部门编号).ToList());
                    }
                }
            }
            else
            {
                MessageDialog.ShowPromptMessage("请确认单据状态!");
                return;
            }
            this.Close();
        }
コード例 #4
0
        /// <summary>
        /// 获得人员变更历史
        /// </summary>
        /// <returns>变更历史数据集</returns>
        HR_PersonnelArchiveChange GetChangeData()
        {
            try
            {
                HR_PersonnelArchiveChange personnelChange = new HR_PersonnelArchiveChange();
                View_HR_PersonnelArchive  dt = m_personnerServer.GetPersonnelViewInfo(txtApplicant.Tag.ToString());

                if (dt != null)
                {
                    personnelChange.WorkID         = dt.员工编号;
                    personnelChange.Name           = dt.员工姓名;
                    personnelChange.WorkPost       = dt.岗位;
                    personnelChange.JobTitle       = dt.外部职称;
                    personnelChange.JobLevel       = dt.内部级别;
                    personnelChange.IsCore         = dt.是否核心员工;
                    personnelChange.Sex            = dt.性别;
                    personnelChange.DeptName       = dt.部门;
                    personnelChange.Dept           = dt.部门编号;
                    personnelChange.Birthday       = dt.出生日期;
                    personnelChange.Nationality    = dt.国籍;
                    personnelChange.Race           = dt.民族;
                    personnelChange.Birthplace     = dt.籍贯;
                    personnelChange.Party          = dt.政治面貌;
                    personnelChange.ID_Card        = dt.身份证;
                    personnelChange.College        = dt.毕业院校;
                    personnelChange.EducatedDegree = dt.文化程度;
                    personnelChange.EducatedMajor  = dt.专业;
                    personnelChange.FamilyAddress  = dt.家庭地址;
                    //personnelChange.PostCode = dt.邮编;
                    personnelChange.Phone       = dt.电话;
                    personnelChange.Speciality  = dt.特长;
                    personnelChange.MobilePhone = dt.手机;
                    //personnelChange.TrainingAmount = dt.培训次数;
                    //personnelChange.ChangePostAmount = dt.调动次数;
                    //personnelChange.Bank = dt.开户银行;
                    //personnelChange.BankAccount = dt.银行账号;
                    personnelChange.QQ    = dt.QQ号码;
                    personnelChange.Email = dt.电子邮箱;
                    personnelChange.Hobby = dt.爱好;
                    //personnelChange.SocietySecurityNumber = dt.社会保障号;
                    personnelChange.LengthOfSchooling         = dt.学制;
                    personnelChange.JobNature                 = dt.工作性质;
                    personnelChange.BecomeRegularEmployeeDate = dt.转正日期;
                    personnelChange.GraduationYear            = dt.毕业年份;

                    if (dt.照片 != null)
                    {
                        personnelChange.Photo = dt.照片;
                    }

                    if (dt.附件 != null)
                    {
                        personnelChange.Annex     = dt.附件;
                        personnelChange.AnnexName = dt.附件名;
                    }

                    if (dt.关联编号.ToString() != "")
                    {
                        personnelChange.ResumeID = dt.关联编号;
                    }

                    personnelChange.Remark      = dt.备注;
                    personnelChange.ChangerCode = BasicInfo.LoginID;
                    personnelChange.ChangeTime  = ServerTime.Time;
                }

                return(personnelChange);
            }
            catch (Exception ex)
            {
                MessageDialog.ShowPromptMessage(ex.Message);
                return(null);
            }
        }
コード例 #5
0
        private void 提交申请ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (lblStatus.Text.Trim() == DimissionBillStatus.新建单据.ToString())
            {
                if (txtReason.Text.Trim() == "")
                {
                    MessageDialog.ShowPromptMessage("请填写离职原因!");
                    return;
                }

                HR_DimissionBill dimission = new HR_DimissionBill();

                dimission.Date            = dtpDate.Value;
                dimission.Dept            = txtDept.Tag.ToString();
                dimission.WorkPost        = txtWorkPost.Text;
                dimission.WorkID          = txtApplicant.Tag.ToString();
                dimission.Reason          = txtReason.Text;
                dimission.DeptAuthorize   = false;
                dimission.LeaderAuthorize = false;
                dimission.GM_Authorize    = false;
                //dimission.AllowDimissionDate = ServerTime.Time.AddDays(1);
                dimission.DeptSignatureDate   = ServerTime.Time;
                dimission.HR_SignatureDate    = ServerTime.Time;
                dimission.LeaderSignatureDate = ServerTime.Time;
                dimission.GM_SignatureDate    = ServerTime.Time;
                dimission.BillStatus          = DimissionBillStatus.等待部门负责人审核.ToString();

                billID = Convert.ToInt32(m_dimiServer.AddAndUpdateDimission(dimission, "提交申请", out error));

                if (billID == 0)
                {
                    MessageDialog.ShowPromptMessage(error);
                    return;
                }

                //m_billMessageServer.SendNewFlowMessage(billID.ToString(), string.Format("{0}号离职申请,请主管审核",billID.ToString()),
                //    BillFlowMessage_ReceivedUserType.角色,m_billMessageServer.GetDeptPrincipalRoleName(m_highDept)[0]);

                m_billMessageServer.SendNewFlowMessage(billID.ToString(), string.Format("{0}号离职申请,请主管审核", billID),
                                                       BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetDeptPrincipalRoleName(m_personnerServer.GetPersonnelViewInfo(txtApplicant.Tag.ToString()).部门编号).ToList());
            }
            else
            {
                MessageDialog.ShowPromptMessage("请确认单据状态!");
                return;
            }

            this.Close();
        }