sjz
2025-03-18 795fa3a0ce15e32463a444c2b3fc1468596afba2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
using MES.Service.DB;
using MES.Service.Modes;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace MES.Service.service.BasicData;
public class SentLaboratoryTestingItemsManager : Repository<SentLaboratoryTestingItems>
{
        /// <summary>
        ///     仓储方法满足不了复杂业务需求,业务代码请在这里面定义方法
        /// </summary>
        public void Study()
        {
            /*********查询*********/
 
            var data1 = base.GetById(1); //根据ID查询
            var data2 = base.GetList(); //查询所有
            var data3 = base.GetList(it => 1 == 1); //根据条件查询  
                                                    //var data4 = base.GetSingle(it => 1 == 1);//根据条件查询一条,如果超过一条会报错
 
            var p = new PageModel { PageIndex = 1, PageSize = 2 }; // 分页查询
            var data5 = base.GetPageList(it => 1 == 1, p);
            Console.Write(p.TotalCount); //返回总数
 
            var data6 =
                base.GetPageList(it => 1 == 1, p,
                    it => SqlFunc.GetRandom()); // 分页查询加排序
            Console.Write(p.TotalCount); //返回总数
 
            var conModels = new List<IConditionalModel>(); //组装条件查询作为条件实现 分页查询加排序
            conModels.Add(new ConditionalModel
            {
                FieldName = typeof(SalesOrder).GetProperties()[0].Name,
                ConditionalType = ConditionalType.Equal,
                FieldValue = "1"
            }); //id=1
            var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom());
 
            AsQueryable().Where(x => 1 == 1)
                .ToList(); //支持了转换成queryable,我们可以用queryable实现复杂功能
 
 
            /*********插入*********/
            var insertData = new SentLaboratoryTestingItems(); //测试参数
            var insertArray = new[] { insertData };
            base.Insert(insertData); //插入
            base.InsertRange(insertArray); //批量插入
            var id = base.InsertReturnIdentity(insertData); //插入返回自增列
            AsInsertable(insertData).ExecuteCommand(); //我们可以转成 Insertable实现复杂插入
 
 
            /*********更新*********/
            var updateData = new SentLaboratoryTestingItems(); //测试参数
            var updateArray = new[] { updateData }; //测试参数
            base.Update(updateData); //根据实体更新
            base.UpdateRange(updateArray); //批量更新
                                           //base.Update(it => new SalesOrder() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// 只更新ClassName列和CreateTime列,其它列不更新,条件id=1
            AsUpdateable(updateData).ExecuteCommand(); //转成Updateable可以实现复杂的插入
 
 
            /*********删除*********/
            var deldata = new SentLaboratoryTestingItems(); //测试参数
            base.Delete(deldata); //根据实体删除
            base.DeleteById(1); //根据主键删除
            base.DeleteById(new[] { 1, 2 }); //根据主键数组删除
            base.Delete(it => 1 == 2); //根据条件删除
            AsDeleteable().Where(it => 1 == 2)
                .ExecuteCommand(); //转成Deleteable实现复杂的操作
        }
 
}