Blame view

sys/Hh.Mes.Service/WebService/Board/BusWorkorderDetailService.cs 2.28 KB
赖素文 authored
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
using Hh.Mes.Common.Infrastructure;
using Hh.Mes.Common.log;
using Hh.Mes.Common.Request;
using Hh.Mes.POJO.Response;
using Hh.Mes.Service.Repository;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using Hh.Mes.Pojo.System;
using Hh.Mes.POJO.Entity;
using System.Drawing;

namespace Hh.Mes.Service.Board
{
    public class BusWorkorderDetailService : RepositorySqlSugar<bus_workOrder_detail>
    {
        public dynamic Load(PageReq pageReq, bus_workOrder_detail entity)
        {
            return ExceptionsHelp.Instance.ExecuteT(() =>
            {
                var result = new Response<List<bus_workOrder_detail>>();
                var expression = LinqWhere(entity);
                //先组合查询表达式
                var query = Context.Queryable<bus_workOrder_detail>().Where(expression);
                //Exceltrue就不分页,因为导出的话是全部导出
                if (pageReq != null)
                {
                    int total = 0;
                    result.Result = query.ToOffsetPage(pageReq.page, pageReq.limit, ref total);
                    result.Count = total;
                }
                else
                {
                    result.Result = query.ToList();
37
                    result.Count = result.Result.Count;
赖素文 authored
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
                }
                return result;
            }, catchRetrunValue: "list");
        }

        public Response ExportData(bus_workOrder_detail entity)
        {
            return Load(null, entity);
        }

        public Expression<Func<bus_workOrder_detail, bool>> LinqWhere(bus_workOrder_detail model)
        {
            try
            {
                var exp = Expressionable.Create<bus_workOrder_detail>();
                //数据过滤条件
                //if (!string.IsNullOrWhiteSpace(model.XXX)) exp.And(x => x.XXX.Contains(model.XXX));

                if (!string.IsNullOrWhiteSpace(model.stationCode))
                {
                    exp.And(x => x.stationCode.Contains(model.stationCode));
                }
                return exp.ToExpression();//拼接表达式
            }
            catch (Exception ex)
            {
                throw new Exception($"{ex.Message}");
            }
        }

    }
}