| 
					
				 | 
			
			
				@@ -2,85 +2,64 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 using SqlSugar; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 using System; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 using System.Collections.Generic; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+using System.Linq; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+using System.Linq.Expressions; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+using WebAPIBase.Utils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 public class SafeQualityCheckManager : DbContext<SafeQualityCheck> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     //当前类已经继承了 DbContext增、删、查、改的方法 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     //这里面写的代码不会给覆盖,如果要重新生成请删除 SafeQualityCheckManager.cs 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    #region 教学方法 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /// <summary> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    /// 如果DbContext中的增删查改方法满足不了你,你可以看下具体用法 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /// 质量安全检查列表获取 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /// </summary> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    public void Study() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /// <param name="checkType">检查类型</param> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /// <param name="searchValue">搜索条件</param> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /// <returns></returns> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public List<SafeQualityCheckDTO> GetSafeQualityCheckDTOs(string checkType, string searchValue) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	      
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	   /*********查询*********/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var data1 = SafeQualityCheckDb.GetById(1);//根据ID查询 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var data2 = SafeQualityCheckDb.GetList();//查询所有 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var data3 = SafeQualityCheckDb.GetList(it => 1 == 1);  //根据条件查询   
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        //var data4 = SafeQualityCheckDb.GetSingle(it => 1 == 1);//根据条件查询一条,如果超过一条会报错 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var p = new PageModel() { PageIndex = 1, PageSize = 2 };// 分页查询 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var data5 = SafeQualityCheckDb.GetPageList(it => 1 == 1, p); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Console.Write(p.PageCount);//返回总数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var data6 = SafeQualityCheckDb.GetPageList(it => 1 == 1, p, it => SqlFunc.GetRandom(), OrderByType.Asc);// 分页查询加排序 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Console.Write(p.PageCount);//返回总数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        List<IConditionalModel> conModels = new List<IConditionalModel>(); //组装条件查询作为条件实现 分页查询加排序 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        conModels.Add(new ConditionalModel() { FieldName = typeof(SafeQualityCheck).GetProperties()[0].Name, ConditionalType = ConditionalType.Equal, FieldValue = "1" });//id=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var data7 = SafeQualityCheckDb.GetPageList(conModels, p, it => SqlFunc.GetRandom(), OrderByType.Asc); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SafeQualityCheckDb.AsQueryable().Where(x => 1 == 1).ToList();//支持了转换成queryable,我们可以用queryable实现复杂功能 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        //我要用事务 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var result = Db.Ado.UseTran(() => 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            //写事务代码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (result.IsSuccess) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<SafeQualityCheckDTO> list; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        var sql = $"select * from SafeQualityCheck where 1=1"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (searchValue.IsNullOrEmpty()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            //事务成功 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            sql += $" and checktype='{checkType}' order by checktype desc"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            list = Db.Ado.SqlQuery<SafeQualityCheckDTO>(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            sql += $" and checktype='{checkType}' and projectname like '%{searchValue}%' order by checktype desc"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            list = Db.Ado.SqlQuery<SafeQualityCheckDTO>(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return list; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        //多表查询地址 http://www.codeisbug.com/Doc/8/1124 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        /*********插入*********/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var insertData = new SafeQualityCheck() { };//测试参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var insertArray = new SafeQualityCheck[] { insertData }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SafeQualityCheckDb.Insert(insertData);//插入 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SafeQualityCheckDb.InsertRange(insertArray);//批量插入 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var id = SafeQualityCheckDb.InsertReturnIdentity(insertData);//插入返回自增列 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SafeQualityCheckDb.AsInsertable(insertData).ExecuteCommand();//我们可以转成 Insertable实现复杂插入 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		/*********更新*********/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	    var updateData = new SafeQualityCheck() {  };//测试参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var updateArray = new SafeQualityCheck[] { updateData };//测试参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SafeQualityCheckDb.Update(updateData);//根据实体更新 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SafeQualityCheckDb.UpdateRange(updateArray);//批量更新 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        //SafeQualityCheckDb.Update(it => new SafeQualityCheck() { Name = "a", CreateTime = DateTime.Now }, it => it.id==1);// 只更新Name列和CreateTime列,其它列不更新,条件id=1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SafeQualityCheckDb.AsUpdateable(updateData).ExecuteCommand(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /// <summary> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /// 获取质量安全检查实例通过主键 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /// </summary> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /// <param name="checkCode"></param> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /// <returns></returns> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public SafeQualityCheckDTO GetSafeQualityCheckDTO(string checkCode) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        var sql = $"select * from SafeQualityCheck where checkcode='{checkCode}'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        var entity = Db.Ado.SqlQuerySingle<SafeQualityCheckDTO>(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return entity; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /// <summary> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /// 获取质量安全明细列表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /// </summary> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /// <param name="checkCode"></param> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /// <returns></returns> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public List<SafeQualityCheckItem> GetSafeQualityCheckItems(string checkCode) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        var sql = $"select * from SafeQualityCheckItem where checkcode='{checkCode}'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        var list = Db.Ado.SqlQuery<SafeQualityCheckItem>(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return list; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		/*********删除*********/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	    var deldata = new SafeQualityCheck() {  };//测试参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SafeQualityCheckDb.Delete(deldata);//根据实体删除 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SafeQualityCheckDb.DeleteById(1);//根据主键删除 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SafeQualityCheckDb.DeleteById(new int[] { 1,2});//根据主键数组删除 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SafeQualityCheckDb.Delete(it=>1==2);//根据条件删除 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SafeQualityCheckDb.AsDeleteable().Where(it=>1==2).ExecuteCommand();//转成Deleteable实现复杂的操作 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    }  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    #endregion 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 |