Merge branch 'develop' of https://e.coding.net/g-xtcy5189/cunkebao/cunkebao_v3 into develop
This commit is contained in:
@@ -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();
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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>
|
||||
|
||||
Reference in New Issue
Block a user