初始化
This commit is contained in:
104
SERVER/LIB/HOTEL_GROUPHelp.cs
Normal file
104
SERVER/LIB/HOTEL_GROUPHelp.cs
Normal file
@@ -0,0 +1,104 @@
|
||||
using Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace SERVER.LIB
|
||||
{
|
||||
/// <summary>
|
||||
/// 大部分方法已经弃用
|
||||
/// </summary>
|
||||
public class HOTEL_GROUPHelp
|
||||
{
|
||||
static List<TBL_HOTEL_GROUP_INFO> data => CacheData.TBL_HOTEL_GROUP_INFO;
|
||||
static List<TBL_HOTEL_BASIC_INFO> tBL_HOTEL_s => CacheData.TBL_HOTEL_BASIC_INFO;
|
||||
|
||||
public static List<TBL_HOTEL_GROUP_INFO> Children(int data)
|
||||
{
|
||||
List<TBL_HOTEL_GROUP_INFO> res = new List<TBL_HOTEL_GROUP_INFO>();
|
||||
var resdata = CacheData.TBL_HOTEL_GROUP_INFO.Where(x => x.PARENT_ID == data).ToList();
|
||||
res.AddRange(resdata);
|
||||
foreach (var item in resdata)
|
||||
{
|
||||
res.AddRange(Children(item.HOTEL_GROUP_ID));
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
public static List<TBL_HOTEL_GROUP_INFO> GetTreemap(IList<HotelDataItem> dataItems)
|
||||
{
|
||||
List<TBL_HOTEL_GROUP_INFO> treemaps = new List<TBL_HOTEL_GROUP_INFO>();
|
||||
|
||||
foreach (var tump in dataItems)
|
||||
{
|
||||
if (treemaps.FirstOrDefault(X => X.HOTEL_GROUP_ID == tump.HotelGroupsId) == null)
|
||||
{
|
||||
treemaps.AddRange(Parent(tump.HotelGroupsId));
|
||||
};
|
||||
|
||||
}
|
||||
return treemaps.GroupBy(x => x.HOTEL_GROUP_ID).Select(y => y.First()).ToList();
|
||||
}
|
||||
|
||||
public static List<TBL_HOTEL_GROUP_INFO> Parent(int ID)
|
||||
{
|
||||
|
||||
List<TBL_HOTEL_GROUP_INFO> res = new List<TBL_HOTEL_GROUP_INFO>();
|
||||
var item = data.Single(x => x.HOTEL_GROUP_ID == ID);
|
||||
res.Add(item);
|
||||
if (item.PARENT_ID != 0)
|
||||
{
|
||||
res.AddRange(Parent(item.PARENT_ID));
|
||||
}
|
||||
return res.GroupBy(x => x.HOTEL_GROUP_ID).Select(y => y.First()).ToList();
|
||||
}
|
||||
|
||||
|
||||
public static List<TBL_HOTEL_BASIC_INFO> GetHotels(List<HotelsItem> hoteldata, int GroupId)
|
||||
{
|
||||
List<TBL_HOTEL_BASIC_INFO> res = new List<TBL_HOTEL_BASIC_INFO>();
|
||||
var Group = Children(GroupId);
|
||||
foreach (var item in Group)
|
||||
{
|
||||
res.AddRange(GetHotels(item.HOTEL_GROUP_ID).Where(x=> hoteldata.FirstOrDefault(y=>y.HotelId == x.IDOLD)!=null));
|
||||
}
|
||||
res = res.GroupBy(x => x.HOTEL_ID).Select(y => y.First()).ToList();
|
||||
for (int i = 0; i < res.Count; i++)
|
||||
{
|
||||
throw new Exception();
|
||||
}
|
||||
throw new Exception();
|
||||
|
||||
}
|
||||
// 获取酒店组下面的所有直属酒店
|
||||
public static IEnumerable< TBL_HOTEL_BASIC_INFO > GetHotels( int GroupId)
|
||||
{
|
||||
return tBL_HOTEL_s.Where(x => x.HOTEL_GROUP == GroupId);
|
||||
}
|
||||
|
||||
public static string Getgrouppath(TBL_HOTEL_BASIC_INFO hot )
|
||||
{
|
||||
string res = string.Empty;
|
||||
int group = hot.HOTEL_GROUP;
|
||||
while (true)
|
||||
{
|
||||
if(group == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
if (res == string.Empty)
|
||||
{
|
||||
res += data.First(X => X.HOTEL_GROUP_ID == group).HOTEL_GROUP_NAME;
|
||||
}
|
||||
else
|
||||
{
|
||||
res += "-";
|
||||
res += data.First(X => X.HOTEL_GROUP_ID == group).HOTEL_GROUP_NAME;
|
||||
}
|
||||
}
|
||||
return res;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user