From 714f8e612da31d88486b5b15164e35475543eceb Mon Sep 17 00:00:00 2001 From: denghy Date: Sun, 16 Dec 2018 11:54:49 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B4=A6=E5=8F=B7=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Virtual/Http/Controllers/CompanyController.php | 4 ++-- .../Virtual/Services/CompanyAccountService.php | 4 ++-- .../2018_11_27_175137_create_base_tables.php | 2 +- frontend/src/views/virtual/companies/js/edit.js | 1 + frontend/src/views/virtual/company_accounts/edit.vue | 2 +- .../src/views/virtual/company_accounts/index.vue | 2 +- .../src/views/virtual/company_accounts/js/edit.js | 7 ++++--- .../src/views/virtual/company_accounts/js/index.js | 12 ++++++++---- 8 files changed, 20 insertions(+), 14 deletions(-) diff --git a/app/Domains/Virtual/Http/Controllers/CompanyController.php b/app/Domains/Virtual/Http/Controllers/CompanyController.php index 25327802..3b9ca628 100644 --- a/app/Domains/Virtual/Http/Controllers/CompanyController.php +++ b/app/Domains/Virtual/Http/Controllers/CompanyController.php @@ -31,9 +31,9 @@ class CompanyController extends Controller $conditions = []; $conditions['limit'] = $this->request->get('limit', 20); - $accounts = $this->companyService->index($conditions); + $companies = $this->companyService->index($conditions); - return res($accounts, '企业列表', 201); + return res($companies, '企业列表', 201); } /** diff --git a/app/Domains/Virtual/Services/CompanyAccountService.php b/app/Domains/Virtual/Services/CompanyAccountService.php index 735cfc87..581bdb48 100644 --- a/app/Domains/Virtual/Services/CompanyAccountService.php +++ b/app/Domains/Virtual/Services/CompanyAccountService.php @@ -70,9 +70,9 @@ class CompanyAccountService extends Service implements JwtServiceContract $attributes = array_only($attributes, array_merge(app(CompanyAccount::class)->getFillable())); $rule = [ - 'username' => ['username', 'between:2,12', Rule::unique($this->companyAccountRepository->getTable(), 'username')->ignore($attributes['id']), Rule::notIn(config('domain.account.reserved_account'))], + 'username' => ['username', 'between:2,12', Rule::unique($this->companyAccountRepository->getTable(), 'username')->ignore($attributes['id'])->whereNUll('deleted_at'), Rule::notIn(config('domain.account.reserved_account'))], 'nickname' => ['string', 'between:2,32'], - 'mobile' => ['string', 'cn_phone', Rule::unique($this->companyAccountRepository->getTable(), 'mobile')->ignore($attributes['id'])], + 'mobile' => ['string', 'cn_phone', Rule::unique($this->companyAccountRepository->getTable(), 'mobile')->ignore($attributes['id'])->whereNUll('deleted_at')], 'password' => ['string'], 'avatar' => ['image'], ]; diff --git a/database/migrations/2018_11_27_175137_create_base_tables.php b/database/migrations/2018_11_27_175137_create_base_tables.php index 2da6d852..aed33477 100644 --- a/database/migrations/2018_11_27_175137_create_base_tables.php +++ b/database/migrations/2018_11_27_175137_create_base_tables.php @@ -172,7 +172,7 @@ class CreateBaseTables extends Migration $table->timestamps(); $table->softDeletes(); - $table->unique('mobile'); + $table->unique(['mobile', 'deleted_at']); }); Schema::create("virtual_company_addresses", function (Blueprint $table) { diff --git a/frontend/src/views/virtual/companies/js/edit.js b/frontend/src/views/virtual/companies/js/edit.js index 601e333f..ecdfdb18 100644 --- a/frontend/src/views/virtual/companies/js/edit.js +++ b/frontend/src/views/virtual/companies/js/edit.js @@ -16,6 +16,7 @@ export default { data() { return { my_show: false, + isUpdate: false, loading: false, params: { name: '', diff --git a/frontend/src/views/virtual/company_accounts/edit.vue b/frontend/src/views/virtual/company_accounts/edit.vue index d33cd5c3..70bd0678 100644 --- a/frontend/src/views/virtual/company_accounts/edit.vue +++ b/frontend/src/views/virtual/company_accounts/edit.vue @@ -1,5 +1,5 @@ diff --git a/frontend/src/views/virtual/company_accounts/js/edit.js b/frontend/src/views/virtual/company_accounts/js/edit.js index 899a96ac..fe67a5ec 100644 --- a/frontend/src/views/virtual/company_accounts/js/edit.js +++ b/frontend/src/views/virtual/company_accounts/js/edit.js @@ -3,17 +3,17 @@ import { isPhone, isPsw, isUserName } from 'validate'; export default { props: { - isUpdate: { + show: { type: Boolean, default: false }, - show: { + isUpdate: { type: Boolean, default: false }, data: { type: Object, - default() { + default () { return null; } } @@ -21,6 +21,7 @@ export default { watch: { show(bool) { this.my_show = bool; + console.log(this.isUpdate); if (bool) { if (this.data) { for (let k in this.data) { diff --git a/frontend/src/views/virtual/company_accounts/js/index.js b/frontend/src/views/virtual/company_accounts/js/index.js index eb8041c3..510414dd 100644 --- a/frontend/src/views/virtual/company_accounts/js/index.js +++ b/frontend/src/views/virtual/company_accounts/js/index.js @@ -182,9 +182,11 @@ export default { * @return {[type]} [description] */ openEdit(bool, row = null) { - let data = {}; let isUpdate = false; - data.company_id = row.id; + let data = { + id: 0, + company_id: row.id + }; if (row && row.accounts && row.accounts.length) { data = Object.assign(data, row.accounts[0]); @@ -193,9 +195,11 @@ export default { this.editObj = { show: bool, - data, - isUpdate + isUpdate, + data }; + + console.log(this.editObj); }, /**