Browse Source

原价->市场价;现价(售价)->销售价

master
李可松 4 years ago
parent
commit
a2d160de6b
  1. 16
      MySQL_change.sql
  2. 12
      app/AdminAgent/Controllers/AgentProductController.php
  3. 2
      app/AdminAgent/Controllers/GroupOrderController.php
  4. 4
      app/AdminAgent/Controllers/MyBiddingProductController.php
  5. 4
      app/AdminAgent/Controllers/MyDemandProductController.php
  6. 2
      app/AdminGuide/Controllers/MyDemandProductController.php
  7. 4
      app/AdminSupplier/Controllers/MyBiddingProductController.php
  8. 4
      app/AdminSupplier/Controllers/MyDemandProductController.php
  9. 3
      app/AdminSupplier/Controllers/ProductController.php
  10. 10
      resources/js/agent-spec-edit.js
  11. 12
      resources/js/supplier-batch-add-spec.js
  12. 4
      resources/lang/zh_CN/agent-product.php
  13. 2
      resources/lang/zh_CN/demand-product.php
  14. 2
      resources/lang/zh_CN/industry-product.php
  15. 2
      resources/lang/zh_CN/order.php
  16. 5
      resources/lang/zh_CN/product.php

16
MySQL_change.sql

@ -205,3 +205,19 @@ ENGINE=InnoDB;
# 15:24 2021/10/9 # 15:24 2021/10/9
ALTER TABLE `categories` ALTER TABLE `categories`
DROP COLUMN `template`; DROP COLUMN `template`;
# 11:10 2021/10/11
ALTER TABLE `product_specs`
CHANGE COLUMN `original_price` `original_price` DECIMAL(20,2) NOT NULL DEFAULT 0 COMMENT '市场价' AFTER `stock`,
CHANGE COLUMN `price` `price` DECIMAL(20,2) NOT NULL COMMENT '销售价' AFTER `original_price`,
ADD COLUMN `cost_price` DECIMAL(20,2) NOT NULL DEFAULT 0 COMMENT '成本价' AFTER `price`;
# 11:11 2021/10/11 修改注释
ALTER TABLE `products`
CHANGE COLUMN `price` `price` DECIMAL(20,2) NOT NULL COMMENT '销售价' AFTER `title`,
CHANGE COLUMN `original_price` `original_price` DECIMAL(20,2) NOT NULL DEFAULT '0.00' COMMENT '市场价' AFTER `price`;
ALTER TABLE `agent_products`
CHANGE COLUMN `price` `price` DECIMAL(20,2) NOT NULL COMMENT '销售价' AFTER `product_ids`,
CHANGE COLUMN `original_price` `original_price` DECIMAL(20,2) NOT NULL DEFAULT '0.00' COMMENT '市场价' AFTER `price`;

12
app/AdminAgent/Controllers/AgentProductController.php

@ -62,7 +62,7 @@ class AgentProductController extends AdminController
/*$grid->column('product_ids', '产品详情') /*$grid->column('product_ids', '产品详情')
->display('查看') ->display('查看')
->modal(function ($modal) { ->modal(function ($modal) {
$titles = ['供应商', '产品标题', '产品图片', '价', '现价', '销量', '库存'];
$titles = ['供应商', '产品标题', '产品图片', '市场价', '现价', '销量', '库存'];
$pic = isset($this->product->picture) $pic = isset($this->product->picture)
? "<img data-action=\"preview-img\" src=\"{$this->product->picture}\" style=\"max-width:80px;max-height:200px;cursor:pointer\" class=\"img img-thumbnail\">" ? "<img data-action=\"preview-img\" src=\"{$this->product->picture}\" style=\"max-width:80px;max-height:200px;cursor:pointer\" class=\"img img-thumbnail\">"
: ''; : '';
@ -220,8 +220,8 @@ class AgentProductController extends AdminController
$form->text('stock', '您的库存')->required() $form->text('stock', '您的库存')->required()
//如果库存大于供应商库存,则取供应商库存 //如果库存大于供应商库存,则取供应商库存
->customFormat(fn() => isset($this->product_spec['stock'], $this->stock) && $this->stock > $this->product_spec['stock'] ? $this->product_spec['stock'] : $this->stock); ->customFormat(fn() => isset($this->product_spec['stock'], $this->stock) && $this->stock > $this->product_spec['stock'] ? $this->product_spec['stock'] : $this->stock);
$form->text('original_price', '您的价')->required();
$form->text('price', '您的售价')->required();
$form->text('original_price', '您的市场价')->required();
$form->text('price', '您的售价')->required();
Admin::style('.has-many-spec .add.btn{display:none;} Admin::style('.has-many-spec .add.btn{display:none;}
.has-many-spec .field_date{width:100px!important;} .has-many-spec .field_date{width:100px!important;}
.has-many-spec .col-md-12{padding:0;} .has-many-spec .col-md-12{padding:0;}
@ -436,7 +436,7 @@ class AgentProductController extends AdminController
/*} else if ($product->stock < $form->stock) { /*} else if ($product->stock < $form->stock) {
return $form->response()->error("供应商当前库存为{$product->stock},你设置的库存不能超过该数值");*/ return $form->response()->error("供应商当前库存为{$product->stock},你设置的库存不能超过该数值");*/
} else if ($form->price < $product->price) { } else if ($form->price < $product->price) {
return $form->response()->error("产品售价不能小于供应商售价{$product->price}");
return $form->response()->error("产品售价不能小于供应商售价{$product->price}");
} }
$form->title = $product->title; $form->title = $product->title;
$form->pictures = $product->pictures; $form->pictures = $product->pictures;
@ -477,7 +477,7 @@ class AgentProductController extends AdminController
$total_price = Product::query()->whereIn('id', $product_ids)->sum('price'); $total_price = Product::query()->whereIn('id', $product_ids)->sum('price');
if ($form->price < $total_price) { if ($form->price < $total_price) {
return $form->response()->error("产品售价不能小于供应商产品总售价{$total_price}");
return $form->response()->error("产品售价不能小于供应商产品总售价{$total_price}");
} }
//如果是计调版旅行社,标记为是云产品 //如果是计调版旅行社,标记为是云产品
@ -511,7 +511,7 @@ class AgentProductController extends AdminController
} else if ($cloud_product->stock < $form->stock) { } else if ($cloud_product->stock < $form->stock) {
return $form->response()->error("计调云产品当前库存为{$cloud_product->stock},你设置的库存不能超过该数值"); return $form->response()->error("计调云产品当前库存为{$cloud_product->stock},你设置的库存不能超过该数值");
} else if ($form->price < $cloud_product->price) { } else if ($form->price < $cloud_product->price) {
return $form->response()->error("产品售价不能小于计调云产品售价{$cloud_product->price}");
return $form->response()->error("产品售价不能小于计调云产品售价{$cloud_product->price}");
} }
//同步关键字段信息 //同步关键字段信息

2
app/AdminAgent/Controllers/GroupOrderController.php

@ -42,7 +42,7 @@ class GroupOrderController extends AdminController
$grid->column('title'); $grid->column('title');
$grid->column('picture')->image('', 60, 60); $grid->column('picture')->image('', 60, 60);
$grid->column('agent_cloud_pid', '产品ID'); $grid->column('agent_cloud_pid', '产品ID');
$grid->column('agent_cloud_price', '售价');
$grid->column('agent_cloud_price', '售价');
$grid->column('guide.name', '地接名称')->display(fn() => $this->guide->name); $grid->column('guide.name', '地接名称')->display(fn() => $this->guide->name);
$grid->column('guide.contact_phone', '地接电话')->display(fn() => $this->guide->contact_phone); $grid->column('guide.contact_phone', '地接电话')->display(fn() => $this->guide->contact_phone);
$grid->column('paid_at'); $grid->column('paid_at');

4
app/AdminAgent/Controllers/MyBiddingProductController.php

@ -41,8 +41,8 @@ class MyBiddingProductController extends AdminController
$grid->column('product.category.name', '产品分类'); $grid->column('product.category.name', '产品分类');
$grid->column('product.title','产品标题'); $grid->column('product.title','产品标题');
$grid->column('product.picture','产品图片')->image('', 60, 60); $grid->column('product.picture','产品图片')->image('', 60, 60);
$grid->column('product.price','产品售价');
$grid->column('product.original_price','产品价');
$grid->column('product.price','产品售价');
$grid->column('product.original_price','产品市场价');
$grid->column('product.stock','产品库存'); $grid->column('product.stock','产品库存');
$grid->column('product.sale','产品销量'); $grid->column('product.sale','产品销量');
$grid->column('product.status','产品状态')->using(ProductStatus::array()); $grid->column('product.status','产品状态')->using(ProductStatus::array());

4
app/AdminAgent/Controllers/MyDemandProductController.php

@ -51,8 +51,8 @@ class MyDemandProductController extends AdminController
$grid->column('product.category.name', '产品分类'); $grid->column('product.category.name', '产品分类');
$grid->column('product.title','产品标题'); $grid->column('product.title','产品标题');
$grid->column('product.picture','产品图片')->image('', 60, 60); $grid->column('product.picture','产品图片')->image('', 60, 60);
$grid->column('product.price','产品售价');
$grid->column('product.original_price','产品价');
$grid->column('product.price','产品售价');
$grid->column('product.original_price','产品市场价');
$grid->column('product.stock','产品库存'); $grid->column('product.stock','产品库存');
$grid->column('product.sale','产品销量'); $grid->column('product.sale','产品销量');
$grid->column('product.status','产品状态')->using(ProductStatus::array()); $grid->column('product.status','产品状态')->using(ProductStatus::array());

2
app/AdminGuide/Controllers/MyDemandProductController.php

@ -48,7 +48,7 @@ class MyDemandProductController extends AdminController
$grid->column('agentProduct.picture', '产品图片')->image('', 60, 60); $grid->column('agentProduct.picture', '产品图片')->image('', 60, 60);
$grid->column('agentProduct.title', '产品名称')->limit(15); $grid->column('agentProduct.title', '产品名称')->limit(15);
$grid->column('agentProduct.price','产品价格'); $grid->column('agentProduct.price','产品价格');
$grid->column('agentProduct.original_price','产品价');
$grid->column('agentProduct.original_price','产品市场价');
$grid->column('agentProduct.sale','产品销量'); $grid->column('agentProduct.sale','产品销量');
$grid->column('agentProduct.stock','产品库存'); $grid->column('agentProduct.stock','产品库存');

4
app/AdminSupplier/Controllers/MyBiddingProductController.php

@ -41,8 +41,8 @@ class MyBiddingProductController extends AdminController
$grid->column('product.category.name', '产品分类'); $grid->column('product.category.name', '产品分类');
$grid->column('product.title','产品标题'); $grid->column('product.title','产品标题');
$grid->column('product.picture','产品图片')->image('', 60, 60); $grid->column('product.picture','产品图片')->image('', 60, 60);
$grid->column('product.price','产品售价');
$grid->column('product.original_price','产品价');
$grid->column('product.price','产品售价');
$grid->column('product.original_price','产品市场价');
$grid->column('product.stock','产品库存'); $grid->column('product.stock','产品库存');
$grid->column('product.sale','产品销量'); $grid->column('product.sale','产品销量');
$grid->column('product.status','产品状态')->using(ProductStatus::array()); $grid->column('product.status','产品状态')->using(ProductStatus::array());

4
app/AdminSupplier/Controllers/MyDemandProductController.php

@ -49,8 +49,8 @@ class MyDemandProductController extends AdminController
$grid->column('product.category.name', '产品分类'); $grid->column('product.category.name', '产品分类');
$grid->column('product.title','产品标题'); $grid->column('product.title','产品标题');
$grid->column('product.picture','产品图片')->image('', 60, 60); $grid->column('product.picture','产品图片')->image('', 60, 60);
$grid->column('product.price','产品售价');
$grid->column('product.original_price','产品价');
$grid->column('product.price','产品售价');
$grid->column('product.original_price','产品市场价');
$grid->column('product.stock','产品库存'); $grid->column('product.stock','产品库存');
$grid->column('product.sale','产品销量'); $grid->column('product.sale','产品销量');
$grid->column('product.status','产品状态')->using(ProductStatus::array()); $grid->column('product.status','产品状态')->using(ProductStatus::array());

3
app/AdminSupplier/Controllers/ProductController.php

@ -139,6 +139,7 @@ class ProductController extends AdminController
$form->text('stock')->required(); $form->text('stock')->required();
$form->text('original_price')->required(); $form->text('original_price')->required();
$form->text('price')->required(); $form->text('price')->required();
$form->text('cost_price')->required();
Admin::style('.field_date{width:100px!important;} Admin::style('.field_date{width:100px!important;}
.has-many-spec .col-md-12{padding:0;} .has-many-spec .col-md-12{padding:0;}
.has-many-spec .add.btn{display:none;} .has-many-spec .add.btn{display:none;}
@ -290,7 +291,7 @@ class ProductController extends AdminController
return $form->response()->error('请输入产品规格'); return $form->response()->error('请输入产品规格');
} }
//处理库存、原价、售价
//处理库存、市场价、销售价
$form->hidden(['stock', 'original_price', 'price']); $form->hidden(['stock', 'original_price', 'price']);
$form->stock = array_sum(array_column($spec, 'stock')); $form->stock = array_sum(array_column($spec, 'stock'));
$form->original_price = min(array_column($spec, 'original_price')); $form->original_price = min(array_column($spec, 'original_price'));

10
resources/js/agent-spec-edit.js

@ -1,6 +1,6 @@
$(function () { $(function () {
$('.has-many-spec .add.btn') $('.has-many-spec .add.btn')
.after('<div class="btn btn-spec spec-sync btn-primary btn-outline btn-sm" style="margin-left:10px;"><i class="feather icon-plus"></i>&nbsp;同步供应商最新规格</div><div class="btn btn-spec batch-stock btn-primary btn-outline btn-sm" style="margin-left:10px;"><i class="feather icon-plus"></i>&nbsp;批量设置库存</div><div class="btn btn-spec batch-original-price btn-primary btn-outline btn-sm" style="margin-left:10px;"><i class="feather icon-plus"></i>&nbsp;批量设置价</div><div class="btn btn-spec batch-price btn-primary btn-outline btn-sm" style="margin-left:10px;"><i class="feather icon-plus"></i>&nbsp;批量设置售价</div>');
.after('<div class="btn btn-spec spec-sync btn-primary btn-outline btn-sm" style="margin-left:10px;"><i class="feather icon-plus"></i>&nbsp;同步供应商最新规格</div><div class="btn btn-spec batch-stock btn-primary btn-outline btn-sm" style="margin-left:10px;"><i class="feather icon-plus"></i>&nbsp;批量设置库存</div><div class="btn btn-spec batch-original-price btn-primary btn-outline btn-sm" style="margin-left:10px;"><i class="feather icon-plus"></i>&nbsp;批量设置市场价</div><div class="btn btn-spec batch-price btn-primary btn-outline btn-sm" style="margin-left:10px;"><i class="feather icon-plus"></i>&nbsp;批量设置售价</div>');
//同步最新规格 //同步最新规格
var template = $('template.spec-tpl').html(); var template = $('template.spec-tpl').html();
@ -74,9 +74,9 @@ $(function () {
}); });
}); });
//批量设置
//批量设置市场
$('.batch-original-price').click(function () { $('.batch-original-price').click(function () {
var num = prompt('请输入加价金额(在供应商售价基础上加)');
var num = prompt('请输入加价金额(在供应商售价基础上加)');
if (!/^\d+$/.test(num)) { if (!/^\d+$/.test(num)) {
return; return;
} }
@ -88,9 +88,9 @@ $(function () {
}); });
}); });
//批量售价
//批量售价
$('.batch-price').click(function () { $('.batch-price').click(function () {
var num = prompt('请输入加价金额(在供应商售价基础上加)');
var num = prompt('请输入加价金额(在供应商售价基础上加)');
if (!/^\d+$/.test(num)) { if (!/^\d+$/.test(num)) {
return; return;
} }

12
resources/js/supplier-batch-add-spec.js

@ -50,16 +50,21 @@ $(function () {
return; return;
} }
var original_price = prompt('请输入默认价');
var original_price = prompt('请输入默认市场价');
if (!original_price) { if (!original_price) {
return; return;
} }
var price = prompt('请输入默认售价');
var price = prompt('请输入默认售价');
if (!price) { if (!price) {
return; return;
} }
var cost_price = prompt('请输入默认成本价');
if (!cost_price) {
return;
}
$('template.spec-tpl .field_name').prop('value', name); $('template.spec-tpl .field_name').prop('value', name);
var html = $('template.spec-tpl').html(); var html = $('template.spec-tpl').html();
@ -68,7 +73,8 @@ $(function () {
'date': date, 'date': date,
'stock': stock, 'stock': stock,
'original_price': original_price, 'original_price': original_price,
'price': price
'price': price,
'cost_price': cost_price,
}; };
for (var key in fields) { for (var key in fields) {
html = html.replace('name="spec[new___LA_KEY__][' + key + ']" value=""', 'name="spec[new___LA_KEY__][' + key + ']" value="' + fields[key] + '"'); html = html.replace('name="spec[new___LA_KEY__][' + key + ']" value=""', 'name="spec[new___LA_KEY__][' + key + ']" value="' + fields[key] + '"');

4
resources/lang/zh_CN/agent-product.php

@ -8,8 +8,8 @@ return [
'fields' => [ 'fields' => [
'agent_id' => '代理商ID', 'agent_id' => '代理商ID',
'product_id' => '供应商产品ID', 'product_id' => '供应商产品ID',
'price' => '售价',
'original_price' => '价',
'price' => '售价',
'original_price' => '市场价',
'sale' => '销量', 'sale' => '销量',
'stock' => '库存', 'stock' => '库存',
'channel_id' => '频道', 'channel_id' => '频道',

2
resources/lang/zh_CN/demand-product.php

@ -11,7 +11,7 @@ return [
'category_id' => '产品分类ID', 'category_id' => '产品分类ID',
'content' => '产品详情', 'content' => '产品详情',
'know' => '旅客须知', 'know' => '旅客须知',
'original_price' => '价',
'original_price' => '市场价',
'picture' => '产品图片', 'picture' => '产品图片',
'pictures' => '产品图片', 'pictures' => '产品图片',
'price' => '价格', 'price' => '价格',

2
resources/lang/zh_CN/industry-product.php

@ -13,7 +13,7 @@ return [
'pictures' => '产品图片', 'pictures' => '产品图片',
'picture' => '产品图片', 'picture' => '产品图片',
'price' => '售价', 'price' => '售价',
'original_price' => '价',
'original_price' => '市场价',
'stock' => '库存量', 'stock' => '库存量',
'sale' => '销量', 'sale' => '销量',
'status' => '状态', 'status' => '状态',

2
resources/lang/zh_CN/order.php

@ -25,7 +25,7 @@ return [
'title' => '产品名称', 'title' => '产品名称',
'user_id' => '用户ID', 'user_id' => '用户ID',
'agent_cloud_pid' => '计调云产品ID', 'agent_cloud_pid' => '计调云产品ID',
'agent_cloud_price' => '计调云产品售价',
'agent_cloud_price' => '计调云产品售价',
'timeout' => '超时时间', 'timeout' => '超时时间',
'created_at' => '下单时间', 'created_at' => '下单时间',
], ],

5
resources/lang/zh_CN/product.php

@ -8,10 +8,11 @@ return [
'category_id' => '产品分类ID', 'category_id' => '产品分类ID',
'content' => '产品详情', 'content' => '产品详情',
'know' => '旅游须知', 'know' => '旅游须知',
'original_price' => '价',
'original_price' => '市场价',
'pictures' => '产品图片', 'pictures' => '产品图片',
'picture' => '产品图片', 'picture' => '产品图片',
'price' => '售价',
'price' => '销售价',
'cost_price' => '成本价',
'sale' => '销量', 'sale' => '销量',
'service_persons' => '单库存服务用户数', 'service_persons' => '单库存服务用户数',
'status' => '状态', 'status' => '状态',

Loading…
Cancel
Save