Browse Source

public_type -> publish_type

develop
李可松 4 years ago
parent
commit
c1b52900dd
  1. 4
      MySQL_change.sql
  2. 12
      app/Admin/Controllers/SupplierController.php
  3. 8
      app/AdminSupplier/Controllers/ProductController.php
  4. 8
      app/AdminSupplier/bootstrap.php
  5. 2
      app/Models/Supplier.php
  6. 2
      resources/lang/zh_CN/product.php
  7. 2
      resources/lang/zh_CN/supplier.php

4
MySQL_change.sql

@ -274,4 +274,8 @@ ALTER TABLE `products`
ALTER TABLE `suppliers`
ADD COLUMN `public_type` VARCHAR(255) NOT NULL DEFAULT '[]' COMMENT '允许发布产品的模板' AFTER `rate`;
# 9:39 2021/9/8
ALTER TABLE `suppliers`
CHANGE COLUMN `public_type` `publish_type` VARCHAR(255) NOT NULL DEFAULT '[]' COMMENT '允许发布产品的模板' COLLATE 'utf8_general_ci' AFTER `rate`;

12
app/Admin/Controllers/SupplierController.php

@ -92,12 +92,12 @@ class SupplierController extends AdminController
$show->field('director');
$show->field('contact_phone');
$show->field('rate');
$show->field('public_type')
$show->field('publish_type')
->as(function ($value) {
if (!is_array($value)) return '';
$public_type = admin_trans('product.options.public_type');
$value = array_map(function ($v) use ($public_type) {
return $public_type[$v] ?? '';
$publish_type = admin_trans('product.options.publish_type');
$value = array_map(function ($v) use ($publish_type) {
return $publish_type[$v] ?? '';
}, $value);
return join(',', $value);
});
@ -139,8 +139,8 @@ class SupplierController extends AdminController
$form->text('director');
$form->mobile('contact_phone');
$form->number('rate')->min(0)->max(100)->help('分成百分比,如10%,则输入10');
$form->checkbox('public_type')
->options(admin_trans('product.options.public_type'))
$form->checkbox('publish_type')
->options(admin_trans('product.options.publish_type'))
->default(0)
->help('供应商可发布的产品类型');
})->saving(function (Form $form) {

8
app/AdminSupplier/Controllers/ProductController.php

@ -32,7 +32,7 @@ class ProductController extends AdminController
return Grid::make(new Product(['category:id,name']), function (Grid $grid) {
$type = request()->input('type');
if (isset($type) && isset(admin_trans('product.options.public_type')[$type])) {
if (isset($type) && isset(admin_trans('product.options.publish_type')[$type])) {
$grid->model()->where(['supplier_id' => Admin::user()->id, 'type' => $type]);
$create_url = $grid->resource() . '/create?type=' . $type;
Admin::script('$(function(){ $(".pull-right a").attr("href", "' . $create_url . '"); });');
@ -112,7 +112,7 @@ class ProductController extends AdminController
*/
protected function form()
{
Admin::user()->public_type = json_decode(Admin::user()->public_type, true);
Admin::user()->publish_type = json_decode(Admin::user()->publish_type, true);
return Form::make(new Product(), function (Form $form) {
//不允许编辑非自己数据
if ($form->isEditing() && $form->model()->supplier_id != Admin::user()->id) {
@ -124,7 +124,7 @@ class ProductController extends AdminController
if ($type == null) {
Admin::exit('请选择要发布的产品类型');
}
if (!Admin::user()->public_type || !in_array($type, Admin::user()->public_type)) {
if (!Admin::user()->publish_type || !in_array($type, Admin::user()->publish_type)) {
Admin::exit('对不起,你没有此类产品的发布权限');
}
} else {
@ -191,7 +191,7 @@ class ProductController extends AdminController
}
$type = $form->isCreating() ? $form->type : $form->model()->type;
if (!Admin::user()->public_type || !in_array($type, Admin::user()->public_type)) {
if (!Admin::user()->publish_type || !in_array($type, Admin::user()->publish_type)) {
return $form->response()->error('对不起,你没有此类产品的发布、编辑权限');
}

8
app/AdminSupplier/bootstrap.php

@ -45,13 +45,13 @@ Filter::resolving(function (Filter $filter) {
'roles' => 'test-roles', // 与角色绑定
];
$public_type = json_decode(Admin::user()->public_type, true);
$public_type_arr = admin_trans('product.options.public_type');
$publish_type = json_decode(Admin::user()->publish_type, true);
$publish_type_arr = admin_trans('product.options.publish_type');
foreach ($public_type as $k => $v) {
foreach ($publish_type as $k => $v) {
$items[] = [
'id' => $k + 1, // 此id只要保证当前的数组中是唯一的即可
'title' => $public_type_arr[$v] ?? '无名菜单',
'title' => $publish_type_arr[$v] ?? '无名菜单',
'icon' => 'feather icon-circle',
'uri' => admin_url('/product/list?type=' . $v),
'parent_id' => '9999',

2
app/Models/Supplier.php

@ -9,7 +9,7 @@ class Supplier extends BaseModel
{
use HasFactory, SoftDeletes;
protected $casts = ['public_type' => 'json'];
protected $casts = ['publish_type' => 'json'];
//密码修改
public function setPasswordAttribute($value)

2
resources/lang/zh_CN/product.php

@ -20,7 +20,7 @@ return [
'supplier' => trans('supplier.fields'),
],
'options' => [
'public_type' => [
'publish_type' => [
0 => '旅游线路',
1 => '洒店',
2 => '景区',

2
resources/lang/zh_CN/supplier.php

@ -16,7 +16,7 @@ return [
'director' => '负责人',
'contact_phone' => '联系电话',
'rate' => '分成比例',
'public_type' => '可发布产品类型',
'publish_type' => '可发布产品类型',
],
'options' => [
],

Loading…
Cancel
Save