| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205 |
- <?php
- namespace app\admin\controller\auction;
- use app\admin\controller\AuthController;
- use app\admin\controller\Union;
- use app\admin\model\auction\AuctionGu;
- use app\admin\model\User;
- use crmeb\services\{ExpressService,
- JsonService,
- MiniProgramService,
- upload\Upload,
- WechatService,
- FormBuilder as Form,
- CacheService,
- UtilService as Util,
- JsonService as Json};
- use app\admin\model\system\{
- SystemAttachment as SystemAttachmentModel, SystemAttachmentCategory as Category
- };
- use think\facade\Route as Url;
- use think\facade\Validate;
- /**
- * 竞拍管理
- * Class StoreOrder
- * @package app\admin\controller\store
- */
- class Auction extends AuthController
- {
- public function index()
- {
- return $this->fetch();
- }
- public function list()
- {
- $where = Util::getMore([
- ['status', ''],
- ['page', 1],
- ['limit', 20],
- ['auction']
- ]);
- $data = \app\admin\model\auction\Auction::list($where);
- return Json::successlayui($data);
- }
- /**
- * 显示创建资源表单页.
- *
- * @return \think\Response
- */
- public function create($id = 0)
- {
- $data = \app\admin\model\auction\Auction::find($id);
- $f = [];
- $f[] = Form::input('name', '场次名称', $data->getData('name'))->col(12);
- $f[] = Form::input('advert', '预约广告值', $data->getData('advert'))->col(12);
- $f[] = Form::input('lowest', '最低消费额度', $data->getData('lowest'));
- $f[] = Form::input('minimum', '最低广告值', $data->getData('minimum'));
- $f[] = Form::frameImageOne('image', '场次主图片(305*305px)', Url::buildUrl('admin/widget.images/index', array('fodder' => 'image')), $data->getData('image'))->icon('image')->width('100%')->height('500px');
- $f[] = Form::radio('status', '状态', $data->getData('status'))->options([['label' => '开启', 'value' => 1], ['label' => '关闭', 'value' => 0]]);
- $f[] = Form::dateTimes('radd_time', '入场时间', $data->getData('radd_time'));
- $f[] = Form::dateTimes('rend_time', '结束时间', $data->getData('rend_time'));
- $f[] = Form::input('sort', '排序', $data->getData('sort'));
- $f[] = Form::textarea('info', '介绍', $data->getData('info'));
- $form = Form::make_post_form('添加', $f, Url::buildUrl('save'));
- $this->assign(compact('form'));
- return $this->fetch('public/form-builder');
- }
- public function save()
- {
- $mode = new \app\admin\model\auction\Auction();
- $data = Util::postMore([
- 'id',
- 'name',
- 'image',
- 'status',
- 'sort',
- 'radd_time',
- 'rend_time',
- 'info',
- 'advert',
- 'lowest',
- 'minimum'
- ]);
- $validate = Validate::rule('nickname', 'require')->rule([
- 'name' => 'require',
- 'image' => 'require',
- 'status' => 'require',
- 'advert' => 'require',
- 'radd_time' => 'require',
- 'rend_time' => 'require',
- 'lowest' => 'require',
- 'minimum' => 'require',
- ]);
- $validate->message([
- 'name.require' => '名称不能为空',
- 'image.require' => '图片不能为空',
- 'status.require' => '状态不能为空',
- 'advert.require' => '请填写预约广告值',
- 'radd_time.require' => '请选择进场时间',
- 'rend_time.require' => '请选择结束时间',
- 'lowest.require' => '请填写额度门槛',
- 'minimum.require' => '请选择广告值门槛',
- ]);
- if (!$validate->check($data)) {
- return Json::fail($validate->getError());
- }
- $res = $mode->save($data);
- if ($res){
- return Json::success('添加成功!');
- }else{
- return Json::fail('添加失败');
- }
- }
- /**
- * 删除
- * @param $id
- * @return void
- * @throws \Exception
- */
- public function delete($id)
- {
- if (!$id) Json::fail('删除失败');
- $model = new \app\admin\model\auction\Auction();
- $res = $model->where('id', $id)->delete();
- if ($res){
- return Json::success('删除成功!');
- }else{
- return Json::fail(\app\admin\model\auction\Auction::getErrorInfo());
- }
- }
- public function set_status($id, $status)
- {
- if (empty($id))return Json::fail('修改失败');
- $res = \app\admin\model\auction\Auction::update(['status' => $status, 'id' => $id]);
- if ($res){
- return Json::success('修改成功!');
- }else{
- return Json::fail(\app\admin\model\auction\Auction::getErrorInfo());
- }
- }
- public function edit($id)
- {
- if (!$id) Json::fail('数据不存在');
- $data = \app\admin\model\auction\Auction::find($id);
- $f = [];
- $f[] = Form::input('nickname', '场次名称', $data->getData('nickname'))->col(12);
- $f[] = Form::input('anticipate', '预约价格', $data->getData('anticipate'))->col(12);
- $f[] = Form::frameImageOne('image', '场次主图片(305*305px)',Url::buildUrl('admin/widget.images/index', array('fodder' => 'image')), $data->getData('image'))->icon('image')->width('100%')->height('500px');
- $f[] = Form::radio('status', '状态', $data->getData('status'))->options([['label' => '开启', 'value' => 1], ['label' => '关闭', 'value' => 0]])->col(12);
- $f[] = Form::select('auction_gu_id', '绑定场馆', (string)$data->getData('auction_gu_id'))->setOptions(function () {
- $model = new AuctionGu();
- $list = $model->select();
- $menus = [];
- foreach ($list as $menu) {
- $menus[] = ['value' => $menu['id'], 'label' => $menu['name']];
- }
- return $menus;
- })->filterable(1)->col(12);
- $f[] = Form::dateTimes('add_time', '预约开始时间', $data->getData('add_time'));
- $f[] = Form::dateTimes('end_time', '预约结束时间', $data->getData('end_time'));
- $f[] = Form::dateTimes('radd_time', '入场时间', $data->getData('radd_time'));
- $f[] = Form::dateTimes('rend_time', '结束时间', $data->getData('rend_time'));
- $f[] = Form::input('sort', '排序', '0', $data->getData('sort'));
- $f[] = Form::textarea('info', '介绍', $data->getData('info'))->col(12);
- $form = Form::make_post_form('修改', $f, Url::buildUrl('update', compact('id')));
- $this->assign(compact('form'));
- return $this->fetch('public/form-builder');
- }
- public function get_auction($id)
- {
- if (!$id) Json::fail('数据不存在');
- $model = new \app\admin\model\auction\Auction();
- $info = $model->find($id);
- $data['productInfo'] = $info;
- return JsonService::successful($data);
- }
- }
|