JgEmployeController.php 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  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. class JGEmployeController extends AdminController
  10. {
  11. public function actionIndex()
  12. {
  13. /*$ids = ['5acd6b649f5160a6048b688c'];
  14. foreach ($ids as $id) {
  15. $tmp = JGEmploye::get(new MongoId($id));
  16. $tmp->score = 0;
  17. $tmp->save();
  18. }*/
  19. $status = CommonFn::getComboboxData(JGEmploye::$status_options, 100, true, 100);//人员状态
  20. $skill = CommonFn::getComboboxData(JGEmploye::$skill_options, 100, true, 100);
  21. $work_type = CommonFn::getComboboxData(JGEmploye::$work_type_options, 100, true, 100);
  22. $store = CommonFn::getComboboxData(JGEmploye::getStoreInfo(), 100, true, 100);
  23. $this->render('index',array(
  24. 'status' => $status,
  25. 'skill' => $skill,
  26. 'work_type' => $work_type,
  27. 'store' => $store,
  28. ));
  29. }
  30. public function actionList()
  31. {
  32. $pageParams = CommonFn::getPageParams();
  33. $status = intval(Yii::app()->request->getParam('status', 100));
  34. $criteria = new EMongoCriteria($pageParams);
  35. if ($status != 100 ) {
  36. $criteria->status('==',$status);
  37. }
  38. $cursor = JGEmploye::model()->findAll($criteria);
  39. $rows = CommonFn::getRowsFromCursor($cursor);
  40. $parsedRows = JGEmploye::model()->parse($rows);
  41. $total = $cursor->count();
  42. echo CommonFn::composeDatagridData($parsedRows, $total);
  43. }
  44. public function actionEdit()
  45. {
  46. $id = Yii::app()->request->getParam('id','');
  47. $status = Yii::app()->request->getParam('status','');
  48. $name = Yii::app()->request->getParam('name','');
  49. $phone = Yii::app()->request->getParam('phone','');
  50. $cart_num = Yii::app()->request->getParam('cart_num','');
  51. $star = Yii::app()->request->getParam('star','');
  52. $readme = Yii::app()->request->getParam('readme','');
  53. $store_id = Yii::app()->request->getParam('store_id','');
  54. $desc = Yii::app()->request->getParam('desc','');
  55. $extra = Yii::app()->request->getParam('extra','');
  56. $birth_time = strtotime(Yii::app()->request->getParam('birth_time',''));
  57. $work_time = strtotime(Yii::app()->request->getParam('work_time',''));
  58. $address1 = Yii::app()->request->getParam('address1','');
  59. $address2 = Yii::app()->request->getParam('address2','');
  60. $skill = Yii::app()->request->getParam('skill_options');
  61. $skills = array();
  62. if (!empty($skill)) {
  63. foreach ($skill as $value) {
  64. $skills[] = intval($value);
  65. }
  66. }
  67. $work_types = Yii::app()->request->getParam('work_types');
  68. $types = array();
  69. if (!empty($work_types)) {
  70. foreach ($work_types as $value) {
  71. $types[] = intval($value);
  72. }
  73. }
  74. if ($status == 100) {
  75. CommonFn::requestAjax(false,'状态没有修改');exit;
  76. }
  77. if (intval($star) > 5) {
  78. CommonFn::requestAjax(false,'星级评定最大为5星');exit;
  79. }
  80. if (!CommonFn::isMongoId($id)) {
  81. CommonFn::requestAjax(false,'id错误');exit;
  82. }
  83. $flag = function () use ($store_id){
  84. $criteria = new EMongoCriteria();
  85. $criteria->store_id('==',intval($store_id));
  86. $store = Store::model()->find($criteria);
  87. if (empty($store)) {
  88. return true;
  89. } else {
  90. return false;
  91. }
  92. };
  93. if ($flag()) {
  94. CommonFn::requestAjax(false,'门店不存在');exit;
  95. }
  96. $work_type_part = array();
  97. $i = 1;
  98. $j =0;
  99. $extra = json_decode($extra,true);
  100. if (isset($extra) && !empty($extra)) {
  101. $work_type_part[0]['start'] = $extra[0]['type'];
  102. $work_type_part[0]['end'] = $extra[0]['price'];
  103. $total = count($extra);
  104. while($i != $total) {
  105. $new_end = $work_type_part[$j]['end'];
  106. $old_start = $extra[$i]['type'];
  107. //新数组中的最后一位与就数组中第一位数据相同 合并
  108. if ($new_end == $old_start) {
  109. $work_type_part[$j]['end'] = $extra[$i]['price'];
  110. $i++;
  111. } else {
  112. $j++;
  113. $work_type_part[$j]['start'] = $extra[$i]['type'];
  114. $work_type_part[$j]['end'] = $extra[$i++]['price'];
  115. }
  116. }
  117. }
  118. $employe = JGEmploye::get(new MongoId($id));
  119. $employe->status = intval($status);
  120. $employe->name = $name;
  121. $employe->phone = $phone;
  122. $employe->cart_num = $cart_num;
  123. $employe->store_id = intval($store_id);
  124. $employe->star = intval($star);
  125. $employe->readme = $readme;
  126. $employe->birth_time = $birth_time;
  127. $employe->work_time = $work_time;
  128. $employe->address = array($address1,$address2);
  129. $employe->work_time_part = $work_type_part;
  130. $employe->skill = $skills;
  131. $employe->work_type = $types;
  132. $employe->desc = $desc;
  133. $employe->save();
  134. CommonFn::requestAjax(true,'保存成功');exit;
  135. }
  136. public function actionAdd()
  137. {
  138. $user_id = Yii::app()->request->getParam('user_id','');
  139. $user_name = Yii::app()->request->getParam('user_name','');
  140. $phone = Yii::app()->request->getParam('phone','');
  141. $store = Yii::app()->request->getParam('store','');
  142. $desc = Yii::app()->request->getParam('desc','');
  143. $sex = Yii::app()->request->getParam('sex','');
  144. $status = intval(Yii::app()->request->getParam('status',100));
  145. if ($status == 100) {
  146. CommonFn::requestAjax(false,'状态没有修改');exit;
  147. }
  148. if (CommonFn::isMongoId($user_id)) {
  149. $user = RUser::get(new MongoId($user_id));
  150. if (empty($user)) {
  151. CommonFn::requestAjax(false,'id错误');exit;
  152. }
  153. }
  154. $employe = new JGEmploye();
  155. $employe->user_id = $user->_id;
  156. $employe->name = $user_name;
  157. $employe->phone = $phone;
  158. $employe->store_id = intval($store);
  159. $employe->desc = $desc;
  160. $employe->status = intval($status);
  161. $employe->sex = intval($sex);
  162. $employe->reg_time = time();
  163. $employe->address = array(
  164. 'sadjkhfasdkljf',
  165. 'sadjkhfasdkljf'
  166. );
  167. $employe->save();
  168. CommonFn::requestAjax(true,'保存成功');exit;
  169. }
  170. public function actionOutputExcel()
  171. {
  172. $data = JGEmploye::model()->findAll();
  173. $res=Service::factory('ExcelService')->push($data);
  174. }
  175. }