Просмотр исходного кода

去重一下 一个病人只显示一个手术信息,因为对应的随访的登记问卷 用的是bingrenzyid

liyuanyuan лет назад: 4
Родитель
Сommit
0340f58d7f
1 измененных файлов с 53 добавлено и 4 удалено
  1. 53 4
      codegit/CallCenterApi/CallCenterApi.DAL/his/sf_bingrenqk.cs

+ 53 - 4
codegit/CallCenterApi/CallCenterApi.DAL/his/sf_bingrenqk.cs

@@ -794,6 +794,55 @@ namespace CallCenterApi.DAL
794 794
         /// </summary>
795 795
         public DataTable GetALLListByPage(string strWhere, string orderby, int startIndex, int endIndex, out int count)
796 796
         {
797
+            #region 去重一下 一个病人只显示一个手术信息,因为对应的随访的登记问卷 用的是bingrenzyid
798
+            //StringBuilder strSql = new StringBuilder();
799
+            //StringBuilder strSqlCount = new StringBuilder();
800
+            //strSqlCount.Append("SELECT count(1) FROM ( ");
801
+            //strSqlCount.Append(" SELECT ROW_NUMBER() OVER (");
802
+            //strSqlCount.Append("order by T1.BRXH desc");
803
+
804
+            //strSqlCount.Append(" )AS r, T1.*  from SF_BINGRENQK T1 ");
805
+            //strSqlCount.Append(" left join sf_shoushuxx T2 on T2.BINGRENZYID=T1.BINGRENZYID");
806
+            //strSqlCount.Append(" left join sf_zhenduan T3 on T3.BINGRENZYID=T1.BRXH ");
807
+            //strSqlCount.Append(" left join SF_Result T4 on T4.F_Id=T1.BINGRENZYID ");
808
+            //if (!string.IsNullOrEmpty(strWhere.Trim()))
809
+            //{
810
+            //    strSqlCount.Append(" WHERE " + strWhere);
811
+            //}
812
+            //strSqlCount.Append(" ) TT");
813
+            //count = Convert.ToInt32(DbHelperSQL.GetSingle(strSqlCount.ToString()));
814
+
815
+            //strSql.Append("SELECT * FROM ( ");
816
+            //strSql.Append(" SELECT ROW_NUMBER() OVER (");
817
+            //if (!string.IsNullOrEmpty(orderby.Trim()))
818
+            //{
819
+            //    strSql.Append("order by T4." + orderby);
820
+            //}
821
+            //else
822
+            //{
823
+            //    strSql.Append("order by T1.BINGRENZYID desc");
824
+            //}
825
+            //strSql.Append(" )AS r, T1.*,T2.SSMC,T4.*  from SF_BINGRENQK T1 ");
826
+            //strSql.Append(" left join sf_shoushuxx T2 on T2.BINGRENZYID=T1.BINGRENZYID");
827
+            //strSql.Append(" left join sf_zhenduan T3 on T3.BINGRENZYID=T1.BINGRENZYID ");
828
+            //strSql.Append(" left join SF_Result T4 on T4.F_Id=T1.BINGRENZYID ");
829
+            //if (!string.IsNullOrEmpty(strWhere.Trim()))
830
+            //{
831
+            //    strSql.Append(" WHERE " + strWhere);
832
+            //}
833
+            //strSql.Append(" ) TT");
834
+            //strSql.AppendFormat(" WHERE TT.r between {0} and {1}", startIndex, endIndex);
835
+            //DataSet ds = DbHelperSQL.Query(strSql.ToString());
836
+            //if (ds != null && ds.Tables[0] != null)
837
+            //{
838
+            //    if (ds.Tables[0].Rows.Count > 0)
839
+            //        return ds.Tables[0];
840
+            //}
841
+            //return null;
842
+            #endregion
843
+
844
+
845
+
797 846
             StringBuilder strSql = new StringBuilder();
798 847
             StringBuilder strSqlCount = new StringBuilder();
799 848
             strSqlCount.Append("SELECT count(1) FROM ( ");
@@ -801,7 +850,6 @@ namespace CallCenterApi.DAL
801 850
             strSqlCount.Append("order by T1.BRXH desc");
802 851
 
803 852
             strSqlCount.Append(" )AS r, T1.*  from SF_BINGRENQK T1 ");
804
-            strSqlCount.Append(" left join sf_shoushuxx T2 on T2.BINGRENZYID=T1.BINGRENZYID");
805 853
             strSqlCount.Append(" left join sf_zhenduan T3 on T3.BINGRENZYID=T1.BRXH ");
806 854
             strSqlCount.Append(" left join SF_Result T4 on T4.F_Id=T1.BINGRENZYID ");
807 855
             if (!string.IsNullOrEmpty(strWhere.Trim()))
@@ -815,16 +863,16 @@ namespace CallCenterApi.DAL
815 863
             strSql.Append(" SELECT ROW_NUMBER() OVER (");
816 864
             if (!string.IsNullOrEmpty(orderby.Trim()))
817 865
             {
818
-                strSql.Append("order by T1." + orderby);
866
+                strSql.Append("order by T4." + orderby);
819 867
             }
820 868
             else
821 869
             {
822 870
                 strSql.Append("order by T1.BINGRENZYID desc");
823 871
             }
824
-            strSql.Append(" )AS r, T1.*,T2.SSMC,T4.*  from SF_BINGRENQK T1 ");
825
-            strSql.Append(" left join sf_shoushuxx T2 on T2.BINGRENZYID=T1.BINGRENZYID");
872
+            strSql.Append(" )AS r, T1.*,  (SELECT TOP 1 T2.ssmc FROM sf_shoushuxx T2 WHERE T2.BINGRENZYID=T1.BINGRENZYID) ssmc,T4.*  from SF_BINGRENQK T1 ");
826 873
             strSql.Append(" left join sf_zhenduan T3 on T3.BINGRENZYID=T1.BINGRENZYID ");
827 874
             strSql.Append(" left join SF_Result T4 on T4.F_Id=T1.BINGRENZYID ");
875
+
828 876
             if (!string.IsNullOrEmpty(strWhere.Trim()))
829 877
             {
830 878
                 strSql.Append(" WHERE " + strWhere);
@@ -838,6 +886,7 @@ namespace CallCenterApi.DAL
838 886
                     return ds.Tables[0];
839 887
             }
840 888
             return null;
889
+
841 890
         }
842 891
 
843 892
         /// <summary>