private void btnApprove_Click(object sender, EventArgs e) { GetData(); if (m_lnqReleaseProcess.SDBStatus != "等待批准") { MessageDialog.ShowPromptMessage("流程状态错误"); return; } if (!m_serverReleaseProcess.ApproveProcess(m_lnqReleaseProcess, out m_strErr)) { MessageDialog.ShowPromptMessage(m_strErr); } else { m_lnqReleaseProcess = m_serverReleaseProcess.GetInfo(m_lnqReleaseProcess.SDBNo); List <string> list = new List <string>(); list.Add(UniversalFunction.GetPersonnelCode(m_lnqReleaseProcess.Auditor)); list.Add(UniversalFunction.GetPersonnelCode(m_lnqReleaseProcess.Propoer)); m_billMessageServer.EndFlowMessage(m_lnqReleaseProcess.SDBNo, string.Format("{0}号文件发布流程已结束", m_lnqReleaseProcess.SDBNo), null, list); MessageDialog.ShowPromptMessage("批准成功"); this.Close(); } }
/// <summary> /// 获得数据 /// </summary> void GetData() { m_lnqReleaseProcess = new FM_ReleaseProcess(); m_lnqReleaseProcess.FileName = txtFileName.Text; m_lnqReleaseProcess.FileNo = txtFileNo.Text; if (llbProposerUpLoad.Tag != null) { m_lnqReleaseProcess.FileUnique = new Guid(llbProposerUpLoad.Tag.ToString()); } m_lnqReleaseProcess.SortID = (int)txtSortName.Tag; m_lnqReleaseProcess.Department = txtDepartment.Tag.ToString(); m_lnqReleaseProcess.ApproverAdvise = txtApproverAdvise.Text; m_lnqReleaseProcess.AuditorAdvise = txtAuditorAdvise.Text; m_lnqReleaseProcess.Remark = txtRemark.Text; m_lnqReleaseProcess.SDBNo = txtSDBNo.Text; m_lnqReleaseProcess.SDBStatus = lbSDBStatus.Text; m_lnqReleaseProcess.Version = txtVersion.Text; Nullable <int> nullInt = null; m_lnqReleaseProcess.ReplaceFileID = txtReplaceFileNo.Tag == null ? nullInt : Convert.ToInt32(txtReplaceFileNo.Tag); }
/// <summary> /// 回退流程 /// </summary> /// <param name="sdbNo">流程编号</param> /// <param name="sdbStatus">流程状态</param> /// <param name="releaseProcess">数据集</param> /// <param name="error">错误信息</param> /// <param name="rebackReason">回退原因</param> /// <returns>成功返回True,失败返回False</returns> public bool ReturnBill(string sdbNo, string sdbStatus, FM_ReleaseProcess releaseProcess, out string error, string rebackReason) { error = null; DepotManagementDataContext dataContxt = CommentParameter.DepotDataContext; try { var varData = from a in dataContxt.FM_ReleaseProcess where a.SDBNo == sdbNo select a; string strMsg = ""; if (varData.Count() == 1) { FM_ReleaseProcess lnqTemp = varData.Single(); lnqTemp.SDBStatus = sdbStatus; switch (sdbStatus) { case "新建流程": strMsg = string.Format("{0}号文件审查流程已回退,请您重新处理单据; 回退原因为" + rebackReason, sdbNo); m_billMessageServer.PassFlowMessage(sdbNo, strMsg, UniversalFunction.GetPersonnelCode(lnqTemp.Propoer), false); //lnqTemp.AuditorAdvise = releaseProcess.AuditorAdvise; //lnqTemp.ApproverAdvise = releaseProcess.ApproverAdvise; break; case "等待审核": strMsg = string.Format("{0}号文件审查流程已回退,请您重新处理单据; 回退原因为" + rebackReason, sdbNo); m_billMessageServer.PassFlowMessage(sdbNo, strMsg, UniversalFunction.GetPersonnelCode(lnqTemp.Auditor), false); //lnqTemp.AuditorAdvise = releaseProcess.AuditorAdvise; //lnqTemp.ApproverAdvise = releaseProcess.ApproverAdvise; break; default: break; } } dataContxt.SubmitChanges(); return(true); } catch (Exception ex) { error = ex.Message; return(false); } }
/// <summary> /// 对输入值得LNQ进行赋值 /// </summary> /// <param name="releseProcess">输入值</param> /// <param name="inputInfo">输出值</param> void AssignmentAddProcess(FM_ReleaseProcess releseProcess, ref FM_ReleaseProcess inputInfo) { inputInfo.SDBNo = releseProcess.SDBNo; inputInfo.SDBStatus = "等待审核"; inputInfo.SortID = releseProcess.SortID; inputInfo.Remark = releseProcess.Remark; inputInfo.Propoer = BasicInfo.LoginName; inputInfo.PropoerTime = ServerTime.Time; inputInfo.FileUnique = releseProcess.FileUnique; inputInfo.FileNo = releseProcess.FileNo; inputInfo.FileName = releseProcess.FileName; inputInfo.Department = releseProcess.Department; inputInfo.ReplaceFileID = releseProcess.ReplaceFileID; inputInfo.Version = releseProcess.Version; }
private void 文件发布流程明细_Load(object sender, EventArgs e) { ClearData(); if (m_strSDBNo == null) { txtSDBNo.Text = m_billNoControl.GetNewBillNo(); lbSDBStatus.Text = "新建流程"; } else { m_lnqReleaseProcess = m_serverReleaseProcess.GetInfo(m_strSDBNo); ShowData(); } FlowControl(); }
/// <summary> /// 申请流程 /// </summary> /// <param name="releseProcess">LNQ数据集</param> /// <param name="error">错误信息</param> /// <returns>成功返回True,失败返回False</returns> public bool AddProcess(FM_ReleaseProcess releseProcess, out string error) { error = null; try { DepotManagementDataContext ctx = CommentParameter.DepotDataContext; var varData = from a in ctx.FM_ReleaseProcess where a.SDBNo == releseProcess.SDBNo select a; FM_ReleaseProcess lnqTemp = new FM_ReleaseProcess(); if (varData.Count() > 1) { error = "数据错误"; return(false); } else if (varData.Count() == 1) { lnqTemp = varData.Single(); AssignmentAddProcess(releseProcess, ref lnqTemp); } else { AssignmentAddProcess(releseProcess, ref lnqTemp); ctx.FM_ReleaseProcess.InsertOnSubmit(lnqTemp); } ctx.SubmitChanges(); return(true); } catch (Exception ex) { error = ex.Message; return(false); } }
/// <summary> /// 审核流程 /// </summary> /// <param name="releseProcess">LNQ数据集</param> /// <param name="error">错误信息</param> /// <returns>成功返回True,失败返回false </returns> public bool AuditProcess(FM_ReleaseProcess releseProcess, out string error) { error = null; try { DepotManagementDataContext ctx = CommentParameter.DepotDataContext; var varData = from a in ctx.FM_ReleaseProcess where a.SDBNo == releseProcess.SDBNo select a; if (varData.Count() != 1) { error = "数据错误"; return(false); } else { FM_ReleaseProcess lnqTemp = varData.Single(); lnqTemp.SDBStatus = "等待批准"; lnqTemp.Auditor = BasicInfo.LoginName; lnqTemp.AuditorAdvise = releseProcess.AuditorAdvise; lnqTemp.AuditorTime = ServerTime.Time; } ctx.SubmitChanges(); return(true); } catch (Exception ex) { error = ex.Message; return(false); } }
/// <summary> /// 批准流程 /// </summary> /// <param name="releseProcess">LNQ数据集</param> /// <param name="error">错误信息</param> /// <returns>成功返回True,失败返回False</returns> public bool ApproveProcess(FM_ReleaseProcess releseProcess, out string error) { error = null; try { DepotManagementDataContext ctx = CommentParameter.DepotDataContext; var varData = from a in ctx.FM_ReleaseProcess where a.SDBNo == releseProcess.SDBNo select a; if (varData.Count() != 1) { error = "数据错误"; return(false); } else { FM_ReleaseProcess lnqTemp = varData.Single(); lnqTemp.SDBStatus = "流程已结束"; lnqTemp.Approver = BasicInfo.LoginName; lnqTemp.ApproverAdvise = releseProcess.ApproverAdvise; lnqTemp.ApproverTime = ServerTime.Time; if (lnqTemp.ReplaceFileID == null) { DataTable dtTemp = m_serverFileBasicInfo.GetFilesInfo(lnqTemp.FileNo, null); if (dtTemp.Rows.Count != 0) { RepalceFile(ctx, Convert.ToInt32(dtTemp.Rows[0]["FileID"])); } } else { RepalceFile(ctx, Convert.ToInt32(lnqTemp.ReplaceFileID)); } FM_FileList lnqFile = new FM_FileList(); lnqFile.Department = lnqTemp.Department; lnqFile.FileName = lnqTemp.FileName; lnqFile.FileNo = lnqTemp.FileNo; lnqFile.FileUnique = lnqTemp.FileUnique; lnqFile.SortID = lnqTemp.SortID; lnqFile.Version = lnqTemp.Version; ctx.FM_FileList.InsertOnSubmit(lnqFile); if (m_serverFTP.Errormessage.Length != 0) { throw new Exception(m_serverFTP.Errormessage); } } ctx.SubmitChanges(); return(true); } catch (Exception ex) { error = ex.Message; return(false); } }