123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195 |
- <?php
- namespace app\data\controller\api\business;
- use app\data\model\ShopGoods;
- use app\data\model\ShopGoodsItem;
- use think\admin\Controller;
- use hg\apidoc\annotation\Title;
- use hg\apidoc\annotation\Method;
- use hg\apidoc\annotation\Param;
- use hg\apidoc\annotation\Returned;
- use think\admin\extend\CodeExtend;
- use think\Db;
- use think\db\Where;
- /**
- * 商家商品数据接口
- */
- class Goods extends Controller
- {
- /**
- * @Title ("我的商品数据")
- * @Param ("name",desc="商品名称")
- * @Param ("status",desc="1售卖中 0已下架 2已售罄 传空全部")
- * @return void
- * @throws \think\db\exception\DataNotFoundException
- * @throws \think\db\exception\DbException
- * @throws \think\db\exception\ModelNotFoundException
- */
- public function goods_list(){
- $count = ['全部','售卖中','已下架','已售罄'];
- foreach ($count as &$v){
- switch ($v){
- case '全部':
- $where =[];
- break;
- case '售卖中':
- $where['status']=1;
- break;
- case '已下架':
- $where['status']=0;
- break;
- case '已售罄':
- $where['status']=2;
- }
- $v=ShopGoods::mk()->where('admin_id',10000)->where($where)->count();
- }
- $query = ShopGoods::mQuery()->like('name,cateids')->equal('code,status');
- $result = $query->where('admin_id',10000)->order('id desc')->page(true, false, false, 10);
- $data['count'] =$count;
- $data['list']=$result;
- $this->success('我的商品列表',$data);
- }
- /**
- * @Title ("添加商品")
- * @Param ("name",desc="商品名称")
- * @Param ("cateids",desc="商品分类")
- * @Param ("cover",desc="商品封面图")
- * @Param ("slider",desc="商品轮播图")
- * @Param ("content",desc="商品详情")
- * @Param ("stock_total",desc="商品库存")
- * @Param ("price_selling",desc="商品销售价")
- * @Param ("price_market",desc="商品市场价")
- * @Param ("items",desc="商品规格信息")
- */
- public function goods_add(){
- $data = $this->_vali(
- [
- 'name.require'=>'商品名称不能为空',
- 'cateids.require'=>'商品分类不能不选',
- 'cover.require'=>'商品封面不能为空',
- 'slider.require'=>'商品轮播图不能为空',
- 'content.require'=>'商品详情不能为空',
- 'stock_total.require'=>'商品库存不能为空',
- 'price_selling.require'=>'商品销售价格不能为空',
- 'price_market.require'=>'商品市场价格不能为空',
- 'items.require'=>'商品规格不能为空'
- ]
- );
- $goods_data= [
- 'name'=>$data['name'],
- 'cateids'=>$data['cateids'],
- 'cover'=>$data['cover'],
- 'slider'=>$data['slider'],
- 'content'=>$data['content'],
- 'stock_total'=>$data['stock_total'],
- 'price_selling'=>$data['price_selling'],
- 'price_market'=>$data['price_market'],
- 'code'=>CodeExtend::uniqidNumber(20, 'G'),
- 'data_specs'=>json($data['items']),
- 'create_at'=>date('Y-m-d H:i:s'),
- 'admin_id'=>10000,
- ];
- try {
- ShopGoods::mk()->insertGetId($goods_data);
- foreach ($data['items']as &$v){
- $item_data = [
- 'goods_sku'=>CodeExtend::uniqidNumber(12, 'S'),
- 'goods_code'=>$data['code'],
- 'goods_spec'=>$v['name'],
- 'stock_total'=>$v['total'],
- 'price_selling'=>$v['price_selling'],
- 'price_market'=>$v['price_market'],
- 'create_at'=>date('Y-m-d H:i:s'),
- 'admin_id'=>10000
- ];
- ShopGoodsItem::mk()->insertGetId($item_data);
- }
- $this->success('商品数据入库成功!');
- }catch (\Exception $e){
- $this->success('商品数据入库失败!');
- }
- }
- /**
- * @Title ("商品修改")
- * @Param ("name",desc="商品名称")
- * @Param ("cateids",desc="商品分类")
- * @Param ("cover",desc="商品封面图")
- * @Param ("slider",desc="商品轮播图")
- * @Param ("content",desc="商品详情")
- * @Param ("stock_total",desc="商品库存")
- * @Param ("price_selling",desc="商品销售价")
- * @Param ("price_market",desc="商品市场价")
- * @Param ("items",desc="商品规格信息")
- * @return void
- *
- */
- public function goods_edit(){
- $goods_id = input('order_id');
- $data = $this->_vali(
- [
- 'name.require'=>'商品名称不能为空',
- 'cateids.require'=>'商品分类不能不选',
- 'cover.require'=>'商品封面不能为空',
- 'slider.require'=>'商品轮播图不能为空',
- 'content.require'=>'商品详情不能为空',
- 'stock_total.require'=>'商品库存不能为空',
- 'price_selling.require'=>'商品销售价格不能为空',
- 'price_market.require'=>'商品市场价格不能为空',
- 'items.require'=>'商品规格不能为空'
- ]
- );
- $goods_data= [
- 'name'=>$data['name'],
- 'cateids'=>$data['cateids'],
- 'cover'=>$data['cover'],
- 'slider'=>$data['slider'],
- 'content'=>$data['content'],
- 'stock_total'=>$data['stock_total'],
- 'price_selling'=>$data['price_selling'],
- 'price_market'=>$data['price_market'],
- 'code'=>CodeExtend::uniqidNumber(20, 'G'),
- 'data_specs'=>json($data['items']),
- 'create_at'=>date('Y-m-d H:i:s'),
- 'admin_id'=>10000,
- ];
- try {
- ShopGoods::mk()->where('id',$goods_id)->insertGetId($goods_data);
- foreach ($data['items']as &$v){
- $item_data = [
- 'goods_sku'=>CodeExtend::uniqidNumber(12, 'S'),
- 'goods_code'=>$data['code'],
- 'goods_spec'=>$v['name'],
- 'stock_total'=>$v['total'],
- 'price_selling'=>$v['price_selling'],
- 'price_market'=>$v['price_market'],
- 'create_at'=>date('Y-m-d H:i:s'),
- 'admin_id'=>10000
- ];
- ShopGoodsItem::mk()->where('id',$v['id'])->save($item_data);
- }
- $this->success('商品数据入库成功!');
- }catch (\Exception $e){
- $this->success('商品数据入库失败!');
- }
- }
- /**
- * @Title ("商品详情")
- */
- public function goods_details(){
- $goods_id = input('goods_id');
- $details = ShopGoods::mk()->alias('goods')
- ->where('goods.id',$goods_id)
- ->find();
- $details['item']=ShopGoodsItem::mk()->where('goods_code', $details['code'])->select();
- $this->success('商品详情',$details);
- }
- }
|