dever 3 年之前
父节点
当前提交
0e4330d653

+ 23 - 39
app/factory/assets/manage/html/sku.html

@@ -3,42 +3,26 @@
 <input type="hidden" name="info_id" id="info_id" value="">
 <input type="hidden" name="function" id="function" value="skuMsg">
 <iframe id="f10" name="f10" style="display:none;"></iframe>
-    <div class="layui-form-item">
-        <table class="layui-table" id="sku">
-          <thead>
-            <tr>
-              <th>昵称</th>
-              <th>加入时间</th>
-              <th>签名</th>
-            </tr> 
-          </thead>
-          <tbody>
-            <tr>
-              <td>贤心</td>
-              <td>2016-11-29</td>
-              <td>人生就像是一场修行</td>
-            </tr>
-            <tr>
-              <td>许闲心</td>
-              <td>2016-11-28</td>
-              <td>于千万人之中遇见你所遇见的人,于千万年之中,时间的无涯的荒野里…</td>
-            </tr>
-          </tbody>
-        </table>
-    </div>
-
-    <div class="layui-form-item">
-        <div class="">
-          <button type="button" class="layui-btn" onclick="saveSku()">保存</button>
-        </div>
-    </div>
-<script>
-function saveSku()
-{
-    $('.form10').submit();
-}
-function skuMsg()
-{
-    showAlert('保存成功');
-}
-</script>
+<div class="layui-form-item">
+    <table class="layui-table" id="sku">
+      <thead>
+        <tr>
+          <th>昵称</th>
+          <th>加入时间</th>
+          <th>签名</th>
+        </tr> 
+      </thead>
+      <tbody>
+        <tr>
+          <td>贤心</td>
+          <td>2016-11-29</td>
+          <td>人生就像是一场修行</td>
+        </tr>
+        <tr>
+          <td>许闲心</td>
+          <td>2016-11-28</td>
+          <td>于千万人之中遇见你所遇见的人,于千万年之中,时间的无涯的荒野里…</td>
+        </tr>
+      </tbody>
+    </table>
+</div>

+ 35 - 6
app/factory/database/goods.php

@@ -12,6 +12,19 @@ return array
         'insert' => 'factory/lib/manage.goodsUpdate',
         'update' => 'factory/lib/manage.goodsUpdate',
     ),
+    'fill' => array
+    (
+        # 从哪个表填充
+        'goods/info' => array
+        (
+            # 条件,另外一个表的字段 => 本表的字段
+            'where' => array('id' => 'goods_id'),
+            # 要填充的数据,另外一个表的字段 => 本表的字段,如果不填写就是所有的
+            'update' => array('price_type'),
+            # 不需要填充的字段 与update互斥
+            //'no' => array('id', 'seller_id', 'service_id', 'chose', 'state', 'cdate')
+        )
+    ),
     # 数据结构
     'struct' => array
     (
@@ -56,19 +69,21 @@ return array
         (
             'type'      => 'int-11',
             'name'      => '价格类型',
-            'default'   => '1',
+            'default'   => '0',
             'desc'      => '价格类型',
             'match'     => 'is_numeric',
+            'table'     => 'goods/info',
         ),
 
-        'c_price'     => array
+        'p_price'     => array
         (
             'type'      => 'decimal-10,2',
             'name'      => '出厂价',
-            'default'   => '',
+            'default'   => '0',
             'desc'      => '出厂价',
             'match'     => 'option',
-            'update'    => 'text',
+            'update'    => Dever::input('col') ? 'text' : 'hidden',
+            'list'      => true,
         ),
 
         'state'     => array
@@ -95,15 +110,29 @@ return array
 
     'manage' => array
     (
+        'edit' => false,
+
         # 列表里的按钮
         'list_button' => array
         (
-            'list' => array('多个价格设置', '"goods_sku&project=factory&search_option_factory_goods_id={id}&oper_parent=goods&oper_project=factory&top_table=info&oper_save_jump=goods&page_type=1"', '{price_type} == 2'),
+            'edit' => array('设置出厂价', 'p_price', '{price_type} == 1'),
+            'fast_list' => array('设置出厂价', '"goods_sku&project=factory&search_option_factory_goods_id={id}&oper_parent=goods&oper_project=factory&top_table=info&oper_save_jump=goods&page_type=1"', '{price_type} == 2'),
         ),
     ),
 
     'request' => array
     (
-        
+        'getIds' => array
+        (
+            # 匹配的正则或函数 选填项
+            'option' => array
+            (
+                'factory_id' => 'yes',
+                'state' => 1,
+            ),
+            'type' => 'all',
+            'order' => array('id' => 'desc'),
+            'col' => '*|goods_id',
+        ),
     ),
 );

+ 2 - 2
app/factory/database/goods_sku.php

@@ -61,11 +61,11 @@ $config = array
             'match'     => 'is_numeric',
         ),
 
-        'c_price'     => array
+        'p_price'     => array
         (
             'type'      => 'decimal-10,2',
             'name'      => '出厂价',
-            'default'   => '',
+            'default'   => '0',
             'desc'      => '出厂价',
             'match'     => 'option',
             'update'    => 'text',

+ 49 - 1
app/factory/database/info.php

@@ -7,6 +7,18 @@ $status = array
     3 => '认证失败',
 );
 
+$cate = function()
+{
+    $array = array();
+    $info = Dever::load('category/api')->getTop(1);
+    if($info)
+    {
+        $array += $info;
+    }
+    return $array;
+};
+
+
 return array
 (
     # 表名
@@ -20,6 +32,19 @@ return array
         'insert' => 'factory/lib/manage.infoUpdate',
         'update' => 'factory/lib/manage.infoUpdate',
     ),
+    # 同步更新另外一个或多个表的多条关联数据,以逗号隔开
+    'sync' => array
+    (
+        'factory/goods' => array
+        (
+            # 更新时的条件,另外一个表的字段 => 本表的字段
+            'where' => array('factory_id', 'id'),
+            # 要更新的数据
+            'update' => array('goods_id' => 'goods'),
+            # 同步更新的类型,delete为先删再插入,update为先查询是否存在,存在直接更新,不存在则插入, only为仅更新
+            'type' => 'update',
+        )
+    ),
     # 数据结构
     'struct' => array
     (
@@ -173,6 +198,25 @@ return array
             //'list'        => true,
         ),
 
+        'goods'       => array
+        (
+            'type'      => 'text-255',
+            'name'      => '请输入商品名称-输入商品名称,选择商品',
+            'default'   => '',
+            'desc'      => '生产能力',
+            'match'     => 'option',
+            'update'    => Dever::input('col') ? 'text' : 'hidden',
+            //'adding'  => 'tag/manage.getByCate?cate=',
+            # 开启这个,需要将update更换为text类型,输入文字即可选择标签
+            'autocomplete' => array('goods/lib/manage.getByName', 'id', 'goods/info-getAllByName'),
+            //'search'    => 'fulltext',
+            //'list'        => true,
+            # 与上边的cate联动(ajax)
+            //'show'  => 'cate=goods/lib/manage.getByCate?cate=',
+            # 或者加入可选项
+            //'option' => $cate,
+        ),
+
         'hr2'       => array
         (
             'name'      => '工厂认证信息',
@@ -301,8 +345,12 @@ return array
     (
         'list_button' => array
         (
+            'add' => array('设置生产能力', '"info&where_id={id}&col=goods&oper_save_jump=goods&oper_table=info&oper_parent=info"'),
+
+            'list3' => array('商品列表', '"goods&search_option_factory_id={id}&oper_table=info"'),
+
             'list1' => array('账号管理', '"member&search_option_factory_id={id}&oper_table=info"'),
-            'list3' => array('生产能力', '"goods&search_option_factory_id={id}&oper_table=info"'),
+            
             'list2' => array('订货单', '"order&search_option_factory_id={id}&oper_table=info"'),
         ),
     ),

+ 21 - 1
app/factory/lib/Manage.php

@@ -42,6 +42,26 @@ class Manage
     public function goodsUpdate($id, $name, $data)
     {
         $update = array();
+        $state = Dever::param('state', $data);
+        if ($state) {
+            $info = Dever::db('factory/goods')->one($id);
+            $factory_id = $info['factory_id'];
+
+            $array = Dever::db('factory/goods')->getIds(array('factory_id' => $factory_id));
+            Dever::config('base')->after = true;
+            if ($array) {
+                $ids = array_keys($array);
+                $set = array();
+                $set['goods'] = implode(',', $ids);
+                $set['where_id'] = $factory_id;
+                Dever::db('factory/info')->update($set);
+            } else {
+                $set['goods'] = '';
+                $set['where_id'] = $factory_id;
+                Dever::db('factory/info')->update($set);
+            }
+        }
+
         $goods_id = Dever::param('goods_id', $data);
         if ($goods_id) {
             $info = Dever::db('goods/info')->find($goods_id);
@@ -83,7 +103,7 @@ class Manage
                     if (!$factory_info) {
                         Dever::db('factory/goods_sku')->insert($data);
                     } else {
-                        $data['where_id'] = $info['id'];
+                        $data['where_id'] = $factory_info['id'];
                         Dever::db('factory/goods_sku')->update($data);
                     }
                 }

+ 23 - 39
app/goods/assets/manage/html/sku.html

@@ -3,42 +3,26 @@
 <input type="hidden" name="info_id" id="info_id" value="">
 <input type="hidden" name="function" id="function" value="skuMsg">
 <iframe id="f10" name="f10" style="display:none;"></iframe>
-    <div class="layui-form-item">
-        <table class="layui-table" id="sku">
-          <thead>
-            <tr>
-              <th>昵称</th>
-              <th>加入时间</th>
-              <th>签名</th>
-            </tr> 
-          </thead>
-          <tbody>
-            <tr>
-              <td>贤心</td>
-              <td>2016-11-29</td>
-              <td>人生就像是一场修行</td>
-            </tr>
-            <tr>
-              <td>许闲心</td>
-              <td>2016-11-28</td>
-              <td>于千万人之中遇见你所遇见的人,于千万年之中,时间的无涯的荒野里…</td>
-            </tr>
-          </tbody>
-        </table>
-    </div>
-
-    <div class="layui-form-item">
-        <div class="">
-          <button type="button" class="layui-btn" onclick="saveSku()">保存</button>
-        </div>
-    </div>
-<script>
-function saveSku()
-{
-    $('.form10').submit();
-}
-function skuMsg()
-{
-    showAlert('保存成功');
-}
-</script>
+<div class="layui-form-item">
+    <table class="layui-table" id="sku">
+      <thead>
+        <tr>
+          <th>昵称</th>
+          <th>加入时间</th>
+          <th>签名</th>
+        </tr> 
+      </thead>
+      <tbody>
+        <tr>
+          <td>贤心</td>
+          <td>2016-11-29</td>
+          <td>人生就像是一场修行</td>
+        </tr>
+        <tr>
+          <td>许闲心</td>
+          <td>2016-11-28</td>
+          <td>于千万人之中遇见你所遇见的人,于千万年之中,时间的无涯的荒野里…</td>
+        </tr>
+      </tbody>
+    </table>
+</div>

+ 16 - 2
app/goods/database/info.php

@@ -354,9 +354,9 @@ $config = array
         # 列表里的按钮
         'list_button' => array
         (
-            'add' => array('属性设置', '"info_attr&project=goods&search_option_info_id={id}&search_option_category={category}&oper_parent=info&oper_project=goods&oper_save_jump=info&where_id={id}"', '{price_type} == 2'),
+            'fast' => array('属性设置', '"info_attr&project=goods&search_option_info_id={id}&search_option_category={category}&oper_parent=info&oper_project=goods&oper_save_jump=info&where_id={id}"', '{price_type} == 2'),
 
-            'list' => array('价格设置', '"info_sku&project=goods&search_option_info_id={id}&oper_parent=info&oper_project=goods&oper_save_jump=info&page_type=1"', '{price_type} == 2'),
+            'fast_list' => array('价格设置', '"info_sku&project=goods&search_option_info_id={id}&oper_parent=info&oper_project=goods&oper_save_jump=info&page_type=1"', '{price_type} == 2'),
             'br1' => array('<br />'),
             'delete' => '删除',
         ),
@@ -365,6 +365,20 @@ $config = array
     # request 请求接口定义
     'request' => array
     (
+        'getAllByName' => array
+        (
+            # 匹配的正则或函数 选填项
+            'option' => array
+            (
+                'id' => array('yes', 'in'),
+                'name' => array('yes', 'like'),
+                'state' => 1,
+            ),
+            'type' => 'all',
+            'order' => array('reorder' => 'desc', 'id' => 'desc'),
+            'col' => '*,name as value,name as label|id',
+        ),
+
         # 后台搜索用到
         'search' => array
         (

+ 23 - 1
app/goods/lib/Manage.php

@@ -6,6 +6,28 @@ use Dever;
 
 class Manage
 {
+    public function getByName_api()
+    {
+        $data = Dever::db('goods/info')->getAllByName(array
+        (
+                'name' => Dever::input('term'))
+        );
+        if ($data) {
+            return $data;
+        }
+        return array
+            (
+            0 => array('id' => -1, 'value' => '没有找到您搜索的数据', 'label' => '没有找到您搜索的数据'),
+        );
+    }
+
+    public function getByCate()
+    {
+        $cate = Dever::input('cate');
+        $data = Dever::db('goods/info')->getAllByCate(array('top_category_id' => $cate));
+        return Dever::load('manage/database')->getAjax($data);
+    }
+
     public function search_api()
     {
         $table = 'goods/info';
@@ -290,7 +312,7 @@ class Manage
                     $body .= '<td width="30"><input type="text" class="layui-input" name="f_price['.$k.']"  value="'.$f_price.'"/></td>';
                     //$body .= '<td width="30"><input type="text" class="layui-input" name="num['.$k.']"  value="'.$num.'"/></td>';
 
-                    $body .= '<input type="hidden" name="key['.$k.']" value="'.$key.'"/><textarea style="display:none;" name="attr['.$k.']"/>'.json_encode($id).'</textarea>';
+                    $body .= '<input type="hidden" name="key['.$k.']" value="'.$key.'"/><textarea style="display:none;" name="attr['.$k.']">'.json_encode($id).'</textarea>';
                     $body .= '</tr>';
                 }
             }

+ 23 - 39
app/shop/assets/manage/html/sku.html

@@ -3,42 +3,26 @@
 <input type="hidden" name="info_id" id="info_id" value="">
 <input type="hidden" name="function" id="function" value="skuMsg">
 <iframe id="f10" name="f10" style="display:none;"></iframe>
-    <div class="layui-form-item">
-        <table class="layui-table" id="sku">
-          <thead>
-            <tr>
-              <th>昵称</th>
-              <th>加入时间</th>
-              <th>签名</th>
-            </tr> 
-          </thead>
-          <tbody>
-            <tr>
-              <td>贤心</td>
-              <td>2016-11-29</td>
-              <td>人生就像是一场修行</td>
-            </tr>
-            <tr>
-              <td>许闲心</td>
-              <td>2016-11-28</td>
-              <td>于千万人之中遇见你所遇见的人,于千万年之中,时间的无涯的荒野里…</td>
-            </tr>
-          </tbody>
-        </table>
-    </div>
-
-    <div class="layui-form-item">
-        <div class="">
-          <button type="button" class="layui-btn" onclick="saveSku()">保存</button>
-        </div>
-    </div>
-<script>
-function saveSku()
-{
-    $('.form10').submit();
-}
-function skuMsg()
-{
-    showAlert('保存成功');
-}
-</script>
+<div class="layui-form-item">
+    <table class="layui-table" id="sku">
+      <thead>
+        <tr>
+          <th>昵称</th>
+          <th>加入时间</th>
+          <th>签名</th>
+        </tr> 
+      </thead>
+      <tbody>
+        <tr>
+          <td>贤心</td>
+          <td>2016-11-29</td>
+          <td>人生就像是一场修行</td>
+        </tr>
+        <tr>
+          <td>许闲心</td>
+          <td>2016-11-28</td>
+          <td>于千万人之中遇见你所遇见的人,于千万年之中,时间的无涯的荒野里…</td>
+        </tr>
+      </tbody>
+    </table>
+</div>

+ 1 - 1
app/shop/database/goods.php

@@ -113,7 +113,7 @@ return array
         # 列表里的按钮
         'list_button' => array
         (
-            'list' => array('多价库存设置', '"goods_sku&project=shop&search_option_shop_goods_id={id}&oper_parent=goods&oper_project=shop&top_table=info&oper_save_jump=goods&page_type=1"', '{price_type} == 2'),
+            'fast_list' => array('多价库存设置', '"goods_sku&project=shop&search_option_shop_goods_id={id}&oper_parent=goods&oper_project=shop&top_table=info&oper_save_jump=goods&page_type=1"', '{price_type} == 2'),
         ),
     ),
 

+ 1 - 1
app/shop/lib/Manage.php

@@ -83,7 +83,7 @@ class Manage
                     if (!$shop_info) {
                         Dever::db('shop/goods_sku')->insert($data);
                     } else {
-                        $data['where_id'] = $info['id'];
+                        $data['where_id'] = $shop_info['id'];
                         Dever::db('shop/goods_sku')->update($data);
                     }
                 }

+ 23 - 39
app/store/assets/manage/html/sku.html

@@ -3,42 +3,26 @@
 <input type="hidden" name="info_id" id="info_id" value="">
 <input type="hidden" name="function" id="function" value="skuMsg">
 <iframe id="f10" name="f10" style="display:none;"></iframe>
-    <div class="layui-form-item">
-        <table class="layui-table" id="sku">
-          <thead>
-            <tr>
-              <th>昵称</th>
-              <th>加入时间</th>
-              <th>签名</th>
-            </tr> 
-          </thead>
-          <tbody>
-            <tr>
-              <td>贤心</td>
-              <td>2016-11-29</td>
-              <td>人生就像是一场修行</td>
-            </tr>
-            <tr>
-              <td>许闲心</td>
-              <td>2016-11-28</td>
-              <td>于千万人之中遇见你所遇见的人,于千万年之中,时间的无涯的荒野里…</td>
-            </tr>
-          </tbody>
-        </table>
-    </div>
-
-    <div class="layui-form-item">
-        <div class="">
-          <button type="button" class="layui-btn" onclick="saveSku()">保存</button>
-        </div>
-    </div>
-<script>
-function saveSku()
-{
-    $('.form10').submit();
-}
-function skuMsg()
-{
-    showAlert('保存成功');
-}
-</script>
+<div class="layui-form-item">
+    <table class="layui-table" id="sku">
+      <thead>
+        <tr>
+          <th>昵称</th>
+          <th>加入时间</th>
+          <th>签名</th>
+        </tr> 
+      </thead>
+      <tbody>
+        <tr>
+          <td>贤心</td>
+          <td>2016-11-29</td>
+          <td>人生就像是一场修行</td>
+        </tr>
+        <tr>
+          <td>许闲心</td>
+          <td>2016-11-28</td>
+          <td>于千万人之中遇见你所遇见的人,于千万年之中,时间的无涯的荒野里…</td>
+        </tr>
+      </tbody>
+    </table>
+</div>

+ 1 - 1
app/store/database/goods.php

@@ -112,7 +112,7 @@ return array
         # 列表里的按钮
         'list_button' => array
         (
-            'list' => array('多价库存设置', '"goods_sku&project=store&search_option_store_goods_id={id}&oper_parent=goods&oper_project=store&top_table=info&oper_save_jump=goods&page_type=1"', '{price_type} == 2'),
+            'fast_list' => array('多价库存设置', '"goods_sku&project=store&search_option_store_goods_id={id}&oper_parent=goods&oper_project=store&top_table=info&oper_save_jump=goods&page_type=1"', '{price_type} == 2'),
         ),
     ),
 

+ 1 - 1
app/store/lib/Manage.php

@@ -83,7 +83,7 @@ class Manage
                     if (!$store_info) {
                         Dever::db('store/goods_sku')->insert($data);
                     } else {
-                        $data['where_id'] = $info['id'];
+                        $data['where_id'] = $store_info['id'];
                         Dever::db('store/goods_sku')->update($data);
                     }
                 }