Loading src/Command/MakeModelCommand.php +8 −4 Original line number Diff line number Diff line Loading @@ -113,6 +113,10 @@ class MakeModelCommand extends HyperfCommand if ($v == 'migrations') { continue; } if (!$this->builder->hasTable($v)) { $this->info("表" . $v . "不存在!"); continue; } $this->tableIndex = $k; $this->input->setArgument("name", $v); $this->table = $v; Loading Loading @@ -495,11 +499,11 @@ class MakeModelCommand extends HyperfCommand $list .= "\t\t\$list = \$this->model->where(function (\$q) use (\$conditions) {\n"; foreach ($info['fields'] as $v) { if (Str::endsWith($v['column_name'], "_id")) { $list .= "\t\t\tif(\$conditions['" . $v['column_name'] . "'] !== '') {\n"; $list .= "\t\t\tif(isset(\$conditions['" . $v['column_name'] . "']) && \$conditions['" . $v['column_name'] . "'] !== '') {\n"; $list .= "\t\t\t\t\$q->where('" . $v['column_name'] . "', \$conditions['" . $v['column_name'] . "']);\n"; $list .= "\t\t\t}\n"; } else if ($v['column_name'] == 'name' || Str::contains($v['column_name'], "_name")) { $list .= "\t\t\tif(\$conditions['keyword'] !== '') {\n"; $list .= "\t\t\tif(isset(\$conditions['" . $v['column_name'] . "']) && \$conditions['keyword'] !== '') {\n"; $list .= "\t\t\t\t\$q->where('" . $v['column_name'] . "', \$conditions['keyword']);\n"; $list .= "\t\t\t}\n"; } Loading Loading @@ -668,7 +672,7 @@ class MakeModelCommand extends HyperfCommand return true; } $info = $this->currentTableStructure; $tableComment = $info['table_comment'] ? $info['table_comment'] : $table; $tableComment = (isset($info['table_comment']) && $info['table_comment']) ? $info['table_comment'] : $table; $content .= "\n\t// " . $tableComment; $content .= "\n\tRouter::addGroup('" . $group . "', function () {"; $content .= "\n\t\tRouter::get('', 'App\Controller\\" . $modelClass . "Controller@index');"; Loading Loading @@ -1192,7 +1196,7 @@ class MakeModelCommand extends HyperfCommand } $attributes = implode("\n", $attributes); $tableComment = ""; if ($info['table_comment']) { if (isset($info['table_comment']) && $info['table_comment']) { $tableComment = 'Db::statement("alter table `' . $table . '` comment \'' . $info['table_comment'] . '\'");'; } $patterns = ["%ClassName%", '%tablename%', '%attributes%', '%tableComment%']; Loading src/Exceptions/Handler/AppExceptionHandler.php +1 −1 Original line number Diff line number Diff line Loading @@ -38,7 +38,7 @@ class AppExceptionHandler extends ExceptionHandler $this->stdoutLogger->error($msg); $this->logger->error($msg); $this->stdoutLogger->error($throwable->getTraceAsString()); return $response->withHeader("Server", "H5Q-OA")->withStatus(500)->withBody(new SwooleStream($msg)); return $response->withStatus(500)->withBody(new SwooleStream($msg)); } public function isValid(Throwable $throwable): bool Loading src/Message/MessageCenter.php +1 −1 Original line number Diff line number Diff line Loading @@ -43,7 +43,7 @@ class MessageCenter $options = [ 'base_uri' => $this->config->get('message.center.domain') . '/api/', 'handler' => HandlerStack::create(new CoroutineHandler()), 'timeout' => 5, 'timeout' => 60, ]; $proxy = $this->config->get('message.center.proxy'); if ($proxy) { Loading src/Service/Interfaces/MaterialServiceInterface.php +4 −64 Original line number Diff line number Diff line Loading @@ -28,71 +28,11 @@ interface MaterialServiceInterface public function getByIdList(array $idList, array $columns = ['*']): array; /** * 通过原料品名id列表获取原料数组 * @param int $materialNameId 原料品名id * @param array $relations 原料的关联关系,支持["material_name","color"] * @param array $columns 原料表的字段,默认显示全部 * @return array */ public function getByMaterialNameId($materialNameId, array $relations = [], array $columns = ['*']): array; /** * 通过原料列表 * @param int $page 第几页数据,默认:1 * @param array $relations 原料的关联关系,支持["material_name","color"] * @param int $pageSize 每页条数默认:15,最大支持100 * @param array $columns 原料表的字段,默认显示全部 * @return array */ public function list($page = 1, array $relations = [], $pageSize = 15, array $columns = ['*']): array; /** * 获取某个原料品名 * @param int $materialNameId 原料品名编号 * @param array $relations 原料的关联关系,支持["materials","material_name_category"] * @return array */ public function getMaterialName($materialNameId, array $relations = []): array; /** * 通过id列表获取原料品名数组 * @param array $idList 原料品名id的列表 * @param array $relations 原料品名的关联关系,支持["materials","material_name_category"] * @param array $columns 原料品名表的字段,默认显示全部 * 通过内部code列表获取原料列表 * @param array $codeList * @param array $columns * @return array */ public function getMaterialNameByIdList(array $idList, array $relations = [], array $columns = ['*']): array; public function getListByCodeList(array $codeList, array $columns = ['id']); /** * 通过原料类型id列表获取原料品名数组 * @param int $materialNameCategoryId 原料类型id * @param array $relations 原料的关联关系,支持["material_name_category", "materials"] * @param array $columns 原料品名表的字段,默认显示全部 * @return array */ public function getMaterialNameByMaterialNameCategoryId($materialNameCategoryId, array $relations = [], array $columns = ['*']): array; /** * 通过原料品名列表 * @param int $page 第几页数据,默认:1 * @param array $relations 原料品名的关联关系,支持 ["materials","material_name_category"] * @param int $pageSize 每页条数默认:15,最大支持100 * @param array $columns 原料品名表的字段,默认显示全部 * @return array */ public function getMaterialNamelist($page = 1, array $relations = [], $pageSize = 15, array $columns = ['*']): array; /** 根据id获取原料类型 * @param int $materialNameCategoryId 原料类型编号 * @param array $relations 原料类型的关联关系,支持 ["material_name"] * @return array */ public function getMaterialNameCategoryById($materialNameCategoryId, array $relations = []): array; /** * 获取全部原料类型 * @param array $relations 原料类型的关联关系,支持 ["material_name"] * @return array */ public function materialNameCategories(array $relations = []): array; } src/functions.php +24 −1 Original line number Diff line number Diff line Loading @@ -7,7 +7,6 @@ use Hyperf\Redis\Redis; use Hyperf\Utils\ApplicationContext; use Psr\EventDispatcher\EventDispatcherInterface; /** * 容器实例 */ Loading Loading @@ -414,3 +413,27 @@ if (!function_exists('get_week_start_and_end')) { return array("week_start" => $week_start, "week_end" => $week_end); } } if (!function_exists('empty_string_2_null')) { /** * 空字符串转NULL * @param array $arr * @return array */ function empty_string_2_null(array $arr) { if (!empty($arr)) { foreach ($arr as $key => $value) { if (is_array($value)) { $arr[$key] = empty_string_2_null($value); } else { if ($value === '') { $arr[$key] = null; } } } } return $arr; } } Loading
src/Command/MakeModelCommand.php +8 −4 Original line number Diff line number Diff line Loading @@ -113,6 +113,10 @@ class MakeModelCommand extends HyperfCommand if ($v == 'migrations') { continue; } if (!$this->builder->hasTable($v)) { $this->info("表" . $v . "不存在!"); continue; } $this->tableIndex = $k; $this->input->setArgument("name", $v); $this->table = $v; Loading Loading @@ -495,11 +499,11 @@ class MakeModelCommand extends HyperfCommand $list .= "\t\t\$list = \$this->model->where(function (\$q) use (\$conditions) {\n"; foreach ($info['fields'] as $v) { if (Str::endsWith($v['column_name'], "_id")) { $list .= "\t\t\tif(\$conditions['" . $v['column_name'] . "'] !== '') {\n"; $list .= "\t\t\tif(isset(\$conditions['" . $v['column_name'] . "']) && \$conditions['" . $v['column_name'] . "'] !== '') {\n"; $list .= "\t\t\t\t\$q->where('" . $v['column_name'] . "', \$conditions['" . $v['column_name'] . "']);\n"; $list .= "\t\t\t}\n"; } else if ($v['column_name'] == 'name' || Str::contains($v['column_name'], "_name")) { $list .= "\t\t\tif(\$conditions['keyword'] !== '') {\n"; $list .= "\t\t\tif(isset(\$conditions['" . $v['column_name'] . "']) && \$conditions['keyword'] !== '') {\n"; $list .= "\t\t\t\t\$q->where('" . $v['column_name'] . "', \$conditions['keyword']);\n"; $list .= "\t\t\t}\n"; } Loading Loading @@ -668,7 +672,7 @@ class MakeModelCommand extends HyperfCommand return true; } $info = $this->currentTableStructure; $tableComment = $info['table_comment'] ? $info['table_comment'] : $table; $tableComment = (isset($info['table_comment']) && $info['table_comment']) ? $info['table_comment'] : $table; $content .= "\n\t// " . $tableComment; $content .= "\n\tRouter::addGroup('" . $group . "', function () {"; $content .= "\n\t\tRouter::get('', 'App\Controller\\" . $modelClass . "Controller@index');"; Loading Loading @@ -1192,7 +1196,7 @@ class MakeModelCommand extends HyperfCommand } $attributes = implode("\n", $attributes); $tableComment = ""; if ($info['table_comment']) { if (isset($info['table_comment']) && $info['table_comment']) { $tableComment = 'Db::statement("alter table `' . $table . '` comment \'' . $info['table_comment'] . '\'");'; } $patterns = ["%ClassName%", '%tablename%', '%attributes%', '%tableComment%']; Loading
src/Exceptions/Handler/AppExceptionHandler.php +1 −1 Original line number Diff line number Diff line Loading @@ -38,7 +38,7 @@ class AppExceptionHandler extends ExceptionHandler $this->stdoutLogger->error($msg); $this->logger->error($msg); $this->stdoutLogger->error($throwable->getTraceAsString()); return $response->withHeader("Server", "H5Q-OA")->withStatus(500)->withBody(new SwooleStream($msg)); return $response->withStatus(500)->withBody(new SwooleStream($msg)); } public function isValid(Throwable $throwable): bool Loading
src/Message/MessageCenter.php +1 −1 Original line number Diff line number Diff line Loading @@ -43,7 +43,7 @@ class MessageCenter $options = [ 'base_uri' => $this->config->get('message.center.domain') . '/api/', 'handler' => HandlerStack::create(new CoroutineHandler()), 'timeout' => 5, 'timeout' => 60, ]; $proxy = $this->config->get('message.center.proxy'); if ($proxy) { Loading
src/Service/Interfaces/MaterialServiceInterface.php +4 −64 Original line number Diff line number Diff line Loading @@ -28,71 +28,11 @@ interface MaterialServiceInterface public function getByIdList(array $idList, array $columns = ['*']): array; /** * 通过原料品名id列表获取原料数组 * @param int $materialNameId 原料品名id * @param array $relations 原料的关联关系,支持["material_name","color"] * @param array $columns 原料表的字段,默认显示全部 * @return array */ public function getByMaterialNameId($materialNameId, array $relations = [], array $columns = ['*']): array; /** * 通过原料列表 * @param int $page 第几页数据,默认:1 * @param array $relations 原料的关联关系,支持["material_name","color"] * @param int $pageSize 每页条数默认:15,最大支持100 * @param array $columns 原料表的字段,默认显示全部 * @return array */ public function list($page = 1, array $relations = [], $pageSize = 15, array $columns = ['*']): array; /** * 获取某个原料品名 * @param int $materialNameId 原料品名编号 * @param array $relations 原料的关联关系,支持["materials","material_name_category"] * @return array */ public function getMaterialName($materialNameId, array $relations = []): array; /** * 通过id列表获取原料品名数组 * @param array $idList 原料品名id的列表 * @param array $relations 原料品名的关联关系,支持["materials","material_name_category"] * @param array $columns 原料品名表的字段,默认显示全部 * 通过内部code列表获取原料列表 * @param array $codeList * @param array $columns * @return array */ public function getMaterialNameByIdList(array $idList, array $relations = [], array $columns = ['*']): array; public function getListByCodeList(array $codeList, array $columns = ['id']); /** * 通过原料类型id列表获取原料品名数组 * @param int $materialNameCategoryId 原料类型id * @param array $relations 原料的关联关系,支持["material_name_category", "materials"] * @param array $columns 原料品名表的字段,默认显示全部 * @return array */ public function getMaterialNameByMaterialNameCategoryId($materialNameCategoryId, array $relations = [], array $columns = ['*']): array; /** * 通过原料品名列表 * @param int $page 第几页数据,默认:1 * @param array $relations 原料品名的关联关系,支持 ["materials","material_name_category"] * @param int $pageSize 每页条数默认:15,最大支持100 * @param array $columns 原料品名表的字段,默认显示全部 * @return array */ public function getMaterialNamelist($page = 1, array $relations = [], $pageSize = 15, array $columns = ['*']): array; /** 根据id获取原料类型 * @param int $materialNameCategoryId 原料类型编号 * @param array $relations 原料类型的关联关系,支持 ["material_name"] * @return array */ public function getMaterialNameCategoryById($materialNameCategoryId, array $relations = []): array; /** * 获取全部原料类型 * @param array $relations 原料类型的关联关系,支持 ["material_name"] * @return array */ public function materialNameCategories(array $relations = []): array; }
src/functions.php +24 −1 Original line number Diff line number Diff line Loading @@ -7,7 +7,6 @@ use Hyperf\Redis\Redis; use Hyperf\Utils\ApplicationContext; use Psr\EventDispatcher\EventDispatcherInterface; /** * 容器实例 */ Loading Loading @@ -414,3 +413,27 @@ if (!function_exists('get_week_start_and_end')) { return array("week_start" => $week_start, "week_end" => $week_end); } } if (!function_exists('empty_string_2_null')) { /** * 空字符串转NULL * @param array $arr * @return array */ function empty_string_2_null(array $arr) { if (!empty($arr)) { foreach ($arr as $key => $value) { if (is_array($value)) { $arr[$key] = empty_string_2_null($value); } else { if ($value === '') { $arr[$key] = null; } } } } return $arr; } }