审查视图

app/portal/controller/SalesmangoodsController.php 10.1 KB
anyv authored
1 2 3 4 5 6 7 8 9 10 11
<?php
// +----------------------------------------------------------------------
// | bronet [ 以客户为中心 以奋斗者为本 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2013-2017 http://www.bronet.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
namespace app\portal\controller;

use cmf\controller\WeChatBaseController;
anyv authored
12
use EasyWeChat\Foundation\Application;
anyv authored
13 14 15 16 17 18 19 20
use think\Db;
class SalesmangoodsController extends WeChatBaseController{

    /**
     * 业务员商品管理
     */
    public function salesman_goods(){
anyv authored
21 22
        $uid = cmf_get_current_user_id();
        $data_goods = Db::name('goods') -> where("uid =".$uid." and type =2") -> order("sort desc") -> select() -> toArray();
5  
anyv authored
23 24 25 26 27 28 29 30
        if(!empty($data_goods)){
            foreach ($data_goods as $key => $val){
                $price = explode('.',$val['price']);
                $data_goods[$key]['price0'] = $price[0];
                $data_goods[$key]['price1'] = $price[1];
            }
        }
        $this -> assign('data_goods',$data_goods);
anyv authored
31 32 33 34
        return $this -> fetch();

    }
6  
anyv authored
35 36 37 38 39
    /**
     * 业务员商品上移
     */
    public function goods_move_up(){
5  
anyv authored
40
        $uid = cmf_get_current_user_id();
6  
anyv authored
41
        $goods_id = $_POST['goods_id'];
5  
anyv authored
42
        $data_goods = Db::name('goods') -> where('id',$goods_id) -> find();
5  
anyv authored
43
        $data = Db::name('goods') -> where("uid =".$uid." and type =2") -> order("sort desc") -> select() -> toArray();
5  
anyv authored
44 45
        foreach ($data as $key => $val){
            if($val['sort'] == $data_goods['sort']){
5  
anyv authored
46
                $sort = $data[$key-1]['sort'];
5  
anyv authored
47
                $data[$key-1]['sort'] = $data[$key]['sort'];
5  
anyv authored
48
                Db::name('goods') -> where('id',$data[$key-1]['id']) -> update(['sort'=>$data[$key-1]['sort']]);
5  
anyv authored
49
                $data[$key]['sort'] = $sort;
5  
anyv authored
50
                Db::name('goods') -> where('id',$data[$key]['id']) -> update(['sort'=>$data[$key]['sort']]);
5  
anyv authored
51 52 53
            }
        }
        return true;
6  
anyv authored
54 55

    }
anyv authored
56
5  
anyv authored
57 58 59 60 61 62 63
    /**
     * 业务员商品删除
     */
    public function goods_del(){

        $id = $_POST['goods_id'];
        $data = Db::name('goods') -> delete($id);
4  
anyv authored
64
        Db::name('shopping_cart') -> where("goods_id",$id) -> delete();
5  
anyv authored
65 66 67 68 69 70 71
        if($data){
            return true;
        }else{
            return false;
        }

    }
anyv authored
72
anyv authored
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
    /**
     * 业务员商品费用查询
     */
    public function goods_cost(){

        $id = $_POST['goods_id'];
        $data = Db::name('goods') -> where('id',$id) -> find();
        return json_encode($data);

    }

    /**
     * 点击费用编辑
     */
    public function moneyedit(){

        $data = Db::name('goods') -> where('id',$_POST['goods_id']) -> update(['price'=>$_POST['price'],'money'=>$_POST['money']]);
        if($data){
            return true;
        }else{
            return false;
        }
anyv authored
95
anyv authored
96
    }
anyv authored
97
anyv authored
98 99 100 101 102
    /**
     * 添加业务员商品页
     */
    public function Salesman_goods_add(){
anyv authored
103
        if($this -> request -> isPost()){
4  
anyv authored
104
            $uid = cmf_get_current_user_id();
105 106 107 108
//            $salesman_goods = Db::name('goods') -> where("uid=".$uid." and type = 2") -> select();
//            if(count($salesman_goods)>=16){
//                return 3;
//            }
4  
anyv authored
109 110 111
            if($_POST['money']>$_POST['price']){
                return 2;
            }
anyv authored
112 113 114 115 116 117 118 119
            $data['show_img'] = $_POST['show_img'];
            $data['thumbnail'] = $_POST['thumbnail'];
            $data['book_name'] = $_POST['book_name'];
            $data['money'] = $_POST['money'];
            $data['price'] = $_POST['price'];
            $data['pricing'] = $_POST['pricing'];
            $data['instr'] = $_POST['instr'];
            $data['book_number'] = $_POST['book_number'];
1  
anyv authored
120
            /*$data['paper'] = $_POST['paper'];*/
anyv authored
121 122 123 124 125 126 127
            $data['book_size'] = $_POST['book_size'];
            $data['binding'] = $_POST['binding'];
            $data['author'] = $_POST['author'];
            $data['press'] = $_POST['press'];
            $data['press_time'] = $_POST['press_time'];
            $data['suit'] = $_POST['suit'];
            $data['grade'] = $_POST['grade'];
4  
anyv authored
128
            $data['printing'] = $_POST['printing'];
5  
anyv authored
129
            $data['zixun_phone'] = $_POST['zixun_phone'];
anyv authored
130 131 132 133 134 135 136 137 138 139 140 141
            if($_POST['img0'] != ''){
                $det_img[0] = $_POST['img0'];
            }
            if($_POST['img1'] != ''){
                $det_img[1] = $_POST['img1'];
            }
            if($_POST['img2'] != ''){
                $det_img[2] = $_POST['img2'];
            }
           if(!empty($det_img)){
               $data['det_img'] = json_encode($det_img);
           }
anyv authored
142 143 144 145 146 147 148 149 150 151 152
            $data['create_time'] = time();
            $data['type'] = 2;
            $data['uid'] = cmf_get_current_user_id();
            $goods_id = Db::name('goods') -> insertGetId($data);
            Db::name('goods') -> where("id=".$goods_id) -> update(['sort'=>$goods_id]);
            if($goods_id){
                return true;
            }else{
                return false;
            }
        }else{
5  
anyv authored
153 154 155 156

            $options=config('wechat_config');
            $app = new Application($options);
            $js = $app->js;
anyv authored
157
            $jssdk=$js->config(array('chooseImage','uploadImage'), false,false,true);
5  
anyv authored
158 159
            $this->assign('jssdk',$jssdk);
anyv authored
160 161
            return $this -> fetch();
        }
anyv authored
162 163

    }
anyv authored
164
anyv authored
165 166 167 168 169 170
    /**
     * 点击编辑商品
     */
    public function Salesman_goods_edit(){

        if($this -> request -> isPost()){
4  
anyv authored
171 172 173
            if($_POST['money']>$_POST['price']){
                return 2;
            }
anyv authored
174 175 176 177 178 179 180 181
            $data['show_img'] = $_POST['show_img'];
            $data['thumbnail'] = $_POST['thumbnail'];
            $data['book_name'] = $_POST['book_name'];
            $data['money'] = $_POST['money'];
            $data['price'] = $_POST['price'];
            $data['pricing'] = $_POST['pricing'];
            $data['instr'] = $_POST['instr'];
            $data['book_number'] = $_POST['book_number'];
5  
anyv authored
182
            /*$data['paper'] = $_POST['paper'];*/
anyv authored
183 184 185 186 187 188 189
            $data['book_size'] = $_POST['book_size'];
            $data['binding'] = $_POST['binding'];
            $data['author'] = $_POST['author'];
            $data['press'] = $_POST['press'];
            $data['press_time'] = $_POST['press_time'];
            $data['suit'] = $_POST['suit'];
            $data['grade'] = $_POST['grade'];
5  
anyv authored
190
            $data['printing'] = $_POST['printing'];
5  
anyv authored
191
            $data['zixun_phone'] = $_POST['zixun_phone'];
anyv authored
192 193 194 195 196 197 198 199 200 201 202 203
            if($_POST['img0'] != ''){
                $det_img[0] = $_POST['img0'];
            }
            if($_POST['img1'] != ''){
                $det_img[1] = $_POST['img1'];
            }
            if($_POST['img2'] != ''){
                $det_img[2] = $_POST['img2'];
            }
            if(!empty($det_img)){
                $data['det_img'] = json_encode($det_img);
            }
anyv authored
204 205 206 207 208 209 210 211 212 213
            $data['id'] = $_POST['id'];
            $up_data = Db::name('goods') -> update($data);
            if($up_data){
               return true;
            }else{
                return false;
            }
        }else{
            $id = $this -> request -> param();
            $goods_data = Db::name('goods') -> where('id',$id['goods_id']) -> find();
anyv authored
214 215 216 217 218
            if(!empty($goods_data['det_img'])){
                $goods_data['det_img'] = json_decode($goods_data['det_img'],true);
                foreach ($goods_data['det_img'] as $key => $val){
                    $goods_data['det_img'][$key] = cmf_get_image_url($goods_data['det_img'][$key]);
                }
9  
anyv authored
219
            }
anyv authored
220
            $this -> assign('goods_data',$goods_data);
2  
anyv authored
221 222 223 224 225 226 227

            $options=config('wechat_config');
            $app = new Application($options);
            $js = $app->js;
            $jssdk=$js->config(array('chooseImage','uploadImage'), false,false,true);
            $this->assign('jssdk',$jssdk);
anyv authored
228 229 230 231
            return $this -> fetch();
        }

    }
anyv authored
232
4  
anyv authored
233 234 235 236
    /**
     * 上传图片
     */
    public function savePicture(){
王晓刚 authored
237 238 239 240 241
        $options = config('wechat_config');
        $app = new Application($options);
        $accessToken = $app->access_token;
        $access_token = $accessToken->getToken();
//        $access_token=$this->getAccessToken();
8  
anyv authored
242
        $filepath = $_POST['mediaId'];
anyv authored
243
        $str = 'uploads/'.date('YmdHis').time().rand('1000000','99999999').'.png';
1  
anyv authored
244
        $targetName = $str;
王晓刚 authored
245
//        $access_token = $access_token['accessToken'];
Cool authored
246 247
        $url = "https://api.weixin.qq.com/cgi-bin/media/get?access_token=$access_token&media_id=$filepath";
        $file = file_get_contents("https://api.weixin.qq.com/cgi-bin/media/get?access_token=$access_token&media_id=$filepath");
1  
anyv authored
248
        file_put_contents($targetName,$file);
5  
anyv authored
249
        $msg["filename"] = '/'.$str;
7  
anyv authored
250
        return json_encode($msg);
4  
anyv authored
251 252

    }
4  
anyv authored
253
4  
anyv authored
254
anyv authored
255
4  
anyv authored
256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287
    public function getAccessToken() {
        // access_token 应该全局存储与更新
        // 获取数据库中的access_token
        $token = Db::name('token') -> where('id',1) -> find();
        // accessToken过期或不存在时
        if($token['time'] + $token['expiresIn'] < time() || $token['accessToken'] == NULL){
            $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid="."wxdf34ec2179e19b9a"."&secret="."133ced06db2a45843ab52abc691ee82d";
            // 微信返回的信息
            $returnData = json_decode($this->httpGet($url));
            // 组装数据
            $resData['accessToken'] = $returnData->access_token;
            $resData['expiresIn'] = $returnData->expires_in;
            $resData['time'] = time();
            // 把数据存进数据库
            Db::name('token') -> where('id',1) -> update($resData);
            $res = $resData;
        }else{
            $res = $token;
        }
        return $res;
    }

    private function httpGet($url) {
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true );
        curl_setopt($curl, CURLOPT_TIMEOUT, 500 );
        curl_setopt($curl, CURLOPT_URL, $url );
        $res = curl_exec($curl);
        curl_close($curl);
        return $res;
    }
4  
anyv authored
288 289 290 291



4  
anyv authored
292 293 294 295 296 297 298 299 300 301 302 303











anyv authored
304 305 306 307 308 309 310 311 312 313 314 315











}