From 0ca3ac9fb5c7e34f9822372c6e0f1efc0fe4cbf6 Mon Sep 17 00:00:00 2001 From: dengbw Date: Tue, 18 Jan 2022 11:26:56 +0800 Subject: [PATCH] admin_transfer_118 --- admin/controllers/items/Transfer.php | 131 +++++++++++++++---------- admin/views/items/transfer/get_add.php | 93 +++++++++++++++--- 2 files changed, 160 insertions(+), 64 deletions(-) diff --git a/admin/controllers/items/Transfer.php b/admin/controllers/items/Transfer.php index 741c1cc7..b119ce9a 100644 --- a/admin/controllers/items/Transfer.php +++ b/admin/controllers/items/Transfer.php @@ -364,24 +364,7 @@ class Transfer extends HD_Controller 'feesTypeAry' => $this->mdTransfer->feesTypeAry(), 'feesBizList' => [], 'uidTypeAry' => $this->mdTransfer->uidTypeAry()]; $info = ['id' => 0, 'status' => 0, 'item_id' => 0, 'arti_id' => [], 'out_bak' => 0, 'in_bak' => 0, 'trailer_fees' => '', 'fees_city' => '', 'trailer_fees' => 0, 'fees_type' => 1, 'fees_biz_id' => '', 'transport' => ['name' => '', 'mobile' => '', 'cardid' => ''], 'reason' => '']; - //常用运输人 - $transports = []; - $cache = &load_cache('redis'); - $cache_transports = $cache->get($this->cacheKeyTransports); - if ($cache_transports) { - $time = date('Y-m-d', strtotime("-1 month")); - foreach ($cache_transports as $key => $value) { - if ($value['name'] && $value['time'] >= $time) {//小于1个月过期不显示 - $transports[] = $value; - } - } - } - $cache->save($this->cacheKeyTransports, $transports); - if ($transports) {//按最近日期排序 - $timeKey = array_column($transports, 'time'); - array_multisort($timeKey, SORT_DESC, $transports); - } - $this->data['transports'] = $transports;//常用运输人员 + $this->data['transports'] = $this->transports(['type' => 'get']);//运输人员 $this->data['showInfo'] = $showInfo; } $this->data['info'] = $info; @@ -442,24 +425,7 @@ class Transfer extends HD_Controller } } $showInfo['takeCar'] = $takeCar; - //常用运输人 - $transports = []; - $cache = &load_cache('redis'); - $cache_transports = $cache->get($this->cacheKeyTransports); - if ($cache_transports) {//按最近日期排序 - $time = date('Y-m-d', strtotime("-1 month")); - foreach ($cache_transports as $key => $value) { - if ($value['name'] && $value['time'] >= $time) {//小于1个月过期不显示 - $transports[] = $value; - } - } - } - $cache->save($this->cacheKeyTransports, $transports); - if ($transports) {//按最近日期排序 - $timeKey = array_column($transports, 'time'); - array_multisort($timeKey, SORT_DESC, $transports); - } - $this->data['transports'] = $transports;//常用运输人员 + $this->data['transports'] = $this->transports(['type' => 'get']);//运输人员 $this->data['showInfo'] = $showInfo; $this->data['info'] = $info; $this->data['edit_url'] = '/items/transfer/edit_info'; @@ -590,22 +556,8 @@ class Transfer extends HD_Controller //常用运输人员 $transport_name = $info['transport']['name'] ? trim($info['transport']['name']) : ''; $transport_mobile = $info['transport']['mobile'] ? trim($info['transport']['mobile']) : ''; - if ($transport_name && $transport_mobile) { - $cache = &load_cache('redis'); - $cache_transports = $cache->get($this->cacheKeyTransports); - $addTransports = true; - foreach ($cache_transports as $key => $value) { - if ($value['mobile'] == $transport_mobile) { - $value['time'] = date('Y-m-d'); - $addTransports = false; - } - } - if ($addTransports) { - $info['transport']['time'] = date('Y-m-d'); - $cache_transports[] = $info['transport']; - } - $cache->save($this->cacheKeyTransports, $cache_transports); - } + $transport_cardid = $info['transport']['cardid'] ? trim($info['transport']['cardid']) : ''; + $this->transports(['name' => $transport_name, 'mobile' => $transport_mobile, 'cardid' => $transport_cardid]); if ($info['status'] == -1) { return $this->show_json(SYS_CODE_SUCCESS, '保存成功', "/items/transfer"); } @@ -775,6 +727,19 @@ class Transfer extends HD_Controller return $this->show_json(SYS_CODE_SUCCESS, '删除成功!'); } + /** + * Notes:运输人员操作 + * Created on: 2022/1/18 11:24 + * Created by: dengbw + */ + public function get_transport() + { + $params = $this->input->get(); + $data = $this->transports($params); + print_r($data); + exit; + } + public function batch() { // TODO: Implement batch() method. @@ -824,6 +789,68 @@ class Transfer extends HD_Controller $this->excel->out_csv($data, $indexs, $fileName . "_" . date('YmdHis')); } + private function transports($params) + { + $transports = []; + $cache = &load_cache('redis'); + $cache_transports = $cache->get($this->cacheKeyTransports); + if ($params['type'] == 'all') {//所有运输人员 + return $cache_transports; + } else if ($params['type'] == 'get') {//排序后的运输人员 + $saveTransports = false; + if ($cache_transports) {//按最近日期排序 + foreach ($cache_transports as $key => $value) { + if ($value['name']) { + $transports[] = $value; + } else { + $saveTransports = true; + } + } + } + $saveTransports && $cache->save($this->cacheKeyTransports, $transports);//名字有空重新更新 + if ($transports) {//按最近日期排序 + $timeKey = array_column($transports, 'time'); + array_multisort($timeKey, SORT_DESC, $transports); + } + return $transports; + } else if ($params['type'] == 'del') { + if ($cache_transports) { + if (strlen($params['id'])) {//删除指定id + unset($cache_transports[$params['id']]); + $transports = $cache_transports; + } else {//删除指定的名字 + foreach ($cache_transports as $key => $value) { + if ($value['name'] == $params['name']) { + } else { + $transports[] = $value; + } + } + } + $cache->save($this->cacheKeyTransports, $transports); + } + return $transports; + } else {//新增/更新运输人员 + if (!$params['name'] || !$params['mobile'] || !$params['cardid']) { + return 0; + } + $addTransports = true; + foreach ($cache_transports as $key => $value) { + if ($value['cardid'] == $params['cardid']) {//身份证一样更新数据 + $cache_transports[$key]['name'] = $params['name']; + $cache_transports[$key]['mobile'] = $params['mobile']; + $cache_transports[$key]['time'] = date('Y-m-d'); + $addTransports = false; + } + } + if ($addTransports) {//新增 + $cache_transports[] = ['name' => $params['name'], 'mobile' => $params['mobile'] + , 'cardid' => $params['cardid'], 'time' => date('Y-m-d')]; + } + $cache->save($this->cacheKeyTransports, $cache_transports); + return 1; + } + } + /** * Notes:获取商品信息 * Created on: 2021/12/9 10:47 diff --git a/admin/views/items/transfer/get_add.php b/admin/views/items/transfer/get_add.php index 72a17a90..4bb567b3 100644 --- a/admin/views/items/transfer/get_add.php +++ b/admin/views/items/transfer/get_add.php @@ -12,7 +12,7 @@ -
+
@@ -37,7 +37,8 @@
-
+ +
调拨信息
@@ -312,10 +313,24 @@
+
- +
+ + +
+ +
+
@@ -324,13 +339,6 @@
-
- 常用运输人员: - -