init commit

This commit is contained in:
2026-03-17 09:56:00 +08:00
commit e2c8ae752d
6827 changed files with 1211784 additions and 0 deletions

View File

@@ -0,0 +1,223 @@
<?php
// +----------------------------------------------------------------------
// | 麦沃德科技赋能开发者,助力商协会发展
// +----------------------------------------------------------------------
// | Copyright (c) 20172024 www.wdsxh.cn All rights reserved.
// +----------------------------------------------------------------------
// | 沃德商协会系统并不是自由软件,不加密,并不代表开源,未经许可不可自由转售和商用
// +----------------------------------------------------------------------
// | Author: MY WORLD Team <bd@maiwd.cn> www.maiwd.cn
// +----------------------------------------------------------------------
namespace app\api\controller\wdsxh\goods;
use app\api\model\wdsxh\user\Wechat;
use app\api\model\wdsxh\UserWechat;
use app\common\controller\Api;
use think\Db;
class Address extends Api
{
protected $noNeedLogin = ['address_province','address_city','address_area'];
protected $noNeedRight = ['*'];
protected $model = null;
public function _initialize()
{
parent::_initialize();
$this->model = new \app\api\model\wdsxh\goods\Address();
}
/**
* Desc 地址列表
* Create on 2024/3/15 15:25
* Create by @小趴菜
*/
public function index()
{
$param = $this->request->param();
//查询默认地址
if(isset($param['is_default']) && !empty($param['is_default'])) {
$where['is_default'] = array('eq',$param['is_default']);
}
$user_id = $this->auth->id;
$wechat_id = (new Wechat())->where('user_id',$user_id)->value('id');
$where['wechat_id'] = array('eq',$wechat_id);
$data = $this->model
->where($where)
->field('id,name,tel,address,is_default')
->select();
$this->success('请求成功',$data);
}
/**
* Desc 地址列表
* Create on 2024/3/15 15:39
* Create by @小趴菜
*/
public function add(){
$param = $this->request->param();
$user_id = $this->auth->id;
$wechat_id = (new Wechat())->where('user_id',$user_id)->value('id');
$default_id = $this->model->where([
'wechat_id'=>$wechat_id,
'is_default'=>1,
])->value('id');
if($param['is_default'] == 1 && $default_id) {
Db::name('wdsxh_mall_user_address')->where('id',$default_id)->update([
'is_default'=>0,
]);
}
Db::startTrans();
try{
Db::name('wdsxh_mall_user_address')->insert([
'wechat_id'=>$wechat_id,
'name'=>$param['name'],
'tel' =>$param['tel'],
'address'=>$param['address'],
'is_default'=>$param['is_default'] == true ? 1 : 0,
'createtime'=>time(),
]);
// 提交事务
Db::commit();
} catch (\Exception $e) {
// 回滚事务
Db::rollback();
$this->error($e->getMessage());
}
$this->success('操作成功');
}
/**
* Desc 修改地址
* Create on 2024/3/15 15:46
* Create by @小趴菜
*/
public function edit(){
$param = $this->request->param();
$user_id = $this->auth->id;
$wechat_id = (new Wechat())->where('user_id',$user_id)->value('id');
if($param['is_default'] == true) {
Db::name('wdsxh_mall_user_address')
->where('wechat_id',$wechat_id)
->update([
'is_default'=>0,
]);
}
Db::startTrans();
try{
Db::name('wdsxh_mall_user_address')
->where('id',$param['id'])
->update([
'name'=>$param['name'],
'tel' =>$param['tel'],
'address'=>$param['address'],
'is_default'=>$param['is_default'] == true ? 1 : 0,
'updatetime'=>time(),
]);
// 提交事务
Db::commit();
} catch (\Exception $e) {
// 回滚事务
Db::rollback();
$this->error($e->getMessage());
}
$this->success('操作成功');
}
/**
* Desc 删除地址
* Create on 2024/3/15 15:54
* Create by @小趴菜
*/
public function del()
{
$wechat_id = (new UserWechat())->where('user_id',$this->auth->id)->value('id');
$userAddressObj = $this->model
->where('id',$this->request->param('id'))
->where('wechat_id',$wechat_id)
->find();
$userAddressObj->delete();
$this->success('删除成功');
}
/**
* Desc 修改默认地址
* Create on 2024/3/15 15:56
* Create by @小趴菜
*/
public function set_default()
{
$id = $this->request->param('id');
$user_id = $this->auth->id;
$wechat_id = (new Wechat())->where('user_id',$user_id)->value('id');
Db::startTrans();
try{
Db::name('wdsxh_mall_user_address')
->where('wechat_id',$wechat_id)
->update([
'is_default'=>0,
]);
Db::name('wdsxh_mall_user_address')
->where('id',$id)
->update([
'is_default'=>1,
]);
// 提交事务
Db::commit();
} catch (\Exception $e) {
// 回滚事务
Db::rollback();
$this->error($e->getMessage());
}
$this->success('操作成功');
}
//省
public function address_province(){
$total = Db::name('wdsxh_area')
->where('level',1)
->count();
$data = Db::name('wdsxh_area')
->where('level',1)
->field('id,name')
->select();
$this->success('请求成功',['total'=>$total,'data'=>$data]);
}
//市
public function address_city(){
$param = $this->request->param();
$total = Db::name('wdsxh_area')
->where('level',2)
->where('pid',$param['crea_id'])
->count();
$data = Db::name('wdsxh_area')
->where('level',2)
->where('pid',$param['crea_id'])
->field('id,name')
->select();
$this->success('请求成功',['total'=>$total,'data'=>$data]);
}
//区
public function address_area(){
$param = $this->request->param();
$total = Db::name('wdsxh_area')
->where('level',3)
->where('pid',$param['crea_id'])
->count();
$data = Db::name('wdsxh_area')
->where('level',3)
->where('pid',$param['crea_id'])
->field('id,name')
->select();
$this->success('请求成功',['total'=>$total,'data'=>$data]);
}
}