Chr☆s Kwok 的技术笔记

.NET, C#, WPF, WCF, WF, .NetCore & LINQ ... I know how it works because I know why it works ...

博客园 首页 新随笔 订阅 管理

1、获取所有片区(院区)科室;
2、获取当前片区(院区);
3、获取当前登录科室所在片区(院区)的取样科室列表

    public class OrganizationTreeHelper
    {
        /// <summary>
        /// 获取所有片区(科室)
        /// </summary>
        /// <returns></returns>
        public static IList<IOrganization> GetAllAreaOrganizations()
        {
            IList<IOrganization> areaOrgs = OrganizationTreeKind.AreaTreeKind.InstanceFullTree.Items;
            return areaOrgs;
        }

        /// <summary>
        /// 获取登录科室当前片区
        /// </summary>
        /// <returns></returns>
        public static IOrganization GetCurrentAreaOrganization()
        {
            IOrganization logonOrganization = ClientContext.Instance.LogOnOrganization();
            var area = RepositoryHelper.OrganizationRepository.GetOpOrganizationOwnerArea(logonOrganization);
            if (area == null)
            {
                MessageHelper.ShowDialog($"片区分诊台科室树中没维护“{logonOrganization.GetName()}”的所属片区。", "提示");
            }

            return area;
        }

        /// <summary>
        /// 获取当前科室片区的取样科室列表
        /// </summary>
        /// <returns></returns>
        public static IList<IOrganization> GetCurrentAreaSamplingOrganizations()
        {
            IList<IOrganization> organizations = new List<IOrganization>();
            IOrganization logonOrganization = ClientContext.Instance.LogOnOrganization();
            var area = RepositoryHelper.OrganizationRepository.GetOpOrganizationOwnerArea(logonOrganization);
            if (area == null)
            {
                MessageHelper.ShowDialog($"片区分诊台科室树中没维护“{logonOrganization.GetName()}”的所属片区。", "提示");
                return new List<IOrganization>();
            }

            organizations = RepositoryHelper.OrganizationRepository.GetByTreeKindAndParent(OrganizationTreeKind.AreaSampleTreeKind, area)
                  .Where(a => !a.IsDeleted && a.IsValid).ToList();
            return organizations;
        }
    }

 常用代码二


if (this.UseCase.ShellSystem.SystemKey.EqualsIgnoreCase("OPCharge")
	|| this.UseCase.ShellSystem.SystemKey.EqualsIgnoreCase("IPCharge"))
	View.DoctorReasonRow.Height = new GridLength(60);
else
	View.DoctorReasonRow.Height = new GridLength(0);


public static IList<JMNew_3103_IN_warns> Get3103IN_warns(int encounterId)
{
	IList<JMNew_3103_IN_warns> ret = new List<JMNew_3103_IN_warns>();
	StringBuilder sb = new StringBuilder();

	sb.AppendLine($"select a.warn_rslt_id, a.dspo_way, a.dspo_way_rea from MC.JMNEW_3103_IN_WARNS a ");
	sb.AppendLine($"where a.isdeleted=0 and upper(a.domainsystemkey) not in ('OPCHARGE', 'IPCHARGE') ");
	sb.AppendLine($"and a.encounterid = :encId order by a.rowversion ");

	using (var cn = DapperHelper.CrateConnection(Dbs.IP))
	{
		ret = DapperHelper.Query<JMNew_3103_IN_warns>(cn, sb.ToString(), new { encId = encounterId }).ToList();
	}
	return ret;
}

ORACLE 返回主键ID的语句写法:

declare
  v_Id NUMBER(10, 0);
BEGIN
  insert into config.resources (DESCRIPTION, GROUPKEY, RESOURCEKINDCODE, FILENAME, ROWVERSION, KEY, EXTFILENAME)
  values ('基孔转诊医院拾取器', null, 6, 'ChikvReferralHospitalPicker.xaml', sysdate, 'ChikvReferralHospitalPicker', null)
  RETURNING RESOURCEID INTO v_Id;

  insert into config.entitypicker (ENTITYTYPE, DESCRIPTION, TRIGGEREVENT, USECASEKEY, ISENTERFILTERENABLED, RESOURCEID, ISDELETED, ROWVERSION, SEARCHKEYS, SEARCHPREFIXS)
  values ('JetSun.DomainModel.ChikvReferralHospitalModel', '基孔转诊医院', 3, 'JetSun.OPClinicalManagement.Layout.OpDoctorUseCase', 0, v_Id, 0, sysdate, null, null);
  
  COMMIT;
END;

 

posted on 2026-06-26 15:14  Chr☆s  阅读(1)  评论(0)    收藏  举报