From 78ba6991792bb5a79437432ca65eb352dc337feb Mon Sep 17 00:00:00 2001 From: xu Date: Thu, 14 Nov 2019 10:56:41 +0800 Subject: [PATCH] app-ht 1. F筛选条件添加过滤空格 2. A OTA 和APP升级统计日志添加删除功能 3. F 上传文件包添加说明告知上传的时间较长 --- app-ht/controllers/BaseController.php | 13 +++++++++++++ app-ht/modules/datas/controllers/DeviceController.php | 8 ++++++++ app-ht/modules/datas/controllers/DeviceStatsController.php | 23 +++++++++++------------ app-ht/modules/datas/controllers/UpgradeLogController.php | 140 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------- app-ht/modules/datas/views/device-stats/export.php | 4 ++-- app-ht/modules/datas/views/device-stats/index.php | 4 ++-- app-ht/modules/datas/views/upgrade-log/index.php | 75 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------- app-ht/modules/device/controllers/DeviceController.php | 15 ++++++++------- app-ht/modules/upgrade/controllers/UpgradeController.php | 2 ++ app-ht/modules/upgrade/views/upgrade/create.php | 4 ++-- app-ht/modules/upgrade/views/upgrade/edit.php | 2 +- domain/upgrade/UpgradeLog.php | 15 ++++++++++++++- 12 files changed, 241 insertions(+), 64 deletions(-) diff --git a/app-ht/controllers/BaseController.php b/app-ht/controllers/BaseController.php index afd1ea0..cf0129d 100644 --- a/app-ht/controllers/BaseController.php +++ b/app-ht/controllers/BaseController.php @@ -103,4 +103,17 @@ class BaseController extends Controller mkdir($downloadFilePath, 0777, true); } } + + /** + * 过滤空格 + * @param $var + * @return mixed + */ + public function filterVar($var) + { + $var = str_replace(" ", "", $var); + $var = str_replace("\t", "", $var); + + return $var; + } } diff --git a/app-ht/modules/datas/controllers/DeviceController.php b/app-ht/modules/datas/controllers/DeviceController.php index 5d026cd..6947441 100644 --- a/app-ht/modules/datas/controllers/DeviceController.php +++ b/app-ht/modules/datas/controllers/DeviceController.php @@ -10,6 +10,7 @@ use app\ht\controllers\BaseController; use domain\device\CreateBatchRepository; use domain\device\DeviceRepository; use domain\device\DeviceStatus; +use function strtotime; /** * 机器状态码管理 @@ -41,6 +42,13 @@ class DeviceController extends BaseController $modelName = $request->get('model_name'); $productionName = $request->get('production_name'); $batchName = $request->get('batch_no'); + + $manufactureName = $this->filterVar($manufactureName); + $projectName = $this->filterVar($projectName); + $modelName = $this->filterVar($modelName); + $productionName = $this->filterVar($productionName); + $batchName = $this->filterVar($batchName); + $gets = [ 'manufacture_name' => $manufactureName, 'project_name' => $projectName, diff --git a/app-ht/modules/datas/controllers/DeviceStatsController.php b/app-ht/modules/datas/controllers/DeviceStatsController.php index 68e056f..022c60a 100644 --- a/app-ht/modules/datas/controllers/DeviceStatsController.php +++ b/app-ht/modules/datas/controllers/DeviceStatsController.php @@ -2,13 +2,12 @@ namespace app\ht\modules\datas\controllers; -use domain\device\DeviceStatsRepository; use Yii; use yii\data\Pagination; -use domain\upgrade\UpgradeLogRepository; -use domain\upgrade\UpgradeStatus; use app\ht\controllers\BaseController; +use domain\device\DeviceStatsRepository; +use function strtotime; /** * 机器状态码管理 * Class DeviceStatsController @@ -36,13 +35,13 @@ class DeviceStatsController extends BaseController $request = Yii::$app->request; $createTime = $request->get('createTime'); $endTime = $request->get('endTime'); - $software_version = $request->get('software_version'); - $hardware_version = $request->get('hardware_version'); - $manufacture_name = $request->get('manufacture_name'); - $model_name = $request->get('model_name'); - $device_id = $request->get('device_id'); - $barcode = $request->get('barcode'); - $city = $request->get('city'); + $software_version = $this->filterVar($request->get('software_version')); + $hardware_version = $this->filterVar($request->get('hardware_version')); + $manufacture_name = $this->filterVar($request->get('manufacture_name')); + $model_name = $this->filterVar($request->get('model_name')); + $device_id = $this->filterVar($request->get('device_id')); + $barcode = $this->filterVar($request->get('barcode')); + $city = $this->filterVar($request->get('city')); $gets = [ 'createTime' => $createTime, @@ -59,11 +58,11 @@ class DeviceStatsController extends BaseController $where = ['and']; if ($createTime) { $createTime = strtotime($createTime); - $where[] = ['>=', 'ds.created_at', $createTime]; + $where[] = ['>=', 'ds.timestamp', $createTime]; } if ($endTime) { $endTime = strtotime($endTime) + 86400; - $where[] = ['<=', 'ds.created_at', $endTime]; + $where[] = ['<=', 'ds.timestamp', $endTime]; } if ($software_version) { diff --git a/app-ht/modules/datas/controllers/UpgradeLogController.php b/app-ht/modules/datas/controllers/UpgradeLogController.php index 7a6607f..b6780e1 100644 --- a/app-ht/modules/datas/controllers/UpgradeLogController.php +++ b/app-ht/modules/datas/controllers/UpgradeLogController.php @@ -4,9 +4,13 @@ namespace app\ht\modules\datas\controllers; use Yii; use yii\data\Pagination; +use app\ht\controllers\BaseController; use domain\upgrade\UpgradeLogRepository; use domain\upgrade\UpgradeStatus; -use app\ht\controllers\BaseController; +use domain\upgrade\UpgradeLog; +use stdClass; +use function count; +use function strtotime; /** * 版本日志管理 @@ -32,19 +36,47 @@ class UpgradeLogController extends BaseController */ protected function dataList($type = '') { + $searchCondition = $this->searchWhere(); + $where = $searchCondition[0]; + $gets = $searchCondition[1]; + if ($type == 0) { + $pageList = UpgradeLogRepository::getPageList($where, 0 , 0); + $pages = null; + } else { + $pageSize = 20; + $pages = new Pagination(['totalCount' => UpgradeLogRepository::getPageCount($where), 'pageSize' => $pageSize]); + $pageList = UpgradeLogRepository::getPageList($where, $pages->offset, $pages->limit); + } + + /** + * 数据整理 + */ + return [ + 'listdata' => $pageList, + 'pages' => $pages, + 'gets' => $gets + ]; + } + + private function searchWhere($requestType = 1) + { $request = Yii::$app->request; - $creatTime = $request->get('creatTime'); - $endTime = $request->get('endTime'); - $status = $request->get('status'); - $current_version = $request->get('current_version'); - $target_version = $request->get('target_version'); - $manufacture_name = $request->get('manufacture_name'); - $device_no = $request->get('device_no'); - $barcode = $request->get('barcode'); - $error_code = $request->get('error_code'); - $device_device_id = $request->get('device_device_id'); - $package_name = $request->get('package_name'); - $dataType = !empty($request->get('type')) ? $request->get('type') : UpgradeStatus::TYPE_APP; + $reqName = 'get'; + if (2 == $requestType) { + $reqName = 'post'; + } + $creatTime = $request->$reqName('creatTime'); + $endTime = $request->$reqName('endTime'); + $status = $request->$reqName('status'); + $current_version = $this->filterVar($request->$reqName('current_version')); + $target_version = $this->filterVar($request->$reqName('target_version')); + $manufacture_name = $this->filterVar($request->$reqName('manufacture_name')); + $device_no = $this->filterVar($request->$reqName('device_no')); + $barcode = $this->filterVar($request->$reqName('barcode')); + $error_code = $request->$reqName('error_code'); + $device_device_id = $request->$reqName('device_device_id'); + $package_name = $this->filterVar($request->$reqName('package_name')); + $dataType = !empty($request->$reqName('type')) ? $request->$reqName('type') : UpgradeStatus::TYPE_APP; $gets = [ 'creatTime' => $creatTime, @@ -100,23 +132,8 @@ class UpgradeLogController extends BaseController if ($dataType) { $where[] = ['=', 'ul.type', $dataType]; } - if ($type == 0) { - $pageList = UpgradeLogRepository::getPageList($where, 0 , 0); - $pages = null; - } else { - $pageSize = 20; - $pages = new Pagination(['totalCount' => UpgradeLogRepository::getPageCount($where), 'pageSize' => $pageSize]); - $pageList = UpgradeLogRepository::getPageList($where, $pages->offset, $pages->limit); - } - /** - * 数据整理 - */ - return [ - 'listdata' => $pageList, - 'pages' => $pages, - 'gets' => $gets - ]; + return [$where, $gets]; } /** @@ -128,4 +145,69 @@ class UpgradeLogController extends BaseController $params = $this->dataList(0); return $this->renderPartial('export', $params); } + + /** + * @return string + */ + public function actionDelSearch() + { + $request = Yii::$app->request; + $e = new stdClass(); + $e->success = false; + $e->message = '失败'; + + $searchCondition = $this->searchWhere(2); + $where = $searchCondition[0]; + + $post = $request->post(); + if ((1 == count($post) && isset($post['type'])) || empty($post)) { + $e->message = '请录入搜索条件'; + return $this->renderJson($e); + } + + $upgrades = UpgradeLogRepository::getPageList($where, 0 , 0); + $ids = []; + foreach($upgrades as $k => $v) { + if ($v) { + $ids[] = $v['id']; + } + } + if (!$ids) { + $e->message = '没有满足条件的记录'; + return $this->renderJson($e); + } + $result = UpgradeLog::deleteAll(['id' => $ids]); + if ($result) { + $e->message = '成功删除'.count($ids).'记录'; + $e->success = true; + return $this->renderJson($e); + } else { + $e->message = '删除失败'; + return $this->renderJson($e); + } + } + + /** + * @return string + */ + public function actionDelItem() + { + $request = Yii::$app->request; + $e = new stdClass(); + $e->success = false; + $e->message = '失败'; + $id = $request->post('id'); + if (empty($id)) { + $e->message = 'ID为空,删除失败'; + return $this->renderJson($e); + } + if (UpgradeLog::delete($id)) { + $e->message = '删除成功'; + $e->success = true; + return $this->renderJson($e); + } else { + $e->message = 'ID为空,删除失败'; + return $this->renderJson($e); + } + } } \ No newline at end of file diff --git a/app-ht/modules/datas/views/device-stats/export.php b/app-ht/modules/datas/views/device-stats/export.php index b2c0719..3538220 100644 --- a/app-ht/modules/datas/views/device-stats/export.php +++ b/app-ht/modules/datas/views/device-stats/export.php @@ -28,8 +28,8 @@ $cnt = 0; 设备ID Barcode - 硬件版本 软件版本 + 硬件版本 厂商 设备型号 所在城市 @@ -48,7 +48,7 @@ $cnt = 0; - + params['breadcrumbs'][] = '机器状态统计'; 设备ID Barcode - 硬件版本 软件版本 + 硬件版本 厂商 设备型号 所在城市 @@ -107,7 +107,7 @@ $this->params['breadcrumbs'][] = '机器状态统计'; - + diff --git a/app-ht/modules/datas/views/upgrade-log/index.php b/app-ht/modules/datas/views/upgrade-log/index.php index 974e989..00f88b8 100644 --- a/app-ht/modules/datas/views/upgrade-log/index.php +++ b/app-ht/modules/datas/views/upgrade-log/index.php @@ -103,16 +103,17 @@ $this->params['breadcrumbs'][] = $this->title; - + - - - - + + + + - - + + + @@ -130,6 +131,7 @@ $this->params['breadcrumbs'][] = $this->title; + @@ -141,6 +143,9 @@ $this->params['breadcrumbs'][] = $this->title;
设备ID设备ID 包名 当前版本目标版本厂商机器型号Barcode目标版本厂商机器型号Barcode 升级状态升级错误码时间升级错误码时间操作
删除
+
+ +
\ No newline at end of file diff --git a/app-ht/modules/device/controllers/DeviceController.php b/app-ht/modules/device/controllers/DeviceController.php index 4757ed4..6dd06de 100644 --- a/app-ht/modules/device/controllers/DeviceController.php +++ b/app-ht/modules/device/controllers/DeviceController.php @@ -58,13 +58,13 @@ class DeviceController extends BaseController private function dataList($type, $delete = 0) { $request = Yii::$app->request; - $serialNo = $request->get('serial_no'); - $mac = $request->get('mac'); - $project = $request->get('project'); - $model = $request->get('model'); - $production = $request->get('production'); - $manufacture = $request->get('manufacture'); - $deviceId = $request->get('device_id'); + $serialNo = $this->filterVar($request->get('serial_no')); + $mac = $this->filterVar($request->get('mac')); + $project = $this->filterVar($request->get('project')); + $model = $this->filterVar($request->get('model')); + $production = $this->filterVar($request->get('production')); + $manufacture = $this->filterVar($request->get('manufacture')); + $deviceId = $this->filterVar($request->get('device_id')); $status = $request->get('status'); $startApplyAt = $request->get('start_apply_at'); @@ -81,6 +81,7 @@ class DeviceController extends BaseController 'and', ['=','a.is_delete', $delete] ]; + if (!empty($serialNo)) { $where[] = ['like', 'a.serial_no', $serialNo]; } diff --git a/app-ht/modules/upgrade/controllers/UpgradeController.php b/app-ht/modules/upgrade/controllers/UpgradeController.php index 0567b42..4f312fe 100644 --- a/app-ht/modules/upgrade/controllers/UpgradeController.php +++ b/app-ht/modules/upgrade/controllers/UpgradeController.php @@ -553,8 +553,10 @@ class UpgradeController extends BaseController ]; // 上传OSS + $fileService = new FileService(); $fileService->add($uploadPath, $savePath); + // 删除服务器传成功的文件 //@unlink($uploadPath); diff --git a/app-ht/modules/upgrade/views/upgrade/create.php b/app-ht/modules/upgrade/views/upgrade/create.php index ee89de8..4262a6b 100644 --- a/app-ht/modules/upgrade/views/upgrade/create.php +++ b/app-ht/modules/upgrade/views/upgrade/create.php @@ -219,7 +219,7 @@ $this->params['breadcrumbs'][] = $this->title; '' ); }); // 文件上传过程中创建进度条实时显示。 - uploader.on( 'uploadProgress', function( file, percentage ) { + uploader.on('uploadProgress', function( file, percentage ) { var $li = $( '#'+file.id ), $percent = $li.find('.progress .progress-bar'); @@ -231,7 +231,7 @@ $this->params['breadcrumbs'][] = $this->title; '').appendTo( $li ).find('.progress-bar'); } - $li.find('p.state').text('上传中'); + $li.find('p.state').text('上传中, 文件会先上传到缓存再传到远程服务器,600M大概是12分钟左右,请耐心等待'); $percent.css( 'width', percentage * 100 + '%' ); }); diff --git a/app-ht/modules/upgrade/views/upgrade/edit.php b/app-ht/modules/upgrade/views/upgrade/edit.php index 1558828..f491ed5 100644 --- a/app-ht/modules/upgrade/views/upgrade/edit.php +++ b/app-ht/modules/upgrade/views/upgrade/edit.php @@ -222,7 +222,7 @@ $this->params['breadcrumbs'][] = $this->title; '').appendTo( $li ).find('.progress-bar'); } - $li.find('p.state').text('上传中'); + $li.find('p.state').text('上传中, 文件会先上传到缓存再传到远程服务器,600M大概是12分钟左右,请耐心等待'); $percent.css( 'width', percentage * 100 + '%' ); }); diff --git a/domain/upgrade/UpgradeLog.php b/domain/upgrade/UpgradeLog.php index d31551c..165e73f 100644 --- a/domain/upgrade/UpgradeLog.php +++ b/domain/upgrade/UpgradeLog.php @@ -126,6 +126,19 @@ class UpgradeLog return false; } - return UpgradeLogModel::deleteAll(["id" => $id]); + return $upgradeModel->delete(); + } + + /** + * @param $condition + * @return bool|int + */ + public static function deleteAll($condition) + { + if (empty($condition)) { + return false; + } + + return UpgradeLogModel::deleteAll($condition); } } \ No newline at end of file -- libgit2 0.21.0