Commit 3ca6821b by 杨树贤

默认开通账号逻辑

parent a4348549
......@@ -2,11 +2,12 @@
namespace App\Console\Commands;
use Illuminate\Console\Command;
use App\Http\Services\DataService;
use Illuminate\Foundation\Inspiring;
use App\Http\Services\DealImageService;
use App\Http\Services\SupplierAccountService;
use App\Http\Services\StatisticsSkuUploadService;
use Illuminate\Console\Command;
use Illuminate\Foundation\Inspiring;
//设置供应商是否需要跟进
class SetSupplierFollowUp extends Command
......@@ -35,6 +36,6 @@ class SetSupplierFollowUp extends Command
//DealImageService::dealNewsImage();
//DealImageService::dealNewsImage();
//DealImageService::dealSkuDetailAndImage();
DealImageService::dealNewsPic();
SupplierAccountService::initYunxinAccountName();
}
}
......@@ -83,7 +83,6 @@ class SupplierAccountApiController extends Controller
'email',
'supplier_code',
'mobile',
'password_raw',
'a_type',
]);
$validator = new SupplierAccountValidator();
......@@ -97,7 +96,6 @@ class SupplierAccountApiController extends Controller
$data['a_type'] = empty($data['a_type']) ? 0 : 1;
$data['update_time'] = time();
$data['create_uid'] = $request->user->userId;
$data['password'] = Hash::make($data['password_raw']);
$model = new SupplierAccountModel();
$result = $model->where('id', $data['id'])->update($data);
if ($result) {
......
......@@ -4,16 +4,17 @@
namespace App\Http\Services;
use App\Http\Controllers\Filter\SupplierAccountFilter;
use App\Http\Transformers\SupplierAccountTransformer;
use App\Http\Transformers\SupplierTransformer;
use Carbon\Carbon;
use App\Model\LogModel;
use App\Model\SupplierAccountModel;
use App\Model\SupplierChannelModel;
use App\Model\SupplierContactModel;
use Carbon\Carbon;
use PhpAmqpLib\Connection\AMQPStreamConnection;
use PhpAmqpLib\Message\AMQPMessage;
use Illuminate\Support\Facades\Hash;
use App\Http\Transformers\SupplierTransformer;
use PhpAmqpLib\Connection\AMQPStreamConnection;
use App\Http\Transformers\SupplierAccountTransformer;
use App\Http\Controllers\Filter\SupplierAccountFilter;
class SupplierAccountService
{
......@@ -58,4 +59,62 @@ class SupplierAccountService
$supplierAccount = (new SupplierAccountTransformer())->transformInfo($supplierAccount);
return $supplierAccount;
}
//自动创建芯链账号
public static function autoCreateYunxinAccount($supplierId)
{
//先判断是否已经存在
$supplierAccount = SupplierAccountModel::where('supplier_id', $supplierId)->first();
if (!empty($supplierAccount)) {
return;
}
//获取供应商信息
$supplier = SupplierChannelModel::where('supplier_id', $supplierId)->first();
if (empty($supplier)) {
return;
}
//合作类型不包含芯链商家,则不创建账号
if (strpos($supplier->cooperation_type, SupplierChannelModel::SUPPLIER_STOCKUP_TYPE) === false) {
return;
}
//新建账号
SupplierAccountModel::insert([
'supplier_id' => $supplierId,
'supplier_code' => $supplier->supplier_code,
'account_name' => self::generateAccountName($supplierId),
'create_uid' => request()->user->userId,
'password_raw' => '123456',
'password' => Hash::make('123456'),
'create_time' => time(),
]);
return true;
}
public static function generateAccountName($supplierId)
{
$supplierAccount = SupplierAccountModel::where('supplier_id', $supplierId)->first();
if (!empty($supplierAccount)) {
$time = $supplierAccount->create_time;
if (empty($time)) {
$time = time();
}
} else {
$time = time();
}
//随机生成编码:XL+12位随机编码,根据创建时间时间戳生成,取供应商id加上时间戳的7位
$accountName = 'XL' . str_pad($supplierId, 5, '0', STR_PAD_LEFT) . substr(str_pad($time, 7, '0', STR_PAD_LEFT), -7);
return $accountName;
}
public static function initYunxinAccountName()
{
$supplierAccountList = SupplierAccountModel::where('account_name', '')->get()->toArray();
foreach ($supplierAccountList as $supplierAccount) {
$supplierAccount['account_name'] = self::generateAccountName($supplierAccount['supplier_id']);
SupplierAccountModel::where('supplier_id', $supplierAccount['supplier_id'])->update([
'account_name' => $supplierAccount['account_name'],
]);
}
}
}
......@@ -340,6 +340,9 @@ class SupplierService
return $supplierId;
});
//自动创建芯链账号
SupplierAccountService::autoCreateYunxinAccount($supplierId);
//保存日志
$newSupplier = $model->where('supplier_id', $this->newSupplierId)->first();
$newSupplier = $supplierTransformer->transformInfo($newSupplier);
......
......@@ -20,9 +20,13 @@ class SupplierAccountValidator
"contacts_name" => "required",
'email' => 'required|email',
"mobile" => "required|regex:/^1[0-9][0-9]{9}$/",
"password_raw" => "required",
"a_type" => "required",
];
if (empty($account['id'])) {
$rules['password_raw'] = 'required';
}
$messages = $this->messages();
$validator = Validator::make($account, $rules, $messages);
//判断联系方式的表单验证
......
......@@ -21,6 +21,7 @@ use App\Model\SupplierContractModel;
use App\Http\Services\CompanyService;
use Illuminate\Support\Facades\Route;
use App\Http\Services\DepartmentService;
use App\Http\Services\SupplierAccountService;
Route::group(['middleware' => ['web', 'menu']], function () {
Route::get('/', 'WebController@Entrance');
......@@ -93,5 +94,6 @@ Route::group(['middleware' => ['external'], 'namespace' => 'Sync'], function ()
Route::match(['get', 'post'], '/test', function () {
// DataService::initSupplierNationId();
// DataService::initSupplierReceiptNationId();
DataService::repaireSkuUploadRuler();
SupplierAccountService::initYunxinAccountName();
// DataService::repaireSkuUploadRuler();
});
......@@ -38,6 +38,9 @@ class SupplierChannelModel extends Model
const SUPPLIER_GROUP_ORIGINAL = 4; //原厂
const SUPPLIER_GROUP_MIX = 7; //混合分销商
//合作类型
const SUPPLIER_STOCKUP_TYPE = 5; //芯链商家
//供应商地区
const REGION_CN = 2; //国内
......
......@@ -15,7 +15,12 @@
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label"><span class="require">*</span>账号 : </label>
<div class="layui-input-block">
<input type="text" name="account_name" id="account_name" placeholder="系统自动生成" class="layui-input layui-disabled" disabled value="{{$account['account_name'] or ''}}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label"><span class="require">*</span>联系人 : </label>
<div class="layui-input-block">
<input type="text" name="contacts_name" id="contacts_name" placeholder="请输入名称" class="layui-input" value="{{$account['contacts_name'] or ''}}">
......@@ -29,9 +34,9 @@
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label"><span class="require">*</span>登录账号 : </label>
<label class="layui-form-label"><span class="require">*</span>手机号 : </label>
<div class="layui-input-block">
<input type="text" name="mobile" id="mobile" placeholder="请输入登录账号" class="layui-input" value="{{$account['mobile'] or ''}}">
<input type="text" name="mobile" id="mobile" placeholder="请输入手机号" class="layui-input" value="{{$account['mobile'] or ''}}">
</div>
</div>
<div class="layui-form-item">
......
......@@ -16,7 +16,12 @@
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label"><span class="require">*</span>账号 : </label>
<div class="layui-input-block">
<input type="text" name="account_name" id="account_name" placeholder="请输入账号" class="layui-input layui-disabled" disabled value="{{$account['account_name'] or ''}}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label"><span class="require">*</span>联系人 : </label>
<div class="layui-input-block">
<input type="text" name="contacts_name" id="contacts_name" placeholder="请输入名称" class="layui-input" value="{{$account['contacts_name'] or ''}}">
......@@ -36,12 +41,6 @@
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label"><span class="require">*</span>账号密码 : </label>
<div class="layui-input-block">
<input type="text" name="password_raw" id="password_raw" placeholder="请输入账号密码" class="layui-input" value="{{$account['password_raw'] or ''}}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label"><span class="require">*</span>账号类型 : </label>
<div class="layui-input-block">
<input type="checkbox" name="a_type" title="芯链商家" lay-skin="primary" @if(!empty($account['a_type'])&&$account['a_type']==1) checked @endif>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment