This commit is contained in:
柳清爽
2025-04-21 15:11:40 +08:00
5 changed files with 32 additions and 26 deletions

View File

@@ -24,7 +24,7 @@ class CreateCompanyController extends BaseController
*/
protected function s2CreateDepartment(array $params): ?array
{
$params = ArrHelper::getValue('name=departmentName,memo=departmentMemo,account=accountName,password=accountPassword,realName=accountRealName,username=accountNickname,accountMemo', $params);
$params = ArrHelper::getValue('name=departmentName,memo=departmentMemo,account=accountName,password=accountPassword,username=accountRealName,username=accountNickname,accountMemo', $params);
// 创建公司部门
$response = CurlHandle::getInstant()
@@ -52,21 +52,22 @@ class CreateCompanyController extends BaseController
{
$validate = Validate::make([
'name' => 'require|max:50|/\S+/',
'account' => 'require|max:20|/\S+/',
'username' => 'require|max:20|/\S+/',
'account' => 'require|regex:/^1[3-9]\d{9}$/',
'phone' => 'require|regex:/^1[3-9]\d{9}$/',
'status' => 'require|in:0,1',
'password' => 'require|/\S+/',
'realName' => 'require|/\S+/',
'memo' => '/\S+/',
], [
'name.require' => '请输入项目名称',
'username.require' => '请输入用户昵称',
'account.require' => '请输入账号',
'account.regex' => '账号为手机号',
'account.max' => '账号长度受限',
'username.require' => '请输入用户昵称',
'phone.require' => '请输入手机号',
'phone.regex' => '手机号格式错误',
'status.require' => '缺少重要参数',
'status.in' => '非法参数',
'password.require' => '请输入密码',
'realName.require' => '请输入真实姓名',
]);
if (!$validate->check($params)) {
@@ -161,7 +162,7 @@ class CreateCompanyController extends BaseController
public function index()
{
try {
$params = $this->request->only(['name', 'status', 'username', 'account', 'password', 'realName', 'memo']);
$params = $this->request->only(['name', 'status', 'username', 'account', 'password', 'phone', 'memo']);
$params = $this->dataValidate($params)->creatS2About($params);
Db::startTrans();

View File

@@ -39,7 +39,7 @@ class GetCompanyDetailForUpdateController extends BaseController
{
$detail = CompanyModel::alias('c')
->field([
'c.id', 'c.name', 'c.status', 'c.memo', 'c.companyId', 'u.account', 'u.username', 'u.realName',
'c.id', 'c.name', 'c.status', 'c.memo', 'c.companyId', 'u.account', 'u.username', 'u.phone',
])
->leftJoin('users u', 'c.companyId = u.companyId')
->find($id);

View File

@@ -96,7 +96,6 @@ class GetCompanyListController extends BaseController
$devices = $this->getDevices();
foreach ($Companylist->items() as $item) {
$item->userCount = $this->countUserInCompany($item->companyId);
$item->deviceCount = $devices[$item->companyId]['numCount'] ?? 0;

View File

@@ -44,7 +44,12 @@ class UpdateCompanyController extends BaseController
*/
protected function getUserDetailByCompanyId(): ?UsersModel
{
$user = UsersModel::where(['companyId' => $this->companyId])->find();
$where = [
'isAdmin' => 1, // 必须保证 isAdmin 有且只有一个
'companyId' => $this->companyId,
];
$user = UsersModel::where($where)->find();
if (!$user) {
throw new \Exception('用户不存在', 404);
@@ -162,18 +167,19 @@ class UpdateCompanyController extends BaseController
'id' => 'require',
'name' => 'require|max:50|/\S+/',
'username' => 'require|max:20|/\S+/',
'account' => 'require|regex:/^1[3-9]\d{9}$/',
'status' => 'require|in:0,1',
'realName' => 'require|/\S+/',
'account' => 'require|max:20|/\S+/',
'phone' => 'require|regex:/^1[3-9]\d{9}$/',
'status' => 'require|in:0,1'
], [
'id.require' => '非法请求',
'name.require' => '请输入项目名称',
'username.require' => '请输入用户昵称',
'account.require' => '请输入账号',
'account.regex' => '账号为手机号',
'account.max' => '账号长度受限',
'phone.require' => '请输入手机号',
'phone.regex' => '手机号格式错误',
'status.require' => '缺少重要参数',
'status.in' => '非法参数',
'realName.require' => '请输入真实姓名',
]);
if (!$validate->check($params)) {
@@ -191,7 +197,7 @@ class UpdateCompanyController extends BaseController
public function index()
{
try {
$params = $this->request->only(['id', 'name', 'status', 'username', 'account', 'password', 'realName', 'memo']);
$params = $this->request->only(['id', 'name', 'status', 'username', 'account', 'password', 'phone', 'memo']);
// 数据验证
$this->dataValidate($params);

View File

@@ -25,7 +25,7 @@ export default function EditProjectPage({ params }: { params: { id: string } })
const [account, setAccount] = useState("")
const [description, setDescription] = useState("")
const [devices, setDevices] = useState<Device[]>([])
const [realName, setRealName] = useState("")
const [phone, setPhone] = useState("")
const [nickname, setNickname] = useState("")
const [status, setStatus] = useState("1")
const [password, setPassword] = useState("")
@@ -42,7 +42,7 @@ export default function EditProjectPage({ params }: { params: { id: string } })
setAccount(data.data.account || "")
setDescription(data.data.memo || "")
setDevices(data.data.devices || [])
setRealName(data.data.realName || "")
setPhone(data.data.phone || "")
setNickname(data.data.username || "")
setStatus(data.data.status.toString())
} else {
@@ -79,7 +79,7 @@ export default function EditProjectPage({ params }: { params: { id: string } })
name: projectName,
account,
memo: description,
realName,
phone,
username: nickname,
status: parseInt(status),
...(password && { password })
@@ -144,10 +144,9 @@ export default function EditProjectPage({ params }: { params: { id: string } })
<Label htmlFor="account"></Label>
<Input
id="account"
type="number"
value={account}
onChange={(e) => setAccount(e.target.value)}
placeholder="请输入手机号"
placeholder="请输入登录的账号"
required
/>
</div>
@@ -188,12 +187,13 @@ export default function EditProjectPage({ params }: { params: { id: string } })
</div>
<div className="space-y-2">
<Label htmlFor="realName"></Label>
<Label htmlFor="phone"></Label>
<Input
id="realName"
value={realName}
onChange={(e) => setRealName(e.target.value)}
placeholder="请输入真实姓名"
id="phone"
type="number"
value={phone}
onChange={(e) => setPhone(e.target.value)}
placeholder="手机号可用于登录"
required
/>
</div>