JgEmployeController.php 6.5 KB

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