Selaa lähdekoodia

满意度更改

ZhangLiuYang 4 vuotta sitten
vanhempi
commit
ec8ea513ac

+ 44 - 14
codegit/CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/MedicalFollowup/FollowUpController.cs

@@ -792,32 +792,49 @@ namespace CallCenterApi.Interface.Controllers.MedicalFollowup
792 792
         {
793 793
             DataTable dt = new DataTable();
794 794
             dt.Columns.Add("科室");
795
+            dt.Columns.Add("总量");
796
+            dt.Columns.Add("随访量");
795 797
             dt.Columns.Add("满意度");
796
-
798
+            dt.Columns.Add("rate", typeof(double));
797 799
 
798 800
             var kslist = DbHelperSQL.Query("select distinct CYKS FROM SF_BINGRENQK").Tables[0];
799 801
             var myd = DbHelperSQL.Query("select distinct a.CYKS,COUNT(b.F_MYD) from SF_BINGRENQK a,SF_Result b where a.BINGRENZYID=b.F_Id and b.F_MYD='满意' group by a.CYKS ").Tables[0];
802
+            var tlist = DbHelperSQL.Query("select count(1) Num,CYKS FROM SF_BINGRENQK group by CYKS").Tables[0];
803
+            var sflist = DbHelperSQL.Query("select CYKS,COUNT(1) Num from SF_BINGRENQK a,SF_Result b where a.BINGRENZYID=b.F_Id and b.F_Result='正常接通' group by CYKS").Tables[0];
800 804
 
801 805
             foreach (DataRow dr in kslist.Rows)
802 806
             {
807
+                //var drnew = dt.NewRow();
808
+                //var cyks = dr["CYKS"].ToString();
809
+                //drnew["科室"] = cyks;
810
+                //var my = myd.Select("CYKS='" + cyks + "'").FirstOrDefault()?.ItemArray[0].ToString() ?? "";
811
+                //if (my != "")
812
+                //{
813
+                //    var myl = myd.Select("CYKS='" + cyks + "'").FirstOrDefault()?.ItemArray[1].ToString() ?? "0";
814
+                //    drnew["满意度"] = myl;
815
+                //}
816
+                //dt.Rows.Add(drnew);
803 817
                 var drnew = dt.NewRow();
804 818
                 var cyks = dr["CYKS"].ToString();
805 819
                 drnew["科室"] = cyks;
806
-                var my = myd.Select("CYKS='" + cyks + "'").FirstOrDefault()?.ItemArray[0].ToString() ?? "";
807
-                if (my != "")
820
+                var zl = tlist.Select("CYKS='" + cyks + "'").FirstOrDefault()?.ItemArray[0].ToString() ?? "";
821
+                if (zl != "")
808 822
                 {
809
-                    
810
-                    var myl = myd.Select("CYKS='" + cyks + "'").FirstOrDefault()?.ItemArray[1].ToString() ?? "0";
811
-                    drnew["满意度"] = myl;
812
-                }
823
+                    drnew["总量"] = zl;
824
+                    var sfl = sflist.Select("CYKS='" + cyks + "'").FirstOrDefault()?.ItemArray[1].ToString() ?? "0";
825
+                    drnew["随访量"] = sfl;
826
+                    var my = myd.Select("CYKS='" + cyks + "'").FirstOrDefault()?.ItemArray[1].ToString() ?? "0";
827
+                    var Rate = Math.Round(double.Parse(my) * 100 / double.Parse(sfl), 2);
828
+                    drnew["rate"] = Rate;
829
+                    drnew["满意度"] = Rate + "%";
813 830
 
831
+                }
814 832
                 dt.Rows.Add(drnew);
815 833
             }
816
-            var dtnew = dt.Select("1=1").CopyToDataTable();
817
-            
818
-
819
-            return dtnew;
834
+                var dtnew = dt.Select("1=1").CopyToDataTable();
835
+                dtnew.Columns.Remove("rate");
820 836
 
837
+                return dtnew;
821 838
         }
822 839
         /// <summary>
823 840
         /// 导出
@@ -849,16 +866,29 @@ namespace CallCenterApi.Interface.Controllers.MedicalFollowup
849 866
             {
850 867
                 var kslist = DbHelperSQL.Query("select distinct CYKS FROM SF_BINGRENQK").Tables[0];
851 868
                 var myd = DbHelperSQL.Query("select distinct a.CYKS,COUNT(b.F_MYD) from SF_BINGRENQK a,SF_Result b where a.BINGRENZYID=b.F_Id and b.F_MYD='满意' group by a.CYKS ").Tables[0];
869
+                var tlist = DbHelperSQL.Query("select count(1) Num,CYKS FROM SF_BINGRENQK group by CYKS").Tables[0];
870
+                var sflist = DbHelperSQL.Query("select CYKS,COUNT(1) Num from SF_BINGRENQK a,SF_Result b where a.BINGRENZYID=b.F_Id and b.F_Result='正常接通' group by CYKS").Tables[0];
852 871
                 var ksc = kslist.Rows.Count;
853 872
 
854 873
                 Dictionary<string, double> dics = new Dictionary<string, double>();
855 874
                 for (int i = 0; i < ksc; i++)
856 875
                 {
876
+                    //var cyks = kslist.Rows[i]["CYKS"].ToString();
877
+
878
+                    //var myl = myd.Select("CYKS='" + cyks + "'").FirstOrDefault()?.ItemArray[1].ToString() ?? "0";
879
+                    //var Rate = Math.Round(double.Parse(myl));
880
+                    //dics.Add(cyks, Rate);
881
+
857 882
                     var cyks = kslist.Rows[i]["CYKS"].ToString();
858 883
 
859
-                    var myl = myd.Select("CYKS='" + cyks + "'").FirstOrDefault()?.ItemArray[1].ToString() ?? "0";
860
-                    var Rate = Math.Round(double.Parse(myl));
861
-                    dics.Add(cyks, Rate);
884
+                    var zl = tlist.Select("CYKS='" + cyks + "'").FirstOrDefault()?.ItemArray[0].ToString() ?? "";
885
+                    if (zl != "")
886
+                    {
887
+                        var sfl = sflist.Select("CYKS='" + cyks + "'").FirstOrDefault()?.ItemArray[1].ToString() ?? "0";
888
+                        var my = myd.Select("CYKS='" + cyks + "'").FirstOrDefault()?.ItemArray[1].ToString() ?? "0";
889
+                        var Rate = Math.Round(double.Parse(my) * 100 / double.Parse(sfl), 2);
890
+                        dics.Add(cyks, Rate);
891
+                    }
862 892
 
863 893
                 }
864 894