You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
462 lines
14 KiB
462 lines
14 KiB
|
|
using EasyBL.WebApi;
|
|
using EasyBL.WebApi.Common;
|
|
using EasyBL.WebApi.Message;
|
|
using EasyBL.WEBAPP.WSM;
|
|
using Entity.ShowEasyDtos;
|
|
using Entity.Sugar;
|
|
using Newtonsoft.Json;
|
|
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Net.Http;
|
|
|
|
namespace EasyBL.WEBAPP.SYS
|
|
{
|
|
public class LocationService : ServiceBase
|
|
{
|
|
|
|
#region 區域管理(List API 區域選單)
|
|
|
|
/// <summary>
|
|
/// 區域管理(List API 區域選單)
|
|
/// </summary>
|
|
/// <param name="i_crm"></param>
|
|
/// <returns></returns>
|
|
public HttpResponseMessage GetRegionList(string sLanguageID)
|
|
{
|
|
|
|
RequestMessage i_crm = new RequestMessage();
|
|
i_crm.ORIGID = WebAppGlobalConstWord.TG_ORGID;
|
|
i_crm.DATA.Add("LangType", sLanguageID);
|
|
|
|
SuccessResponseMessage srm = null;
|
|
string sError = null;
|
|
|
|
try
|
|
{
|
|
do
|
|
{
|
|
if (string.IsNullOrEmpty(sLanguageID))
|
|
{
|
|
sLanguageID = WebAppGlobalConstWord.DEFAULT_LANGUAGE;
|
|
}
|
|
|
|
RegionMaintain_QryService rm_qry = new RegionMaintain_QryService();
|
|
var rsResult = rm_qry.QueryRegionList(i_crm);
|
|
|
|
//返回token信息
|
|
srm = new SuccessResponseMessage(null, null);
|
|
|
|
var rsRegionList = new List<RegionDTO>();
|
|
|
|
rsRegionList = RegionEntityToDTO(rsResult.DATA[BLWording.REL]);
|
|
|
|
srm.DATA.Add(BLWording.REL, rsRegionList);
|
|
|
|
} while (false);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
sError = Util.GetLastExceptionMsg(ex);
|
|
srm = new SuccessResponseMessage(null, null)
|
|
{
|
|
STATUSCODE = (int)StatusCodeEnum.Error,
|
|
MSG = StatusCodeEnum.Error.GetEnumText()
|
|
};
|
|
srm.DATA.Add(BLWording.REL, "");
|
|
}
|
|
return HttpResponseExtension.ToJson(JsonConvert.SerializeObject(srm));
|
|
|
|
}
|
|
|
|
#endregion 區域管理(List API 區域選單)
|
|
|
|
#region 區域管理(Region API 以ID查詢區域)
|
|
|
|
/// <summary>
|
|
/// 區域管理(Region API 以ID查詢區域)
|
|
/// </summary>
|
|
/// <param name="i_crm"></param>
|
|
/// <returns></returns>
|
|
public HttpResponseMessage GetOneRegion(string sLanguageID, string sRegionID)
|
|
{
|
|
|
|
RequestMessage i_crm = new RequestMessage();
|
|
i_crm.ORIGID = WebAppGlobalConstWord.TG_ORGID;
|
|
i_crm.DATA.Add("LangType", sLanguageID);
|
|
i_crm.DATA.Add("RegionID", sRegionID);
|
|
|
|
SuccessResponseMessage srm = null;
|
|
string sError = null;
|
|
|
|
try
|
|
{
|
|
do
|
|
{
|
|
if (string.IsNullOrEmpty(sLanguageID))
|
|
{
|
|
sLanguageID = WebAppGlobalConstWord.DEFAULT_LANGUAGE;
|
|
}
|
|
|
|
RegionMaintain_UpdService rm_upd = new RegionMaintain_UpdService();
|
|
var rsResult = rm_upd.QueryOne(i_crm);
|
|
|
|
var rsRegion = new RegionDTO();
|
|
|
|
rsRegion = RegionEntityToDTO(rsResult.DATA[BLWording.REL]).FirstOrDefault();
|
|
|
|
//返回token信息
|
|
srm = new SuccessResponseMessage(null, null);
|
|
srm.DATA.Add(BLWording.REL, rsRegion);
|
|
|
|
} while (false);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
sError = Util.GetLastExceptionMsg(ex);
|
|
srm = new SuccessResponseMessage(null, null)
|
|
{
|
|
STATUSCODE = (int)StatusCodeEnum.Error,
|
|
MSG = StatusCodeEnum.Error.GetEnumText()
|
|
};
|
|
srm.DATA.Add(BLWording.REL, "");
|
|
}
|
|
return HttpResponseExtension.ToJson(JsonConvert.SerializeObject(srm));
|
|
|
|
}
|
|
|
|
#endregion 區域管理(Region API 以ID查詢區域)
|
|
|
|
#region 國家管理(List API 國家選單)
|
|
|
|
/// <summary>
|
|
/// 國家管理(List API 國家選單)
|
|
/// </summary>
|
|
/// <param name="i_crm"></param>
|
|
/// <returns></returns>
|
|
public HttpResponseMessage GetCountryList(string sLanguageID, string sRegionID)
|
|
{
|
|
|
|
RequestMessage i_crm = new RequestMessage();
|
|
i_crm.ORIGID = WebAppGlobalConstWord.TG_ORGID;
|
|
i_crm.DATA.Add("LangType", sLanguageID);
|
|
i_crm.DATA.Add("RegionID", sRegionID);
|
|
|
|
SuccessResponseMessage srm = null;
|
|
string sError = null;
|
|
|
|
try
|
|
{
|
|
do
|
|
{
|
|
if (string.IsNullOrEmpty(sLanguageID))
|
|
{
|
|
sLanguageID = WebAppGlobalConstWord.DEFAULT_LANGUAGE;
|
|
}
|
|
|
|
CountryMaintain_QryService cm_qry = new CountryMaintain_QryService();
|
|
var rsResult = cm_qry.QueryCountryList(i_crm);
|
|
|
|
var rsCountryList = new List<CountryDTO>();
|
|
|
|
rsCountryList = CountryEntityToDTO(rsResult.DATA[BLWording.REL]);
|
|
|
|
//返回token信息
|
|
srm = new SuccessResponseMessage(null, null);
|
|
srm.DATA.Add(BLWording.REL, rsCountryList);
|
|
|
|
} while (false);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
sError = Util.GetLastExceptionMsg(ex);
|
|
srm = new SuccessResponseMessage(null, null)
|
|
{
|
|
STATUSCODE = (int)StatusCodeEnum.Error,
|
|
MSG = StatusCodeEnum.Error.GetEnumText()
|
|
};
|
|
srm.DATA.Add(BLWording.REL, "");
|
|
}
|
|
return HttpResponseExtension.ToJson(JsonConvert.SerializeObject(srm));
|
|
|
|
}
|
|
|
|
#endregion 國家管理(List API 國家選單)
|
|
|
|
#region 國家管理(Country API 以ID查詢國家)
|
|
|
|
/// <summary>
|
|
/// 國家管理(Country API 以ID查詢國家)
|
|
/// </summary>
|
|
/// <param name="i_crm"></param>
|
|
/// <returns></returns>
|
|
public HttpResponseMessage GetOneCountry(string sLanguageID, string sCountryID)
|
|
{
|
|
|
|
RequestMessage i_crm = new RequestMessage();
|
|
i_crm.ORIGID = WebAppGlobalConstWord.TG_ORGID;
|
|
i_crm.DATA.Add("LangType", sLanguageID);
|
|
i_crm.DATA.Add("CountryID", sCountryID);
|
|
|
|
SuccessResponseMessage srm = null;
|
|
string sError = null;
|
|
|
|
try
|
|
{
|
|
do
|
|
{
|
|
if (string.IsNullOrEmpty(sLanguageID))
|
|
{
|
|
sLanguageID = WebAppGlobalConstWord.DEFAULT_LANGUAGE;
|
|
}
|
|
|
|
CountryMaintain_UpdService cm_upd = new CountryMaintain_UpdService();
|
|
var rsResult = cm_upd.QueryOne(i_crm);
|
|
|
|
var rsCountry = new CountryDTO();
|
|
|
|
rsCountry = CountryEntityToDTO(rsResult.DATA[BLWording.REL]).FirstOrDefault();
|
|
|
|
//返回token信息
|
|
srm = new SuccessResponseMessage(null, null);
|
|
srm.DATA.Add(BLWording.REL, rsCountry);
|
|
|
|
} while (false);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
sError = Util.GetLastExceptionMsg(ex);
|
|
srm = new SuccessResponseMessage(null, null)
|
|
{
|
|
STATUSCODE = (int)StatusCodeEnum.Error,
|
|
MSG = StatusCodeEnum.Error.GetEnumText()
|
|
};
|
|
srm.DATA.Add(BLWording.REL, "");
|
|
}
|
|
return HttpResponseExtension.ToJson(JsonConvert.SerializeObject(srm));
|
|
|
|
}
|
|
|
|
#endregion 國家管理(Country API 以ID查詢國家)
|
|
|
|
#region 城市管理(List API 城市選單)
|
|
|
|
/// <summary>
|
|
/// 城市管理(List API 城市選單)
|
|
/// </summary>
|
|
/// <param name="i_crm"></param>
|
|
/// <returns></returns>
|
|
public HttpResponseMessage GetCityList(string sLanguageID, string sCountryID)
|
|
{
|
|
|
|
RequestMessage i_crm = new RequestMessage();
|
|
i_crm.ORIGID = WebAppGlobalConstWord.TG_ORGID;
|
|
i_crm.DATA.Add("LangType", sLanguageID);
|
|
i_crm.DATA.Add("CountryID", sCountryID);
|
|
|
|
SuccessResponseMessage srm = null;
|
|
string sError = null;
|
|
|
|
try
|
|
{
|
|
do
|
|
{
|
|
if (string.IsNullOrEmpty(sLanguageID))
|
|
{
|
|
sLanguageID = WebAppGlobalConstWord.DEFAULT_LANGUAGE;
|
|
}
|
|
|
|
CityMaintain_QryService cm_qry = new CityMaintain_QryService();
|
|
var rsResult = cm_qry.QueryCityList(i_crm);
|
|
|
|
var rsCityList = new List<CityDTO>();
|
|
|
|
rsCityList = CityEntityToDTO(rsResult.DATA[BLWording.REL]);
|
|
|
|
//返回token信息
|
|
srm = new SuccessResponseMessage(null, null);
|
|
srm.DATA.Add(BLWording.REL, rsCityList);
|
|
|
|
} while (false);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
sError = Util.GetLastExceptionMsg(ex);
|
|
srm = new SuccessResponseMessage(null, null)
|
|
{
|
|
STATUSCODE = (int)StatusCodeEnum.Error,
|
|
MSG = StatusCodeEnum.Error.GetEnumText()
|
|
};
|
|
srm.DATA.Add(BLWording.REL, "");
|
|
}
|
|
return HttpResponseExtension.ToJson(JsonConvert.SerializeObject(srm));
|
|
|
|
}
|
|
|
|
#endregion 城市管理(List API 城市選單)
|
|
|
|
#region 城市管理理(City API 以ID查詢城市)
|
|
|
|
/// <summary>
|
|
/// 城市管理理(City API 以ID查詢城市)
|
|
/// </summary>
|
|
/// <param name="i_crm"></param>
|
|
/// <returns></returns>
|
|
public HttpResponseMessage GetOneCity(string sLanguageID, string sCityID)
|
|
{
|
|
|
|
RequestMessage i_crm = new RequestMessage();
|
|
i_crm.ORIGID = WebAppGlobalConstWord.TG_ORGID;
|
|
i_crm.DATA.Add("LangType", sLanguageID);
|
|
i_crm.DATA.Add("CityID", sCityID);
|
|
|
|
SuccessResponseMessage srm = null;
|
|
string sError = null;
|
|
|
|
try
|
|
{
|
|
do
|
|
{
|
|
if (string.IsNullOrEmpty(sLanguageID))
|
|
{
|
|
sLanguageID = WebAppGlobalConstWord.DEFAULT_LANGUAGE;
|
|
}
|
|
|
|
CityMaintain_UpdService rm_upd = new CityMaintain_UpdService();
|
|
var rsResult = rm_upd.QueryOne(i_crm);
|
|
|
|
var rsCity = new CityDTO();
|
|
|
|
rsCity = CityEntityToDTO(rsResult.DATA[BLWording.REL]).FirstOrDefault();
|
|
|
|
//返回token信息
|
|
srm = new SuccessResponseMessage(null, null);
|
|
srm.DATA.Add(BLWording.REL, rsCity);
|
|
|
|
} while (false);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
sError = Util.GetLastExceptionMsg(ex);
|
|
srm = new SuccessResponseMessage(null, null)
|
|
{
|
|
STATUSCODE = (int)StatusCodeEnum.Error,
|
|
MSG = StatusCodeEnum.Error.GetEnumText()
|
|
};
|
|
srm.DATA.Add(BLWording.REL, "");
|
|
}
|
|
return HttpResponseExtension.ToJson(JsonConvert.SerializeObject(srm));
|
|
|
|
}
|
|
|
|
#endregion 城市管理理(City API 以ID查詢城市)
|
|
|
|
|
|
private List<RegionDTO> RegionEntityToDTO(Object Data)
|
|
{
|
|
|
|
var Entities = new List<SETB_SYS_Region>();
|
|
|
|
if (Data.GetType() == typeof(List<SETB_SYS_Region>))
|
|
{
|
|
|
|
Entities = ((IEnumerable)Data).Cast<SETB_SYS_Region>().ToList();
|
|
|
|
}
|
|
else
|
|
{
|
|
|
|
Entities.Add((SETB_SYS_Region)Data);
|
|
|
|
}
|
|
|
|
List<RegionDTO> result = new List<RegionDTO>();
|
|
|
|
foreach (var Entity in Entities)
|
|
{
|
|
|
|
var Region = new RegionDTO();
|
|
Region.RegionID = Entity.RegionID;
|
|
Region.RegionName = Entity.RegionName;
|
|
|
|
result.Add(Region);
|
|
|
|
}
|
|
|
|
return result;
|
|
}
|
|
|
|
private List<CountryDTO> CountryEntityToDTO(Object Data)
|
|
{
|
|
|
|
var Entities = new List<SETB_SYS_Country>();
|
|
|
|
if (Data.GetType() == typeof(List<SETB_SYS_Country>))
|
|
{
|
|
|
|
Entities = ((IEnumerable)Data).Cast<SETB_SYS_Country>().ToList();
|
|
|
|
}
|
|
else
|
|
{
|
|
|
|
Entities.Add((SETB_SYS_Country)Data);
|
|
|
|
}
|
|
|
|
List<CountryDTO> result = new List<CountryDTO>();
|
|
|
|
foreach (var Entity in Entities)
|
|
{
|
|
|
|
var Country = new CountryDTO();
|
|
Country.CountryID = Entity.CountryID;
|
|
Country.CountryName = Entity.CountryName;
|
|
|
|
result.Add(Country);
|
|
|
|
}
|
|
|
|
return result;
|
|
}
|
|
|
|
private List<CityDTO> CityEntityToDTO(Object Data)
|
|
{
|
|
|
|
var Entities = new List<SETB_UTL_City>();
|
|
|
|
if (Data.GetType() == typeof(List<SETB_UTL_City>))
|
|
{
|
|
|
|
Entities = ((IEnumerable)Data).Cast<SETB_UTL_City>().ToList();
|
|
|
|
}
|
|
else
|
|
{
|
|
|
|
Entities.Add((SETB_UTL_City)Data);
|
|
|
|
}
|
|
|
|
List<CityDTO> result = new List<CityDTO>();
|
|
|
|
foreach (var Entity in Entities)
|
|
{
|
|
|
|
var City = new CityDTO();
|
|
City.CityID = Entity.CityID;
|
|
City.CityName = Entity.CityName;
|
|
|
|
result.Add(City);
|
|
|
|
}
|
|
|
|
return result;
|
|
}
|
|
|
|
|
|
|
|
}
|
|
}
|