JgEmployeController.php 6.8 KB

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