Order.php 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640
  1. <?php
  2. namespace app\api\controller\screen;
  3. use app\hander\HelpHander;
  4. use app\api\controller\screen\Index;
  5. use think\Db;
  6. use think\helper\Time;
  7. class Order extends Index
  8. {
  9. // 工单数据分析 今日工单完成率(报修,保洁,隐患,运送)
  10. public function finishRate(){
  11. $lists = [
  12. ['id' => 1, 'name' => '报修', 'finish' => 0, 'total' => 0, 'bl' => 0],
  13. ['id' => 2, 'name' => '保洁', 'finish' => 0, 'total' => 0, 'bl' => 0],
  14. ['id' => 3, 'name' => '运送', 'finish' => 0, 'total' => 0, 'bl' => 0],
  15. ['id' => 4, 'name' => '安保', 'finish' => 0, 'total' => 0, 'bl' => 0]
  16. ];
  17. $curTime = date('Ymd');
  18. $total = 0;
  19. $finish = 0;
  20. foreach ($lists as $k=>$v){
  21. $t = Db::name('orders')
  22. ->where('del',0)
  23. ->where('work_type_mode',$v['id'])
  24. ->where('create_yyyymmdd',$curTime)
  25. ->where('org_id',$this->orgId)
  26. ->count();
  27. $f = Db::name('orders')
  28. ->where('del',0)
  29. ->where('work_type_mode',$v['id'])
  30. ->where('order_mode','in',[5,6])
  31. ->where('create_yyyymmdd',$curTime)
  32. ->where('org_id',$this->orgId)
  33. ->count();
  34. $total += $t;
  35. $finish += $f;
  36. $lists[$k]['finish'] = $f;
  37. $lists[$k]['total'] = $t;
  38. $lists[$k]['bl'] = $t>0?round($f/$t,2)*100:0;
  39. }
  40. $bl = $total > 0?(round($finish/$total,3)*100):0;
  41. $data = [
  42. 'bl' => $bl.'%',
  43. 'list' => $lists
  44. ];
  45. HelpHander::success($data);
  46. }
  47. // 任务数据统计
  48. public function orderCount(){
  49. $mode = input('mode/d',1);
  50. $type = input('type/d',1);
  51. if(!in_array($type,[1,2,3])||!in_array($mode,[1,2,3,4])){
  52. HelpHander::error('参数错误');
  53. }
  54. $date = [];
  55. $curDay = date('Y-m-d');
  56. if($type == 1){ // 日统计
  57. $date[] = '03';
  58. $date[] = '06';
  59. $date[] = '09';
  60. $date[] = '12';
  61. $date[] = '15';
  62. $date[] = '18';
  63. $date[] = '21';
  64. $date[] = '24';
  65. }else if($type == 2){ // 周统计
  66. $ms = Time::week();
  67. $start = $ms[0];
  68. $end = $ms[1] + 1;
  69. $date[] = date('Y-m-d',$start);
  70. $i = 1;
  71. while (($start + $i*24*60*60) < $end){
  72. $date[] = date('Y-m-d',$start + $i*24*60*60);
  73. $i++;
  74. }
  75. }else{ // 月统计
  76. $ms = Time::month();
  77. $start = $ms[0];
  78. $end = $ms[1] + 1;
  79. $i = 1;
  80. while (($start + $i*24*60*60) < $end){
  81. $date[] = date('Y-m-d',$start + $i*24*60*60);
  82. $i++;
  83. }
  84. }
  85. $d1 = [];
  86. $d2 = [];
  87. $d = [];
  88. foreach ($date as $k=>$v){
  89. $map = [];
  90. $map[] = ['org_id','=',$this->orgId];
  91. $map[] = ['work_type_mode','=',$mode];
  92. $map[] = ['del','=',0];
  93. if($type == 1){ // 日统计
  94. if($k == 0){
  95. $s = $curDay.' 00:00:00';
  96. }else{
  97. $s = $curDay.' '.$date[$k-1].':00:00';
  98. }
  99. $e = $curDay.' '.$v.':00:00';
  100. $map[] = ['create_time','egt',$s];
  101. $map[] = ['create_time','lt',$e];
  102. $d[] = (int)$v;
  103. }else{
  104. $map[] = ['create_yyyymmdd','=',date('Ymd',strtotime($v))];
  105. $d[] = date('m-d',strtotime($v));
  106. }
  107. $order = Db::name('orders')->where($map)->count();
  108. $todo = Db::name('todo')->where($map)->count();
  109. $d1[] = $todo;
  110. $d2[] = $order;
  111. }
  112. HelpHander::success(['d'=>$d,'d1'=>$d1,'d2'=>$d2]);
  113. }
  114. // 热点科室排名
  115. public function hotDep(){
  116. $type = input('type/d',1);
  117. if(!in_array($type,[1,2])){
  118. HelpHander::error('参数错误');
  119. }
  120. if($type == 1){ // 运送
  121. $map[] = ['work_type_mode','=',3];
  122. $map[] = ['org_id','=',$this->orgId];
  123. $map[] = ['del','=',0];
  124. $lists = Db::name('orders')
  125. ->where($map)
  126. ->field('count(*) as count,dep_id')
  127. ->group('dep_id')
  128. ->distinct(true)
  129. ->order('count desc')
  130. ->limit(10)
  131. ->select();
  132. }else{ // 陪护
  133. $map[] = ['org_id','=',$this->orgId];
  134. $lists = Db::name('ph_orders')
  135. ->where($map)
  136. ->field('count(*) as count,dep_id')
  137. ->group('dep_id')
  138. ->distinct(true)
  139. ->order('count desc')
  140. ->limit(10)
  141. ->select();
  142. }
  143. $data = [];
  144. $host = request()->domain(true);
  145. foreach ($lists as $k=>$v){
  146. if($k == 0){
  147. $top = '<img src="'.$host.'/img/org-top1.png" width="35" style="margin-top:5px">';
  148. }else if($k == 1){
  149. $top = '<img src="'.$host.'/img/org-top2.png" width="35" style="margin-top:5px">';
  150. }else if($k == 2){
  151. $top = '<img src="'.$host.'/img/org-top3.png" width="35" style="margin-top:5px">';
  152. }else{
  153. $top = 'TOP'.($k+1);
  154. }
  155. $depName = Db::name('dep')->where('id',$v['dep_id'])->value('title');
  156. $data[] = [$top,$depName?$depName:''];
  157. }
  158. HelpHander::success($data);
  159. }
  160. // 耗材使用排名
  161. public function hotMate(){
  162. $map[] = ['tm.org_id','=',$this->orgId];
  163. $lists = Db::name('todo_mate_item')
  164. ->alias('tmi')
  165. ->join('todo_mate tm','tm.id = tmi.todo_mate_id')
  166. ->where($map)
  167. ->field('sum(total) as total,items_id')
  168. ->group('items_id')
  169. ->distinct(true)
  170. ->order('total desc')
  171. ->limit(10)
  172. ->select();
  173. $data = [];
  174. $host = request()->domain(true);
  175. foreach ($lists as $k=>$v){
  176. if($k == 0){
  177. $top = '<img src="'.$host.'/img/org-top1.png" width="35" style="margin-top:5px">';
  178. }else if($k == 1){
  179. $top = '<img src="'.$host.'/img/org-top2.png" width="35" style="margin-top:5px">';
  180. }else if($k == 2){
  181. $top = '<img src="'.$host.'/img/org-top3.png" width="35" style="margin-top:5px">';
  182. }else{
  183. $top = 'TOP'.($k+1);
  184. }
  185. $name = Db::name('mate_goods')->where('id',$v['items_id'])->value('title');
  186. $data[] = [$top,$name?$name:''];
  187. }
  188. HelpHander::success($data);
  189. }
  190. //任务数据总览
  191. public function taskList(){
  192. $mode = input('mode/d',1);
  193. if(!in_array($mode,[1,2,3,4,5])){
  194. HelpHander::error('参数错误');
  195. }
  196. $data = [];
  197. $header = ['状态', '类型', '始发地', '目的地', '需求时间', '执行人', '派工时间', '接收时间'];
  198. if($mode == 5){
  199. $header = ['状态', '订单号', '类型', '护工', '下单时间'];
  200. $lists = Db::name('ph_orders')
  201. ->where('org_id',$this->orgId)
  202. ->where('status','in',[1,2])
  203. ->order('id desc')
  204. ->field('id,sn,cate_id,status,create_time')
  205. ->limit(20)
  206. ->select();
  207. foreach ($lists as $k=>$v){
  208. $cate = Db::name('cate')->where('id',$v['cate_id'])->value('title');
  209. $stxt = '新订单';
  210. $users = '';
  211. if($v['status'] == 2){
  212. $stxt = '服务中';
  213. $unames = Db::name('ph_todo')
  214. ->alias('t')
  215. ->join('worker w','t.worker_id = w.id')
  216. ->join('user u','u.id = w.user_id')
  217. ->where('t.order_id',$v['id'])
  218. ->where('t.status',1)
  219. ->column('real_name');
  220. $users = $unames?implode(',',$unames):'';
  221. }
  222. $data[] = [$stxt,$v['sn'],$cate,$users,$v['create_time']];
  223. }
  224. }else{
  225. if($mode == 1){
  226. $header = ['状态', '科室', '报修事项', '内容', '下单时间'];
  227. }else if($mode == 2||$mode == 4){
  228. $header = ['状态', '科室', '内容', '下单时间'];
  229. }
  230. $lists = Db::name('orders')
  231. ->where('org_id',$this->orgId)
  232. ->where('order_mode','in',[1,4])
  233. ->where('work_type_mode',$mode)
  234. ->where('del',0)
  235. ->order('id desc')
  236. ->limit(20)
  237. ->field('id,order_mode,create_time,send_time,content,dep_id')
  238. ->select();
  239. foreach ($lists as $k=>$v){
  240. $dep = Db::name('dep')->where('id',$v['dep_id'])->value('title');
  241. $status = Db::name('order_mode')->where('id',$v['order_mode'])->value('out_content');
  242. if($mode == 1){ // 报修
  243. $type = Db::name('order_repair')
  244. ->alias('or')
  245. ->leftJoin('order_type ot','ot.id = or.type_id')
  246. ->where('or.order_id',$v['id'])
  247. ->value('title');
  248. $data[] = [$status,$dep,$type?$type:'',$v['content'],$v['create_time']];
  249. }else if($mode == 3){ //运送
  250. $convey = Db::name('order_convey')
  251. ->alias('oc')
  252. ->join('convey_cate cc','cc.id = oc.type')
  253. ->where('oc.order_id',$v['id'])
  254. ->field('oc.*,cc.title as cate_title')
  255. ->find();
  256. $start = Db::name('address')->where('id',$convey['start'])->value('title');
  257. $end = Db::name('address')->where('id',$convey['end'])->value('title');
  258. $todos = Db::name('todo')
  259. ->alias('t')
  260. ->join('user u','u.id = t.to_user_id')
  261. ->where('t.order_id',$v['id'])
  262. ->where('t.del',0)
  263. ->where('t.todo_mode','in',[1,2,3])
  264. ->field('t.confirm_time,u.real_name')
  265. ->select();
  266. $todos = $todos?$todos:[];
  267. $unames = [];
  268. $confirm = '';
  269. foreach ($todos as $tk=>$tv){
  270. $unames[] = $tv['real_name'];
  271. if(!$confirm){
  272. $confirm = $tv['confirm_time'];
  273. }
  274. }
  275. $un = $unames?implode(',',$unames):'';
  276. $send = $v['send_time']?date('H:i',strtotime($v['send_time'])):'';
  277. $xq = date('H:i',strtotime($convey['xq_time']));
  278. $confirm = $confirm?date('H:i',strtotime($confirm)):'';
  279. $data[] = [$status,$convey['cate_title'],$start,$end,$xq,$un,$send,$confirm];
  280. }else{ // 保洁,安保
  281. $data[] = [$status,$dep,$v['content'],$v['create_time']];
  282. }
  283. }
  284. }
  285. HelpHander::success(['data'=>$data,'header'=>$header]);
  286. }
  287. // 任务数据统计
  288. public function orderCountDate(){
  289. $type = input('type/d',1);
  290. if(!in_array($type,[1,2,3])){
  291. HelpHander::error('参数错误');
  292. }
  293. $y = [];
  294. $curDay = date('Y-m-d');
  295. $month = [];
  296. if($type == 1){ // 年统计
  297. $date = [];
  298. for ($i=11;$i>=0;$i--){
  299. $month[11-$i] = date('Ym',strtotime('-'.$i.'month'));
  300. $y[] = date('m',strtotime('-'.$i.'month'));
  301. }
  302. }else if($type == 2){ // 月统计
  303. $ms = Time::month();
  304. $start = $ms[0];
  305. $end = $ms[1] + 1;
  306. $i = 1;
  307. while (($start + $i*24*60*60) < $end){
  308. $date[] = date('Y-m-d',$start + $i*24*60*60);
  309. $i++;
  310. }
  311. }else{ // 日统计
  312. $date[] = '03';
  313. $date[] = '06';
  314. $date[] = '09';
  315. $date[] = '12';
  316. $date[] = '15';
  317. $date[] = '18';
  318. $date[] = '21';
  319. $date[] = '24';
  320. }
  321. $d1 = [];
  322. $d2 = [];
  323. $d = [];
  324. if($type != 1 ){
  325. foreach ($date as $k=>$v){
  326. $map = [];
  327. $map[] = ['org_id','=',$this->orgId];
  328. $map[] = ['del','=',0];
  329. if($type == 3){ // 日统计
  330. if($k == 0){
  331. $s = $curDay.' 00:00:00';
  332. }else{
  333. $s = $curDay.' '.$date[$k-1].':00:00';
  334. }
  335. $e = $curDay.' '.$v.':00:00';
  336. $map[] = ['create_time','egt',$s];
  337. $map[] = ['create_time','lt',$e];
  338. $d[] = (int)$v;
  339. }else if($type == 2){
  340. $map[] = ['create_yyyymmdd','=',date('Ymd',strtotime($v))];
  341. $d[] = date('m-d',strtotime($v));
  342. }
  343. $order = Db::name('orders')->where($map)->count();
  344. $todo = Db::name('todo')->where($map)->count();
  345. $d1[] = $todo;
  346. $d2[] = $order;
  347. }
  348. }else{
  349. foreach ($month as $k=>$v){
  350. $map = [];
  351. $map[] = ['org_id','=',$this->orgId];
  352. $map[] = ['del','=',0];
  353. $map[] = ['create_yyyymm','=',$v];
  354. $order = Db::name('orders')->where($map)->count();
  355. $todo = Db::name('todo')->where($map)->count();
  356. $d1[] = $todo;
  357. $d2[] = $order;
  358. }
  359. foreach ($y as $k=>$v){
  360. if($v < 10){
  361. $n = substr($v,1,1);
  362. }else{
  363. $n = $v;
  364. }
  365. $y[$k] = $n;
  366. }
  367. $d = $y;
  368. }
  369. HelpHander::success(['d'=>$d,'d1'=>$d1,'d2'=>$d2]);
  370. }
  371. //任务数据总览
  372. public function taskList2(){
  373. $mode = input('mode/d',1);
  374. if(!in_array($mode,[1,2,3,4,5])){
  375. HelpHander::error('参数错误');
  376. }
  377. $data = [];
  378. $header = ['状态', '类型', '始发地', '目的地', '需求时间', '执行人', '派工时间', '接收时间'];
  379. if($mode == 5){
  380. $header = ['状态', '订单号', '类型', '护工', '下单时间'];
  381. $lists = Db::name('ph_orders')
  382. ->where('org_id',$this->orgId)
  383. // ->where('status','in',[1,2])
  384. ->order('id desc')
  385. ->field('id,sn,cate_id,status,create_time')
  386. ->limit(30)
  387. ->select();
  388. foreach ($lists as $k=>$v){
  389. $cate = Db::name('cate')->where('id',$v['cate_id'])->value('title');
  390. $stxt = '新订单';
  391. $users = '';
  392. // if($v['status'] == 2){
  393. // $stxt = '服务中';
  394. // $unames = Db::name('ph_todo')
  395. // ->alias('t')
  396. // ->join('worker w','t.worker_id = w.id')
  397. // ->join('user u','u.id = w.user_id')
  398. // ->where('t.order_id',$v['id'])
  399. // ->where('t.status',1)
  400. // ->column('real_name');
  401. // $users = $unames?implode(',',$unames):'';
  402. // }
  403. $unames = Db::name('ph_todo')
  404. ->alias('t')
  405. ->join('worker w','t.worker_id = w.id')
  406. ->join('user u','u.id = w.user_id')
  407. ->where('t.order_id',$v['id'])
  408. // ->where('t.status',1)
  409. ->column('real_name');
  410. $users = $unames?implode(',',$unames):'';
  411. $data[$k]['status'] = $v['status'];
  412. $data[$k]['sn'] = $v['sn'];
  413. $data[$k]['cate'] = $cate;
  414. $data[$k]['users'] = $users;
  415. $data[$k]['create_time'] = $v['create_time'];
  416. // $data[] = [$stxt,$v['sn'],$cate,$users,$v['create_time']];
  417. }
  418. }else{
  419. if($mode == 1){
  420. $header = ['状态', '科室', '报修事项', '内容', '下单时间'];
  421. }else if($mode == 2||$mode == 4){
  422. $header = ['状态', '科室', '内容', '下单时间'];
  423. }
  424. $lists = Db::name('orders')
  425. ->where('org_id',$this->orgId)
  426. // ->where('order_mode','in',[1,4])
  427. ->where('work_type_mode',$mode)
  428. ->where('del',0)
  429. ->order('id desc')
  430. ->limit(30)
  431. ->field('id,order_mode,create_time,send_time,content,dep_id')
  432. ->select();
  433. foreach ($lists as $k=>$v){
  434. $dep = Db::name('dep')->where('id',$v['dep_id'])->value('title');
  435. if($mode == 1){ // 报修
  436. $type = Db::name('order_repair')
  437. ->alias('or')
  438. ->leftJoin('order_type ot','ot.id = or.type_id')
  439. ->where('or.order_id',$v['id'])
  440. ->value('title');
  441. $data[$k]['order_mode'] = $v['order_mode'];
  442. $data[$k]['dep'] = $dep;
  443. $data[$k]['type'] = $type?$type:'';
  444. $data[$k]['content'] = $v['content'];
  445. $data[$k]['create_time'] = $v['create_time'];
  446. // $data[] = [$status,$dep,$type?$type:'',$v['content'],$v['create_time']];
  447. }else if($mode == 3){ //运送
  448. $convey = Db::name('order_convey')
  449. ->alias('oc')
  450. ->join('convey_cate cc','cc.id = oc.type')
  451. ->where('oc.order_id',$v['id'])
  452. ->field('oc.*,cc.title as cate_title')
  453. ->find();
  454. $start = Db::name('address')->where('id',$convey['start'])->value('title');
  455. $end = Db::name('address')->where('id',$convey['end'])->value('title');
  456. $todos = Db::name('todo')
  457. ->alias('t')
  458. ->join('user u','u.id = t.to_user_id')
  459. ->where('t.order_id',$v['id'])
  460. ->where('t.del',0)
  461. ->where('t.todo_mode','in',[1,2,3])
  462. ->field('t.confirm_time,u.real_name')
  463. ->select();
  464. $todos = $todos?$todos:[];
  465. $unames = [];
  466. $confirm = '';
  467. foreach ($todos as $tk=>$tv){
  468. $unames[] = $tv['real_name'];
  469. if(!$confirm){
  470. $confirm = $tv['confirm_time'];
  471. }
  472. }
  473. $un = $unames?implode(',',$unames):'';
  474. $send = $v['send_time']?date('H:i',strtotime($v['send_time'])):'';
  475. $xq = date('H:i',strtotime($convey['xq_time']));
  476. $confirm = $confirm?date('H:i',strtotime($confirm)):'';
  477. $data[$k]['order_mode'] = $v['order_mode'];
  478. $data[$k]['cate_title'] = $convey['cate_title'];
  479. $data[$k]['start'] = $start;
  480. $data[$k]['end'] = $end;
  481. $data[$k]['xq'] = $xq;
  482. $data[$k]['un'] = $un;
  483. $data[$k]['send'] = $send;
  484. $data[$k]['confirm'] = $confirm;
  485. // $data[] = [$status,$convey['cate_title'],$start,$end,$xq,$un,$send,$confirm];
  486. }else{ // 保洁,安保
  487. // $data[] = [$status,$dep,$v['content'],$v['create_time']];
  488. $data[$k]['order_mode'] = $v['order_mode'];
  489. $data[$k]['dep'] = $dep;
  490. $data[$k]['content'] = $v['content'];
  491. $data[$k]['create_time'] = $v['create_time'];
  492. }
  493. }
  494. }
  495. $slist = [];
  496. if($mode == 5){
  497. foreach ($data as $k=>$v){
  498. if($v['status'] == 0){
  499. $slist[$k][] = '<span style="color:#FFDA0A;">新订单</span>';
  500. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['sn'].'</span>';
  501. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['cate'].'</span>';
  502. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['users'].'</span>';
  503. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['create_time'].'</span>';
  504. }else if($v['status'] == 1){
  505. $slist[$k][] = '<span style="color:#0FC2DD;">进行中</span>';
  506. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['sn'].'</span>';
  507. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['cate'].'</span>';
  508. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['users'].'</span>';
  509. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['create_time'].'</span>';
  510. }else{
  511. $status = '';
  512. if($v['status'] == 2){
  513. $status = '已完成';
  514. }elseif($v['status'] == 3){
  515. $status = '已作废';
  516. }elseif($v['status'] == 4){
  517. $status = '已结算';
  518. }
  519. $slist[$k][] = $status;
  520. $slist[$k][] = $v['sn'];
  521. $slist[$k][] = $v['cate'];
  522. $slist[$k][] = $v['users'];
  523. $slist[$k][] = $v['create_time'];
  524. }
  525. }
  526. }elseif ($mode == 1){
  527. foreach ($data as $k=>$v){
  528. $status = Db::name('order_mode')->where('id',$v['order_mode'])->value('out_content');
  529. if($v['order_mode'] == 1){
  530. $slist[$k][] = '<span style="color:#FFDA0A;">新订单</span>';
  531. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['dep'].'</span>';
  532. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['type'].'</span>';
  533. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['content'].'</span>';
  534. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['create_time'].'</span>';
  535. }else if($v['order_mode'] == 4){
  536. $slist[$k][] = '<span style="color:#0FC2DD;">进行中</span>';
  537. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['dep'].'</span>';
  538. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['type'].'</span>';
  539. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['content'].'</span>';
  540. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['create_time'].'</span>';
  541. }else{
  542. $slist[$k][] = $status;
  543. $slist[$k][] = $v['dep'];
  544. $slist[$k][] = $v['type'];
  545. $slist[$k][] = $v['content'];
  546. $slist[$k][] = $v['create_time'];
  547. }
  548. }
  549. }elseif ($mode == 2 || $mode == 4){
  550. foreach ($data as $k=>$v){
  551. $status = Db::name('order_mode')->where('id',$v['order_mode'])->value('out_content');
  552. if($v['order_mode'] == 1){
  553. $slist[$k][] = '<span style="color:#FFDA0A;">新订单</span>';
  554. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['dep'].'</span>';
  555. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['content'].'</span>';
  556. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['create_time'].'</span>';
  557. }else if($v['order_mode'] == 4){
  558. $slist[$k][] = '<span style="color:#0FC2DD;">进行中</span>';
  559. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['dep'].'</span>';
  560. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['content'].'</span>';
  561. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['create_time'].'</span>';
  562. }else{
  563. $slist[$k][] = $status;
  564. $slist[$k][] = $v['dep'];
  565. $slist[$k][] = $v['content'];
  566. $slist[$k][] = $v['create_time'];
  567. }
  568. }
  569. }elseif ($mode == 3){
  570. foreach ($data as $k=>$v){
  571. $status = Db::name('order_mode')->where('id',$v['order_mode'])->value('out_content');
  572. if($v['order_mode'] == 1){
  573. $slist[$k][] = '<span style="color:#FFDA0A;">新订单</span>';
  574. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['cate_title'].'</span>';
  575. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['start'].'</span>';
  576. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['end'].'</span>';
  577. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['xq'].'</span>';
  578. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['un'].'</span>';
  579. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['send'].'</span>';
  580. $slist[$k][] = '<span style="color:#FFDA0A;">'.$v['confirm'].'</span>';
  581. }else if($v['order_mode'] == 4){
  582. $slist[$k][] = '<span style="color:#0FC2DD;">进行中</span>';
  583. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['cate_title'].'</span>';
  584. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['start'].'</span>';
  585. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['end'].'</span>';
  586. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['xq'].'</span>';
  587. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['un'].'</span>';
  588. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['send'].'</span>';
  589. $slist[$k][] = '<span style="color:#0FC2DD;">'.$v['confirm'].'</span>';
  590. }else{
  591. $slist[$k][] = $status;
  592. $slist[$k][] = $v['cate_title'];
  593. $slist[$k][] = $v['start'];
  594. $slist[$k][] = $v['end'];
  595. $slist[$k][] = $v['xq'];
  596. $slist[$k][] = $v['un'];
  597. $slist[$k][] = $v['send'];
  598. $slist[$k][] = $v['confirm'];
  599. }
  600. }
  601. }
  602. HelpHander::success(['data'=>$slist,'header'=>$header]);
  603. }
  604. }