ke_junjie
2025-06-04 101c57ec4c28bc3c36e49c50a926e9e7c0dd0247
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
using IWareDataAccess.EF;
using IWareDataAccess.Entity.Base;
using IWareDataAccess.Helper;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace IWareDataAccess.Base.ITEMSTORAGE
{
   public  class ItemStorageSqlFunc
    {
 
 
        /// <summary>
        /// 搜索视图
        /// </summary>
        /// <param name="keyValue"></param>
        /// <param name="page"></param>
        /// <returns></returns>
       public static List<View_ITEMSTORAGE> SearchView(ItemStorageWebEntity webEntity, int page, int onePageNum, out string msg)
        {
            msg = "";
            using (Model edm = new Model())
            {
                var f = PredicateBuilder.True<View_ITEMSTORAGE>();
                //便利所有属性
                Type type = webEntity.GetType();
                foreach (var i in type.GetProperties())
                {
                    object v = Helper.Helper.GetFieldValueByName(webEntity, i.Name);
                    if (i.PropertyType == typeof(String))
                    {
                        string value;
                        if (v != null)
                        {
                            value = v.ToString();
                            f = f.And(x => Helper.Helper.GetFieldValueByName(x, i.Name) != null ? Helper.Helper.GetFieldValueByName(x, i.Name).ToString().Contains(value) : false);
                        }
                    }
                    else
                    {
                        if (v != null)
                        {
                            f = f.And(x => Object.Equals(Helper.Helper.GetFieldValueByName(x, i.Name), v));
                        }
                    }
                }
 
                List<View_ITEMSTORAGE> list = edm.View_ITEMSTORAGE.OrderByDescending(x => x.id).Where(f.Compile()).Skip((page - 1) * onePageNum).Take(onePageNum).ToList();
 
                return list;
            }
        }
 
        /// <summary>
        /// 搜索视图数量
        /// </summary>
        /// <param name="keyValue"></param>
        /// <param name="page"></param>
        /// <returns></returns>
       public static int SearchViewNum(ItemStorageWebEntity webEntity,out string  msg)
        {
            msg = "";
            using (Model edm = new Model())
            {
                var f = PredicateBuilder.True<View_ITEMSTORAGE>();
                //便利所有属性
                Type type = webEntity.GetType();
                foreach (var i in type.GetProperties())
                {
                    object v = Helper.Helper.GetFieldValueByName(webEntity, i.Name);
                    if (i.PropertyType == typeof(String))
                    {
                        string value;
                        if (v != null)
                        {
                            value = v.ToString();
                            f = f.And(x => Helper.Helper.GetFieldValueByName(x, i.Name) != null ? Helper.Helper.GetFieldValueByName(x, i.Name).ToString().Contains(value) : false);
                        }
                    }
                    else
                    {
                        if (v != null)
                        {
                            f = f.And(x => Object.Equals(Helper.Helper.GetFieldValueByName(x, i.Name), v));
                        }
                    }
                }
 
                int num = edm.View_ITEMSTORAGE.Where(f.Compile()).Count();
 
                return num;
            }
        }
 
       /// <summary>
       /// 首页滚动
       /// </summary>
       /// <param name="keyValue"></param>
       /// <param name="page"></param>
       /// <returns></returns>
       public static List<ReturnItemStorageEntity> SearchViewIndex(out string msg)
       {
           msg = "";
           List<ReturnItemStorageEntity> list=new List<ReturnItemStorageEntity>();
           using (Model edm = new Model())
           {
               List<View_ITEMSTORAGE> storageList = edm.View_ITEMSTORAGE.Where(x => x.isLessDay == "是" || x.isOverDay == "是" || x.isMoreDay=="是").ToList();
               //List<string> result = new List<string>();
               foreach (var i in storageList)
               {
                   //result.Add("零件号:" + i.itemName + " 零件名称:" + i.itemDes + "超限,目前存在" + i.itemNum + " 设置上限:" + i.maxStorage + " 下限:" + i.minStorage);
                   ReturnItemStorageEntity entity = new ReturnItemStorageEntity()
                   {
                       itemName=i.itemName,
                       itemDes=i.itemDes,
                       itemNum=i.itemNum,
                       maxStorage=i.maxStorage,
                       minStorage=i.minStorage,
                       isLessDay=i.isLessDay,
                       isMoreDay=i.isMoreDay,
                       isOverDay=i.isOverDay
                   };
                   list.Add(entity);
               }
               return list;
           }
       }
    }
}