1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- <?php
-
- namespace app\admin\model;
-
- use think\Model;
- use think\Config;
- use think\Db;
-
-
- class ProductSpecValueHandle extends Model
- {
-
- protected function initialize()
- {
-
- parent::initialize();
- }
-
- public function editProductSpecPrice($post = [])
- {
- $aid = !empty($post['aid']) ? $post['aid'] : session('handleAID');
- if (!empty($aid) && !empty($post['spec_price']) && !empty($post['spec_stock'])) {
-
- $time = getTime();
- $saveAll = $insertAll = [];
- $keys = rand(1, 9);
- foreach ($post['spec_price'] as $kkk => $vvv) {
- if (!empty($post['value_ids'][$kkk]['value_id'])) {
- $saveAll[] = [
- 'value_id' => intval($post['value_ids'][$kkk]['value_id']),
- 'aid' => $aid,
- 'spec_value_id' => $kkk,
- 'spec_price' => !empty($vvv['users_price']) ? $vvv['users_price'] : 0,
- 'spec_crossed_price' => !empty($post['spec_crossed_price'][$kkk]['crossed_price']) ? $post['spec_crossed_price'][$kkk]['crossed_price'] : 0,
- 'spec_stock' => !empty($post['spec_stock'][$kkk]['stock_count']) ? $post['spec_stock'][$kkk]['stock_count'] : 0,
- 'spec_sales_num'=> !empty($post['spec_sales'][$kkk]['spec_sales_num']) ? $post['spec_sales'][$kkk]['spec_sales_num'] : 0,
- 'update_time' => $time,
- ];
- } else if (!empty($vvv['users_price'])) {
- $keys++;
- $insertAll[] = [
- 'value_id' => date('His') . rand(10, 99) . $keys,
- 'aid' => $aid,
- 'spec_value_id' => $kkk,
- 'spec_price' => !empty($vvv['users_price']) ? $vvv['users_price'] : 0,
- 'spec_crossed_price' => !empty($post['spec_crossed_price'][$kkk]['crossed_price']) ? $post['spec_crossed_price'][$kkk]['crossed_price'] : 0,
- 'spec_stock' => !empty($post['spec_stock'][$kkk]['stock_count']) ? $post['spec_stock'][$kkk]['stock_count'] : 0,
- 'spec_sales_num'=> !empty($post['spec_sales'][$kkk]['spec_sales_num']) ? $post['spec_sales'][$kkk]['spec_sales_num'] : 0,
- 'add_time' => $time,
- 'update_time' => $time,
- ];
- }
- }
- if (!empty($saveAll)) $this->saveAll($saveAll);
- if (!empty($insertAll)) Db::name('product_spec_value_handle')->insertAll($insertAll);
-
-
- $where = [
- 'aid' => $aid,
- 'spec_is_select' => 1,
- ];
- $field = 'spec_mark_id, spec_value_id';
- $order = 'spec_value_id asc, spec_id asc';
- $data = Db::name('product_spec_data_handle')->field($field)->where($where)->order($order)->select();
-
- $resultArray = [];
- if (!empty($data)) {
- foreach ($data as $key => $value) {
- $resultArray[$value['spec_mark_id']][] = $value['spec_value_id'];
- }
- }
- return [
- 'aid' => $aid,
- 'resultArray' => $resultArray,
- ];
- }
-
- return false;
- }
- }
|