using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using System.Web.Http; using BLL; namespace WebAPI.Controllers { /// /// 培训计划 /// public class TrainingPlanController : ApiController { #region 根据projectId、trainTypeId、states获取培训计划列表 /// /// 根据projectId、trainTypeId、states获取培训记录列表 /// /// /// /// /// /// public Model.ResponeData getTrainingPlanListByProjectIdTrainTypeIdTrainStates(string projectId, string trainTypeId, string states, int pageIndex=0,string unitId="") { var responeData = new Model.ResponeData(); try { //企业级 if (string.IsNullOrEmpty(unitId)) { if (pageIndex == 0) { responeData.data = APITrainingPlanService.getTrainingPlanListByProjectIdTrainTypeIdTrainStates(projectId, trainTypeId, states); } else { var getDataLists = APITrainingPlanService.getTrainingPlanListByProjectIdTrainTypeIdTrainStates(projectId, trainTypeId, states); int pageCount = getDataLists.Count; if (pageCount > 0 && pageIndex > 0) { var getdata = from x in getDataLists.Skip(BLL.Funs.PageSize * (pageIndex - 1)).Take(BLL.Funs.PageSize) select x; responeData.data = new { pageCount, getdata }; } } } else { //公司级 if (pageIndex == 0) { responeData.data = APITrainingPlanService.getTrainingPlanListByUnitIdTrainTypeIdTrainStates(unitId, trainTypeId, states); } else { var getDataLists = APITrainingPlanService.getTrainingPlanListByUnitIdTrainTypeIdTrainStates(unitId, trainTypeId, states); int pageCount = getDataLists.Count; if (pageCount > 0 && pageIndex > 0) { var getdata = from x in getDataLists.Skip(BLL.Funs.PageSize * (pageIndex - 1)).Take(BLL.Funs.PageSize) select x; responeData.data = new { pageCount, getdata }; } } } } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } #endregion #region 根据培训计划ID获取培训详细 /// /// 根据培训ID获取培训计划详细 /// /// 培训计划ID /// public Model.ResponeData getTrainingPlanByTrainingId(string planId) { var responeData = new Model.ResponeData(); try { responeData.data = APITrainingPlanService.getTrainingPlanByTrainingId(planId); } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } #endregion #region 根据TrainingPlanId获取培训教材类型列表 /// /// 根据TrainingPlanId获取培训教材类型列表 /// /// /// 培训教材类型 public Model.ResponeData getTrainingPlanItemListByTrainingPlanId(string trainingPlanId) { var responeData = new Model.ResponeData(); try { responeData.data = APITrainingPlanService.getTrainingPlanItemListByTrainingPlanId(trainingPlanId); } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } #endregion #region 保存 TrainingPlan /// /// 保存TrainingPlan /// /// 培训计划记录 [HttpPost] public Model.ResponeData SaveTrainingPlan([FromBody] Model.TrainingPlanItem trainingPlan) { var responeData = new Model.ResponeData(); try { if (CommonService.IsMainUnitOrAdmin(trainingPlan.DesignerId)) { //判断是否是公司级 if (string.IsNullOrEmpty(trainingPlan.UnitId)) { APITrainingPlanService.SaveTrainingPlan(trainingPlan); } else { APITrainingPlanService.SaveTrainingPlanCompany(trainingPlan); } } else { responeData.code = 0; responeData.message = "非本单位用户,不能制定培训计划!"; } } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } #endregion ////////////////////////////////////////公司级////////////////////////////////////////////// #region 根据unitid、trainTypeId、states获取培训计划列表 公司级 /// /// 根据projectId、trainTypeId、states获取培训记录列表 /// /// /// /// /// /// public Model.ResponeData getTrainingPlanListByUnitIdTrainTypeIdTrainStates(string unitId, string trainTypeId, string states, int pageIndex) { var responeData = new Model.ResponeData(); try { var getDataLists = APITrainingPlanService.getTrainingPlanListByUnitIdTrainTypeIdTrainStates(unitId, trainTypeId, states); int pageCount = getDataLists.Count; if (pageCount > 0 && pageIndex > 0) { var getdata = from x in getDataLists.Skip(BLL.Funs.PageSize * (pageIndex - 1)).Take(BLL.Funs.PageSize) select x; responeData.data = new { pageCount, getdata }; } } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } #endregion #region 保存 TrainingPlan公司级 /// /// 保存TrainingPlan /// /// 培训计划记录 [HttpPost] public Model.ResponeData SaveTrainingPlanCompany([FromBody] Model.TrainingPlanItem trainingPlan) { var responeData = new Model.ResponeData(); try { if (CommonService.IsMainUnitOrAdmin(trainingPlan.DesignerId)) { APITrainingPlanService.SaveTrainingPlanCompany(trainingPlan); } else { responeData.code = 0; responeData.message = "非本单位用户,不能制定培训计划!"; } } catch (Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } #endregion } }