private void 批准ToolStripMenuItem_Click(object sender, EventArgs e) { if (lblStatus.Text.Trim() == DimissionBillStatus.等待总经理批准.ToString()) { if (txtGMOpinion.Text.Trim() == "") { MessageDialog.ShowPromptMessage("请填写总经理意见!"); return; } HR_DimissionBill dimission = new HR_DimissionBill(); dimission.GM_Opinion = txtGMOpinion.Text; dimission.GM_Signature = BasicInfo.LoginID; dimission.GM_SignatureDate = ServerTime.Time; dimission.WorkID = txtApplicant.Tag.ToString(); dimission.AllowDimissionDate = dtpAllowDate.Value; dimission.Date = dtpDate.Value; dimission.Reason = txtReason.Text; if (!cbGMAuthorize.Checked) { if (MessageBox.Show("您是否同意 " + txtApplicant.Text.Trim() + " 的离职申请?", "消息", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { cbGMAuthorize.Checked = true; } else { cbGMAuthorize.Checked = false; } } dimission.GM_Authorize = cbGMAuthorize.Checked; billID = Convert.ToInt32(m_dimiServer.AddAndUpdateDimission(dimission, "总经理批准", out error)); if (billID == 0) { MessageDialog.ShowPromptMessage(error); return; } List <string> noticeUser = new List <string>(); noticeUser.Add(txtApplicant.Tag.ToString()); List <string> noticeRole = new List <string>(); noticeRole.Add(CE_RoleEnum.人力资源主管.ToString()); m_billMessageServer.EndFlowMessage(billID.ToString(), string.Format("{0} 号离职申请已经处理完毕", billID), noticeRole, noticeUser); } else { MessageDialog.ShowPromptMessage("请确认单据状态!"); return; } this.Close(); }
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(); }
private void dataGridView1_DoubleClick(object sender, EventArgs e) { m_Dimission = m_dimiServer.GetAllDimission(Convert.ToInt32(dataGridView1.CurrentRow.Cells["编号"].Value)); string deptName = dataGridView1.CurrentRow.Cells["部门"].Value.ToString(); string deptCode = dataGridView1.CurrentRow.Cells["部门编码"].Value.ToString(); string workPost = dataGridView1.CurrentRow.Cells["岗位"].Value.ToString(); string name = dataGridView1.CurrentRow.Cells["员工姓名"].Value.ToString(); FormDimissionList frm = new FormDimissionList(m_authorityFlag, m_Dimission, deptName, deptCode, workPost, name, m_Dimission.ID); frm.ShowDialog(); RefreshControl(); PositioningRecord(m_Dimission.ID.ToString()); }
/// <summary> /// 获取员工离职所有信息 /// </summary> /// <param name="billID">单据编号</param> /// <returns>返回数据集</returns> public HR_DimissionBill GetAllDimission(int billID) { DepotManagementDataContext dataContxt = CommentParameter.DepotDataContext; var result = from a in dataContxt.HR_DimissionBill where a.ID == billID select a; if (result.Count() == 1) { HR_DimissionBill dimission = result.Single(); return(dimission); } return(null); }
private void 审批ToolStripMenuItem1_Click(object sender, EventArgs e) { if (lblStatus.Text.Trim() == DimissionBillStatus.等待人力资源审阅.ToString()) { if (txtHROpinion.Text.Trim() == "") { MessageDialog.ShowPromptMessage("请填写人力资源部意见!"); return; } HR_DimissionBill dimission = new HR_DimissionBill(); dimission.HR_Opinion = txtHROpinion.Text; dimission.HR_Signature = txtHRSignature.Text; dimission.HR_SignatureDate = dtpHRDate.Value; dimission.WorkID = txtApplicant.Tag.ToString(); dimission.Date = dtpDate.Value; dimission.Reason = txtReason.Text; billID = Convert.ToInt32(m_dimiServer.AddAndUpdateDimission(dimission, "人力资源部审批", out error)); if (billID == 0) { MessageDialog.ShowPromptMessage(error); return; } MessageDialog.ShowPromptMessage("人力资源部审批成功!等待分管领导审核"); m_billMessageServer.PassFlowMessage(billID.ToString(), string.Format("{0}号离职申请单,请分管领导审核", billID.ToString()), BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetDeptLeaderRoleName(m_personnerServer.GetPersonnelViewInfo(txtApplicant.Tag.ToString()).部门编号).ToList()); } else { MessageDialog.ShowPromptMessage("请确认单据状态!"); return; } this.Close(); }
public FormDimissionList(AuthorityFlag authFlag, HR_DimissionBill dimission, string deptName, string deptCode, string workPost, string name, int id) { InitializeComponent(); m_billMessageServer.BillType = "员工离职申请单"; AuthorityControl(authFlag); m_DimissionLinq = dimission; billID = id; txtDept.Text = deptName; txtDept.Tag = deptCode; txtWorkPost.Text = workPost; txtApplicant.Text = name; txtReason.ReadOnly = true; txtReason.BackColor = Color.White; BindControl(); menuStrip1.Visible = true; }
/// <summary> /// 新增或修改员工离职申请信息 /// </summary> /// <param name="dimission">员工离职数据集</param> /// <param name="type">进行步骤(提交申请/部门负责人审批/人力资源部审批/分管领导审批/总经理批准)</param> /// <param name="error">错误信息</param> /// <returns>返回单据编号,失败返回0</returns> public string AddAndUpdateDimission(HR_DimissionBill dimission, string type, out string error) { error = ""; try { DepotManagementDataContext dataContxt = CommentParameter.DepotDataContext; var result = from a in dataContxt.HR_DimissionBill where a.WorkID == dimission.WorkID && a.Date.Month == dimission.Date.Month && a.Date.Day == dimission.Date.Day select a; switch (type) { case "提交申请": if (result.Count() > 0) { error = "不能重复提交离职申请!"; return("0"); } dataContxt.HR_DimissionBill.InsertOnSubmit(dimission); break; case "部门负责人审批": if (result.Count() == 1) { HR_DimissionBill dimiList = result.Single(); dimiList.DeptAuthorize = dimission.DeptAuthorize; dimiList.DeptOpinion = dimission.DeptOpinion; dimiList.DeptSignature = dimission.DeptSignature; dimiList.DeptSignatureDate = dimission.DeptSignatureDate; dimiList.AllowDimissionDate = dimission.AllowDimissionDate; if (!dimission.DeptAuthorize) { dimiList.BillStatus = DimissionBillStatus.已完成.ToString(); } else { dimiList.BillStatus = DimissionBillStatus.等待人力资源审阅.ToString(); } } break; case "人力资源部审批": if (result.Count() == 1) { HR_DimissionBill dimiList = result.Single(); dimiList.HR_Opinion = dimission.HR_Opinion; dimiList.HR_Signature = dimission.HR_Signature; dimiList.HR_SignatureDate = dimission.HR_SignatureDate; dimiList.BillStatus = DimissionBillStatus.等待分管领导审核.ToString(); } break; case "分管领导审批": if (result.Count() == 1) { HR_DimissionBill dimiList = result.Single(); dimiList.LeaderAuthorize = dimission.LeaderAuthorize; dimiList.LeaderOpinion = dimission.LeaderOpinion; dimiList.LeaderSignature = dimission.LeaderSignature; dimiList.LeaderSignatureDate = dimission.LeaderSignatureDate; if (!dimission.LeaderAuthorize) { dimiList.BillStatus = DimissionBillStatus.已完成.ToString(); } else { dimiList.BillStatus = DimissionBillStatus.等待总经理批准.ToString(); } } break; case "总经理批准": if (result.Count() == 1) { HR_DimissionBill dimiList = result.Single(); dimiList.GM_Authorize = dimission.GM_Authorize; dimiList.GM_Opinion = dimission.GM_Opinion; dimiList.GM_Signature = dimission.GM_Signature; dimiList.GM_SignatureDate = dimission.GM_SignatureDate; dimiList.BillStatus = DimissionBillStatus.已完成.ToString(); if (dimission.GM_Authorize) { if (!new OperatingPostServer().UpdateLessDeptPost(dimiList.Dept, new OperatingPostServer().GetOperatingPostByPostName(dimiList.WorkPost).岗位编号, out error)) { error = "信息有误!"; return("0"); } var resultManager = from c in dataContxt.HR_DeptManager where c.ManagerWorkID == dimission.WorkID select c; if (resultManager.Count() > 0) { dataContxt.HR_DeptManager.DeleteAllOnSubmit(resultManager); } var resultStatus = from e in dataContxt.HR_PersonnelArchive where e.WorkID == dimission.WorkID select e; if (resultStatus.Count() > 0) { HR_PersonnelArchive personnel = resultStatus.Single(); personnel.PersonnelStatus = 3; personnel.Remark = dimiList.AllowDimissionDate + "离职"; } var resultLaborTemp = from j in dataContxt.View_HR_PersonnelLaborContract where j.员工编号 == dimission.WorkID && j.类别 == "合同类" select j; if (resultLaborTemp.Count() > 0) { int billID = resultLaborTemp.Single().编号; var resultLabor = from j in dataContxt.HR_PersonnelLaborContract where j.ID == billID select j; HR_PersonnelLaborContract labor = resultLabor.Single(); if (resultLabor.Single().EndTime > dimission.AllowDimissionDate) { labor.LaborContractStatusID = 8; } else { labor.LaborContractStatusID = 7; } } } } break; default: break; } dataContxt.SubmitChanges(); var resultList = from a in dataContxt.HR_DimissionBill where a.WorkID == dimission.WorkID && a.Date == dimission.Date && a.Reason == dimission.Reason select a; if (resultList.Count() > 0) { return(resultList.Single().ID.ToString()); } else { error = "未知编号!"; return("0"); } } catch (Exception ex) { error = ex.Message; return("0"); } }
private void 审批ToolStripMenuItem2_Click(object sender, EventArgs e) { if (lblStatus.Text.Trim() == DimissionBillStatus.等待分管领导审核.ToString()) { if (txtLeaderOpinion.Text.Trim() == "") { MessageDialog.ShowPromptMessage("请填写分管领导意见!"); return; } HR_DimissionBill dimission = new HR_DimissionBill(); dimission.LeaderOpinion = txtLeaderOpinion.Text; dimission.LeaderSignature = BasicInfo.LoginID; dimission.LeaderSignatureDate = ServerTime.Time; dimission.WorkID = txtApplicant.Tag.ToString(); dimission.Date = dtpDate.Value; dimission.Reason = txtReason.Text; if (!cbLeaderAuthorize.Checked) { if (MessageBox.Show("您是否同意 " + txtApplicant.Text.Trim() + " 的离职申请?", "消息", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { cbLeaderAuthorize.Checked = true; } else { cbLeaderAuthorize.Checked = false; } } dimission.LeaderAuthorize = cbLeaderAuthorize.Checked; billID = Convert.ToInt32(m_dimiServer.AddAndUpdateDimission(dimission, "分管领导审批", out error)); if (billID == 0) { MessageDialog.ShowPromptMessage(error); return; } if (cbLeaderAuthorize.Checked) { string msg = string.Format("{0} 号离职申请已由分管领导审批,请总经理审核", billID.ToString()); m_billMessageServer.PassFlowMessage(billID.ToString(), msg, CE_RoleEnum.人力资源主管.ToString(), true); } else { string msg = string.Format("{0} 号离职申请分管领导不同意离职申请,单据完成", billID.ToString()); List <string> listUser = new List <string>(); listUser.Add(txtApplicant.Tag.ToString()); m_billMessageServer.EndFlowMessage(billID.ToString(), msg, null, listUser); } MessageDialog.ShowPromptMessage("分管领导审批成功!"); } else { MessageDialog.ShowPromptMessage("请确认单据状态!"); return; } this.Close(); }