/// <summary> /// 对相关文件进行FTP中的操作 /// </summary> /// <param name="ctx">数据上下文</param> /// <param name="fileID">文件ID</param> /// <param name="sortID">类别ID</param> /// <param name="error">错误信息</param> public void OperatorFTPSystemFile(DepotManagementDataContext ctx, int fileID, int sortID) { FileServiceSocket serverFTP = new FileServiceSocket(GlobalObject.GlobalParameter.FTPServerIP, GlobalObject.GlobalParameter.FTPServerAdvancedUser, GlobalObject.GlobalParameter.FTPServerAdvancedPassword); var varFile = from a in ctx.FM_FileList where a.FileID == fileID select a; FM_FileList lnqChangeFile = varFile.Single(); FM_FileSort lnqSort = SortInfo(sortID); if (lnqSort == null) { lnqChangeFile.DeleteFlag = true; } else { lnqChangeFile.SortID = sortID; } if (serverFTP.Errormessage.Length != 0) { throw new Exception(serverFTP.Errormessage); } }
/// <summary> /// 显示信息 /// </summary> void ShowInfo() { if (m_lnqInstitution != null) { txtSDBNo.Text = m_lnqInstitution.BillNo; FM_FileList fileInfo = m_serverFileBasic.GetFile((int)m_lnqInstitution.FileID); txtFileNo.Tag = fileInfo.FileID; txtFileName.Text = fileInfo.FileName; txtFileNo.Text = fileInfo.FileNo; txtVersion.Text = fileInfo.Version; txtRemark.Text = m_lnqInstitution.Introductions; lbPropoer.Text = m_lnqInstitution.Propoer; lbPropoerTime.Text = m_lnqInstitution.PropoerTime.ToString(); lbSDBStatus.Text = m_lnqInstitution.BillStatus; } else { lbSDBStatus.Text = InstitutionBillStatus.新建流程.ToString(); lbPropoer.Text = BasicInfo.LoginName; lbPropoerTime.Text = ServerTime.Time.ToString(); txtSDBNo.Text = m_billNoControl.GetNewBillNo(); } }
private void dataGridView1_DoubleClick(object sender, EventArgs e) { FM_FileList fileInfo = m_serverBasicInfo.GetFile((int)dataGridView1.CurrentRow.Cells["文件ID"].Value); FileOperationService.File_Look(fileInfo.FileUnique, GlobalObject.GeneralFunction.StringConvertToEnum <CE_CommunicationMode>(BasicInfo.BaseSwitchInfo[(int)GlobalObject.CE_SwitchName.文件传输方式])); }
/// <summary> /// 显示数据 /// </summary> void ShowData() { FM_FileList lnqTemp = m_serverFileBasicInfo.GetFile(m_lnqRevisedAbolishedBill.FileID); txtFileNo.Text = lnqTemp.FileNo; txtFileName.Text = lnqTemp.FileName; txtVersion.Text = lnqTemp.Version; txtFileNo.Tag = lnqTemp.FileID; txtProposeContent.Text = m_lnqRevisedAbolishedBill.ProposeContent; txtAuditorAdvise.Text = m_lnqRevisedAbolishedBill.AuditorAdvise; txtApproverAdvise.Text = m_lnqRevisedAbolishedBill.ApproverAdvise; txtBillNo.Text = m_lnqRevisedAbolishedBill.BillNo; lbApprover.Text = m_lnqRevisedAbolishedBill.Approver; lbApproverTime.Text = m_lnqRevisedAbolishedBill.ApproverTime.ToString(); lbAuditor.Text = m_lnqRevisedAbolishedBill.Auditor; lbAuditorTime.Text = m_lnqRevisedAbolishedBill.AuditorTime.ToString(); lbPropoer.Text = m_lnqRevisedAbolishedBill.Propose; lbPropoerTime.Text = m_lnqRevisedAbolishedBill.ProposeTime.ToString(); lbBillStatus.Text = m_lnqRevisedAbolishedBill.BillStatus; if (m_lnqRevisedAbolishedBill.OperationFlag) { radioButton2.Checked = true; radioButton1.Checked = false; } else { radioButton2.Checked = false; radioButton1.Checked = true; } }
private void btnUpLoad_Click(object sender, EventArgs e) { try { if (openFileDialog1.ShowDialog() == DialogResult.OK) { if (MessageDialog.ShowEnquiryMessage("您是否要上传【文件编号】:" + txtFileNo.Text + " 【文件名称】:" + txtFileName.Text + "?") == DialogResult.No) { return; } Guid guid = new Guid(); string fileType = openFileDialog1.FileName.Substring(openFileDialog1.FileName.LastIndexOf(".")); string strFtpServerPath = "/" + ServerTime.Time.Year.ToString() + "/" + ServerTime.Time.Month.ToString() + "/"; if (!GlobalObject.FileTypeRecognition.IsWordDocument(openFileDialog1.FileName)) { throw new Exception("此文件非正常WORD文件,可能由于文件格式无法识别或者文件加密造成无法上传"); } guid = Guid.NewGuid(); m_serverFileBasic.AddFile(guid, strFtpServerPath + guid.ToString(), fileType); CursorControl.SetWaitCursor(this); m_serverFileBasic.FileUpLoad(openFileDialog1.FileName, strFtpServerPath, guid.ToString(), fileType); this.Cursor = System.Windows.Forms.Cursors.Arrow; if (GetError()) { FM_FileList fileInfo = new FM_FileList(); fileInfo.DeleteFlag = false; fileInfo.Department = txtDepartment.Tag.ToString(); fileInfo.FileName = txtFileName.Text; fileInfo.FileNo = txtFileNo.Text; fileInfo.FileUnique = guid; fileInfo.SortID = Convert.ToInt32(txtSort.Tag); fileInfo.Version = txtVersion.Text; if (m_serverFileBasic.AddFileList(fileInfo, out m_strErr)) { treeView1_AfterSelect(null, null); MessageDialog.ShowPromptMessage("上传成功"); } else { throw new Exception(m_strErr); } } } } catch (Exception ex) { MessageDialog.ShowErrorMessage(ex.Message); this.Cursor = System.Windows.Forms.Cursors.Arrow; } }
private void btnSign_Click(object sender, EventArgs e) { OperatorFlow(SystemFileDORRList.签收); FM_FileList lnqTemp = m_serverFileBasic.GetFile(m_lnqDORRList.FileID); m_billMessageServer.EndFlowMessage("DORR" + m_lnqDORRList.ID.ToString(), string.Format("{0}文件已签收", lnqTemp.FileName + "[" + lnqTemp.FileNo + "]"), null, null); }
/// <summary> /// 显示信息 /// </summary> void ShowInfo() { if (m_lnqInstitution != null) { txtSDBNo.Text = m_lnqInstitution.BillNo; txtFileName.Text = m_lnqInstitution.FileName; txtFileNo.Text = m_lnqInstitution.FileNo; txtReplaceFileNo.Tag = m_lnqInstitution.ReplaceFileID; if (txtReplaceFileNo.Tag != null) { FM_FileList fileInfo = m_serverFileBasic.GetFile((int)txtReplaceFileNo.Tag); txtReplaceFileNo.Text = fileInfo.FileNo; txtReplaceFileName.Text = fileInfo.FileName; txtRepalceVersion.Text = fileInfo.Version; } txtDepartment.Tag = m_lnqInstitution.Department; txtDepartment.Text = txtDepartment.Tag == null ? "" : UniversalFunction.GetDeptName(txtDepartment.Tag.ToString()); FM_FileSort sort = m_serverFileBasic.SortInfo(m_lnqInstitution.SortID); txtFileSort.Text = sort.SortName; txtFileSort.Tag = sort.SortID; txtRemark.Text = m_lnqInstitution.Introductions; lbPropoer.Text = m_lnqInstitution.Propoer; lbPropoerTime.Text = m_lnqInstitution.PropoerTime.ToString(); lbSDBStatus.Text = m_lnqInstitution.BillStatus; llbFileDownLoad.Text = lbPropoer.Text + "的文件"; llbFileDownLoad.Tag = m_lnqInstitution.FileUnique; if (m_lnqInstitution.OperationMode == radioButton1.Text) { radioButton1.Checked = true; radioButton2.Checked = false; } else { radioButton1.Checked = false; radioButton2.Checked = true; } } else { lbSDBStatus.Text = InstitutionBillStatus.新建流程.ToString(); lbPropoer.Text = BasicInfo.LoginName; lbPropoerTime.Text = ServerTime.Time.ToString(); txtSDBNo.Text = m_billNoControl.GetNewBillNo(); llbFileDownLoad.Text = ""; } }
private void btnUpdate_Click(object sender, EventArgs e) { OperatorFlow(SystemFileDORRList.修改); if (m_listPersonnel != null) { FM_FileList lnqTemp = m_serverFileBasic.GetFile(m_lnqDORRList.FileID); m_billMessageServer.PassFlowMessage("DORR" + m_lnqDORRList.ID.ToString(), string.Format("{0}文件已发放,请签收", lnqTemp.FileName + "[" + lnqTemp.FileNo + "]"), BillFlowMessage_ReceivedUserType.用户, m_listPersonnel); } }
/// <summary> /// 添加文件信息 /// </summary> /// <param name="fileInfo">LINQ文件信息</param> /// <param name="error">错误信息</param> /// <returns>成功返回True,否则返回False</returns> public bool AddFileList(FM_FileList fileInfo, out string error) { DepotManagementDataContext ctx = CommentParameter.DepotDataContext; error = null; try { var varSort = from a in ctx.FM_FileSort where a.SortName.Contains("回收站") select a; var varData = from a in ctx.FM_FileList where (a.FileName == fileInfo.FileName || a.FileNo == fileInfo.FileNo) && !varSort.Select(r => r.SortID).ToList().Contains(a.SortID) select a; Guid guid = new Guid(); if (varData.Count() > 0) { FM_FileList lnqTemp = varData.Single(); guid = lnqTemp.FileUnique; lnqTemp.Department = fileInfo.Department; lnqTemp.FileName = fileInfo.FileName; lnqTemp.FileNo = fileInfo.FileNo; lnqTemp.SortID = fileInfo.SortID; lnqTemp.Version = fileInfo.Version; lnqTemp.FileUnique = fileInfo.FileUnique; } else { ctx.FM_FileList.InsertOnSubmit(fileInfo); } ctx.SubmitChanges(); if (varData.Count() > 0) { UniversalControlLibrary.FileOperationService.File_Delete(guid, GlobalObject.GeneralFunction.StringConvertToEnum <CE_CommunicationMode>(BasicInfo.BaseSwitchInfo[(int)GlobalObject.CE_SwitchName.文件传输方式])); } return(true); } catch (Exception ex) { error = ex.Message; return(false); } }
private void btnModify_Click(object sender, EventArgs e) { FM_FileList fileInfo = new FM_FileList(); fileInfo.FileID = Convert.ToInt32(txtFileNo.Tag); fileInfo.Department = txtDepartment.Tag.ToString(); fileInfo.FileName = txtFileName.Text.Trim(); fileInfo.FileNo = txtFileNo.Text.Trim(); fileInfo.SortID = Convert.ToInt32(txtSort.Tag); fileInfo.Version = txtVersion.Text.Trim(); m_serverFileBasic.ModifyFileInfo(fileInfo); treeView1.Nodes.Clear(); GlobalObject.GeneralFunction.LoadTreeViewDt(treeView1, m_serverBasicInfo.GetTreeInfo(CE_FileType.制度文件), "Name", "ID", "ParentID", "ParentID = '0'"); treeView1.Nodes[0].Expand(); dataGridView1.DataSource = null; }
bool customForm_PanelGetDateInfo(CE_FlowOperationType flowOperationType) { m_lnqInstitution = new FM_InstitutionProcess(); m_lnqInstitution.Introductions = txtRemark.Text; m_lnqInstitution.TypeCode = UniversalFunction.GetBillPrefix(CE_BillTypeEnum.制度销毁申请流程); m_lnqInstitution.FileName = txtFileName.Text; m_lnqInstitution.FileNo = txtFileNo.Text; m_lnqInstitution.BillNo = txtSDBNo.Text; m_lnqInstitution.BillStatus = lbSDBStatus.Text; m_lnqInstitution.FileID = (int?)txtFileNo.Tag; FM_FileList fileInfo = m_serverFileBasic.GetFile((int)m_lnqInstitution.FileID); m_lnqInstitution.FileUnique = fileInfo.FileUnique; m_lnqInstitution.SortID = fileInfo.SortID; ResultInfo = m_lnqInstitution; return(true); }
/// <summary> /// 修改文件信息 /// </summary> /// <param name="fileInfo">文件信息</param> public void ModifyFileInfo(FM_FileList fileInfo) { DepotManagementDataContext ctx = CommentParameter.DepotDataContext; var varData = from a in ctx.FM_FileList where a.FileID == fileInfo.FileID select a; if (varData.Count() != 1) { throw new Exception("文件ID不唯一"); } FM_FileList lnqTemp = varData.Single(); lnqTemp.Department = fileInfo.Department; lnqTemp.FileName = fileInfo.FileName; lnqTemp.FileNo = fileInfo.FileNo; lnqTemp.SortID = fileInfo.SortID; lnqTemp.Version = fileInfo.Version; ctx.SubmitChanges(); }
/// <summary> /// 显示数据 /// </summary> void ShowData() { if (m_lnqReleaseProcess.ReplaceFileID != null) { FM_FileList lnqTemp = m_serverFileBasicInfo.GetFile(Convert.ToInt32(m_lnqReleaseProcess.ReplaceFileID)); txtReplaceFileNo.Tag = lnqTemp.FileID; txtReplaceFileNo.Text = lnqTemp.FileNo; txtReplaceFileName.Text = lnqTemp.FileName; txtRepalceVersion.Text = lnqTemp.Version; } txtRemark.Text = m_lnqReleaseProcess.Remark; txtFileNo.Text = m_lnqReleaseProcess.FileNo; txtFileName.Text = m_lnqReleaseProcess.FileName; txtDepartment.Text = m_serverDepartment.GetDepartmentName(m_lnqReleaseProcess.Department); txtDepartment.Tag = m_lnqReleaseProcess.Department; txtSortName.Tag = m_lnqReleaseProcess.SortID; txtSortName.Text = m_serverFileBasicInfo.SortInfo(Convert.ToInt32(m_lnqReleaseProcess.SortID)).SortName; txtAuditorAdvise.Text = m_lnqReleaseProcess.AuditorAdvise; txtApproverAdvise.Text = m_lnqReleaseProcess.ApproverAdvise; txtSDBNo.Text = m_lnqReleaseProcess.SDBNo; txtVersion.Text = m_lnqReleaseProcess.Version; lbApprover.Text = m_lnqReleaseProcess.Approver; lbApproverTime.Text = m_lnqReleaseProcess.ApproverTime.ToString(); lbAuditor.Text = m_lnqReleaseProcess.Auditor; lbAuditorTime.Text = m_lnqReleaseProcess.AuditorTime.ToString(); lbPropoer.Text = m_lnqReleaseProcess.Propoer; lbPropoerTime.Text = m_lnqReleaseProcess.PropoerTime.ToString(); lbSDBStatus.Text = m_lnqReleaseProcess.SDBStatus; llbProposerDownLoad.Text = m_lnqReleaseProcess == null ? "" : lbPropoer.Text + "的文件"; llbProposerDownLoad.Tag = m_lnqReleaseProcess.FileUnique.ToString(); }
/// <summary> /// 更新流程 /// </summary> /// <param name="billNo">单据号</param> /// <param name="advise">意见</param> /// <param name="error">错误信息</param> /// <returns>成功返回True,失败返回False</returns> public bool UpdateInfo(string billNo, string advise, out string error) { error = null; IBillMessagePromulgatorServer serverBill = BasicServerFactory.GetServerModule <IBillMessagePromulgatorServer>(); ISystemFileBasicInfo m_serverFileBasicInfo = Service_Quality_File.ServerModuleFactory.GetServerModule <ISystemFileBasicInfo>(); FileServiceSocket m_serverFTP = new FileServiceSocket(GlobalObject.GlobalParameter.FTPServerIP, GlobalObject.GlobalParameter.FTPServerAdvancedUser, GlobalObject.GlobalParameter.FTPServerAdvancedPassword); DepotManagementDataContext ctx = CommentParameter.DepotDataContext; try { var varData = from a in ctx.FM_InstitutionProcess where a.BillNo == billNo select a; FM_InstitutionProcess lnqProcess = varData.Single(); serverBill.BillType = serverBill.GetBillTypeEnum(lnqProcess.TypeCode).ToString(); CE_BillTypeEnum billType = GlobalObject.GeneralFunction.StringConvertToEnum <CE_BillTypeEnum>(serverBill.BillType); InstitutionBillStatus billStatus = GlobalObject.GeneralFunction.StringConvertToEnum <InstitutionBillStatus>(lnqProcess.BillStatus); var varList = from a in ctx.FM_InstitutionProcessPointDept where a.BillNo == billNo select a; FM_InstitutionProcessPointDept lnqPoint = new FM_InstitutionProcessPointDept(); List <FM_InstitutionProcessPointDept> list = varList.ToList(); List <string> listTemp = new List <string>(); switch (billStatus) { case InstitutionBillStatus.新建流程: break; case InstitutionBillStatus.等待科长审查: lnqProcess.BillStatus = InstitutionBillStatus.等待负责人审查.ToString(); lnqProcess.Chief = BasicInfo.LoginName; lnqProcess.ChiefAdvise = advise; lnqProcess.ChiefTime = ServerTime.Time; serverBill.PassFlowMessage(lnqProcess.BillNo, string.Format("【文件编号】:{0} 【文件名】:{1} ※※※ 等待处理", lnqProcess.FileNo, lnqProcess.FileName), BillFlowMessage_ReceivedUserType.角色, serverBill.GetDeptPrincipalRoleName(UniversalFunction.GetPersonnelInfo(lnqProcess.Propoer).部门编码).ToList()); break; case InstitutionBillStatus.等待负责人审查: lnqProcess.BillStatus = InstitutionBillStatus.等待相关负责人审查.ToString(); lnqProcess.DepartmentHead = BasicInfo.LoginName; lnqProcess.DepartmentHeadAdvise = advise; lnqProcess.DepartmentHeadTime = ServerTime.Time; if (billType == CE_BillTypeEnum.制度销毁申请流程) { lnqProcess.BillStatus = InstitutionBillStatus.等待分管领导审查.ToString(); serverBill.PassFlowMessage(lnqProcess.BillNo, string.Format("【文件编号】:{0} 【文件名】:{1} ※※※ 等待处理", lnqProcess.FileNo, lnqProcess.FileName), BillFlowMessage_ReceivedUserType.角色, serverBill.GetDeptLeaderRoleName(UniversalFunction.GetPersonnelInfo(lnqProcess.Propoer).部门编码).ToList()); } else { listTemp = (from a in list where a.PersonnelType == RoleStyle.负责人.ToString() select a.Personnel).ToList(); serverBill.PassFlowMessage(lnqProcess.BillNo, string.Format("【文件编号】:{0} 【文件名】:{1} ※※※ 等待处理", lnqProcess.FileNo, lnqProcess.FileName), BillFlowMessage_ReceivedUserType.用户, listTemp); } break; case InstitutionBillStatus.等待相关负责人审查: lnqPoint = (from a in list where a.Personnel == BasicInfo.LoginID && a.PersonnelType == RoleStyle.负责人.ToString() select a).Single(); lnqPoint.PersonnelTime = ServerTime.Time; lnqPoint.Advise = advise; var varHead = from a in list where a.PersonnelType == RoleStyle.负责人.ToString() && a.PersonnelTime == null select a; if (varHead.Count() == 0) { if (IsThreeTripFile(lnqProcess.SortID)) { lnqProcess.BillStatus = InstitutionBillStatus.等待分管领导审查.ToString(); serverBill.PassFlowMessage(lnqProcess.BillNo, string.Format("【文件编号】:{0} 【文件名】:{1} ※※※ 等待处理", lnqProcess.FileNo, lnqProcess.FileName), BillFlowMessage_ReceivedUserType.角色, serverBill.GetDeptLeaderRoleName(UniversalFunction.GetPersonnelInfo(lnqProcess.Propoer).部门编码).ToList()); } else { lnqProcess.BillStatus = InstitutionBillStatus.等待相关分管领导审查.ToString(); listTemp = (from a in list where a.PersonnelType == RoleStyle.分管领导.ToString() select a.Personnel).ToList(); serverBill.PassFlowMessage(lnqProcess.BillNo, string.Format("【文件编号】:{0} 【文件名】:{1} ※※※ 等待处理", lnqProcess.FileNo, lnqProcess.FileName), BillFlowMessage_ReceivedUserType.用户, listTemp); } } else { listTemp = (from a in varHead select a.Personnel).ToList(); serverBill.PassFlowMessage(lnqProcess.BillNo, string.Format("【文件编号】:{0} 【文件名】:{1} ※※※ 等待处理", lnqProcess.FileNo, lnqProcess.FileName), BillFlowMessage_ReceivedUserType.用户, listTemp); } break; case InstitutionBillStatus.等待相关分管领导审查: lnqPoint = (from a in list where a.Personnel == BasicInfo.LoginID && a.PersonnelType == RoleStyle.分管领导.ToString() select a).Single(); lnqPoint.PersonnelTime = ServerTime.Time; lnqPoint.Advise = advise; var varLead = from a in list where a.PersonnelType == RoleStyle.分管领导.ToString() && a.PersonnelTime == null select a; if (varLead.Count() == 0) { lnqProcess.BillStatus = InstitutionBillStatus.等待总经理审查.ToString(); serverBill.PassFlowMessage(lnqProcess.BillNo, string.Format("【文件编号】:{0} 【文件名】:{1} ※※※ 等待处理", lnqProcess.FileNo, lnqProcess.FileName), BillFlowMessage_ReceivedUserType.角色, CE_RoleEnum.总经理.ToString()); } else { listTemp = (from a in varLead select a.Personnel).ToList(); serverBill.PassFlowMessage(lnqProcess.BillNo, string.Format("【文件编号】:{0} 【文件名】:{1} ※※※ 等待处理", lnqProcess.FileNo, lnqProcess.FileName), BillFlowMessage_ReceivedUserType.用户, listTemp); } break; case InstitutionBillStatus.等待分管领导审查: case InstitutionBillStatus.等待总经理审查: lnqProcess.BillStatus = InstitutionBillStatus.流程已结束.ToString(); lnqProcess.GeneralManager = BasicInfo.LoginName; lnqProcess.GeneralManagerAdvise = advise; lnqProcess.GeneralManagerTime = ServerTime.Time; FM_FileList fileInfo = new FM_FileList(); if (lnqProcess.FileID != null) { var varFileInfo = from a in ctx.FM_FileList where a.FileID == lnqProcess.FileID select a; if (varFileInfo.Count() == 1) { fileInfo = varFileInfo.Single(); } } if (billType == CE_BillTypeEnum.制度发布流程) { string strVersion = "1.0"; if (lnqProcess.ReplaceFileID == null) { DataTable dtTemp = m_serverFileBasicInfo.GetFilesInfo(lnqProcess.FileNo, null); } else { m_serverFileBasicInfo.OperatorFTPSystemFile(ctx, Convert.ToInt32(lnqProcess.ReplaceFileID), 29); strVersion = (Convert.ToDouble(m_serverFileBasicInfo.GetFile(Convert.ToInt32(lnqProcess.ReplaceFileID)).Version) + 0.1).ToString(); } FM_FileList lnqFile = new FM_FileList(); lnqFile.Department = lnqProcess.Department; lnqFile.FileName = lnqProcess.FileName; lnqFile.FileNo = lnqProcess.FileNo; lnqFile.FileUnique = lnqProcess.FileUnique; lnqFile.SortID = lnqProcess.SortID; lnqFile.Version = strVersion; ctx.FM_FileList.InsertOnSubmit(lnqFile); if (m_serverFTP.Errormessage.Length != 0) { throw new Exception(m_serverFTP.Errormessage); } } else if (billType == CE_BillTypeEnum.制度修订废弃申请流程 && lnqProcess.OperationMode == "废弃") { if (fileInfo != null) { fileInfo.SortID = 29; } } else if (billType == CE_BillTypeEnum.制度销毁申请流程) { ctx.FM_FileList.DeleteOnSubmit(fileInfo); } serverBill.EndFlowMessage(lnqProcess.BillNo, string.Format("{0}号文件审查流程已结束", lnqProcess.BillNo), null, (from a in varList select a.Personnel).ToList()); break; case InstitutionBillStatus.流程已结束: break; default: break; } 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); } }