頁面資料賦值轉換

caoguanghui0804發表於2020-12-02

將取值的數字改為對應狀態
在這裡插入圖片描述
當前頁面程式碼
在這裡插入圖片描述

@(Html.Kendo().Grid<CallRepair>
                ()
                .Name("grid")
                .Columns(columns =>
                {
                    columns.Bound(c => c.Id)
                    .ClientTemplate("<input type='checkbox' value='#=Id#' class='checkboxGroups' name='selectedIds' />")
                    .HeaderTemplate(" <input id='mastercheckbox' type='checkbox' /> ")
                    .Filterable(false)
                    .Sortable(false)
                    .Width(30);
                    columns.Bound(c => c.Call_Repair_No).ClientTemplate("<a href='" + Url.Action("Review") + "/#=Id#'>#=Call_Repair_No#</a>").Filterable(true).Width(150);
                    columns.Bound(c => c.Repair_Type).Filterable(false).Sortable(false).Width(110);
                    columns.Bound(c => c.Status).Filterable(false).Sortable(false).Width(60);
                    columns.Bound(c => c.Line_Id).Filterable(false).Sortable(false).Width(80);
                    columns.Bound(c => c.Call_Location).Filterable(false).Sortable(false).Width(100);
                    columns.Bound(c => c.Call_By).Filterable(false).Sortable(false).Width(80);
                    columns.Bound(c => c.Machine_Id).Filterable(false).Sortable(false).Width(110);                      
                    columns.Bound(c => c.Call_Time).Format("{0: yyyy/MM/dd HH:mm:ss}").Filterable(false).Sortable(false).Width(130);
                    columns.Bound(c => c.Close_Time).Format("{0: yyyy/MM/dd HH:mm:ss}").Filterable(false).Sortable(false).Width(130);
                    columns.Bound(c => c.Spend_Times).Format("{0: yyyy/MM/dd HH:mm:ss}").Filterable(false).Sortable(false).Width(130);
                    columns.Bound(c => c.Update_Time).Format("{0: yyyy/MM/dd HH:mm:ss}").Filterable(false).Sortable(false).Width(130);
                    columns.Bound(c => c.Update_By).Sortable(false).Width(80);
                })
                    .DefaultOptions()
                    .Filterable(f => f.Enabled(true))
                    .Events(e => e.DataBound("boundGridMaintainStatus"))
                    .DataSource(dataSource => dataSource
                    .Ajax()
                    .Batch(true)
                    .Read(read => read.Action("CallRepairList", Html.ControllerName()))
                    .ServerOperation(true)
                    .Model(m =>
                    {
                        m.Id(c => c.Id);

                    }).PageSize(10)))

控制器程式碼
在這裡插入圖片描述

 [UserAuthorize(FuncID.Repair_View)]
    public ActionResult CallRepairList([DataSourceRequest] DataSourceRequest request)
    {
        using (var handlerSupervisor = new LinesupervisoridHandler())
        using (var handlerMachine = new MachineHandler())
        using (var handler = new RepairHandler())
        {
            var user = UserSession.Account.Id;
        

            var list = handler.GetCallRepairList(UserSession.Plant.Id);
            return Json(list.ToDataSourceResult(request));
        }
    }

資料處理GetCallRepairList方法

在這裡插入圖片描述
增加StatusName然後賦值
StatusName = x.STATUS == 0 ? “已處理” : ( “叫修”),
再將頁面程式碼欄位
columns.Bound(c => c.Status).Filterable(false).Sortable(false).Width(60);
改為
columns.Bound(c => c.StatusName).Filterable(false).Sortable(false).Width(60);

然後實現後如圖效果
在這裡插入圖片描述
ID取值從其他表取對應的資料
Defect_Id = x.DEFECT_ID
改為
Defect_Id = x.DEFECT_ID
Defect_Type = db.TROUBLES.Where(t=>t.ID==x.DEFECT_ID).Select(t=>t.NAME).FirstOrDefault(),
介面取值為
columns.Bound(c => c.Defect_Type);

相關文章