Quellcode durchsuchen

Merge remote-tracking branch 'origin/develop' into develop

xieruidong vor 2 Jahren
Ursprung
Commit
08c0b35f30

+ 1 - 1
app/data/controller/shop/Cate.php

@@ -18,7 +18,7 @@ class Cate extends Controller
      * 最大级别
      * @var integer
      */
-    protected $maxLevel = 5;
+    protected $maxLevel = 2;
 
     /**
      * 商品分类管理

+ 61 - 6
app/data/controller/shop/Goods.php

@@ -14,6 +14,7 @@ use app\data\service\ExpressService;
 use app\data\service\GoodsService;
 use think\admin\Controller;
 use think\admin\extend\CodeExtend;
+use think\admin\service\AdminService;
 
 /**
  * 商品数据管理
@@ -32,12 +33,18 @@ class Goods extends Controller
      */
     public function index()
     {
-        $this->title = '商品数据管理';
 
+        $this->title = '商品数据管理';
+        if(AdminService::getUserId()==10000){
+            $admin_id = [];
+        }
+        else{
+            $admin_id['admin_id']=AdminService::getUserId();
+        }
         $query = ShopGoods::mQuery();
         // 加载对应数据
         $this->type = $this->request->get('type', 'index');
-        if ($this->type === 'index') $query->where(['deleted' => 0]);
+        if ($this->type === 'index') $query->where($admin_id)->where(['deleted' => 0]);
         elseif ($this->type === 'recycle') $query->where(['deleted' => 1]);
         else $this->error("无法加载 {$this->type} 数据列表!");
 
@@ -142,28 +149,40 @@ class Goods extends Controller
             $this->payments = BaseUserPayment::mk()->where(['status' => 1, 'deleted' => 0])->order('sort desc,id desc')->column('type,code,name', 'code');
             $this->discounts = BaseUserDiscount::mk()->where(['status' => 1, 'deleted' => 0])->order('sort desc,id desc')->column('id,name,items', 'id');
             // 商品规格处理
-            $fields = 'goods_sku `sku`,goods_code,goods_spec `key`,price_selling `selling`,price_market `market`,number_virtual `virtual`,number_express `express`,reward_balance `balance`,reward_integral `integral`,status';
+            $fields = 'goods_sku `sku`,goods_code,goods_spec `key`,stock_total `stock`,price_selling `selling`,price_market `market`,number_virtual `virtual`,number_express `express`,reward_balance `balance`,reward_integral `integral`,status';
             $data['data_items'] = json_encode(ShopGoodsItem::mk()->where(['goods_code' => $data['code']])->column($fields, 'goods_spec'), JSON_UNESCAPED_UNICODE);
         } elseif ($this->request->isPost()) {
+
+            $data['admin_id']=AdminService::getUserId();
+            $data['examine']=0;
+
             if (empty($data['cover'])) $this->error('商品图片不能为空!');
             if (empty($data['slider'])) $this->error('轮播图片不能为空!');
-            if (empty($data['payment'])) $this->error('支付方式不能为空!');
+//            if (empty($data['payment'])) $this->error('支付方式不能为空!');
             // 商品规格保存
+
             [$data['price_market'], $data['price_selling']] = [0, 0];
+            $data['stock_total']=10;
             [$count, $items] = [0, array_column(json_decode($data['data_items'], true), 0)];
             foreach ($items as $item) if ($item['status'] > 0) {
+
                 if ($data['price_market'] === 0 || $data['price_market'] > $item['market']) $data['price_market'] = $item['market'];
                 if ($data['price_selling'] === 0 || $data['price_selling'] > $item['selling']) $data['price_selling'] = $item['selling'];
+                $data['stock_total']+=$item['stock'];
+
                 $count++;
+
+
             }
             if (empty($count)) $this->error('无效的的商品价格信息!');
             $data['marks'] = arr2str($data['marks'] ?? []);
-            $data['payment'] = arr2str($data['payment'] ?? []);
+//            $data['payment'] = arr2str($data['payment'] ?? []);
             ShopGoodsItem::mk()->where(['goods_code' => $data['code']])->update(['status' => 0]);
             foreach ($items as $item) data_save(ShopGoodsItem::class, [
                 'goods_sku'       => $item['sku'],
                 'goods_spec'      => $item['key'],
                 'goods_code'      => $data['code'],
+                'stock_total'     => $item['stock'],
                 'price_market'    => $item['market'],
                 'price_selling'   => $item['selling'],
                 'number_virtual'  => $item['virtual'],
@@ -171,6 +190,7 @@ class Goods extends Controller
                 'reward_balance'  => $item['balance'],
                 'reward_integral' => $item['integral'],
                 'status'          => $item['status'] ? 1 : 0,
+                'admin_id'        => $data['admin_id']
             ], 'goods_spec', [
                 'goods_code' => $data['code'],
             ]);
@@ -187,7 +207,7 @@ class Goods extends Controller
     protected function _form_result(bool $result)
     {
         if ($result && $this->request->isPost()) {
-            GoodsService::stock(input('code'));
+//            GoodsService::stock(input('code'));
             $this->success('商品编辑成功!', 'javascript:history.back()');
         }
     }
@@ -251,4 +271,39 @@ class Goods extends Controller
             'deleted.require' => '状态值不能为空!',
         ]), 'code');
     }
+    /**
+     * 商品数据审核
+     * @auth true
+     * @menu true
+     * @throws \think\db\exception\DataNotFoundException
+     * @throws \think\db\exception\DbException
+     * @throws \think\db\exception\ModelNotFoundException
+     */
+    public function examine()
+    {
+
+        $this->title = '商品数据审核';
+        $query = ShopGoods::mQuery();
+        // 加载对应数据
+        $query->where(['deleted' => 0]);
+        // 列表排序并显示
+        $query->where('examine',0)->like('code|name#name')->like('marks,cateids', ',');
+        $query->equal('status,vip_entry,truck_type,rebate_type')->order('sort desc,id desc')->page();
+    }
+    /**
+     * 商品审核
+     * @auth true
+     * @menu true
+     * @throws \think\db\exception\DataNotFoundException
+     * @throws \think\db\exception\DbException
+     * @throws \think\db\exception\ModelNotFoundException
+     */
+    public function examinex()
+    {
+
+        ShopGoods::mSave($this->_vali([
+            'examine.in:0,1,2'  => '状态值范围异常!',
+            'examine.require' => '状态值不能为空!',
+        ]), 'code');
+    }
 }

+ 1 - 1
app/data/view/shop/cate/form.html

@@ -11,7 +11,7 @@
                 <option value='{$cate.id}'>{$cate.spl|raw}{$cate.name}</option>
                 {/eq}{/foreach}
             </select>
-            <span class="help-block"><b>必选,</b>请选择上级分类或顶级分类(目前最多支持{$cateLevel|default=0}级分类)</span>
+            <span class="help-block"><b>必选,</b>请选择上级分类或顶级分类(目前最多支持级分类)</span>
         </div>
 
         <label class="layui-form-item relative block">

+ 6 - 7
app/data/view/shop/cate/index.html

@@ -72,13 +72,12 @@
 <!-- 操控面板的模板 -->
 <script type="text/html" id="toolbar">
 
-    <!--{if auth('add')}-->
-    {{# if(d.spt<'{$maxLevel-1}'){ }}
-    <a class="layui-btn layui-btn-sm layui-btn-primary" data-title="添加商品分类" data-modal='{:url("add")}?pid={{d.id}}'>添 加</a>
-    {{# }else{ }}
-    <a class="layui-btn layui-btn-sm layui-btn-disabled">添 加</a>
-    {{# } }}
-    <!--{/if}-->
+<!--    &lt;!&ndash;{if auth('add')}&ndash;&gt;-->
+<!--    {{# if(d.spt>'{$maxLevel-1}'){ }}-->
+
+<!--    <a class="layui-btn layui-btn-sm layui-btn-disabled">添 加</a>-->
+<!--    {{# } }}-->
+<!--    &lt;!&ndash;{/if}&ndash;&gt;-->
 
     <!--{if auth('edit')}-->
     <a class="layui-btn layui-btn-sm" data-title="编辑商品分类" data-modal='{:url("edit")}?id={{d.id}}'>编 辑</a>

+ 99 - 0
app/data/view/shop/goods/examine.html

@@ -0,0 +1,99 @@
+{extend name="../../admin/view/main"}
+
+{block name="button"}
+<!--{if auth("add")}-->
+<button class='layui-btn layui-btn-sm layui-btn-primary' data-open='{:url("add")}'>添加商品</button>
+<!--{/if}-->
+
+{if isset($type) and $type eq 'index'}
+<!--{if auth("remove")}-->
+<button class='layui-btn layui-btn-sm layui-btn-primary' data-action='{:url("remove")}' data-rule="code#{key};deleted#1">删除商品</button>
+<!--{/if}-->
+{else}
+<!--{if auth("remove")}-->
+<button class='layui-btn layui-btn-sm layui-btn-primary' data-action='{:url("remove")}' data-confirm="确定要恢复这些数据吗?" data-rule="code#{key};deleted#0">恢复商品</button>
+<!--{/if}-->
+{/if}
+
+<!--{if auth("goods.mark/index")}-->
+<button class='layui-btn layui-btn-sm layui-btn-primary' data-modal='{:url("shop.mark/index")}' data-title="标签管理" data-width="920px">标签管理</button>
+<!--{/if}-->
+{/block}
+
+{block name="content"}
+<div class="layui-tab layui-tab-card think-bg-white">
+    <ul class="layui-tab-title">
+        {foreach ['index'=>'商品管理','recycle'=>'回 收 站'] as $k=>$v}
+        {if isset($type) and $type eq $k}
+        <li class="layui-this" data-open="{:url('index')}?type={$k}">{$v}</li>
+        {else}
+        <li data-open="{:url('index')}?type={$k}">{$v}</li>
+        {/if}{/foreach}
+    </ul>
+    <div class="layui-tab-content">
+        {include file='shop/goods/index_search'}
+        <table class="layui-table margin-top-10" lay-skin="line">
+            {notempty name='list'}
+            <thead>
+            <tr>
+                <th class='list-table-check-td think-checkbox'>
+                    <label><input data-auto-none data-check-target='.list-check-box' type='checkbox'></label>
+                </th>
+<!--                <th class='list-table-sort-td'>-->
+<!--                    <button class="layui-btn layui-btn-xs" data-reload type="button">刷 新</button>-->
+<!--                </th>-->
+                <th class='text-left nowrap'>商品信息</th>
+                <th class='text-left nowrap'>商品分类</th>
+<!--                <th class='text-left nowrap'>商品状态</th>-->
+                <th>操作</th>
+            </tr>
+            </thead>
+            {/notempty}
+            <tbody>
+            {foreach $list as $key=>$vo}
+            <tr>
+                <td class='list-table-check-td think-checkbox'>
+                    <label><input class="list-check-box" type='checkbox' value='{$vo.code}'></label>
+                </td>
+<!--                <td class='list-table-sort-td'>-->
+<!--                    <label><input class="list-sort-input" data-action-blur="{:sysuri()}" data-loading="false" data-value="id#{$vo.id};action#sort;sort#{value}" value="{$vo.sort}"></label>-->
+<!--                </td>-->
+                <td class='nowrap'>
+                    {notempty name='vo.cover'}
+                    <div class="headimg headimg-no" data-tips-hover data-tips-image data-lazy-src="{$vo.cover}"></div>
+                    {/notempty}
+                    <div class="inline-block sub-span-blue">
+                        <div>商品名称:<span>{$vo.name|default='--'}</span></div>
+                        <div>商品编号:<span>{$vo.code|default='--'}</span></div>
+                    </div>
+                </td>
+                <td>
+                    <div>
+                        {notempty name='vo.marks'}{foreach $vo.marks as $mark}
+                        <span class="notselect nowrap layui-badge layui-bg-cyan">{$mark}</span>
+                        {/foreach}{/notempty}
+                    </div>
+                    <div class="nowrap">
+                        {notempty name='vo.cateinfo'}
+                        {:join('<span class="layui-icon layui-icon-right font-s10 color-blue"></span>', $vo.cateinfo.names)}
+                        {/notempty}
+                    </div>
+                </td>
+<!--                <td class='nowrap'>-->
+<!--                    库存 <b>{$vo.stock_total}</b> 件;( 已销售 <b>{$vo.stock_sales}</b> 件 )-->
+<!--                    <div class="notselect margin-top-5">-->
+<!--                        {eq name='vo.status' value='0'}<span class="layui-badge layui-bg-gray layui-border-red">已下架</span>{else}<span class="layui-badge layui-bg-gray layui-border-green">销售中</span>{/eq}-->
+<!--                    </div>-->
+<!--                </td>-->
+                <td class='nowrap sub-strong-blue'>
+                    <a class="layui-btn layui-btn-xs layui-btn-warm" data-action="{:url('examinex')}" data-value="code#{$vo.code};examine#1">通 过</a>
+                    <a class="layui-btn layui-btn-xs layui-btn-primary" data-action="{:url('examinex')}" data-value="code#{$vo.code};examine#2">拒 绝</a>
+                </td>
+            </tr>
+            {/foreach}
+            </tbody>
+        </table>
+        {empty name='list'}<span class="notdata">没有记录哦</span>{else}{$pagehtml|raw|default=''}{/empty}
+    </div>
+</div>
+{/block}

+ 113 - 105
app/data/view/shop/goods/form.html

@@ -23,20 +23,20 @@
         <!--{/notempty}-->
 
         <!--{notempty name='payments'}-->
-        <div class="layui-form-item label-required-prev">
-            <span class="help-label"><b>支付方式</b>Goods Payment</span>
-            <div class="layui-textarea help-checks">
-                {foreach $payments as $payment}
-                <label class="think-checkbox">
-                    {if isset($vo.payment) && is_array($vo.payment) && in_array($payment.code, $vo.payment)}
-                    <input name="payment[]" type="checkbox" value="{$payment.code}" lay-ignore checked> {$payment.name}
-                    {else}
-                    <input name="payment[]" type="checkbox" value="{$payment.code}" lay-ignore> {$payment.name}
-                    {/if}
-                </label>
-                {/foreach}
-            </div>
-        </div>
+<!--        <div class="layui-form-item label-required-prev">-->
+<!--            <span class="help-label"><b>支付方式</b>Goods Payment</span>-->
+<!--            <div class="layui-textarea help-checks">-->
+<!--                {foreach $payments as $payment}-->
+<!--                <label class="think-checkbox">-->
+<!--                    {if isset($vo.payment) && is_array($vo.payment) && in_array($payment.code, $vo.payment)}-->
+<!--                    <input name="payment[]" type="checkbox" value="{$payment.code}" lay-ignore checked> {$payment.name}-->
+<!--                    {else}-->
+<!--                    <input name="payment[]" type="checkbox" value="{$payment.code}" lay-ignore> {$payment.name}-->
+<!--                    {/if}-->
+<!--                </label>-->
+<!--                {/foreach}-->
+<!--            </div>-->
+<!--        </div>-->
         <!--{/notempty}-->
 
         <!--{notempty name='cates'}-->
@@ -97,97 +97,97 @@
             </table>
         </div>
 
-        <div class="goods-item-box">
-            <div class="flex flex-wrap">
-                <fieldset class="layui-bg-gray">
-                    <legend><span class="layui-badge think-bg-violet">商品返利配置</span></legend>
-                    <div>
-                        {foreach ['非返利商品,其代理不会获得奖励','是返利商品,其代理将会获得奖励'] as $k => $v}
-                        {if (isset($vo.rebate_type) and $vo.rebate_type eq $k) or (empty($vo.rebate_type) and $k eq 0)}
-                        <input checked name="rebate_type" title="{$v}" type="radio" value="{$k}">
-                        {else}
-                        <input name="rebate_type" title="{$v}" type="radio" value="{$k}">
-                        {/if}{/foreach}
-                    </div>
-                </fieldset>
-                <fieldset class="layui-bg-gray">
-                    <legend><span class="layui-badge think-bg-violet">入会礼包配置</span></legend>
-                    <div>
-                        {foreach ['非入会礼包,购买后不会升级等级','是入会礼包,购买后升级会员等级'] as $k=>$v}
-                        {if (isset($vo.vip_entry) and $vo.vip_entry eq $k) or (empty($vo.vip_entry) and $k eq 0)}
-                        <input checked lay-filter="vip_entry" name="vip_entry" title="{$v}" type="radio" value="{$k}">
-                        {else}
-                        <input lay-filter="vip_entry" name="vip_entry" title="{$v}" type="radio" value="{$k}">
-                        {/if}{/foreach}
-                    </div>
-                </fieldset>
-                <!--{notempty name='upgrades'}-->
-                <fieldset class="layui-bg-gray">
-                    <legend><span class="layui-badge think-bg-violet">升级用户等级</span></legend>
-                    <label>
-                        <select class="layui-select" lay-filter="vip_upgrade" name="vip_upgrade">
-                            {foreach $upgrades as $upgrade}{if isset($vo.vip_upgrade) and $vo.vip_upgrade eq $upgrade.number}
-                            <option selected value="{$upgrade.number|default=0}">[ {$upgrade.number|default='0'} ] {$upgrade.name|default=''}</option>
-                            {else}
-                            <option value="{$upgrade.number|default=0}">[ {$upgrade.number|default='0'} ] {$upgrade.name|default=''}</option>
-                            {/if}{/foreach}
-                        </select>
-                        <span class="help-block">购买此商品用户可直接升级至此等级!</span>
-                    </label>
-                </fieldset>
-                <!--{/notempty}-->
-                <fieldset class="layui-bg-gray">
-                    <legend><span class="layui-badge think-bg-violet">物流配送发货类型</span></legend>
-                    <div>
-                        {foreach ['虚拟商品,无需物流配送','实物商品,需要物流配送'] as $k=>$v}
-                        {if (isset($vo.truck_type) and $vo.truck_type eq $k) or (empty($vo.truck_type) and $k eq 0)}
-                        <input checked name="truck_type" title="{$v}" type="radio" value="{$k}">
-                        {else}
-                        <input name="truck_type" title="{$v}" type="radio" value="{$k}">
-                        {/if}{/foreach}
-                    </div>
-                </fieldset>
-                <!--{notempty name='discounts'}-->
-                <fieldset class="layui-bg-gray">
-                    <legend><span class="layui-badge think-bg-violet">用户购买折扣方案</span></legend>
-                    <label>
-                        <select class="layui-select" lay-search name="discount_id">
-                            <option value="0"> -- 不设置 --</option>
-                            {foreach $discounts as $discount}{if isset($vo.discount_id) and $vo.discount_id eq $discount.id}
-                            <option selected value="{$discount.id|default=0}">{$discount.name|default='0'}</option>
-                            {else}
-                            <option value="{$discount.id|default=0}">{$discount.name|default='0'}</option>
-                            {/if}{/foreach}
-                        </select>
-                        <span class="help-block">当用户等级达到指定等级后可享有折扣!</span>
-                    </label>
-                </fieldset>
-                <!--{/notempty}-->
-                <!--{notempty name='upgrades'}-->
-                <fieldset class="layui-bg-gray">
-                    <legend><span class="layui-badge think-bg-violet">限制最低购买等级</span></legend>
-                    <label>
-                        <select class="layui-select" name="limit_low_vip">
-                            <option value="0"> -- 不设置 --</option>
-                            {foreach $upgrades as $upgrade}{if isset($vo.limit_low_vip) and $vo.limit_low_vip eq $upgrade.number}
-                            <option selected value="{$upgrade.number|default=0}">[ {$upgrade.number|default='0'} ] {$upgrade.name|default=''}</option>
-                            {else}
-                            <option value="{$upgrade.number|default=0}">[ {$upgrade.number|default='0'} ] {$upgrade.name|default=''}</option>
-                            {/if}{/foreach}
-                        </select>
-                        <span class="help-block">限制此等级及低于此等级的用户不能购买!</span>
-                    </label>
-                </fieldset>
-                <!--{/notempty}-->
-                <fieldset class="layui-bg-gray">
-                    <legend><span class="layui-badge think-bg-violet">商品限购数量</span></legend>
-                    <label>
-                        <input class="layui-input" type="number" min="0" data-blur-number="0" name="limit_max_num" placeholder="请输入商品限购数量" value="{$vo.limit_max_num|default=0}">
-                        <span class="help-block">限制每人可购买数量(为 0 时不限制)!</span>
-                    </label>
-                </fieldset>
-            </div>
-        </div>
+<!--        <div class="goods-item-box">-->
+<!--            <div class="flex flex-wrap">-->
+<!--                <fieldset class="layui-bg-gray">-->
+<!--                    <legend><span class="layui-badge think-bg-violet">商品返利配置</span></legend>-->
+<!--                    <div>-->
+<!--                        {foreach ['非返利商品,其代理不会获得奖励','是返利商品,其代理将会获得奖励'] as $k => $v}-->
+<!--                        {if (isset($vo.rebate_type) and $vo.rebate_type eq $k) or (empty($vo.rebate_type) and $k eq 0)}-->
+<!--                        <input checked name="rebate_type" title="{$v}" type="radio" value="{$k}">-->
+<!--                        {else}-->
+<!--                        <input name="rebate_type" title="{$v}" type="radio" value="{$k}">-->
+<!--                        {/if}{/foreach}-->
+<!--                    </div>-->
+<!--                </fieldset>-->
+<!--                <fieldset class="layui-bg-gray">-->
+<!--                    <legend><span class="layui-badge think-bg-violet">入会礼包配置</span></legend>-->
+<!--                    <div>-->
+<!--                        {foreach ['非入会礼包,购买后不会升级等级','是入会礼包,购买后升级会员等级'] as $k=>$v}-->
+<!--                        {if (isset($vo.vip_entry) and $vo.vip_entry eq $k) or (empty($vo.vip_entry) and $k eq 0)}-->
+<!--                        <input checked lay-filter="vip_entry" name="vip_entry" title="{$v}" type="radio" value="{$k}">-->
+<!--                        {else}-->
+<!--                        <input lay-filter="vip_entry" name="vip_entry" title="{$v}" type="radio" value="{$k}">-->
+<!--                        {/if}{/foreach}-->
+<!--                    </div>-->
+<!--                </fieldset>-->
+<!--                &lt;!&ndash;{notempty name='upgrades'}&ndash;&gt;-->
+<!--                <fieldset class="layui-bg-gray">-->
+<!--                    <legend><span class="layui-badge think-bg-violet">升级用户等级</span></legend>-->
+<!--                    <label>-->
+<!--                        <select class="layui-select" lay-filter="vip_upgrade" name="vip_upgrade">-->
+<!--                            {foreach $upgrades as $upgrade}{if isset($vo.vip_upgrade) and $vo.vip_upgrade eq $upgrade.number}-->
+<!--                            <option selected value="{$upgrade.number|default=0}">[ {$upgrade.number|default='0'} ] {$upgrade.name|default=''}</option>-->
+<!--                            {else}-->
+<!--                            <option value="{$upgrade.number|default=0}">[ {$upgrade.number|default='0'} ] {$upgrade.name|default=''}</option>-->
+<!--                            {/if}{/foreach}-->
+<!--                        </select>-->
+<!--                        <span class="help-block">购买此商品用户可直接升级至此等级!</span>-->
+<!--                    </label>-->
+<!--                </fieldset>-->
+<!--                &lt;!&ndash;{/notempty}&ndash;&gt;-->
+<!--                <fieldset class="layui-bg-gray">-->
+<!--                    <legend><span class="layui-badge think-bg-violet">物流配送发货类型</span></legend>-->
+<!--                    <div>-->
+<!--                        {foreach ['虚拟商品,无需物流配送','实物商品,需要物流配送'] as $k=>$v}-->
+<!--                        {if (isset($vo.truck_type) and $vo.truck_type eq $k) or (empty($vo.truck_type) and $k eq 0)}-->
+<!--                        <input checked name="truck_type" title="{$v}" type="radio" value="{$k}">-->
+<!--                        {else}-->
+<!--                        <input name="truck_type" title="{$v}" type="radio" value="{$k}">-->
+<!--                        {/if}{/foreach}-->
+<!--                    </div>-->
+<!--                </fieldset>-->
+<!--                &lt;!&ndash;{notempty name='discounts'}&ndash;&gt;-->
+<!--                <fieldset class="layui-bg-gray">-->
+<!--                    <legend><span class="layui-badge think-bg-violet">用户购买折扣方案</span></legend>-->
+<!--                    <label>-->
+<!--                        <select class="layui-select" lay-search name="discount_id">-->
+<!--                            <option value="0"> &#45;&#45; 不设置 &#45;&#45;</option>-->
+<!--                            {foreach $discounts as $discount}{if isset($vo.discount_id) and $vo.discount_id eq $discount.id}-->
+<!--                            <option selected value="{$discount.id|default=0}">{$discount.name|default='0'}</option>-->
+<!--                            {else}-->
+<!--                            <option value="{$discount.id|default=0}">{$discount.name|default='0'}</option>-->
+<!--                            {/if}{/foreach}-->
+<!--                        </select>-->
+<!--                        <span class="help-block">当用户等级达到指定等级后可享有折扣!</span>-->
+<!--                    </label>-->
+<!--                </fieldset>-->
+<!--                &lt;!&ndash;{/notempty}&ndash;&gt;-->
+<!--                &lt;!&ndash;{notempty name='upgrades'}&ndash;&gt;-->
+<!--                <fieldset class="layui-bg-gray">-->
+<!--                    <legend><span class="layui-badge think-bg-violet">限制最低购买等级</span></legend>-->
+<!--                    <label>-->
+<!--                        <select class="layui-select" name="limit_low_vip">-->
+<!--                            <option value="0"> &#45;&#45; 不设置 &#45;&#45;</option>-->
+<!--                            {foreach $upgrades as $upgrade}{if isset($vo.limit_low_vip) and $vo.limit_low_vip eq $upgrade.number}-->
+<!--                            <option selected value="{$upgrade.number|default=0}">[ {$upgrade.number|default='0'} ] {$upgrade.name|default=''}</option>-->
+<!--                            {else}-->
+<!--                            <option value="{$upgrade.number|default=0}">[ {$upgrade.number|default='0'} ] {$upgrade.name|default=''}</option>-->
+<!--                            {/if}{/foreach}-->
+<!--                        </select>-->
+<!--                        <span class="help-block">限制此等级及低于此等级的用户不能购买!</span>-->
+<!--                    </label>-->
+<!--                </fieldset>-->
+<!--                &lt;!&ndash;{/notempty}&ndash;&gt;-->
+<!--                <fieldset class="layui-bg-gray">-->
+<!--                    <legend><span class="layui-badge think-bg-violet">商品限购数量</span></legend>-->
+<!--                    <label>-->
+<!--                        <input class="layui-input" type="number" min="0" data-blur-number="0" name="limit_max_num" placeholder="请输入商品限购数量" value="{$vo.limit_max_num|default=0}">-->
+<!--                        <span class="help-block">限制每人可购买数量(为 0 时不限制)!</span>-->
+<!--                    </label>-->
+<!--                </fieldset>-->
+<!--            </div>-->
+<!--        </div>-->
 
         <div class="layui-form-item">
             <span class="help-label label-required-prev"><b>商品规格及商品SKU绑定</b><span class="color-red font-s12">(规格填写后不允许再次修改)</span></span>
@@ -226,6 +226,7 @@
                     <th class="text-center nowrap pointer" data-tips-text="批量设置奖励余额" ng-click="batchSet('balance',2,'请输入赠送账户余额')" width="10%"><b>奖励余额</b> <i class="layui-icon">&#xe63c;</i></th>
                     <th class="text-center nowrap pointer layui-hide" data-tips-text="批量设置奖励积分" ng-click="batchSet('integral',0,'请输入赠送用户积分')" width="10%"><b>奖励积分</b> <i class="layui-icon">&#xe63c;</i></th>
                     <th class="text-center nowrap pointer" data-tips-text="批量设置虚拟销量" ng-click="batchSet('virtual',0,'请输入虚拟销量数值')" width="10%"><b>虚拟销量</b> <i class="layui-icon">&#xe63c;</i></th>
+                    <th class="text-center nowrap pointer" data-tips-text="批量设置库存" ng-click="batchSet('stock',0,'请输入库存数值')" width="10%"><b>库存</b> <i class="layui-icon">&#xe63c;</i></th>
                     <th class="text-center nowrap pointer" data-tips-text="批量设置快递计件" ng-click="batchSet('express',0,'请输入快递计费基数')" width="10%"><b>快递计件</b> <i class="layui-icon">&#xe63c;</i></th>
                     <th class="text-center nowrap pointer" width="08%"><b>销售状态</b></th>
                 </tr>
@@ -265,6 +266,11 @@
                     </td>
                     <td class="padding-0">
                         <label class="padding-0 margin-0">
+                            <input class="layui-input border-0 padding-left-0 text-center" ng-blur="rows[0].virtual=setValue(rows[0].key,'virtual',$event.target.value,'(parseInt(_)||0)')" ng-model="rows[0].stock">
+                        </label>
+                    </td>
+                    <td class="padding-0">
+                        <label class="padding-0 margin-0">
                             <input class="layui-input border-0 padding-left-0 text-center" ng-blur="rows[0].express=setValue(rows[0].key,'express',$event.target.value,'(parseInt(_)||0)')" ng-model="rows[0].express">
                         </label>
                     </td>
@@ -426,6 +432,8 @@
                         item.balance = $rootScope.getValue(item.key, 'balance', '0.00');
                         item.selling = $rootScope.getValue(item.key, 'selling', '0.00');
                         item.integral = $rootScope.getValue(item.key, 'integral', '0');
+                        item.stock = $rootScope.getValue(item.key, 'stock', '0');
+
                         item.express = $rootScope.getValue(item.key, 'express', '1');
                         item.virtual = $rootScope.getValue(item.key, 'virtual', '0');
                         return false;

+ 32 - 16
app/data/view/shop/goods/index.html

@@ -43,9 +43,11 @@
                     <button class="layui-btn layui-btn-xs" data-reload type="button">刷 新</button>
                 </th>
                 <th class='text-left nowrap'>商品信息</th>
-                <th class='text-left nowrap'></th>
+                <th class='text-left nowrap'>商品分类</th>
                 <th class='text-left nowrap'>商品状态</th>
-                <th></th>
+                <th class='text-left nowrap'>审核状态</th>
+
+                <th>操作</th>
             </tr>
             </thead>
             {/notempty}
@@ -80,18 +82,32 @@
                     </div>
                 </td>
                 <td class='nowrap'>
-                    累计库存 <b>{$vo.stock_total}</b> 件,剩余库存 <b>{$vo.stock_total-$vo.stock_sales}</b> 件 ( 已销售 <b>{$vo.stock_sales}</b> 件 )
+                    库存 <b>{$vo.stock_total}</b> 件;( 已销售 <b>{$vo.stock_sales}</b> 件 )
+                    <div class="notselect margin-top-5">
+                        {eq name='vo.status' value='0'}
+                        <span class="layui-badge layui-bg-gray layui-border-red">已下架</span>
+                        {else}
+                        <span class="layui-badge layui-bg-gray layui-border-green">销售中</span>
+                        {/eq}
+                    </div>
+                </td>
+                <td class='nowrap'>
                     <div class="notselect margin-top-5">
-                        {eq name='vo.status' value='0'}<span class="layui-badge layui-bg-gray layui-border-red">已下架</span>{else}<span class="layui-badge layui-bg-gray layui-border-green">销售中</span>{/eq}
-                        {eq name='vo.vip_entry' value='0'}<span class="layui-badge layui-bg-gray layui-border-blue">非入会礼包</span>{else}<span class="layui-badge layui-bg-gray layui-border-green">是入会礼包</span>{/eq}
-                        {eq name='vo.truck_type' value='0'}<span class="layui-badge layui-bg-gray layui-border-blue">无需发货</span>{else}<span class="layui-badge layui-bg-gray layui-border-green">需要发货</span>{/eq}
-                        {eq name='vo.rebate_type' value='0'}<span class="layui-badge layui-bg-gray layui-border-blue">非返利商品</span>{else}<span class="layui-badge layui-bg-gray layui-border-green">是返利商品</span>{/eq}
+                        {eq name='vo.examine' value='0'}
+                        <span class="layui-badge layui-bg-gray layui-border-red">审核中</span>
+                        {/eq}
+                        {eq name='vo.examine' value='1'}
+                        <span class="layui-badge layui-bg-gray layui-border-green">审核通过</span>
+                        {/eq}
+                        {eq name='vo.examine' value='2'}
+                        <span class="layui-badge layui-bg-gray layui-border-green">审核被拒</span>
+                        {/eq}
                     </div>
                 </td>
                 <td class='nowrap sub-strong-blue'>
 
                     <!--{if auth('copy')}-->
-                    <a class="layui-btn layui-btn-xs layui-btn-normal" data-open='{:url("copy")}?code={$vo.code}'>复 制</a>
+<!--                    <a class="layui-btn layui-btn-xs layui-btn-normal" data-open='{:url("copy")}?code={$vo.code}'>复 制</a>-->
                     <!--{/if}-->
 
                     <!--{if auth("edit")}-->
@@ -115,18 +131,18 @@
                     <!--{/if}-->
                     {/if}
                     <!--{if auth("stock")}-->
-                    <a class="layui-btn layui-btn-xs layui-btn-normal" data-modal='{:url("stock")}?code={$vo.code}' data-title="商品入库">入 库</a>
-                    <!--{else}-->
-                    <a class="layui-btn layui-btn-xs layui-btn-primary layui-disabled" data-tips-text="您没有商品入库的权限哦!">入 库</a>
+<!--                    <a class="layui-btn layui-btn-xs layui-btn-normal" data-modal='{:url("stock")}?code={$vo.code}' data-title="商品入库">入 库</a>-->
+<!--                    &lt;!&ndash;{else}&ndash;&gt;-->
+<!--                    <a class="layui-btn layui-btn-xs layui-btn-primary layui-disabled" data-tips-text="您没有商品入库的权限哦!">入 库</a>-->
                     <!--{/if}-->
-                    <!--{if auth("remove")}-->
+                    {if auth("remove")}
                     <a class="layui-btn layui-btn-xs layui-btn-danger" data-action="{:url('remove')}" data-confirm="确定要移入回收站吗?" data-value="code#{$vo.code};deleted#1">删 除</a>
-                    <!--{/if}-->
-                    {else}
+                    {/if}
+<!--                    {else}-->
                     <!--{if auth("remove")}-->
-                    <a class="layui-btn layui-btn-xs layui-btn-normal" data-action="{:url('remove')}" data-value="code#{$vo.code};deleted#0">恢 复</a>
+<!--                    <a class="layui-btn layui-btn-xs layui-btn-normal" data-action="{:url('remove')}" data-value="code#{$vo.code};deleted#0">恢 复</a>-->
                     <!--{/if}-->
-                    {/if}
+<!--                    {/if}-->
                 </td>
             </tr>
             {/foreach}

+ 55 - 55
app/data/view/shop/goods/index_search.html

@@ -8,19 +8,19 @@
     </div>
 
     <!--{notempty name='marks'}-->
-    <div class="layui-form-item layui-inline">
-        <label class="layui-form-label">商品标签</label>
-        <label class="layui-input-inline">
-            <select class="layui-select" lay-search name="marks">
-                <option value="">-- 全部标签 --</option>
-                {foreach $marks as $mark}{if input('marks','') eq $mark}
-                <option selected value="{$mark}">{$mark}</option>
-                {else}
-                <option value="{$mark}">{$mark}</option>
-                {/if}{/foreach}
-            </select>
-        </label>
-    </div>
+<!--    <div class="layui-form-item layui-inline">-->
+<!--        <label class="layui-form-label">商品标签</label>-->
+<!--        <label class="layui-input-inline">-->
+<!--            <select class="layui-select" lay-search name="marks">-->
+<!--                <option value="">&#45;&#45; 全部标签 &#45;&#45;</option>-->
+<!--                {foreach $marks as $mark}{if input('marks','') eq $mark}-->
+<!--                <option selected value="{$mark}">{$mark}</option>-->
+<!--                {else}-->
+<!--                <option value="{$mark}">{$mark}</option>-->
+<!--                {/if}{/foreach}-->
+<!--            </select>-->
+<!--        </label>-->
+<!--    </div>-->
     <!--{/notempty}-->
 
     <!--{notempty name='cates'}-->
@@ -56,50 +56,50 @@
         </label>
     </div>
 
-    <div class="layui-form-item layui-inline">
-        <label class="layui-form-label">返利状态</label>
-        <label class="layui-input-inline">
-            <select class="layui-select" name="rebate_type">
-                <option value=''>-- 全部状态 --</option>
-                {foreach ['非返利的商品','是返利的商品'] as $k=>$v}
-                {if input('rebate_type','-') eq $k.''}
-                <option selected value="{$k}">{$v}</option>
-                {else}
-                <option value="{$k}">{$v}</option>
-                {/if}{/foreach}
-            </select>
-        </label>
-    </div>
+<!--    <div class="layui-form-item layui-inline">-->
+<!--        <label class="layui-form-label">返利状态</label>-->
+<!--        <label class="layui-input-inline">-->
+<!--            <select class="layui-select" name="rebate_type">-->
+<!--                <option value=''>&#45;&#45; 全部状态 &#45;&#45;</option>-->
+<!--                {foreach ['非返利的商品','是返利的商品'] as $k=>$v}-->
+<!--                {if input('rebate_type','-') eq $k.''}-->
+<!--                <option selected value="{$k}">{$v}</option>-->
+<!--                {else}-->
+<!--                <option value="{$k}">{$v}</option>-->
+<!--                {/if}{/foreach}-->
+<!--            </select>-->
+<!--        </label>-->
+<!--    </div>-->
 
-    <div class="layui-form-item layui-inline">
-        <label class="layui-form-label">入会礼包</label>
-        <label class="layui-input-inline">
-            <select class="layui-select" name="vip_entry">
-                <option value=''>-- 全部状态 --</option>
-                {foreach ['非入会礼包','是入会礼包'] as $k=>$v}
-                {if input('vip_entry','-') eq $k.''}
-                <option selected value="{$k}">{$v}</option>
-                {else}
-                <option value="{$k}">{$v}</option>
-                {/if}{/foreach}
-            </select>
-        </label>
-    </div>
+<!--    <div class="layui-form-item layui-inline">-->
+<!--        <label class="layui-form-label">入会礼包</label>-->
+<!--        <label class="layui-input-inline">-->
+<!--            <select class="layui-select" name="vip_entry">-->
+<!--                <option value=''>&#45;&#45; 全部状态 &#45;&#45;</option>-->
+<!--                {foreach ['非入会礼包','是入会礼包'] as $k=>$v}-->
+<!--                {if input('vip_entry','-') eq $k.''}-->
+<!--                <option selected value="{$k}">{$v}</option>-->
+<!--                {else}-->
+<!--                <option value="{$k}">{$v}</option>-->
+<!--                {/if}{/foreach}-->
+<!--            </select>-->
+<!--        </label>-->
+<!--    </div>-->
 
-    <div class="layui-form-item layui-inline">
-        <label class="layui-form-label">物流配送</label>
-        <label class="layui-input-inline">
-            <select class="layui-select" name="truck_type">
-                <option value=''>-- 全部状态 --</option>
-                {foreach ['无需物流配送', '需要物流配送'] as $k=>$v}
-                {if input('truck_type','-') eq $k.''}
-                <option selected value="{$k}">{$v}</option>
-                {else}
-                <option value="{$k}">{$v}</option>
-                {/if}{/foreach}
-            </select>
-        </label>
-    </div>
+<!--    <div class="layui-form-item layui-inline">-->
+<!--        <label class="layui-form-label">物流配送</label>-->
+<!--        <label class="layui-input-inline">-->
+<!--            <select class="layui-select" name="truck_type">-->
+<!--                <option value=''>&#45;&#45; 全部状态 &#45;&#45;</option>-->
+<!--                {foreach ['无需物流配送', '需要物流配送'] as $k=>$v}-->
+<!--                {if input('truck_type','-') eq $k.''}-->
+<!--                <option selected value="{$k}">{$v}</option>-->
+<!--                {else}-->
+<!--                <option value="{$k}">{$v}</option>-->
+<!--                {/if}{/foreach}-->
+<!--            </select>-->
+<!--        </label>-->
+<!--    </div>-->
 
     <div class="layui-form-item layui-inline">
         <button class="layui-btn layui-btn-primary"><i class="layui-icon">&#xe615;</i> 搜 索</button>