public object GetWorkFlowCaseByCaseId(string caseId, string actid) { List<FX_AttachMent> listAttachment = new List<FX_AttachMent>(); List<B_OA_Supervision> listSupervision = new List<B_OA_Supervision>(); DataTable ngbm = new DataTable(); IDbTransaction tran = Utility.Database.BeginDbTransaction(); try { //工作流信息 StringBuilder strSql = new StringBuilder(); strSql.AppendFormat(@" select * from FX_WorkFlowBusAct where CaseID = '{0}' and SendDate is not null ORDER BY SendDate DESC", caseId); var ds = Utility.Database.ExcuteDataSet(strSql.ToString(), tran); List<FX_WorkFlowBusAct> listWork = JsonConvert.DeserializeObject<List<FX_WorkFlowBusAct>>(JsonConvert.SerializeObject(ds.Tables[0])); //附件信息 FX_AttachMent attachment = new FX_AttachMent(); attachment.Condition.Add("CaseID = " + caseId); listAttachment = Utility.Database.QueryList<FX_AttachMent>(attachment, tran); //督办信息 B_OA_Supervision supervision = new B_OA_Supervision(); supervision.Condition.Add("caseId = " + caseId); supervision.OrderInfo = "createDate desc"; listSupervision = Utility.Database.QueryList<B_OA_Supervision>(supervision, tran); //获取附件路径 string dir = IWorkFlow.Host.Utility.config.get("FileDir"); dir = dir.Replace("\\", "/"); //拟稿人和拟稿部门 if (!string.IsNullOrEmpty(actid)) { ngbm = GetUserNameAndDepartNameByActId(caseId, actid, tran); } //关闭连接池 Utility.Database.Commit(tran); return new { listAttachment = listAttachment, listWork = listWork, listSupervision = listSupervision, dir = dir, ngbm = ngbm }; } catch (Exception ex) { ComBase.Logger(ex); throw (new Exception("获取数据失败!", ex)); } }
public bool DeleteCase(string caseid, string userid, Object obj) { IDbTransaction tran = (IDbTransaction)obj; //加入针对不同的业务的删除前处理 FX_WorkFlowCase workFlow = new FX_WorkFlowCase(); workFlow.Condition.Add("ID =" + caseid); workFlow = Utility.Database.QueryObject<FX_WorkFlowCase>(workFlow, tran); if (workFlow != null) { string flowId = workFlow.FlowID; switch (flowId) { case "W000098": //发文 B_OA_SendDoc_QuZhan sendDoc = new B_OA_SendDoc_QuZhan(); sendDoc.Condition.Add("caseid=" + caseid); Utility.Database.Delete(sendDoc, tran); break; case "W000099": //收文 B_OA_ReceiveDoc_QuZhan receiveDoc = new B_OA_ReceiveDoc_QuZhan(); receiveDoc.Condition.Add("caseid=" + caseid); Utility.Database.Delete(receiveDoc, tran); break; case "W000100": //内部事项 B_OA_SendDoc_Inner_QuZhan innderDoc = new B_OA_SendDoc_Inner_QuZhan(); innderDoc.Condition.Add("caseId=" + caseid); Utility.Database.Delete(innderDoc, tran); break; case "W000070": //车辆申请 B_OA_Car car = new B_OA_Car(); car.Condition.Add("workflowcaseid=" + caseid); Utility.Database.Delete(car, tran); break; case "W000071": //会议申请 B_OA_Meeting data = new B_OA_Meeting(); data.Condition.Add("CaseID=" + caseid); Utility.Database.Delete(data, tran); break; case "W000079": //请假申请 B_OA_LeaveList leave = new B_OA_LeaveList(); leave.Condition.Add("caseId=" + caseid); Utility.Database.Delete(leave, tran); break; case "W000080": //出差申请 B_OA_TravelList travel = new B_OA_TravelList(); travel.Condition.Add("caseId=" + caseid); Utility.Database.Delete(travel, tran); break; case "W000089": //通知公告 B_OA_Notice notice = new B_OA_Notice(); notice.Condition.Add("caseid=" + caseid); Utility.Database.Delete(notice, tran); break; } if (!string.IsNullOrEmpty(caseid)) { //删除正文路径 B_Common_CreateDoc createDoc = new B_Common_CreateDoc(); createDoc.Condition.Add("caseid=" + caseid); Utility.Database.Delete(createDoc, tran); //删除附件 FX_AttachMent attach = new FX_AttachMent(); attach.Condition.Add("CaseID="+caseid); Utility.Database.Delete(attach, tran); } } return true; }