public int Templet_Edit(TempletInfo info) { int rst = 0; try { OleDbParameter[] param = new OleDbParameter[7]; param[0] = new OleDbParameter("@Code", OleDbType.VarWChar, 30); param[0].Value = info.Code; param[1] = new OleDbParameter("@Title", OleDbType.VarWChar, 50); param[1].Value = info.Title; param[2] = new OleDbParameter("@Content", OleDbType.VarWChar, 200); param[2].Value = info.Content; param[3] = new OleDbParameter("@Path", OleDbType.VarWChar, 200); param[3].Value = info.Path; param[4] = new OleDbParameter("@Postfix", OleDbType.VarWChar, 200); param[4].Value = info.Postfix; param[5] = new OleDbParameter("@Remark", OleDbType.VarWChar, 100); param[5].Value = info.Remark; param[6] = new OleDbParameter("@ID", OleDbType.VarWChar, 50); param[6].Value = info.ID; string sql = "update Cm_Templet set Code=@Code,Title=@Title,Content=@Content,Path=@Path,Postfix=@Postfix,EditTime=now(),Remark=@Remark where ID=@ID"; rst = DbHelper.ExecuteNonQuery(constring, CommandType.Text, sql, param); } catch { rst = -1; } return(rst); }
/// <summary> /// 根据文档模板ID获取文档模板信息 /// </summary> /// <param name="szTempletID">文档模板ID</param> /// <param name="templetInfo">文档模板信息</param> /// <returns>SystemData.ReturnValue</returns> public short GetUserTempletInfo(string szTempletID, ref TempletInfo templetInfo) { if (GlobalMethods.Misc.IsEmptyString(szTempletID)) { LogManager.Instance.WriteLog("TempletAccess.GetUserTempletInfo", new string[] { "szTempletID" }, new object[] { szTempletID }, "参数不能为空!"); return(SystemData.ReturnValue.PARAM_ERROR); } DbParameter[] param = new DbParameter[1] { new DbParameter(SystemData.DocTempletTable.TEMPLET_ID, szTempletID) }; string szCondition = string.Format("{0}={1}", SystemData.DocTempletTable.TEMPLET_ID, base.ParaHolder(SystemData.DocTempletTable.TEMPLET_ID)); List <TempletInfo> lstTempletInfos = null; short shRet = this.GetUserTempletInfosInternal(szCondition, string.Empty, ref lstTempletInfos, param); if (shRet != SystemData.ReturnValue.OK) { return(shRet); } if (lstTempletInfos == null || lstTempletInfos.Count <= 0) { return(SystemData.ReturnValue.RES_NO_FOUND); } templetInfo = lstTempletInfos[0]; return(SystemData.ReturnValue.OK); }
public IList <TempletInfo> TempletByParentIDGetList(int ParentID) { IList <TempletInfo> ilist = new List <TempletInfo>(); DataTable dt = new DataTable(); OleDbParameter[] param = new OleDbParameter[1]; param[0] = new OleDbParameter("@ParentID", OleDbType.Integer); param[0].Value = ParentID; string sql = "select a.*,c.Title as ParentTitle from Cm_Templet a,cm_TempletType c where a.ParentID=c.ID and a.ParentID=@ParentID order by a.ParentID,a.ID"; dt = DbHelper.ExecuteTable(constring, CommandType.Text, sql, param); for (int i = 0; i < dt.Rows.Count; i++) { TempletInfo info = new TempletInfo(); info.ID = Convert.ToInt32(dt.Rows[i]["ID"].ToString()); info.ParentID = int.Parse(dt.Rows[i]["ParentID"].ToString()); info.Code = dt.Rows[0]["Code"].ToString(); info.Title = dt.Rows[i]["Title"].ToString(); info.Content = dt.Rows[i]["Content"].ToString(); info.Path = dt.Rows[i]["Path"].ToString(); info.Postfix = dt.Rows[i]["Postfix"].ToString(); info.CreateTime = Convert.ToDateTime(dt.Rows[i]["CreateTime"].ToString()); info.EditTime = Convert.ToDateTime(dt.Rows[i]["EditTime"].ToString()); info.Remark = dt.Rows[i]["Remark"].ToString(); ilist.Add(info); } return(ilist); }
public IList <TempletInfo> TempletGetList() { IList <TempletInfo> ilist = new List <TempletInfo>(); DataTable dt = new DataTable(); string sql = "select a.*,c.Title as ParentTitle from Cm_Templet a,cm_TempletType c where a.ParentID=c.ID order by a.ParentID,a.ID"; dt = DbHelper.ExecuteTable(constring, CommandType.Text, sql, null); for (int i = 0; i < dt.Rows.Count; i++) { TempletInfo info = new TempletInfo(); info.ID = Convert.ToInt32(dt.Rows[i]["ID"].ToString()); info.ParentID = int.Parse(dt.Rows[i]["ParentID"].ToString()); info.Code = dt.Rows[i]["Code"].ToString(); info.Title = dt.Rows[i]["Title"].ToString(); info.Content = dt.Rows[i]["Content"].ToString(); info.Path = dt.Rows[i]["Path"].ToString(); info.Postfix = dt.Rows[i]["Postfix"].ToString(); info.CreateTime = Convert.ToDateTime(dt.Rows[i]["CreateTime"].ToString()); info.EditTime = Convert.ToDateTime(dt.Rows[i]["EditTime"].ToString()); info.Remark = dt.Rows[i]["Remark"].ToString(); info.ParentTitle = dt.Rows[i]["ParentTitle"].ToString(); ilist.Add(info); } return(ilist); }
public TempletInfo TempletGetInfo(int ID) { TempletInfo info = new TempletInfo(); DataTable dt = new DataTable(); OleDbParameter[] param = new OleDbParameter[1]; param[0] = new OleDbParameter("@ID", OleDbType.VarWChar, 20); param[0].Value = ID; string sql = "select * from Cm_Templet where ID=@ID"; dt = DbHelper.ExecuteTable(constring, CommandType.Text, sql, param); if (dt.Rows.Count > 0) { info.ID = Convert.ToInt32(dt.Rows[0]["ID"].ToString()); info.ParentID = int.Parse(dt.Rows[0]["ParentID"].ToString()); info.Code = dt.Rows[0]["Code"].ToString(); info.Title = dt.Rows[0]["Title"].ToString(); info.Content = dt.Rows[0]["Content"].ToString(); info.Path = dt.Rows[0]["Path"].ToString(); info.Postfix = dt.Rows[0]["Postfix"].ToString(); info.CreateTime = Convert.ToDateTime(dt.Rows[0]["CreateTime"].ToString()); info.EditTime = Convert.ToDateTime(dt.Rows[0]["EditTime"].ToString()); info.Remark = dt.Rows[0]["Remark"].ToString(); } return(info); }
/// <summary> /// 对指定的两个模板信息对象进行排序 /// </summary> /// <param name="templetInfo1">模板信息对象1</param> /// <param name="templetInfo2">模板信息对象2</param> /// <returns>int</returns> private int Compare(TempletInfo templetInfo1, TempletInfo templetInfo2) { if (templetInfo1 == null && templetInfo2 != null) { return(-1); } if (templetInfo1 != null && templetInfo2 == null) { return(1); } if (templetInfo1 == null && templetInfo2 == null) { return(0); } return(string.Compare(templetInfo1.DeptCode, templetInfo2.DeptCode)); }
public static string GetFilePath(int ID) { string filepath = ""; IFileType ftdal = new AccessDal.CodeMaker.FileType(); ITempletType tdal = new AccessDal.CodeMaker.TempletType(); ITemplet dal = new AccessDal.CodeMaker.Templet(); TempletInfo tinfo = dal.TempletGetInfo(ID); TempletTypeInfo info = tdal.TempletTypeGetInfo(tinfo.ParentID); string code = info.Code.Substring(0, 3); TempletTypeInfo tyinfo = tdal.TempletTypeByCodeGetList(code); string path = ftdal.FileType_GetPath(tyinfo.FileTypeID); filepath = rootFolder + "\\" + path + "\\" + info.Code; return(filepath); }
public int Templet_Add(TempletInfo info, out int ID) { ID = 0; int rst = 0; try { OleDbParameter[] param = new OleDbParameter[7]; param[0] = new OleDbParameter("@ParentID", OleDbType.Integer); param[0].Value = info.ParentID; param[1] = new OleDbParameter("@Code", OleDbType.VarWChar, 30); param[1].Value = info.Code; param[2] = new OleDbParameter("@Title", OleDbType.VarWChar, 50); param[2].Value = info.Title; param[3] = new OleDbParameter("@Content", OleDbType.VarWChar, 200); param[3].Value = info.Content; param[4] = new OleDbParameter("@Path", OleDbType.VarWChar, 200); param[4].Value = info.Path; param[5] = new OleDbParameter("@Postfix", OleDbType.VarWChar, 200); param[5].Value = info.Postfix; param[6] = new OleDbParameter("@Remark", OleDbType.VarWChar, 100); param[6].Value = info.Remark; string sql = "insert into Cm_Templet (ParentID,Code,Title,Content,Path,Postfix,CreateTime,EditTime,Remark) values (@ParentID,@Code,@Title,@Content,@Path,@Postfix,now(),now(),@Remark)"; rst = DbHelper.ExecuteNonQuery(constring, CommandType.Text, sql, param); } catch { rst = -1; } if (rst == 1) { DataTable dt = new DataTable(); string sql = "select max(ID) as ID from Cm_Templet"; dt = DbHelper.ExecuteTable(constring, CommandType.Text, sql, null); ID = Convert.ToInt32(dt.Rows[0]["ID"].ToString()); } return(rst); }
private void tv_left_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) { tv_left.SelectedNode = e.Node; if (tv_left.SelectedNode != null) { if (tv_left.SelectedNode.Name == "Templet") { TempletInfo info = tv_left.SelectedNode.Tag as TempletInfo; if (info != null) { templetInfo = info; lb_Templet.Text = info.Title; } } else { templetInfo = null; lb_Templet.Text = ""; } textEditorControl.Text = ""; } }
/// <summary> /// 获取指定查询条件下的用户保存的病历大模板列表 /// </summary> /// <param name="szCondition">查询条件</param> /// <param name="szOrderSQL">排序字段</param> /// <param name="lstTempletInfos">病历大模板信息列表</param> /// <returns>SystemData.ReturnValue</returns> private short GetUserTempletInfosInternal(string szCondition, string szOrderSQL, ref List <TempletInfo> lstTempletInfos, DbParameter[] param) { if (base.MeddocAccess == null) { return(SystemData.ReturnValue.PARAM_ERROR); } string szField = string.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17},{18},{19},{20}" , SystemData.DocTempletTable.TEMPLET_ID, SystemData.DocTempletTable.DOCTYPE_ID , SystemData.DocTempletTable.TEMPLET_NAME, SystemData.DocTempletTable.SHARE_LEVEL , SystemData.DocTempletTable.DEPT_CODE, SystemData.DocTempletTable.DEPT_NAME , SystemData.DocTempletTable.CREATOR_ID, SystemData.DocTempletTable.CREATOR_NAME , SystemData.DocTempletTable.CREATE_TIME, SystemData.DocTempletTable.MODIFY_TIME , SystemData.DocTempletTable.IS_VALID, SystemData.DocTempletTable.PARENT_ID , SystemData.DocTempletTable.IS_FOLDER, SystemData.DocTempletTable.CHECK_STATUS , SystemData.DocTempletTable.CHECKER_ID, SystemData.DocTempletTable.CHECKER_NAME , SystemData.DocTempletTable.CHECK_TIME, SystemData.DocTempletTable.CHECK_MESSAGE , SystemData.DocTempletTable.SUPER_CHECK_ID, SystemData.DocTempletTable.SUPER_CHECK_NAME , SystemData.DocTempletTable.SUPER_CHECK_TIME); string szSQL = string.Empty; if (GlobalMethods.Misc.IsEmptyString(szCondition)) { szSQL = string.Format(SystemData.SQL.SELECT_FROM, szField, SystemData.DataTable.DOC_TEMPLET); } else { szSQL = string.Format(SystemData.SQL.SELECT_WHERE, szField, SystemData.DataTable.DOC_TEMPLET, szCondition); } if (!GlobalMethods.Misc.IsEmptyString(szOrderSQL)) { szSQL = string.Concat(szSQL, " ", szOrderSQL); } IDataReader dataReader = null; try { dataReader = base.MeddocAccess.ExecuteReader(szSQL, CommandType.Text, ref param); if (dataReader == null || dataReader.IsClosed || !dataReader.Read()) { return(SystemData.ReturnValue.RES_NO_FOUND); } if (lstTempletInfos == null) { lstTempletInfos = new List <TempletInfo>(); } do { TempletInfo templetInfo = new TempletInfo(); templetInfo.TempletID = dataReader.GetString(0); templetInfo.DocTypeID = dataReader.GetString(1); templetInfo.TempletName = dataReader.GetString(2); templetInfo.ShareLevel = dataReader.GetString(3); templetInfo.DeptCode = dataReader.GetString(4); templetInfo.DeptName = dataReader.GetString(5); templetInfo.CreatorID = dataReader.GetString(6); templetInfo.CreatorName = dataReader.GetString(7); templetInfo.CreateTime = dataReader.GetDateTime(8); if (!dataReader.IsDBNull(9)) { templetInfo.ModifyTime = dataReader.GetDateTime(9); } if (!dataReader.IsDBNull(10)) { templetInfo.IsValid = dataReader.GetValue(10).ToString().Equals("1"); } if (!dataReader.IsDBNull(11)) { templetInfo.ParentID = dataReader.GetString(11); } if (!dataReader.IsDBNull(12)) { templetInfo.IsFolder = dataReader.GetValue(12).ToString().Equals("1"); } if (!dataReader.IsDBNull(13)) { templetInfo.CheckStatus = TempletInfo.GetCheckStatus(dataReader.GetString(13)); } if (!dataReader.IsDBNull(14)) { templetInfo.CheckerID = dataReader.GetString(14); } if (!dataReader.IsDBNull(15)) { templetInfo.CheckerName = dataReader.GetString(15); } if (!dataReader.IsDBNull(16)) { templetInfo.CheckTime = dataReader.GetDateTime(16); } if (!dataReader.IsDBNull(17)) { templetInfo.CheckMessage = dataReader.GetString(17); } if (!dataReader.IsDBNull(18)) { templetInfo.SuperCheckerID = dataReader.GetString(18); } if (!dataReader.IsDBNull(19)) { templetInfo.SuperCheckerName = dataReader.GetString(19); } if (!dataReader.IsDBNull(20)) { templetInfo.SuperCheckTime = dataReader.GetDateTime(20); } lstTempletInfos.Add(templetInfo); } while (dataReader.Read()); return(SystemData.ReturnValue.OK); } catch (Exception ex) { LogManager.Instance.WriteLog("TempletAccess.GetUserTempletInfosInternal", new string[] { "szSQL" }, new object[] { szSQL }, "SQL语句执行失败!", ex); return(SystemData.ReturnValue.EXCEPTION); } finally { base.MeddocAccess.CloseConnnection(false); } }
/// <summary> /// 保存数据 /// </summary> private void SaveData() { TempletInfo info = new TempletInfo(); info.Code = tb_Code.Text.Trim(); info.Title = tb_Title.Text.Trim(); info.Content = ""; info.Remark = tb_Remark.Text.Trim(); info.Postfix = cb_Postfix.Text; info.Path = ""; string Content = textEditorControl.Text; if (ParentInfo == null && lb_ID.Text == "") { MessageBox.Show("请选择目录。"); return; } if (info.Title == "") { MessageBox.Show("请输入名称。"); return; } if (Content == "") { MessageBox.Show("请输入内容。"); return; } if (info.Postfix == "") { MessageBox.Show("请选择后缀名称。"); return; } int rst = -1; int TempletID = 0; if (lb_ID.Text == "") { info.ParentID = ParentInfo.ID; rst = dal.Templet_Add(info, out TempletID); } else { info.ID = int.Parse(lb_ID.Text); TempletID = info.ID; rst = dal.Templet_Edit(info); } if (rst == 1) { IUpLoadFile ufDal = new AccessDal.CodeMaker.UpLoadFile(); UpLoadFileInfo upfInfo = new UpLoadFileInfo(); upfInfo = ufDal.UpLoadFileGetInfo("Cm_Templet", TempletID); if (upfInfo != null && upfInfo.FileID != 0) { string path = AppDomain.CurrentDomain.BaseDirectory + upfInfo.FilePath + "\\" + upfInfo.UniqueName; Common.FileHandle.DeleteFile(path); if (ufDal.UpLoadFile_Del(upfInfo.FileID) != 1) { MessageBox.Show("操作失败。"); return; } } TempletInfo tinfo = dal.TempletGetInfo(TempletID); TempletTypeInfo tltinfo = menuDal.TempletTypeGetInfo(tinfo.ParentID); string fpath = CodeFile.GetFilePath(tltinfo); string filepath = AppDomain.CurrentDomain.BaseDirectory + fpath; rst = Common.FileHandle.WirteCreateFile(Content, filepath + "\\" + info.Title + "." + info.Postfix); if (rst == 1) { upfInfo.TableName = "Cm_Templet"; upfInfo.RootField = ""; upfInfo.RootId = ""; upfInfo.ParentField = ""; upfInfo.ParentId = TempletID.ToString(); upfInfo.FilePath = fpath; upfInfo.Remark = ""; upfInfo.FileSize = 0; upfInfo.FileName = info.Title; upfInfo.ExpandName = info.Postfix; upfInfo.UniqueName = info.Title + "." + info.Postfix; upfInfo.FileTypeId = tltinfo.ID; upfInfo.AttachmentId = tltinfo.Code; rst = ufDal.UpLoadFile_Add(upfInfo); } } QueryData(); if (rst == 1) { MessageBox.Show("保存成功。"); } else { MessageBox.Show("保存失败。"); } }
/// <summary> /// /// </summary> public override void OnRefreshView() { base.OnRefreshView(); this.Update(); if (this.virtualTree1.Nodes.Count > 0) { this.virtualTree1.Nodes.Clear(); } GlobalMethods.UI.SetCursor(this, Cursors.WaitCursor); this.ShowStatusMessage("正在加载文档类型列表,请稍候..."); this.LoadDocTypeList(); this.ShowStatusMessage("正在加载待审核模板列表,请稍候..."); List <TempletInfo> lstTempletInfo = null; short shRet = TempletAccess.Instance.GetUserTempletInfos("0", ref lstTempletInfo); if (shRet != SystemData.ReturnValue.OK) { MessageBoxEx.Show("获取待审核模板列表失败"); GlobalMethods.UI.SetCursor(this, Cursors.Default); this.ShowStatusMessage(null); return; } if (lstTempletInfo == null) { GlobalMethods.UI.SetCursor(this, Cursors.Default); this.ShowStatusMessage("未找到待审核的模板"); return; } //查询医生已修正确认的模板列表 List <TempletInfo> lstModifyTempletInfos = null; shRet = TempletAccess.Instance.GetUserTempletInfos("2", ref lstModifyTempletInfos); if (shRet != SystemData.ReturnValue.OK && shRet != SystemData.ReturnValue.RES_NO_FOUND) { MessageBoxEx.Show("获取医生已确认修正待审核模板列表失败"); GlobalMethods.UI.SetCursor(this, Cursors.Default); this.ShowStatusMessage(null); return; } if (lstModifyTempletInfos != null) { lstTempletInfo.AddRange(lstModifyTempletInfos); } lstTempletInfo.Sort(new Comparison <TempletInfo>(this.Compare)); //模板时间显示格式 string szDocTimeFormat = "yyyy-MM-dd HH:mm"; string szDeptCode = string.Empty; VirtualNode deptNode = null; for (int index = 0; index < lstTempletInfo.Count; index++) { TempletInfo templetInfo = lstTempletInfo[index]; if (templetInfo == null) { continue; } if (templetInfo.IsFolder) { continue; } //添加科室名称显示行 if (templetInfo.DeptCode != szDeptCode) { deptNode = new VirtualNode(templetInfo.DeptName); deptNode.ForeColor = Color.Blue; deptNode.Font = new Font("宋体", 10.5f, FontStyle.Regular); this.virtualTree1.Nodes.Add(deptNode); deptNode.Expand(); } szDeptCode = templetInfo.DeptCode; VirtualNode templetNode = new VirtualNode(templetInfo.TempletName); templetNode.Data = templetInfo; templetNode.ForeColor = Color.Black; templetNode.Font = new Font("宋体", 10.5f, FontStyle.Regular); string szDocTypeName = string.Empty; DocTypeInfo docTypeInfo = this.m_htDocTypeList[templetInfo.DocTypeID] as DocTypeInfo; if (docTypeInfo == null) { szDocTypeName = templetInfo.DocTypeID; } else { szDocTypeName = docTypeInfo.DocTypeName; } VirtualSubItem subItem = null; subItem = new VirtualSubItem(szDocTypeName); subItem.Font = new Font("宋体", 10.5f, FontStyle.Regular); subItem.Alignment = Alignment.Middle; templetNode.SubItems.Add(subItem); subItem = new VirtualSubItem(templetInfo.CreatorName); subItem.Font = new Font("宋体", 10.5f, FontStyle.Regular); subItem.Alignment = Alignment.Middle; templetNode.SubItems.Add(subItem); subItem = new VirtualSubItem(templetInfo.ModifyTime.ToString(szDocTimeFormat)); subItem.Font = new Font("宋体", 10.5f, FontStyle.Regular); subItem.Alignment = Alignment.Middle; templetNode.SubItems.Add(subItem); string szShareLevel = string.Empty; if (templetInfo.ShareLevel == SystemData.ShareLevel.HOSPITAL) { szShareLevel = "全院"; } else if (templetInfo.ShareLevel == SystemData.ShareLevel.DEPART) { szShareLevel = "科室"; } else { szShareLevel = "个人"; } subItem = new VirtualSubItem(szShareLevel); subItem.Font = new Font("宋体", 10.5f, FontStyle.Regular); subItem.Alignment = Alignment.Middle; templetNode.SubItems.Add(subItem); string szCheckStatus = string.Empty; if (templetInfo.CheckStatus == TempletCheckStatus.None) { szCheckStatus = "未审核"; } else if (templetInfo.CheckStatus == TempletCheckStatus.Affirm) { szCheckStatus = "已确认"; } subItem = new VirtualSubItem(szCheckStatus); subItem.Font = new Font("宋体", 10.5f, FontStyle.Regular); subItem.Alignment = Alignment.Middle; templetNode.SubItems.Add(subItem); deptNode.Nodes.Add(templetNode); } this.ShowStatusMessage(null); GlobalMethods.UI.SetCursor(this, Cursors.Default); }