liaoxujun@qq.com
2024-02-23 6e831c9dd9a46a1dbd727f5f06068c10aef99b46
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using WalkingTec.Mvvm.Core;
using WalkingTec.Mvvm.Core.Extensions;
using Microsoft.EntityFrameworkCore;
using System.ComponentModel.DataAnnotations;
using cy_scdz.Model.Oder;
using cy_scdz.Model.Set;
using System.Text;
 
namespace cy_scdz.ViewModel.BidOrder.OrderInfoVMs
{
    public partial class OrderInfoListVM : BasePagedListVM<OrderInfo_View, OrderInfoSearcher>        
    {
 
        public override void AfterDoSearcher()
        {
            for (int i = 0; i < EntityList.Count; i++)
            {
                EntityList[i].Index = i+1;
            }
            base.AfterDoSearcher();
        }
        protected override List<GridAction> InitGridAction()
        {
            return new List<GridAction>
            {
                this.MakeStandardAction("OrderInfo", GridActionStandardTypesEnum.Create, Localizer["Sys.Create"],"BidOrder", dialogWidth: 1440),
                this.MakeStandardAction("OrderInfo", GridActionStandardTypesEnum.Edit, Localizer["Sys.Edit"], "BidOrder", dialogWidth: 1440),
                this.MakeStandardAction("OrderInfo", GridActionStandardTypesEnum.Delete, Localizer["Sys.Delete"], "BidOrder", dialogWidth: 800),
                this.MakeStandardAction("OrderInfo", GridActionStandardTypesEnum.Details, Localizer["Sys.Details"], "BidOrder", dialogWidth: 800),
 
            };
        }
 
 
        protected override IEnumerable<IGridColumn<OrderInfo_View>> InitGridHeader()
        {
            return new List<GridColumn<OrderInfo_View>>{
                     this.MakeGridHeader(x => x.Index).SetWidth(20).SetHeader(" "),
                this.MakeGridHeader(x => x.Title),
              
                this.MakeGridHeader(x => x.WinBidTime),
                this.MakeGridHeader(x => x.Name_view),
                this.MakeGridHeader(x => x.BidMoney),
                this.MakeGridHeader(x => x.Name_view2),
                this.MakeGridHeader(x => x.Name_view3),
                  this.MakeGridHeader(x => x.Productions).SetFormat(showProductions).SetHeader("剩余学期"),
                this.MakeGridHeaderAction(width: 200)
            };
        }
        private string showProductions(OrderInfo_View entity, object obj)
        {
      var list=      entity.Productions.Where(x => x.IsOver == false).ToList();
            StringBuilder sb = new StringBuilder();
            for (int i = 0; i < list.Count; i++) {
                sb.Append("<p>").Append(list[i].DeliveryTime.ToString("yyyy")+" "+ list[i].Chunqiuji.GetEnumDisplayName()+" "
                    +  UIService.MakeButton(ButtonTypesEnum.Link, "BidOrder/OrderInfo/CompleteProduction?id=" + list[i].ID.ToString(), "生产", 1440, null, title: "详情")
                    
                    ).Append("</p>");
            }
            return sb.ToString();
          
           
 
           // return UIService.MakeButton(ButtonTypesEnum.Link, "user/FrameworkUser/Details?id=" + entity.ParentITCode.ID.ToString(), entity.ParentITCode.Name.ToString(), 1024, null, title: "详情", Toptitle: "查看详情");
        }
        public override IOrderedQueryable<OrderInfo_View> GetSearchQuery()
        {
            var query = DC.Set<OrderInfo>().Include(x=>x.Productions)
                .CheckContain(Searcher.Title, x=>x.Title)
                .CheckBetween(Searcher.WinBidTime?.GetStartTime(), Searcher.WinBidTime?.GetEndTime(), x => x.WinBidTime, includeMax: false)
                .CheckEqual(Searcher.SupplierId, x=>x.SupplierId)
                .CheckEqual(Searcher.BidTypeId, x=>x.BidTypeId)
                .Select(x => new OrderInfo_View
                {
                    ID = x.ID,
                    Title = x.Title,
                    WinBidTime = x.WinBidTime,
                    Name_view = x.Semester.Name,
                    BidMoney = x.BidMoney,
                    Productions=x.Productions,
                    Name_view2 = x.Supplier.Name,
                    Name_view3 = x.BidType.Name,
                    CreateTime=x.CreateTime
                })
                .OrderByDescending(x => x.CreateTime);
            return query;
        }
 
    }
 
    public class OrderInfo_View : OrderInfo{
        /// <summary>
        /// 序号
        /// </summary>
        [Display(Name = "序号")]
        public int Index { get; set; }
        /// <summary>
        /// 供货学期
        /// </summary>
        [Display(Name = "供货学期")]
        public String Name_view { get; set; }
        /// <summary>
        /// 中标供应商
        /// </summary>
        [Display(Name = "中标供应商")]
        public String Name_view2 { get; set; }
        /// <summary>
        /// 订单类别
        /// </summary>
        [Display(Name = "订单类别")]
        public String Name_view3 { get; set; }
 
    }
}