|
@@ -4,16 +4,16 @@ declare (strict_types=1);
|
|
namespace App\Controller;
|
|
namespace App\Controller;
|
|
|
|
|
|
use App\JsonRpc\PublicRpcServiceInterface;
|
|
use App\JsonRpc\PublicRpcServiceInterface;
|
|
-use Hyperf\Di\Annotation\Inject;
|
|
|
|
-use App\Tools\Result;
|
|
|
|
use App\Tools\CommonService;
|
|
use App\Tools\CommonService;
|
|
-use Hyperf\Validation\Contract\ValidatorFactoryInterface;
|
|
|
|
use App\Tools\PublicData;
|
|
use App\Tools\PublicData;
|
|
|
|
+use App\Tools\Result;
|
|
|
|
+use function Hyperf\Support\env;
|
|
|
|
+use Hyperf\Context\Context;
|
|
|
|
+use Hyperf\Di\Annotation\Inject;
|
|
use Hyperf\HttpServer\Contract\RequestInterface;
|
|
use Hyperf\HttpServer\Contract\RequestInterface;
|
|
use Hyperf\HttpServer\Contract\ResponseInterface;
|
|
use Hyperf\HttpServer\Contract\ResponseInterface;
|
|
|
|
+use Hyperf\Validation\Contract\ValidatorFactoryInterface;
|
|
use ZipArchive;
|
|
use ZipArchive;
|
|
-use function Hyperf\Support\env;
|
|
|
|
-use Hyperf\Context\Context;
|
|
|
|
/**
|
|
/**
|
|
* Class PublicController
|
|
* Class PublicController
|
|
* @package App\Controller
|
|
* @package App\Controller
|
|
@@ -259,7 +259,7 @@ class PublicController extends AbstractController
|
|
$fileName = $requireData['fileName'] . time() . mt_rand(1, 1000000) . '.zip';
|
|
$fileName = $requireData['fileName'] . time() . mt_rand(1, 1000000) . '.zip';
|
|
$zipFileName = $allDir . DIRECTORY_SEPARATOR . $requireData['fileName'] . time() . mt_rand(1, 1000000) . '.zip';
|
|
$zipFileName = $allDir . DIRECTORY_SEPARATOR . $requireData['fileName'] . time() . mt_rand(1, 1000000) . '.zip';
|
|
// $zipFileName = 'public/zip/files.zip';
|
|
// $zipFileName = 'public/zip/files.zip';
|
|
- if ($zip->open($zipFileName, ZipArchive::CREATE) === TRUE) {
|
|
|
|
|
|
+ if ($zip->open($zipFileName, ZipArchive::CREATE) === true) {
|
|
// 将要下载的文件逐个添加到zip文件中
|
|
// 将要下载的文件逐个添加到zip文件中
|
|
// $string = trim($requireData['files'], "[]'"); // 去掉最外层的方括号和单引号(注意:这里假设了单引号,如果是双引号则替换为 ")
|
|
// $string = trim($requireData['files'], "[]'"); // 去掉最外层的方括号和单引号(注意:这里假设了单引号,如果是双引号则替换为 ")
|
|
// $string = str_replace("'", '', $string); // 去掉所有剩余的单引号(如果原字符串中使用的是双引号,则替换为双引号)
|
|
// $string = str_replace("'", '', $string); // 去掉所有剩余的单引号(如果原字符串中使用的是双引号,则替换为双引号)
|
|
@@ -309,4 +309,109 @@ class PublicController extends AbstractController
|
|
$result = $this->publicServiceClient->getDepartment($requireData);
|
|
$result = $this->publicServiceClient->getDepartment($requireData);
|
|
return $result['code'] == 200 ? Result::success($result['data']) : Result::error("查询失败");
|
|
return $result['code'] == 200 ? Result::success($result['data']) : Result::error("查询失败");
|
|
}
|
|
}
|
|
|
|
+ /**
|
|
|
|
+ * 获取职能部门
|
|
|
|
+ * @return array
|
|
|
|
+ */
|
|
|
|
+ public function getZhinengbumenList()
|
|
|
|
+ {
|
|
|
|
+ // 获取请求参数
|
|
|
|
+ $requireData = $this->request->all();
|
|
|
|
+ // 参数验证
|
|
|
|
+ $validator = $this->validationFactory->make($requireData, ['page' => 'integer|min:1', 'pagesize' => 'integer|min:1', 'search' => 'string|nullable'], ['page.integer' => 'page 必须是整数', 'page.min' => 'page 必须大于等于 1', 'pagesize.integer' => 'pagesize 必须是整数', 'pagesize.min' => 'pagesize 必须大于等于 1', 'search.string' => 'search 必须是字符串']);
|
|
|
|
+ if ($validator->fails()) {
|
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
|
+ return Result::error($errorMessage);
|
|
|
|
+ }
|
|
|
|
+ // 添加用户 ID
|
|
|
|
+ $requireData['user_id'] = Context::get("UserId");
|
|
|
|
+ // 调用服务客户端方法获取分页数据
|
|
|
|
+ $result = $this->publicServiceClient->getZhinengbumenList($requireData);
|
|
|
|
+ // 处理结果
|
|
|
|
+ return $result['code'] == 200 ? Result::success($result['data']) : Result::error("查询失败");
|
|
|
|
+ }
|
|
|
|
+ /**
|
|
|
|
+ * 添加职能部门
|
|
|
|
+ * @return array
|
|
|
|
+ */
|
|
|
|
+ public function addZhinengbumen()
|
|
|
|
+ {
|
|
|
|
+ // 获取请求参数
|
|
|
|
+ $requireData = $this->request->all();
|
|
|
|
+ $validator = $this->validationFactory->make($requireData, ['name' => 'required|string|regex:/^[\\x{4e00}-\\x{9fa5}]+$/u', 'pid' => 'required|integer'], ['name.required' => 'name 不能为空', 'name.string' => 'name 必须是字符串', 'name.regex' => 'name 必须是汉字', 'pid.required' => 'pid 不能为空', 'pid.integer' => 'pid 必须是整数']);
|
|
|
|
+ if ($validator->fails()) {
|
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
|
+ return Result::error($errorMessage);
|
|
|
|
+ }
|
|
|
|
+ // $requireData['user_id'] = Context::get("UserId");
|
|
|
|
+ $result = $this->publicServiceClient->addZhinengbumen($requireData);
|
|
|
|
+ return $result['code'] == 200 ? Result::success() : Result::error("添加失败");
|
|
|
|
+ }
|
|
|
|
+ /**
|
|
|
|
+ * 删除职能部门
|
|
|
|
+ * @return array
|
|
|
|
+ */
|
|
|
|
+ public function delZhinengbumen()
|
|
|
|
+ {
|
|
|
|
+ $requireData = $this->request->all();
|
|
|
|
+ $validator = $this->validationFactory->make($requireData, ['id' => 'required|integer'], ['id.required' => 'id 不能为空', 'id.integer' => 'id 必须是整数']);
|
|
|
|
+ if ($validator->fails()) {
|
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
|
+ return Result::error($errorMessage);
|
|
|
|
+ }
|
|
|
|
+ $requireData['user_id'] = Context::get("UserId");
|
|
|
|
+ $result = $this->publicServiceClient->delZhinengbumen($requireData);
|
|
|
|
+ return $result['code'] == 200 ? Result::success() : Result::error("删除失败");
|
|
|
|
+ }
|
|
|
|
+ /**
|
|
|
|
+ * 职能部门详情
|
|
|
|
+ * @return array
|
|
|
|
+ */
|
|
|
|
+ public function getZhinengbumen()
|
|
|
|
+ {
|
|
|
|
+ $requireData = $this->request->all();
|
|
|
|
+ $validator = $this->validationFactory->make($requireData, ['id' => 'required|integer'], ['id.required' => 'id 不能为空', 'id.integer' => 'id 必须是整数']);
|
|
|
|
+ if ($validator->fails()) {
|
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
|
+ return Result::error($errorMessage);
|
|
|
|
+ }
|
|
|
|
+ $requireData['user_id'] = Context::get("UserId");
|
|
|
|
+ $result = $this->publicServiceClient->getZhinengbumen($requireData);
|
|
|
|
+ return $result['code'] == 200 ? Result::success($result['data']) : Result::error("查询失败");
|
|
|
|
+ }
|
|
|
|
+ /**
|
|
|
|
+ * 获取职能部门某pid的所有子级,默认0级
|
|
|
|
+ * @return array
|
|
|
|
+ */
|
|
|
|
+ public function getPidZhinengbumen()
|
|
|
|
+ {
|
|
|
|
+ // 获取请求参数
|
|
|
|
+ $requireData = $this->request->all();
|
|
|
|
+ // 参数验证
|
|
|
|
+ $validator = $this->validationFactory->make($requireData, ['pid' => 'integer|min:0'], ['pid.integer' => 'pid 必须是整数', 'pid.min' => 'pid 必须大于等于 0']);
|
|
|
|
+ if ($validator->fails()) {
|
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
|
+ return Result::error($errorMessage);
|
|
|
|
+ }
|
|
|
|
+ $requireData['user_id'] = Context::get("UserId");
|
|
|
|
+ $result = $this->publicServiceClient->getPidZhinengbumen($requireData);
|
|
|
|
+ return $result['code'] == 200 ? Result::success($result['data']) : Result::error("查询失败");
|
|
|
|
+ }
|
|
|
|
+ /**
|
|
|
|
+ * 修改职能部门名称
|
|
|
|
+ * @return array
|
|
|
|
+ */
|
|
|
|
+ public function modZhinengbumen()
|
|
|
|
+ {
|
|
|
|
+ $requireData = $this->request->all();
|
|
|
|
+ // 参数验证
|
|
|
|
+ $validator = $this->validationFactory->make($requireData, ['id' => 'required|integer', 'name' => 'required|string|regex:/^[\\x{4e00}-\\x{9fa5}]+$/u'], ['id.required' => 'id 不能为空', 'id.integer' => 'id 必须是整数', 'name.required' => 'name 不能为空', 'name.string' => 'name 必须是字符串', 'name.regex' => 'name 必须是汉字']);
|
|
|
|
+ if ($validator->fails()) {
|
|
|
|
+ $errorMessage = $validator->errors()->first();
|
|
|
|
+ return Result::error($errorMessage);
|
|
|
|
+ }
|
|
|
|
+ $requireData['user_id'] = Context::get("UserId");
|
|
|
|
+ $result = $this->publicServiceClient->upZhinengbumen($requireData);
|
|
|
|
+ return $result['code'] == 200 ? Result::success() : Result::error("修改失败");
|
|
|
|
+ }
|
|
}
|
|
}
|