JxOrderController.php 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. <?php
  2. /**
  3. * Created by north.Deng's MAC
  4. * User: north.Deng
  5. * Date: 2018/2/28
  6. * Time: 下午12:30
  7. * description :
  8. * 派单
  9. */
  10. class JxOrderController extends ChBaseController
  11. {
  12. protected $fileds = [
  13. 'user_id' => '用户ID',
  14. 'worker_id' => '护工ID',
  15. 'time' => '日期',
  16. 'address' => '地址',
  17. 'serve_time_start' => '服务开始日期',
  18. 'serve_time_end' => '服务结束日期',
  19. 'serve_period' => '服务周期',
  20. 'start_time' => '开始时间',
  21. 'end_time' => '结束时间',
  22. 'care_institutions' => '护理机构',
  23. 'principal' => '负责人',
  24. 'desc' => '备注',
  25. ];
  26. public function actionIndex()
  27. {
  28. // $status = CommonFn::getComboboxData(JRecord::$status_options, 100, true, 100);
  29. $this->render('index',[
  30. 'fileds' => $this->fileds,
  31. ]);
  32. }
  33. public function actionList()
  34. {
  35. $pageParams = CommonFn::getPageParams();
  36. $search = Yii::app()->request->getParam('search', '');
  37. $criteria = new EMongoCriteria($pageParams);
  38. if ($search) {
  39. $criteria->addCond('user_info.name','or',new MongoRegex('/' . $search . '/'));
  40. }
  41. $user_id = Yii::app()->request->getParam('user_id', '');
  42. $work_id = Yii::app()->request->getParam('work_id', '');
  43. if ($user_id) {
  44. $criteria->user_id('==',$user_id);
  45. }
  46. if ($work_id) {
  47. $criteria->worker_id('==',$work_id);
  48. }
  49. $cursor = Order::model()->findAll($criteria);
  50. $rows = CommonFn::getRowsFromCursor($cursor);
  51. $parsedRows = Order::model()->parse($rows);
  52. $total = $cursor->count();
  53. echo CommonFn::composeDatagridData($parsedRows, $total);
  54. }
  55. public function actionEdit()
  56. {
  57. $this->fileds['id'] = 'ID';
  58. $data = [];
  59. foreach ($this->fileds as $filed => $v) {
  60. $data[$filed] = Yii::app()->request->getParam($filed,'');
  61. if (empty($data[$filed])) {
  62. CommonFn::requestAjax(false, '请填写完整数据', array(
  63. 'error' => $filed,
  64. ));
  65. }
  66. }
  67. if (!CommonFn::isMongoId($data['id'])) {
  68. CommonFn::requestAjax(false, '修改失败', array());
  69. }
  70. $user = RUser::get(new MongoId($data['user_id']));
  71. if (empty($user)) {
  72. CommonFn::requestAjax(false, '用户不存在');
  73. }
  74. $user = Worker::get(new MongoId($data['worker_id']));
  75. if (empty($user)) {
  76. CommonFn::requestAjax(false, '护工不存在');
  77. }
  78. $order = Order::get(new MongoId($data['id']));
  79. $order->user_id = $data['user_id'];
  80. $order->worker_id = $data['worker_id'];
  81. $order->time = strtotime($data['time']);
  82. $order->serve_time = [
  83. 'start' => strtotime($data['serve_time_start']),
  84. 'end' => strtotime($data['serve_time_end']),
  85. ];
  86. $order->address = $data['address'];
  87. foreach ($data['serve_period'] as &$v ) {
  88. $v = (int)$v;
  89. }
  90. $order->serve_period = $data['serve_period'];
  91. $order->start_time = strtotime($data['start_time']);
  92. $order->end_time = strtotime($data['end_time']);
  93. $order->care_institutions = $data['care_institutions'];
  94. $order->principal = $data['principal'];
  95. $order->desc = $data['desc'];
  96. $order->save();
  97. CommonFn::requestAjax(true,'修改成功');exit;
  98. }
  99. public function actionAdd()
  100. {
  101. $data = [];
  102. foreach ($this->fileds as $filed => $v) {
  103. $data[$filed] = Yii::app()->request->getParam($filed,'');
  104. if (empty($data[$filed])) {
  105. CommonFn::requestAjax(false, '请填写完整数据', array($filed));
  106. }
  107. }
  108. $user = RUser::get(new MongoId($data['user_id']));
  109. if (empty($user)) {
  110. CommonFn::requestAjax(false, '用户不存在');
  111. }
  112. $user = Worker::get(new MongoId($data['worker_id']));
  113. if (empty($user)) {
  114. CommonFn::requestAjax(false, '护工不存在');
  115. }
  116. $order = new Order();
  117. $order->user_id = $data['user_id'];
  118. $order->worker_id = $data['worker_id'];
  119. $order->time = strtotime($data['time']);
  120. $order->address = $data['address'];
  121. $order->serve_time = [
  122. 'start' => strtotime($data['serve_time_start']),
  123. 'end' => strtotime($data['serve_time_end']),
  124. ];
  125. foreach ($data['serve_period'] as &$v ) {
  126. $v = (int)$v;
  127. }
  128. $order->serve_period = $data['serve_period'];
  129. $order->start_time = strtotime($data['start_time']);
  130. $order->end_time = strtotime($data['end_time']);
  131. $order->care_institutions = $data['care_institutions'];
  132. $order->principal = $data['principal'];
  133. $order->desc = $data['desc'];
  134. $order->save();
  135. CommonFn::requestAjax(true,'创建成功');exit;
  136. }
  137. }