541ae1844d5e935e297d8862ef47d84b89de997c.svn-base 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324
  1. using System.Net.Http;
  2. using System.Web.Http.OData.Builder;
  3. //using System.Web.UI.WebControls;
  4. using System.Web.Http.OData.Extensions;
  5. using System.Web.Http.OData.Routing;
  6. using System.Web.Http.Routing;
  7. using iBemsDataService;
  8. using iBemsDataService.Controllers;
  9. using iBemsDataService.Model;
  10. using Microsoft.Data.OData;
  11. using Newtonsoft.Json;
  12. using System;
  13. //using System.Collections.Generic;
  14. //using System.Linq;
  15. using System.Net.Http.Formatting;
  16. using System.Net.Http.Headers;
  17. using System.Web.Http;
  18. using System.Web.Http.OData;
  19. using RouteParameter = System.Web.Http.RouteParameter;
  20. namespace WebODataDataService
  21. {
  22. public class BrowserJsonFormatter : JsonMediaTypeFormatter
  23. {
  24. public BrowserJsonFormatter()
  25. {
  26. this.SerializerSettings.Formatting = Formatting.Indented;
  27. this.SupportedMediaTypes.Add(new MediaTypeHeaderValue("text/html"));
  28. }
  29. public override void SetDefaultContentHeaders(Type type, HttpContentHeaders headers, MediaTypeHeaderValue mediaType)
  30. {
  31. base.SetDefaultContentHeaders(type, headers, mediaType);
  32. headers.ContentType = new MediaTypeHeaderValue("application/json");
  33. }
  34. }
  35. public static class WebApiConfig
  36. {
  37. public static void Register(HttpConfiguration config)
  38. {
  39. config.Formatters.Add(new BrowserJsonFormatter());
  40. config.MapHttpAttributeRoutes();
  41. config.Routes.MapHttpRoute(
  42. name: "DefaultApiWithAction",
  43. routeTemplate: "api/{controller}/{action}"
  44. );
  45. config.Routes.MapHttpRoute(
  46. name: "DefaultApi",
  47. routeTemplate: "api/{controller}/{id}",
  48. defaults: new { id = RouteParameter.Optional }
  49. );
  50. //config.Routes.MapHttpRoute( "DefaultApiWithId" , "api/{controller}/{id}" , new { id = RouteParameter.Optional } , new { id = @"\d+" } );
  51. //config.Routes.MapHttpRoute( "DefaultApiWithAction" , "api/{controller}/{action}" );
  52. //config.Routes.MapHttpRoute( "DefaultApiGet" , "api/{controller}" , new { action = "Get" } , new { httpMethod = new HttpMethodConstraint( HttpMethod.Get ) } );
  53. //config.Routes.MapHttpRoute( "DefaultApiPost" , "api/{controller}" , new { action = "Post" } , new { httpMethod = new HttpMethodConstraint( HttpMethod.Post ) } );
  54. //config.Routes.MapHttpRoute(
  55. // name: "DefaultApiWithAction" ,
  56. // routeTemplate: "api/{controller}/{action}"
  57. //);
  58. //config.Routes.MapHttpRoute(
  59. // name: "DefaultApi" ,
  60. // routeTemplate: "api/{controller}/{id}" ,
  61. // defaults: null
  62. //);
  63. var builder = new ODataConventionModelBuilder();
  64. builder.EntitySet<AvailableDueDateType>("AvailableDueDate");
  65. builder.EntitySet<Facility>("Facility");
  66. builder.EntitySet<TargetFacility>("CheckGroupTargetFacility");
  67. builder.EntitySet<CmFacility>("Facilities");
  68. builder.EntitySet<BemsMonitoringPoint>("BemsMonitoringPoint");
  69. builder.EntitySet<BemsServiceType>("BemsServiceType");
  70. builder.EntitySet<BemsFuelType>("BemsFuelType");
  71. builder.EntitySet<BemsFacilityType>("BemsFacilityType");
  72. builder.EntitySet<BemsFormulaBase>("BemsFormulaBase");
  73. builder.EntitySet<BemsFormula>("BemsFormula");
  74. builder.EntitySet<BemsReportFormat>("BemsReportFormat");
  75. builder.EntitySet<BemsReportHistory>("BemsReportHistory");
  76. builder.EntitySet<BemsFormulaParameter>("BemsFormulaParameter");
  77. builder.EntitySet<BemsFormulaTable>("BemsFormulaTable");
  78. builder.EntitySet<BemsFormulaTableValue>("BemsFormulaTableValue");
  79. builder.EntitySet<BemsFactorToe>("BemsFactorToe");
  80. builder.EntitySet<BemsFactorCo2>("BemsFactorCo2");
  81. builder.EntitySet<BemsMonitoringPointBaseData>("BemsMonitoringPointBaseData");
  82. builder.EntitySet<BemsMonitoringPointConfig>("BemsMonitoringPointConfig");
  83. builder.EntitySet<BemsMonitoringPointHistory15min>("BemsMonitoringPointHistory15min");
  84. builder.EntitySet<BemsMonitoringPointHistory15minRawData>("BemsMonitoringPointHistory15minRawData");
  85. builder.EntitySet<BemsMonitoringPointHistoryDaily>("BemsMonitoringPointHistoryDaily");
  86. builder.EntitySet<BemsMonitoringPointHistoryHourly>("BemsMonitoringPointHistoryHourly");
  87. builder.EntitySet<BemsMonitoringPointToAnlaysisType>("BemsMonitoringPointToAnlaysisType");
  88. //builder.EntitySet<BemsMonitoringPointToLocation>( "BemsMonitoringPointToLocation" );
  89. // builder.EntitySet<BemsMonitoringPointToController>( "BemsMonitoringPointToController" );
  90. builder.EntitySet<BemsConfigData>("BemsConfigData");
  91. builder.EntitySet<BemsMonitoringPointForecastingHourAhead>("BemsMonitoringPointForecastingHourAhead");
  92. builder.EntitySet<BemsMonitoringPointForecastingDayAhead>("BemsMonitoringPointForecastingDayAhead");
  93. builder.EntitySet<BemsMonitoringPointWeatherForecasted>("BemsMonitoringPointWeatherForecasted");
  94. builder.EntitySet<BemsIceThermalStorageSimulation>("BemsIceThermalStorageSimulation");
  95. builder.EntitySet<BemsAnalysisType>("BemsAnalysisType");
  96. builder.EntitySet<BemsPriceType>("BemsPriceType");
  97. builder.EntitySet<BemsPriceMeta>("BemsPriceMeta");
  98. builder.EntitySet<BemsPriceCode>("BemsPriceCode");
  99. builder.EntitySet<BemsSitePrice>("BemsSitePrice");
  100. builder.EntitySet<BemsSitePriceHistory>("BemsSitePriceHistory");
  101. builder.EntitySet<BemsPriceFormula>("BemsPriceFormula");
  102. builder.EntitySet<BemsReportFormat>("BemsReportFormat");
  103. builder.EntitySet<BemsReportHistory>("BemsReportHistory");
  104. builder.EntitySet<BemsRentalRate>("BemsRentalRate");
  105. builder.EntitySet<BemsPeopleIncrease>("BemsPeopleIncrease");
  106. builder.EntitySet<BemsAlarmSetting>("BemsAlarmSetting");
  107. builder.EntitySet<BemsEnergyCost>("BemsEnergyCost");
  108. builder.EntitySet<BemsAlarmLog>("BemsAlarmLog");
  109. builder.EntitySet<BemsAlarmGroup>("BemsAlarmGroup");
  110. builder.EntitySet<BemsAlarmGroupUser>("BemsAlarmGroupUser");
  111. builder.EntitySet<BemsFloorPlan>("BemsFloorPlan");
  112. builder.EntitySet<BemsFloorStatus>("BemsFloorStatus");
  113. builder.EntitySet<CmHoliday>("CmHoliday");
  114. builder.EntitySet<CmHolidayCustom>("CmHolidayCustom");
  115. builder.EntitySet<CmHolidayWeekend>("CmHolidayWeekend");
  116. builder.EntitySet<CmBusinessField>("CmBusinessField");
  117. builder.EntitySet<CmSite>("CmSite");
  118. var entity = builder.EntitySet<CmFile>("CmFile");
  119. builder.EntitySet<CmFileCategory>("CmFileCategory");
  120. builder.EntitySet<CmBuilding>("CmBuilding");
  121. builder.EntitySet<CmFloor>("CmFloor");
  122. builder.EntitySet<CmZone>("CmZone");
  123. builder.EntitySet<CmUser>("CmUser");
  124. builder.EntitySet<CmUserToLicense>("CmUserToLicense");
  125. builder.EntitySet<CmCompany>("CmCompany");
  126. builder.EntitySet<CmDepartment>("CmDepartment");
  127. builder.EntitySet<CmCompanyType>("CmCompanyType");
  128. builder.EntitySet<CmPosition>("CmPosition");
  129. builder.EntitySet<CmUserGroup>("CmUserGroup");
  130. builder.EntitySet<CmUserGroupPermission>("CmUserGroupPermission");
  131. builder.EntitySet<CmFacilityFile>("CmFacilityFile");
  132. builder.EntitySet<FmsFacilityCheckItem>("FmsFacilityCheckItem");
  133. builder.EntitySet<FmsFacilityManual>("FmsFacilityManual");
  134. builder.EntitySet<FmsLicense>("FmsLicense");
  135. //builder.EntitySet<FmsWorkOperationItem>( "FmsWorkOperationItem" );
  136. //builder.EntitySet<FmsWorkOperationTime>( "FmsWorkOperationTime" );
  137. builder.EntitySet<FmsDrawingHistory>("FmsDrawingHistory");
  138. builder.EntitySet<FmsDrawingCodeType>("FmsDrawingCodeType");
  139. builder.EntitySet<FmsMaterialCodeAdjustmentType>("FmsMaterialCodeAdjustmentType");
  140. builder.EntitySet<FmsDrawing>("FmsDrawing");
  141. builder.EntitySet<FmsDrawingCodeGroup>("FmsDrawingCodeGroup");
  142. builder.EntitySet<FmsWorkSchedule>("FmsWorkSchedule");
  143. builder.EntitySet<FmsWorkScheduleToFacility>("FmsWorkScheduleToFacility");
  144. builder.EntitySet<FmsWorkResultLaw>("FmsWorkResultLaw");
  145. builder.EntitySet<FmsWorkResultFile>("FmsWorkResultFile");
  146. builder.EntitySet<FmsWorkResultCheckItem>("FmsWorkResultCheckItem");
  147. //builder.EntitySet<FmsWorkDailyRecordPrevention>( "FmsWorkDailyRecordPrevention" );
  148. //builder.EntitySet<FmsWorkDailyRecordWork>( "FmsWorkDailyRecordWork" );
  149. //builder.EntitySet<FmsWorkDailyRecord>( "FmsWorkDailyRecord" );
  150. //builder.EntitySet<FmsWorkDailyRecordTemplate>( "FmsWorkDailyRecordTemplate" );
  151. builder.EntitySet<FmsWorkCodeCauseClass>("FmsWorkCauseClass");
  152. builder.EntitySet<FmsWorkResult>("FmsWorkResult");
  153. builder.EntitySet<FmsWorkResultToFacility>("FmsWorkResultToFacility");
  154. builder.EntitySet<FmsWorkOrder>("FmsWorkOrder");
  155. builder.EntitySet<FmsWorkCodeProgress>("FmsWorkCodeProgress");
  156. builder.EntitySet<FmsWorkCodeType>("FmsWorkCodeType");
  157. builder.EntitySet<FmsWorkResultCheckItemMaterial>("FmsWorkResultCheckItemMaterial");
  158. builder.EntitySet<FmsWorkCodeEmergency>("FmsWorkCodeEmergency");
  159. builder.EntitySet<FmsWorkCodeCycleUnit>("FmsWorkCodeCycleUnit");
  160. builder.EntitySet<FmsWorkCodeHolidayWorkType>("FmsWorkCodeHolidayWorkType");
  161. builder.EntitySet<FmsWorkCodeLegalInspectionAgency>("FmsWorkCodeLegalInspectionAgency");
  162. builder.EntitySet<FmsFacilityCodeClass>("FmsFacilityClass");
  163. builder.EntitySet<FmsFacilityOperationItem>("FmsFacilityOperationItem");
  164. builder.EntitySet<FmsMaterial>("FmsMaterial");
  165. builder.EntitySet<FmsMaterialCarriedForward>("FmsMaterialCarriedForward");
  166. builder.EntitySet<FmsMaterialCodeClass>("FmsMaterialCodeClass");
  167. builder.EntitySet<FmsMaterialCodeLocation>("FmsMaterialCodeLocation");
  168. builder.EntitySet<FmsMaterialCodeProgress>("FmsMaterialCodeProgress");
  169. builder.EntitySet<FmsMaterialCodeType>("FmsMaterialCodeType");
  170. builder.EntitySet<FmsMaterialCodePurchaseType>("FmsMaterialCodePurchaseType");
  171. builder.EntitySet<FmsMaterialCodeReleaseType>("FmsMaterialCodeReleaseType");
  172. builder.EntitySet<FmsMaterialPurchaseOrder>("FmsMaterialPurchaseOrder");
  173. // builder.EntitySet<FmsMaterialPurchaseOrderFile>( "FmsMaterialPurchaseOrderFile" );
  174. builder.EntitySet<FmsMaterialPurchaseOrderMaterial>("FmsMaterialPurchaseOrderMaterial");
  175. builder.EntitySet<FmsMaterialPurchaseRequest>("FmsMaterialPurchaseRequest");
  176. builder.EntitySet<FmsMaterialPurchaseRequestMaterial>("FmsMaterialPurchaseRequestMaterial");
  177. builder.EntitySet<FmsMaterialRelease>("FmsMaterialRelease");
  178. builder.EntitySet<FmsMaterialStored>("FmsMaterialStored");
  179. builder.EntitySet<FmsMaterialTradeCompany>("FmsMaterialTradeCompany");
  180. builder.EntitySet<FmsMaterialWarehouse>("FmsMaterialWarehouse");
  181. //builder.EntitySet<FmsWorkDailyRecordWorkingHour>( "FmsWorkDailyRecordWorkingHour" );
  182. //builder.EntitySet<FmsWorkOperationDate>( "FmsWorkOperationDate" );
  183. builder.EntitySet<FmsWorkOrderToFacility>("FmsWorkOrderToFacility");
  184. builder.EntitySet<FmsWorkRequest>("FmsWorkRequest");
  185. builder.EntitySet<FmsWorkRequestToFacility>("FmsWorkRequestToFacility");
  186. builder.EntitySet<MonitoringPointEx>("MonitoringPoint");
  187. builder.EntitySet<FmsConstruction>("FmsConstruction");
  188. builder.EntitySet<FmsConstructionEstimation>("FmsConstructionEstimation");
  189. builder.EntitySet<FmsConstructionCodeProgress>("FmsConstructionCodeProgress");
  190. builder.EntitySet<FmsConstructionCodeType>("FmsConstructionCodeType");
  191. builder.EntitySet<FmsCompanyEstimationCodeClass>("FmsCompanyEstimationCodeClass");
  192. builder.EntitySet<CmPartner>("CmPartner");
  193. builder.EntitySet<CmPartnerType>("CmPartnerType");
  194. builder.EntitySet<FmsAccidentCodeType>("FmsAccidentCodeType");
  195. builder.EntitySet<FmsAccident>("FmsAccident");
  196. builder.EntitySet<FmsEquipmentCodeType>("FmsEquipmentCodeType");
  197. builder.EntitySet<FmsEquipmentCodeStateType>("FmsEquipmentCodeStateType");
  198. builder.EntitySet<FmsEquipment>("FmsEquipment");
  199. builder.EntitySet<FmsEquipmentHistory>("FmsEquipmentHistory");
  200. builder.EntitySet<FmsEquipmentRentInfo>("FmsEquipmentRentInfo");
  201. builder.EntitySet<FmsEquipmentEx>("FmsEquipmentEx");
  202. builder.EntitySet<FmsBudgetDetailExecutionEx>("FmsBudgetDetailExecutionEx");
  203. builder.EntitySet<FmsContract>("FmsContract");
  204. builder.EntitySet<FmsContractClass>("FmsContractClass");
  205. builder.EntitySet<FmsContractMethod>("FmsContractMethod");
  206. builder.EntitySet<FmsContractType>("FmsContractType");
  207. builder.EntitySet<FmsPaymentType>("FmsPaymentType");
  208. builder.EntitySet<FmsManual>("FmsManual");
  209. builder.EntitySet<FmsManualType>("FmsManualType");
  210. builder.EntitySet<FmsManualHistory>("FmsManualHistory");
  211. builder.EntitySet<FmsMaterialEx>("FmsMaterialEx");
  212. builder.EntitySet<FmsMaterialPurchaseRequestEx>("FmsMaterialPurchaseRequestEx");
  213. builder.EntitySet<FmsMaterialStockHistoryDaily>("FmsMaterialStockHistoryDaily");
  214. builder.EntitySet<FmsMaterialStockHistoryMonthly>("FmsMaterialStockHistoryMonthly");
  215. builder.EntitySet<FmsMaterialStockHistoryAll>("FmsMaterialStockHistoryAll");
  216. builder.EntitySet<FmsBudgetCodeClass>("FmsBudgetCodeClass");
  217. builder.EntitySet<FmsBudget>("FmsBudget");
  218. builder.EntitySet<FmsBudgetDetail>("FmsBudgetDetail");
  219. builder.EntitySet<FmsBudgetDetailExecution>("FmsBudgetDetailExecution");
  220. builder.EntitySet<FmsBudgetDetailExecution2>("FmsBudgetDetailExecution2");
  221. builder.EntitySet<FmsBudgetCodeClassEx>("FmsBudgetCodeClassEx");
  222. builder.EntitySet<BemsControlPointHistory>("BemsControlPointHistory");
  223. builder.EntitySet<CmZoneTempHumiSet>("CmZoneTempHumiSet");
  224. builder.EntitySet<CmFacilityTempSet>("CmFacilityTempSet");
  225. builder.EntitySet<CmAlarmAdmin>("CmAlarmAdmin");
  226. builder.EntitySet<CmAnnouncement>("CmAnnouncement");
  227. builder.EntitySet<CmUserLoginHistory>("CmUserLoginHistory");
  228. builder.EntitySet<FmsDailyReport>("FmsDailyReport");
  229. builder.EntitySet<FmsFacilityOperationReport>("FmsFacilityOperationReport");
  230. //builder.EntitySet<FmsFacilityTaskReport>("FmsFacilityTaskReport");
  231. builder.EntitySet<FmsDailyCheckReport>("FmsDailyCheckReport");
  232. builder.EntitySet<FmsMonthlyReport>("FmsMonthlyReport");
  233. builder.EntitySet<FmsInvestmentCost>("FmsInvestmentCost");
  234. // 2016 02 10
  235. builder.EntitySet<CmPatrolType>("CmPatrolType");
  236. builder.EntitySet<CmPatrolGroup>("CmPatrolGroup");
  237. builder.EntitySet<CmPatrolGroupUser>("CmPatrolGroupUser");
  238. builder.EntitySet<CmPatrolPos>("CmPatrolPos");
  239. //2016 02 18
  240. builder.EntitySet<CmPatrolCourse>("CmPatrolCourse");
  241. builder.EntitySet<CmPatrolCoursePos>("CmPatrolCoursePos");
  242. builder.EntitySet<CmPatrolPlan>("CmPatrolPlan");
  243. builder.EntitySet<CmPatrolHistory>("CmPatrolHistory");
  244. builder.EntitySet<CmPatrolHistoryPos>("CmPatrolHistoryPos");
  245. builder.EntitySet<CmPatrolHistoryEx>("CmPatrolHistoryEx");
  246. builder.EntitySet<BemsEnergyConfigPercentMonth>("BemsEnergyConfigPercentMonth");
  247. builder.EntitySet<BemsEnergyConfigPercentWeek>("BemsEnergyConfigPercentWeek");
  248. builder.EntitySet<BemsEnergyDaily>("BemsEnergyDaily");
  249. builder.EntitySet<BemsEnergyDailyRegression>("BemsEnergyDailyRegression");
  250. //builder.EntitySet<BemsEnergyGoalDaily>("BemsEnergyGoalDaily");
  251. builder.EntitySet<BemsPeakHistoryDaily>("BemsPeakHistoryDaily");
  252. builder.EntitySet<BemsPeakHistory>("BemsPeakHistory");
  253. builder.EntitySet<BemsPeakInfo>("BemsPeakInfo");
  254. //2016 04 11
  255. builder.EntitySet<CmPatrolSchedule>("CmPatrolSchedule");
  256. //builder.EntitySet<BemsNoticePrice>("BemsNoticePrice");
  257. builder.EntitySet<BemsNoticePriceBase>("BemsNoticePriceBase");
  258. builder.EntitySet<BemsNoticePriceContractType>("BemsNoticePriceContractType");
  259. builder.EntitySet<BemsNoticePriceDetail>("BemsNoticePriceDetail");
  260. builder.EntitySet<BemsPeakFacility>("BemsPeakFacility");
  261. //2016 07 26
  262. builder.EntitySet<FmsReport>("FmsReport");
  263. //2018 01 19
  264. builder.EntitySet<CmMenu>("CmMenu");
  265. //2018 02 23
  266. builder.EntitySet<BemsChartInfo>("BemsChartInfo");
  267. builder.EntitySet<BemsControlAHUTempConfig>("BemsControlAHUTempConfig");
  268. var model = builder.GetEdmModel();
  269. config.Routes.MapODataRoute("odata", "odata", model);
  270. //builder = new ODataConventionModelBuilder();
  271. //builder.EntitySet<PointWithLocation>( "PointWithLocation" );
  272. //config.Routes.MapODataServiceRoute( "api" , "api" , builder.GetEdmModel() );
  273. //entity.EntityType.HasKey( )
  274. //model.SetHasDefaultStream( );
  275. }
  276. }
  277. }