From 6e2b929cf381e2320ba6e7dec56c0371124d2b51 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期六, 27 八月 2022 15:03:00 +0800
Subject: [PATCH] 提交

---
 zhengcaioa/Services/ExpertTestTopicService.cs |  171 ++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 133 insertions(+), 38 deletions(-)

diff --git a/zhengcaioa/Services/ExpertTestTopicService.cs b/zhengcaioa/Services/ExpertTestTopicService.cs
index fda7dfc..2b227c6 100644
--- a/zhengcaioa/Services/ExpertTestTopicService.cs
+++ b/zhengcaioa/Services/ExpertTestTopicService.cs
@@ -121,7 +121,7 @@
                 {
                     for (int i = 0; i < Falv.Length; i++)
                     {
-                        if (!string.IsNullOrEmpty(dto.Falv[i]))
+                        if (!string.IsNullOrEmpty(dto.Falv[i]) || !string.IsNullOrEmpty(dto.Fatiao[i]) || !string.IsNullOrEmpty(dto.Fatiaomingxi[i]))
                         {
                             ExpertTestTopicjiexi expertTestTopicjiexi = new ExpertTestTopicjiexi();
 
@@ -132,6 +132,7 @@
                             expertTestTopicjiexi.Falv = dto.Falv[i];
                             expertTestTopicjiexi.Fatiao = dto.Fatiao[i];
                             expertTestTopicjiexi.Flag = dto.Flag[i];
+                            expertTestTopicjiexi.Jiexi = dto.Fatiaomingxi[i];  
                             expertTestTopicjiexi.Creater = dto.Modifier;
                             expertTestTopicjiexi.Createtime = DateTime.Now;
                             expertTestTopicjiexi.Modifier = dto.Modifier;
@@ -185,8 +186,7 @@
             var listCode = (from a in _context.SysCodeDtls
                             join b in _context.SysCodes
                             on a.CodeId equals b.Id
-                            where a.RecStatus == "A"
-                                          && b.RecStatus == "A"
+                            where  b.RecStatus == "A"
                             select new CodeDataEntity()
                             {
                                 CodeId = b.Id,
@@ -242,28 +242,33 @@
                  into ksssss
                          from kkk in ksssss.DefaultIfEmpty()
 
-
-                         //join ll in ( from  aaa in _context.ExpertTestTopicanwsers.Where(x => x.RecStatus == "A").Select(e => new { Topic = e.Topic, Items = e.Anwserno + " " + e.Anwser + "</br>" }).GroupBy(e => new { e.Topic })
-                         //             let ids = aaa.Select(b => b.Items.ToString()).ToArray()
-
-                         //             select new { Topic = aaa.Key.Topic, Items = String.Join(" ", ids) }
-                         // //.Select(eg => new
-                         // //{
-                         // //    Topic = eg.Key.Topic,
-                         // //    //EmployeeName = eg.First().EmployeeName,
-                         // //    Items = eg.Select(i => i.Anwserno) + " " + eg.Select(i => i.Anwser) + "</br>",
-                         // //})
-                         // )
-                         //on a.Id equals ll.Topic
-                         //  into llsssss
-                         //from llll in llsssss.DefaultIfEmpty()
+                         join l in _context.ExpertTestTopicjiexis
+              on a.Id equals l.Topic
+              into lsssss
+                         from lll in lsssss.DefaultIfEmpty()
 
 
-                         
+                             //join ll in ( from  aaa in _context.ExpertTestTopicanwsers.Where(x => x.RecStatus == "A").Select(e => new { Topic = e.Topic, Items = e.Anwserno + " " + e.Anwser + "</br>" }).GroupBy(e => new { e.Topic })
+                             //             let ids = aaa.Select(b => b.Items.ToString()).ToArray()
+
+                             //             select new { Topic = aaa.Key.Topic, Items = String.Join(" ", ids) }
+                             // //.Select(eg => new
+                             // //{
+                             // //    Topic = eg.Key.Topic,
+                             // //    //EmployeeName = eg.First().EmployeeName,
+                             // //    Items = eg.Select(i => i.Anwserno) + " " + eg.Select(i => i.Anwser) + "</br>",
+                             // //})
+                             // )
+                             //on a.Id equals ll.Topic
+                             //  into llsssss
+                             //from llll in llsssss.DefaultIfEmpty()
 
 
 
-            where a.RecStatus == "A"
+
+
+
+                         where a.RecStatus == "A"
 
                           && (string.IsNullOrWhiteSpace(searchEntity.Topictype) || a.Topictype == searchEntity.Topictype.Trim())
                            && (string.IsNullOrWhiteSpace(searchEntity.Zhishitype) || a.Zhishitype == searchEntity.Zhishitype.Trim())
@@ -273,12 +278,12 @@
                              && (string.IsNullOrWhiteSpace(searchEntity.Topic) || a.Topic.Contains(searchEntity.Topic.Trim()))
                               && (string.IsNullOrWhiteSpace(searchEntity.Area) || a.Area == searchEntity.Area.Trim())
 
+                               && (string.IsNullOrWhiteSpace(searchEntity.Falv) || lll.Falv == searchEntity.Falv.Trim())
 
-                             
+                                && (string.IsNullOrWhiteSpace(searchEntity.shanchuzhishitype) || a.Zhishitype == searchEntity.shanchuzhishitype.Trim()) 
 
 
-
-                         select new ExpertTestTopicDTO
+                         select  new ExpertTestTopicDTO
                          {
                              Id = a.Id,
                              Topictype = a.Topictype,
@@ -305,15 +310,15 @@
                              Modifytime = a.Modifytime,
 
                          }
-                ).OrderByDescending(x => x.Modifytime).ToList();
+                ).Distinct().OrderByDescending(x => x.Modifytime).ToList();
 
-           
+
+             
 
 
 
-                                
-                           //if (searchEntity.totalrows == 0)
-            searchEntity.totalrows = query.Count();
+                //if (searchEntity.totalrows == 0)
+                searchEntity.totalrows = query.Count();
             var lianlist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList();
 
             var lianlist11 = lianlist.Select(x => x.Id).ToList();
@@ -326,10 +331,42 @@
 
                 foreach (var quer in querydel)
                 {
-                    lian.Topic += quer.Anwserno + " " + quer.Anwser + " </br>";
+                    if (lian.Topictype != "03")
+                    {
+                        lian.Topic += quer.Anwserno + " " + quer.Anwser + " </br>";
+                    }
+                 
+                    if(quer.Shifouzhengqu == "A")
+                    {
+                        lian.Anwsers += quer.Anwserno ;
+                    }
+                    
                 }
             }
 
+
+            var queryjiexis = (from aaa in _context.ExpertTestTopicjiexis.Where(x => x.RecStatus == "A" && lianlist11.Contains(x.Topic)) select aaa).ToList();
+            var falvs = listCode.Where(x => x.CodeTable == "expert_test_topicjiexi" && x.CodeField == "falv").ToList();
+            foreach (var lian in lianlist)
+            {
+                var queryjiexi = queryjiexis.Where(x => x.Topic == lian.Id).OrderBy(x => x.Flag).ToList();
+                var jiexi = "";
+                foreach (var quer in queryjiexi)
+                {
+                 var falv = falvs.Where(x => x.CodeSn == quer.Falv).FirstOrDefault();
+
+                    jiexi +=(falv!=null? "銆�" + falv.Comments + "銆�" : "") + " " + quer.Fatiao + " " + quer.Jiexi + " </br>" ;
+                }
+                if (string.IsNullOrEmpty(lian.Jiexi))
+                {
+                    lian.Jiexi = jiexi;
+                }
+                else
+                {
+                    lian.Jiexi = jiexi + lian.Jiexi + " </br>";
+                }
+               
+            }
 
             data.LoadData(searchEntity, lianlist);
             return data;
@@ -370,9 +407,31 @@
         /// <returns></returns>
         public List<ExpertTestTopicDTO> GetList()
         {
+            var listCode = (from a in _context.SysCodeDtls
+                            join b in _context.SysCodes
+                            on a.CodeId equals b.Id
+                            where a.RecStatus == "A" &&  b.RecStatus == "A"
+                            select new CodeDataEntity()
+                            {
+                                CodeId = b.Id,
+                                CodeTable = b.CodeTable,
+                                CodeField = b.CodeField,
+                                CodeSn = a.CodeSn,
+                                Comments = a.Comments,
+                                Contents = a.Contents,
+                                RecStatus = a.RecStatus,
+                                Sort = a.Sort
+                            }
+                              );
 
-
-            var listRole = _context.ExpertTestTopics.Where(r => r.RecStatus == "A").ToList();
+            var listRole = 
+                 ( from a in _context.ExpertTestTopics.Where(r => r.RecStatus == "A")
+                   join f in listCode.Where(x => x.CodeTable == "expert_test_topic" && x.CodeField == "zhishitype")
+                    on a.Zhishitype equals f.CodeSn
+                 
+                   
+                   
+                   select a ).ToList();
 
 
             var list = _mapper.Map<List<ExpertTestTopicDTO>>(listRole);
@@ -760,7 +819,7 @@
                                 Modifytime = a.Modifytime,
 
                             }
-                ).OrderBy(x => x).ToList();
+                ).OrderBy(x => x.Resulttype).ToList();
 
             return listRole;
         }
@@ -799,8 +858,8 @@
 
                             join f in listCode.Where(x => x.CodeTable == "expert_test_topic" && x.CodeField == "zhishitype")
                        on a.Zhishitype equals f.CodeSn
-                       into fsssss
-                            from fff in fsssss.DefaultIfEmpty()
+                       //into fsssss
+                       //     from fff in fsssss.DefaultIfEmpty()
 
 
                             where a.RecStatus == "A"
@@ -812,10 +871,11 @@
                                 Topictype = a.Topictype,
                                 TopictypeName = eee.Comments,
                                 Zhishitype = a.Zhishitype,
-                                ZhishitypeName = fff.Comments,
-                                Fenshu = a.Fenshu,
-                                Fenzhi = a.Fenzhi,
-
+                                ZhishitypeName = f.Comments,
+                                Fenshu = a.Fenshu ?? 0,
+                                Fenzhi = a.Fenzhi??0,
+                                FenshuName = (a.Fenshu ?? 0).ToString("0.##"),
+                                FenzhiName = (a.Fenzhi ?? 0).ToString("0.##"),
                                 Creater = a.Creater,
                                 Createtime = a.Createtime,
 
@@ -927,5 +987,40 @@
             return resultEntity;
         }
 
+
+
+        public ExpertTestResultDTO GetResult(string Resulttype)
+        {
+
+            var entity = _context.ExpertTestResults.Where(x=>x.RecStatus =="A" && x.Resulttype == Resulttype).FirstOrDefault();
+
+            if (entity==null)
+            {
+                entity = new ExpertTestResult();
+            }
+
+            var result = _mapper.Map<ExpertTestResultDTO>(entity);
+
+
+            return result;
+        }
+
+
+        public ExpertTestTopicpeizhiDTO Getpeizhi(string Topictype, string Zhishitype)
+        {
+
+            var entity = _context.ExpertTestTopicpeizhis.Where(x => x.RecStatus == "A" && x.Topictype == Topictype && x.Zhishitype == Zhishitype).FirstOrDefault();
+
+            if (entity == null)
+            {
+                entity = new ExpertTestTopicpeizhi();
+            }
+
+            var result = _mapper.Map<ExpertTestTopicpeizhiDTO>(entity);
+
+
+            return result;
+        }
+
     }
 }

--
Gitblit v1.9.1