Files
fdesk/app/controller/IndexController.php
T
2025-09-01 14:00:44 +08:00

129 lines
3.8 KiB
PHP

<?php
namespace app\controller;
use app\common\model\InquiryLog;
use app\common\model\User;
use app\common\model\UserRoles;
use app\common\model\UserSystems;
use app\common\service\MessageNotificationsService;
use app\common\traits\DataPermission;
use app\common\utils\email\MailSend;
use app\common\utils\scaffold\Generate;
use support\Request;
use support\Db;
use support\Cache;
use app\inquiry\service\InquiryLogService;
use Illuminate\Support\Facades\Mail;
class IndexController
{
protected $noNeedLogin = ['index', 'view', 'perm', 'createResource', 'test'];
protected $noNeedHeaderData = ['index', 'view', 'perm', 'createResource', 'test'];
public function index(Request $request)
{
return htmlpage();
}
/**
* 调试飞书
*/
public function view(Request $request)
{
return view('index/qrcode', ['name' => 'webman']);
}
/**
* 临时增加用户权限
*/
public function perm(Request $request)
{
try {
$data = $request->get();
if (Db::table('user_roles')->where('user_id', $data['user_id'])->first()) {
Db::table('user_roles')->where('user_id', $data['user_id'])->update([
'role_id' => $data['role_id']
]);
} else {
Db::table('user_roles')->insert([
'user_id' => $data['user_id'],
'role_id' => $data['role_id']
]);
}
if (!Db::table('user_systems')->where('user_id', $data['user_id'])->where('system_id', $data['system_id'])->first()) {
Db::table('user_systems')->where('user_id', $data['user_id'])->insert([
'user_id' => $data['user_id'],
'system_id' => $data['system_id'],
'created_at' => time()
]);
}
Cache::delete("user_resources_{$data['user_id']}");
return json(['code' => 0, 'msg' => 'success']);
} catch (\Throwable $e) {
return json(['code' => 1, 'msg' => $e->getMessage()]);
}
}
/**
* 生成资源
*/
public function createResource()
{
$options = [
'controller' => [
'module' => 'common',
'name' => 'stock_orders'
],
'model' => [
'module' => 'common',
'name' => 'stock_orders'
],
'service' => [
'module' => 'common',
'name' => 'stock_orders'
],
'logic' => [
'module' => 'common',
'name' => 'stock_orders'
],
'validate' => [
'module' => 'common',
'name' => 'stock_orders'
],
'table' => 'stock_orders'
];
$result = (new Generate($options))->doGenerate();
return $result;
}
public function test()
{
$params = [
'email' => '',
'phone' => '11',
'whatsApp' => ''
];
$corpId = 1;
$customer = \app\crm\model\Customer::where('corp_id', $corpId)
->where((function (\Illuminate\Database\Eloquent\Builder $query) use ($params) {
if(!empty($params['email']))
$query->Orwhere('email', '=', $params['email']);
if(!empty($params['phone']))
$query->Orwhere('phone', '=', $params['phone']);
if(!empty($params['whatsApp']))
$query->Orwhere('whatsApp', '=', $params['whatsApp']);
return $query;
}))
->first();
return json($customer);
}
}