iT邦幫忙

0

想請問如何只取LIST裡指定欄位的值?

這是我AJAX所呼叫的controller

    public string CheckDeviceCode(string devicecode){
           NcodeService nsvc = new NcodeService();
           HDDevicedHistoryListService hdsvc = new HDDevicedHistoryListService();
           var checkbarcode = hdsvc.FindDevbarcode(devicecode);
           var bedno = hdsvc.checkbedno(devicecode);
           string code = nsvc.FindNcodeName(devicecode);
        
           if (code == null )
           {
               code = "條碼錯誤";
           }
           else if (checkbarcode.Count != 0 && bedno.Count!=0)
           {
            code ="機器使用中"+"XXX";
           }
      
           else
           {
               code = "條碼正確";
           }
           return code;
        }

大略上是判斷找不到條碼對應的機器救回傳條碼錯誤
然後如果有找到但是正在使用中則回傳機器使用中加上是哪邊正在使用
否則就回傳條碼正確

目前大略上都做出來,就剩下是哪一台使用中暫時沒辦法顯示
我有查到是哪幾台在用,這是我該段的程式碼

      public List<HD_RECORD_BEFORE> checkbedno(string devicebarcode)
        {
           
            var query = (from x in _repo.HD_RECORD_BEFORE
                         join y in _repo.HD_DEVICED_HISTORY_LIST
                         on x.EQP_ID equals y.DEV_BARCODE
                         where y.END_RECORD_DATETIME == null &&
                         x.EQP_ID == devicebarcode
                          select x
                             ).ToList<HD_RECORD_BEFORE>();
        
            return query;

        }

我想顯示的是HD_RECORD_BEFORE資料庫裡的bedno欄位資料,請問這個該如何實現?

1 個回答

0
暐翰
iT邦大師 1 級 ‧ 2019-05-16 16:29:06
最佳解答

目前大略上都做出來,就剩下是哪一台使用中暫時沒辦法顯示

你想要Controller藉由devicecode回傳指定機台json資料給前端?


更新回答


修改圖片中部份為下面Code:

else if (checkbarcode.Count != 0 && bedno.Count!=0)
{
    var eqps = bedno.select(s=>s.EQP_ID.ToString()); //使用的全部機台
    var sb = string.Join(",",eqps);
    code ="機器使用中,機台列表:"+sb;
}

假如有EQP_ID為"xxx01","xxx02"兩台機台在使用
回傳給前端的資料= 機器使用中,機台列表:xxx01,xxx02

看更多先前的回應...收起先前的回應...
tenno081 iT邦新手 4 級 ‧ 2019-05-16 16:33:27 檢舉

我沒有用josn
這是我前端的寫法
然後後來我把我要的資料提取出來了,就剩下怎麼傳到前端

我追加的部分

  string x = "";
           foreach (var y in bedno)
           {
               x += y.BED_NO.ToString()+",";
           }
           x = x.TrimEnd(',');

前端

    $('#checkpair').on('click', function () {

        var devicecode = $("#devicecode").val();
        var div = $('#divforCheckBarcode');
        $.ajax({
            async: true,
            cache: false,
            type: "POST",
            url: "@(Url.Action("CheckDeviceCode","HDRecord", new { area = "HDNurse" }))",
            data: { devicecode: devicecode },
            success: function (data) {
                code = data;
                if (code == "條碼錯誤") {
                    div.find('#checkbarcode_Status').html('請分別輸入病歷號以及配對的儀器條碼!').css({ color: 'red', 'font-size': '16px' }).hide();
                    div.find('#checkbarcode_DevID').show().html('&nbsp;條碼錯誤').css({ color: 'red' });
                    $('#divforCheckBarcode').show();
                } else if (code == "條碼正確") {
                    div.find('#checkbarcode_Status').html('請分別輸入病歷號以及配對的儀器條碼!').css({ color: 'red', 'font-size': '16px' }).hide();
                    div.find('#checkbarcode_DevID').hide().html('&nbsp;條碼錯誤').css({ color: 'red' });
                } else if (code == "機器使用中") {
                    div.find('#checkbarcode_Status').html('請分別輸入病歷號以及配對的儀器條碼!').css({ color: 'red', 'font-size': '16px' }).hide();
                    div.find('#checkbarcode_DevID').show().html('&nbsp;機器使用中').css({ color: 'red' });
                    $('#divforCheckBarcode').show();
                }
            },
            error: function () {
                alert('error');
            }
        });
    })
暐翰 iT邦大師 1 級 ‧ 2019-05-16 16:36:42 檢舉

tenno081 "XXX" 是機台號?

tenno081 iT邦新手 4 級 ‧ 2019-05-16 16:38:48 檢舉

恩 對,理論來說是這樣

暐翰 iT邦大師 1 級 ‧ 2019-05-16 16:40:56 檢舉

tenno081 假如有多台機台 抓取其中一個 還是全部顯示?
假如全部顯示 想要什麼格式

tenno081 iT邦新手 4 級 ‧ 2019-05-16 16:44:25 檢舉

就全部顯示,目前我的controller是用string格式,所以
目前想用string

暐翰 iT邦大師 1 級 ‧ 2019-05-16 17:05:04 檢舉

tenno081 我回答更新在內文了

tenno081 iT邦新手 4 級 ‧ 2019-05-16 17:25:26 檢舉

感謝解答,我懂了,謝謝

暐翰 iT邦大師 1 級 ‧ 2019-05-16 17:27:03 檢舉

/images/emoticon/emoticon12.gif

我要發表回答

立即登入回答