TrainingController.php 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. <?php
  2. namespace app\workerapi\controller;
  3. use app\common\logic\MasterWorkerExamineLogic;
  4. use app\common\model\dict\DictData;
  5. use app\workerapi\lists\MasterWorkerLists;
  6. use app\workerapi\lists\ServiceWorkLists;
  7. use app\workerapi\lists\TeamServiceWorkLists;
  8. use app\workerapi\lists\TrainingCourseLists;
  9. use app\workerapi\logic\LoginLogic;
  10. use app\workerapi\logic\MasterWorkerInfoLogic;
  11. use app\workerapi\logic\MasterWorkerLogic;
  12. use app\workerapi\logic\MasterWorkerTeamLogic;
  13. use app\workerapi\logic\TenantAgreeLogic;
  14. use app\workerapi\logic\TrainingLogic;
  15. use app\workerapi\validate\BankAccountValidate;
  16. use app\workerapi\validate\MasterWokerInfoValidate;
  17. use app\workerapi\validate\MasterWokerTeamValidate;
  18. use app\workerapi\validate\MasterWokerValidate;
  19. use app\workerapi\validate\MasterWorkerAgreeValidate;
  20. class TrainingController extends BaseApiController
  21. {
  22. /**
  23. * 获取培训信息
  24. * @return \think\response\Json
  25. */
  26. public function getTrainingInfo()
  27. {
  28. $result = TrainingLogic::getDetail($this->userId);
  29. return $this->data($result);
  30. }
  31. /**
  32. * 获取免费的课程列表
  33. * @return \think\response\Json
  34. */
  35. public function getFreeCourseList()
  36. {
  37. return $this->dataLists(new TrainingCourseLists());
  38. }
  39. /**
  40. * 获取工程师的课程列表
  41. * @return \think\response\Json
  42. */
  43. public function getCourseList()
  44. {
  45. $params = request()->get();
  46. return $this->data(TrainingLogic::getCourseList($this->userId,$params));
  47. }
  48. /**
  49. * 获取工程师的课程详情
  50. * @return \think\response\Json
  51. */
  52. public function getCourseDetail()
  53. {
  54. $params = request()->get();
  55. return $this->data(TrainingLogic::getCourseDetail($this->userId,$params));
  56. }
  57. /**
  58. * 修改学习视频记录状态
  59. * @return \think\response\Json
  60. */
  61. public function upWorkerVideoCourse()
  62. {
  63. $params = request()->post();
  64. $result = TrainingLogic::upWorkerCourse($params);
  65. if($result === false){
  66. return $this->fail(TrainingLogic::getError());
  67. }
  68. return $this->success('', [], 1, 1);
  69. }
  70. /**
  71. * 获取考试列表(即开始考试)
  72. * @return \think\response\Json
  73. */
  74. public function getQuestionList()
  75. {
  76. try {
  77. $params = request()->get();
  78. $result = TrainingLogic::getQuestionList($params);
  79. return $this->data($result);
  80. } catch (\Exception $e) {
  81. return $this->fail($e->getMessage());
  82. }
  83. }
  84. /**
  85. * 提交考试(即结束考试)
  86. * @return \think\response\Json
  87. */
  88. public function submitExam()
  89. {
  90. $params = request()->post();
  91. $result = TrainingLogic::submitExam($params);
  92. if($result === false){
  93. return $this->fail(TrainingLogic::getError());
  94. }
  95. return $this->success('', [], 1, 1);
  96. }
  97. /**
  98. * 考试结果统计
  99. * @return \think\response\Json
  100. */
  101. public function examStatistics()
  102. {
  103. $params = request()->get();
  104. $result = TrainingLogic::examStatistics($params);
  105. return $this->data($result);
  106. }
  107. /**
  108. * 获取团队协议详情
  109. * @return \think\response\Json
  110. */
  111. public function agreement_detail()
  112. {
  113. $result = TenantAgreeLogic::getAgreeByType('tenant_cooperate',$this->userId);
  114. return $this->data($result);
  115. }
  116. /**
  117. * 签署团队协议
  118. * @return \think\response\Json
  119. */
  120. public function agreeSign()
  121. {
  122. $params = (new MasterWorkerAgreeValidate())->post()->goCheck('sign', [
  123. 'user_id' => $this->userId,
  124. 'user_info' => $this->userInfo
  125. ]);
  126. $result = TenantAgreeLogic::sign($params);
  127. if (false === $result) {
  128. return $this->fail(TenantAgreeLogic::getError());
  129. }
  130. return $this->success('签名成功', [], 1, 1);
  131. }
  132. }