/// <summary> /// CSV出力データの取得をおこなう /// </summary> public List <M16_HINGUN> GetCsv(string codeFrom, string codeTo, string[] nameAry, string sortType) { SEARCH_LIST_M16 cond = new SEARCH_LIST_M16(); cond.コードFROM = codeFrom; cond.コードTO = codeTo; cond.商品群名 = nameAry; cond.並び順 = sortType; return(getHingunList(cond)); }
/// <summary> /// データ取得実処理部 /// </summary> /// <returns></returns> private List <M16_HINGUN> getHingunList(SEARCH_LIST_M16 condition) { List <M16_HINGUN> list = new List <M16_HINGUN>(); using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) { context.Connection.Open(); var m16 = context.M16_HINGUN .Where(w => w.削除日時 == null) .AsQueryable(); if (!string.IsNullOrEmpty(condition.コードFROM)) { m16 = m16.Where(x => x.品群コード.CompareTo(condition.コードFROM) >= 0); } if (!string.IsNullOrEmpty(condition.コードTO)) { m16 = m16.Where(x => x.品群コード.CompareTo(condition.コードTO) <= 0); } if (condition.商品群名.Length > 0) { m16 = m16.Where(w => condition.商品群名.Any(names => w.品群名.Contains(names))); } switch (condition.並び順) { case "0": // コード順 m16 = m16.OrderBy(o => o.品群コード); break; case "1": // カナ読み順 m16 = m16.OrderBy(o => o.かな読み).ThenBy(o => o.品群コード); break; default: // 選択肢なし break; } // リスト取得 list = m16.ToList(); } return(list); }
/// <summary> /// 帳票出力データの取得をおこなう /// </summary> /// <param name="codeFrom">コードFrom</param> /// <param name="codeTo">コードTo</param> /// <param name="nameAry">商品群名(配列)</param> /// <param name="sortType">表示方法(0:コード順、1:カナ読み順)</param> /// <returns></returns> public List <SEARCH_M16> GetRpt(string codeFrom, string codeTo, string[] nameAry, string sortType) { SEARCH_LIST_M16 cond = new SEARCH_LIST_M16(); cond.コードFROM = codeFrom; cond.コードTO = codeTo; cond.商品群名 = nameAry; cond.並び順 = sortType; List <M16_HINGUN> list = getHingunList(cond); // 帳票出力用に項目を絞り込む var resultList = list.Select(x => new SEARCH_M16 { 商品群コード = x.品群コード, 商品群名 = x.品群名, かな読み = x.かな読み }); return(resultList.ToList()); }