From bf4caf2b068caa1f9a4a043f6aa5872db6d58171 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BD=AD=E6=A1=83?= <1098598843@qq.com> Date: Fri, 17 Mar 2023 17:33:00 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8E=E5=8F=B0=E9=A6=96=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/admin/controller/Api.php | 490 ++++++++++ app/admin/controller/nk/Analysis.php | 8 +- .../controller/product/StoreCategory.php | 15 + app/admin/view/index/main.html | 865 +++++++++++++++++- composer.json | 8 +- 5 files changed, 1376 insertions(+), 10 deletions(-) diff --git a/app/admin/controller/Api.php b/app/admin/controller/Api.php index 5e57b56..13dd43c 100644 --- a/app/admin/controller/Api.php +++ b/app/admin/controller/Api.php @@ -15,6 +15,7 @@ use app\admin\validate\AdminCheck; use OSS\Core\OssException; use OSS\OssClient; use think\exception\ValidateException; +use think\facade\Cache; use think\facade\Db; use think\facade\Session; @@ -506,6 +507,495 @@ class Api extends BaseController } + /** + * 后台首页获取支付等数据 + * @return mixed + * @author xaboy + * @day 2020/6/25 + */ + public function main() + { + $res = Cache::store('file')->remember(self::class . '@main', function () { + $today = $this->mainGroup('today'); + $yesterday = $this->mainGroup('yesterday'); + $lastWeek = $this->mainGroup(date('Y-m-d', strtotime('- 7day'))); + $lastWeekRate = []; + foreach ($lastWeek as $k => $item) { + $lastWeekRate[$k] = $this->getRate($item, $today[$k], 4); + } + return compact('today', 'yesterday', 'lastWeekRate'); + }, 2000 + random_int(600, 1200)); +// $jyq=Db::connect('shop')->table('eb_product_order_log')->where('area_id',510502)->cache(true)->sum('product_price'); +// $lmtq=Db::connect('shop')->table('eb_product_order_log')->where('area_id',510504)->cache(true)->sum('product_price'); +// $region=[ +// 'jyq'=>$jyq, +// 'lmtq'=>$lmtq, +// 'nxq'=>0, +// 'lx'=>0, +// 'hjx'=>0, +// 'xyx'=>0, +// 'glx'=>0, +// ]; +// $jyq1=Db::connect('shop')->table('eb_product_order_log')->where('area_id',510502)->where('mer_type_id',4)->cache(true)->sum('product_price'); +// $lmtq1=Db::connect('shop')->table('eb_product_order_log')->where('area_id',510504)->where('mer_type_id',4)->cache(true)->sum('product_price'); + +// $personal=[ +// 'jyq'=>$jyq1, +// 'lmtq'=>$lmtq1, +// 'nxq'=>0, +// 'lx'=>0, +// 'hjx'=>0, +// 'xyx'=>0, +// 'glx'=>0, +// ]; +// $res['region']=$region; +// $res['personal']=$personal; + $result = ['data' => $res]; + return table_assign(0, '', $result); + } + + /** + * @param $date + * @return array + * @author xaboy + * @day 2020/6/25 + */ + protected function mainGroup($date,$merId=null) + { + + $payPrice = getModelTime(Db::connect('shop')->table('eb_store_order')->where('paid', 1)->when($merId, function ($query, $merId) { + $query->where('mer_id', $merId); + }), $date, 'pay_time')->sum('pay_price'); + + $payUser = getModelTime(Db::connect('shop')->table('eb_store_order')->where('paid', 1)->when($merId, function ($query, $merId) { + $query->where('mer_id', $merId); + }), $date, 'pay_time')->group('uid')->count(); + + $userNum = (float)Db::connect('shop')->table('eb_user')->when($date, function ($query, $date) { + getModelTime($query, $date, 'create_time'); + })->count(); + $storeNum = (float)Db::connect('shop')->table('eb_merchant')->where('is_del', 0)->when($date, function ($query, $date) { + getModelTime($query, $date); + })->count(); + $visitUserNum = (float)Db::connect('shop')->table('eb_user_visit')->alias('A')->join('eb_store_product B', 'A.type_id = B.product_id')->when($date, function ($query, $date) { + getModelTime($query, $date, 'A.create_time'); + })->when($merId, function ($query, $merId) { + $query->where('B.mer_id', $merId); + })->where('A.type', 'product')->group('uid')->count(); + + $visitNum = (float)Db::connect('shop')->table('eb_user_visit')->when($date, function ($query, $date) { + getModelTime($query, $date, 'create_time'); + })->whereIn('type', ['page', 'smallProgram'])->count(); + + return compact('payPrice','userNum', 'storeNum', 'visitUserNum', 'visitNum','payUser'); + } + + /** + * @param $last + * @param $today + * @param int $scale + * @return int|string|null + * @author xaboy + * @day 2020/6/25 + */ + protected function getRate($last, $today, $scale = 2) + { + if ($last == $today) + return 0; + else if ($last == 0) + return $today; + else if ($today == 0) + return -$last; + else + return (float)bcdiv(bcsub((string)$today, (string)$last, $scale), (string)$last, $scale); + } + + + /** + * @param 后台首页获取订单数据 + * @return mixed + * @author xaboy + * @day 2020/6/25 + */ + public function order() + { + + $date = get_params('date') ??'lately7'; + $merId = get_params('mer_id') ??''; + $res = Cache::remember(self::class . '@order' . $merId . $date, function () use ($merId, $date) { + if ($date == 'year') { + $m = date('m',time()); + $time[] = $m; + do{ + $time[] = '0'. ($m - 1); + $m--; + }while($m > 1); + $time = array_reverse($time); + } else { + $time = getDatesBetweenTwoDays(getStartModelTime($date), date('Y-m-d')); + } + $list = $this->orderGroupNum($date, $merId)->toArray(); + $list = array_combine(array_column($list, 'day'), $list); + $data = []; + foreach ($time as $item) { + $data[] = [ + 'day' => $item, + 'total' => $list[$item]['total'] ?? 0, + 'user' => $list[$item]['user'] ?? 0, + 'pay_price' => $list[$item]['pay_price'] ?? 0 + ]; + } + return $data; + }, 2000 + random_int(600, 1200)); + $result['day'] = array_column($res,'day'); + $result['total'] = array_column($res,'total'); + $result['user'] = array_column($res,'user'); + $result['pay_price'] = array_column($res,'pay_price'); +// halt($result); + $result = ['data' => $result]; + return table_assign(0, '', $result); + } + + public function orderGroupNum($date, $merId = null) + { + $field = Db::raw('sum(pay_price) as pay_price,count(*) as total,count(distinct uid) as user,pay_time,from_unixtime(unix_timestamp(pay_time),\'%m-%d\') as `day`'); + if ($date == 'year'){ + $field = Db::raw('sum(pay_price) as pay_price,count(*) as total,count(distinct uid) as user,pay_time,from_unixtime(unix_timestamp(pay_time),\'%m\') as `day`'); + } + $query = Db::connect('shop')->table('eb_store_order')->field($field) + ->where('paid', 1)->when($date, function ($query, $date) { + getModelTime($query, $date, 'pay_time'); + })->when($merId, function ($query, $merId) { + $query->where('mer_id', $merId); + }); + return $query->order('pay_time ASC')->group('day')->select(); + } + + + /** + * @param 后台首页获取用户数据 + * @return \think\response\Json + * @author xaboy + * @day 2020/9/24 + */ + public function user() + { + $date = get_params('date') ?? 'today'; + $merId = get_params('mer_id') ??''; + $res = Cache::store('file')->remember(self::class . '@user' .$merId . $date, function () use ($merId, $date) { + + $visitUser = Db::connect('shop')->table('eb_user_visit')->alias('A')->join('eb_store_product B', 'A.type_id = B.product_id')->when($date, function ($query, $date) { + getModelTime($query, $date, 'A.create_time'); + })->when($merId, function ($query, $merId) { + $query->where('B.mer_id', $merId); + })->where('A.type', 'product')->group('uid')->count(); + + $paid = 0; + $orderUser = Db::connect('shop')->table('eb_store_order')->when($paid, function ($query, $paid) { + $query->where('paid', $paid); + })->when($merId, function ($query, $merId) { + $query->where('mer_id', $merId); + })->when($date, function ($query, $date) use ($paid) { + if (!$paid) { + getModelTime($query, $date); +// $query->where(function ($query) use ($date) { +// $query->where(function ($query) use ($date) { +// $query->where('paid', 1); +// getModelTime($query, $date, 'pay_time'); +// })->whereOr(function ($query) use ($date) { +// $query->where('paid', 0); +// getModelTime($query, $date); +// }); +// }); + } else + getModelTime($query, $date, 'pay_time'); + })->group('uid')->count(); + + $orderPrice = Db::connect('shop')->table('eb_store_order')->when($paid, function ($query, $paid) { + $query->where('paid', $paid); + })->when($merId, function ($query, $merId) { + $query->where('mer_id', $merId); + })->when($date, function ($query, $date) use ($paid) { + if (!$paid) { + $query->where(function ($query) use ($date) { + $query->where(function ($query) use ($date) { + $query->where('paid', 1); + getModelTime($query, $date, 'pay_time'); + })->whereOr(function ($query) use ($date) { + $query->where('paid', 0); + getModelTime($query, $date); + }); + }); + } else + getModelTime($query, $date, 'pay_time'); + })->sum('pay_price'); + + $paid = 1; + $payOrderUser = Db::connect('shop')->table('eb_store_order')->when($paid, function ($query, $paid) { + $query->where('paid', $paid); + })->when($merId, function ($query, $merId) { + $query->where('mer_id', $merId); + })->when($date, function ($query, $date) use ($paid) { + if (!$paid) { + getModelTime($query, $date); +// $query->where(function ($query) use ($date) { +// $query->where(function ($query) use ($date) { +// $query->where('paid', 1); +// getModelTime($query, $date, 'pay_time'); +// })->whereOr(function ($query) use ($date) { +// $query->where('paid', 0); +// getModelTime($query, $date); +// }); +// }); + } else + getModelTime($query, $date, 'pay_time'); + })->group('uid')->count(); + + $payOrderPrice = Db::connect('shop')->table('eb_store_order')->when($paid, function ($query, $paid) { + $query->where('paid', $paid); + })->when($merId, function ($query, $merId) { + $query->where('mer_id', $merId); + })->when($date, function ($query, $date) use ($paid) { + if (!$paid) { + $query->where(function ($query) use ($date) { + $query->where(function ($query) use ($date) { + $query->where('paid', 1); + getModelTime($query, $date, 'pay_time'); + })->whereOr(function ($query) use ($date) { + $query->where('paid', 0); + getModelTime($query, $date); + }); + }); + } else + getModelTime($query, $date, 'pay_time'); + })->sum('pay_price'); + + $userRate = $payOrderUser ? bcdiv((string)$payOrderPrice, (string)$payOrderUser, 2) : 0; + $orderRate = $visitUser ? bcdiv((string)$orderUser, (string)$visitUser, 2) : 0; + $payOrderRate = $orderUser ? bcdiv((string)$payOrderUser, (string)$orderUser, 2) : 0; + + return compact('visitUser', 'orderUser', 'orderPrice', 'payOrderUser', 'payOrderPrice', 'payOrderRate', 'userRate', 'orderRate'); + }, 2000 + random_int(600, 1200)); + + $result = ['data' => $res]; + return table_assign(0, '', $result); + } + + /** + * @param 用户统计饼状图 + * @return mixed + * @author xaboy + * @day 2020/6/25 + */ + public function userRate() + { + $date = get_params('date') ?? 'today'; + $merId = get_params('mer_id') ??''; + + $res = Cache::store('file')->remember(self::class . '@userRate' . $merId . $date, function () use ($merId,$date) { + $paid = 1; + $uids = Db::connect('shop')->table('eb_store_order')->when($paid, function ($query, $paid) { + $query->where('paid', $paid); + })->when($merId, function ($query, $merId) { + $query->where('mer_id', $merId); + })->when($date, function ($query, $date) { + getModelTime($query, $date, 'pay_time'); + })->group('uid')->field(Db::raw('uid,sum(pay_price) as pay_price,count(order_id) as total'))->select()->toArray(); + + $ids = array_column($uids, 'uid'); + $userPayCount = Db::connect('shop')->table('eb_user')->whereIn('uid', $ids)->column('pay_count', 'uid'); + $user = count($uids); + $oldUser = 0; + $totalPrice = 0; + $oldTotalPrice = 0; + foreach ($uids as $uid) { + $totalPrice = bcadd((string)$uid['pay_price'], (string)$totalPrice, 2); + if (($userPayCount[$uid['uid']] ?? 0) > $uid['total']) { + $oldUser++; + $oldTotalPrice = bcadd((string)$uid['pay_price'], (string)$oldTotalPrice, 2); + } + } + $newTotalPrice = bcsub((string)$totalPrice, (string)$oldTotalPrice, 2); + $newUser = $user - $oldUser; + return compact('newTotalPrice', 'newUser', 'oldTotalPrice', 'oldUser', 'totalPrice', 'user'); + }, 2000 + random_int(600, 1200)); + + $result = ['data' => $res]; + return table_assign(0, '', $result); + } + + /** + * @param 商品支付排行 + * @return mixed + * @author xaboy + * @day 2020/6/25 + */ + public function product() + { + $date = get_params('date') ?? 'today'; + $merId = get_params('mer_id') ??''; + $res = Cache::store('file')->remember(self::class . '@product' . $merId . $date, function () use ($merId, $date) { + return Db::connect('shop')->table('eb_store_order_product')->alias('A')->Join('eb_store_order B', 'A.order_id = B.order_id') + ->field(Db::raw('sum(A.product_num) as total,A.product_id,cart_info')) + ->withAttr('cart_info', function ($val) { + return json_decode($val, true); + }) + ->withAttr('store_name', function ($val,$date) { + return $date['cart_info']['product']['store_name']; + }) + ->withAttr('image', function ($val,$date) { + return $date['cart_info']['product']['image']; + }) + ->when($date, function ($query, $date) { + getModelTime($query, $date, 'B.pay_time'); + })->when($merId, function ($query, $merId) { + $query->where('B.mer_id', $merId); + })->where('B.paid', 1)->group('A.product_id')->limit(10)->order('total DESC')->select(); + }, 2000 + random_int(600, 1200)); + $result = ['data' => $res]; + return table_assign(0, '', $result); + } + +//商品访客排行 + public function productVisit() + { + $date = get_params('date') ?? 'today'; + $merId = get_params('mer_id') ??''; + + $res = Cache::store('file')->remember(self::class . '@productVisit' . $merId . $date, function () use ($merId, $date) { + return Db::connect('shop')->table('eb_user_visit')->alias('A')->join('eb_store_product B', 'A.type_id = B.product_id') + ->join('eb_merchant C', 'C.mer_id = B.mer_id') + ->field(Db::raw('count(A.type_id) as total,B.image,B.store_name')) + ->when($date, function ($query, $date) { + getModelTime($query, $date, 'A.create_time'); + })->where('A.type', 'product')->where('B.mer_id', $merId)->group('A.type_id')->order('total DESC') + ->limit(10)->select(); + }, 2000 + random_int(600, 1200)); + $result = ['data' => $res]; + return table_assign(0, '', $result); + } + + /** + * @param 商品加购排行 + * @return mixed + * @author xaboy + * @day 2020/6/25 + */ + public function productCart() + { + $date = get_params('date') ?? 'today'; + $merId = get_params('mer_id') ??''; + + $res = Cache::store('file')->remember(self::class . '@productCart' . $merId . $date, function () use ($merId, $date) { + return Db::connect('shop')->table('eb_store_product')->alias('A')->Join('eb_store_cart B', 'A.product_id = B.product_id') + ->field(Db::raw('sum(B.cart_num) as total,A.product_id,A.store_name,A.image')) + ->when($date, function ($query, $date) { + getModelTime($query, $date, 'B.create_time'); + })->when($merId, function ($query, $merId) { + $query->where('A.mer_id', $merId); + })->where('B.product_type', 0)->where('B.is_pay', 0)->where('B.is_del', 0) + ->where('B.is_new', 0)->where('B.is_fail', 0)->group('A.product_id')->limit(10)->order('total DESC')->select(); + }, 2000 + random_int(600, 1200)); + $result = ['data' => $res]; + return table_assign(0, '', $result); + } + + // 接收微信支付状态的通知 + public function notify() + { + $app = $this->payment(); + // 用 easywechat 封装的方法接收微信的信息, 根据 $message 的内容进行处理, 之后要告知微信服务器处理好了, 否则微信会一直请求这个 url, 发送信息 + $response = $app->handlePaidNotify(function($message, $fail){ + // 首先查看 order 表, 如果 order 表有记录, 表示已经支付过了 + $order = Order::where('order_sn', $message['out_trade_no'])->first(); + if ($order) { + return true; // 如果已经生成订单, 表示已经处理完了, 告诉微信不用再通知了 + } + + // 查看支付日志 + $payLog = PayLog::where('out_trade_no', $message['out_trade_no'])->first(); + if (!$payLog || $payLog->paid_at) { // 如果订单不存在 或者 订单已经支付过了 + return true; // 告诉微信,我已经处理完了,订单没找到,别再通知我了 + } + + // return_code 表示通信状态,不代表支付状态 + if ($message['return_code'] === 'SUCCESS') { + // 用户是否支付成功 + if ($message['result_code'] === 'SUCCESS') { + // 更新支付时间为当前时间 + $payLog->paid_at = now(); + $post_id = $payLog->post_id; + // 联表查询 post 的相关信息 + $post_title = $payLog->post->title; + $post_price = $payLog->post->price; + $post_original_price = $payLog->post->original_price; + $post_cover = $payLog->post->post_cover; + $post_description = $payLog->post->description; + $user_id = $payLog->post->user_id; + + // 创建订单记录 + Order::create([ + 'order_sn' => $message['out_trade_no'], + 'total_fee' => $message['total_fee'], + 'pay_log_id' => $payLog->id, + 'status' => 1, + 'user_id' => $user_id, + 'paid_at' => $payLog->paid_at, + 'post_id' => $post_id, + 'post_title' => $post_title, + 'post_price' => $post_price, + 'post_original_price' => $post_original_price, + 'post_cover' => $post_cover, + 'post_description' => $post_description, + ]); + + // 更新 PayLog, 这里的字段都是根据微信支付结果通知的字段设置的(https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=9_7&index=8) + PayLog::where('out_trade_no', $message['out_trade_no'])->update([ + 'appid' => $message['appid'], + 'bank_type' => $message['bank_type'], + 'total_fee' => $message['total_fee'], + 'trade_type' => $message['trade_type'], + 'is_subscribe' => $message['is_subscribe'], + 'mch_id' => $message['mch_id'], + 'nonce_str' => $message['nonce_str'], + 'openid' => $message['openid'], + 'sign' => $message['sign'], + 'cash_fee' => $message['cash_fee'], + 'fee_type' => $message['fee_type'], + 'transaction_id' => $message['transaction_id'], + 'time_end' => $payLog->paid_at, + 'result_code' => $message['result_code'], + 'return_code' => $message['return_code'], + ]); + } + } else { + // 如果支付失败, 也更新 PayLog, 跟上面一样, 就是多了 error 信息 + PayLog::where('out_trade_no', $message['out_trade_no'])->update([ + 'appid' => $message['appid'], + 'bank_type' => $message['bank_type'], + 'total_fee' => $message['total_fee'], + 'trade_type' => $message['trade_type'], + 'is_subscribe' => $message['is_subscribe'], + 'mch_id' => $message['mch_id'], + 'nonce_str' => $message['nonce_str'], + 'openid' => $message['openid'], + 'sign' => $message['sign'], + 'cash_fee' => $message['cash_fee'], + 'fee_type' => $message['fee_type'], + 'transaction_id' => $message['transaction_id'], + 'time_end' => $payLog->paid_at, + 'result_code' => $message['result_code'], + 'return_code' => $message['return_code'], + 'err_code' => $message['err_code'], + 'err_code_des' => $message['err_code_des'], + ]); + return $fail('通信失败,请稍后再通知我'); + } + return true; // 返回处理完成 + }); + // 这里是必须这样返回的, 会发送给微信服务器处理结果 + return $response; + } } diff --git a/app/admin/controller/nk/Analysis.php b/app/admin/controller/nk/Analysis.php index 023a747..f31c397 100644 --- a/app/admin/controller/nk/Analysis.php +++ b/app/admin/controller/nk/Analysis.php @@ -74,8 +74,8 @@ class Analysis extends BaseController $map[] = ['a.type_id','in','2,3']; $list['num_1'] = Db::connect('shop')->table('eb_merchant')->alias('a')->join('eb_merchant_address b','a.mer_id = b.mer_id')->where($mmm)->where($map)->count(); //企业通过我们平台采购的农产品 - $list['num_3'] = Db::connect('shop')->table('eb_user')->alias('a')->join('eb_nk_user b','a.uid = b.user_id')->join('eb_product_order_log c','a.uid = c.uid')->join('nk_lihaink_cn.fa_szxc_information_useraddress d','b.n_user_id = d.user_id')->where($www)->where('a.status',1)->where('c.status',1)->count(); - +// $list['num_3'] = Db::connect('shop')->table('eb_user')->alias('a')->join('eb_nk_user b','a.uid = b.user_id')->join('eb_product_order_log c','a.uid = c.uid')->join('nk_lihaink_cn.fa_szxc_information_useraddress d','b.n_user_id = d.user_id')->where($www)->where('a.status',1)->where('c.status',1)->count(); + $list['num_3'] = 0; //镇农产品需求量分析(事业单位、企业、居民) //农产品市场行情分析、显示 //农产品市内需求量 @@ -137,8 +137,8 @@ class Analysis extends BaseController $list['num_1'] = Db::connect('shop')->table('eb_merchant')->alias('a')->join('eb_merchant_address b','a.mer_id = b.mer_id')->where($mmm)->where($map)->count(); //企业通过我们平台采购的农产品 - $list['num_3'] = Db::connect('shop')->table('eb_user')->alias('a')->join('eb_nk_user b','a.uid = b.user_id')->join('eb_product_order_log c','a.uid = c.uid')->join('nk_lihaink_cn.fa_szxc_information_useraddress d','b.n_user_id = d.user_id')->where($www)->where('a.status',1)->where('c.status',1)->count(); - +// $list['num_3'] = Db::connect('shop')->table('eb_user')->alias('a')->join('eb_nk_user b','a.uid = b.user_id')->join('eb_product_order_log c','a.uid = c.uid')->join('nk_lihaink_cn.fa_szxc_information_useraddress d','b.n_user_id = d.user_id')->where($www)->where('a.status',1)->where('c.status',1)->count(); + $list['num_3'] = 0; //镇农产品需求量分析(事业单位、企业、居民) //农产品市场行情分析、显示 //农产品市内需求量 diff --git a/app/admin/controller/product/StoreCategory.php b/app/admin/controller/product/StoreCategory.php index ef7d927..ade4640 100644 --- a/app/admin/controller/product/StoreCategory.php +++ b/app/admin/controller/product/StoreCategory.php @@ -53,4 +53,19 @@ class StoreCategory extends BaseController return to_assign(0, '', $list); } + /** + * 平台商品分类 + * + */ + public function getAllList() + { + $where['mer_id'] = 0; + $where['is_show'] = 0; + $data = $this->category->getStoreCategoryList(0,1); + $list = FormatList::FormatCategory($data,'store_category_id', 'pid', 'cate_name','child', 'id', 'title'); + + return to_assign(0, '', $list); + } + + } \ No newline at end of file diff --git a/app/admin/view/index/main.html b/app/admin/view/index/main.html index 01e60db..2d20d02 100644 --- a/app/admin/view/index/main.html +++ b/app/admin/view/index/main.html @@ -19,6 +19,91 @@ .layui-card-body .layui-timeline-item { padding-bottom: 5px; } + .layui-card-header span { + position: absolute; + right: 10px; + top: 10px; + } + .layui-sales { + margin-bottom: 0; + overflow: hidden; + color: rgba(0,0,0,.85); + font-size: 30px; + } + + .layui-sales-info { + padding-top: 16px; + color: rgba(0,0,0,.65); + white-space: nowrap; + text-overflow: ellipsis; + } + + fieldset.layui-field-title { + margin-bottom: 10px; + } + + + .select_time { + width: 350px; + /* border-radius: 5px; */ + float: right; + /*background: #1e3d64;*/ + /*left: 74%;*/ + /*top: 221%;*/ + position: relative; + z-index: 11; + } + + .select_time span { + display: block; + width: 60px; + height: 25px; + float: left; + /*background: #4095e5;*/ + text-align: center; + line-height: 25px; + position: relative; + top:-28px; + right: -30%; + border-left: 1px solid #dcdfe6; + border-radius: 4px 0 0 4px; + box-shadow: none!important; + cursor:pointer; + } + .select_time .active { + color: #fff; + background-color: #6394f9; + border-color: #6394f9; + box-shadow: -1px 0 0 0 #6394f9; + } + + #btsspan{ + position: relative; + width: 250px; + left:33%; + z-index: 11; + } + + #btsspan span{ + display: block; + width: 60px; + height: 25px; + float: left; + /*background: #4095e5;*/ + text-align: center; + line-height: 25px; + position: relative; + border-left: 1px solid #dcdfe6; + border-radius: 4px 0 0 4px; + box-shadow: none!important; + cursor:pointer; + } + .el-row .active { + color: #fff; + background-color: #6394f9; + border-color: #6394f9; + box-shadow: -1px 0 0 0 #6394f9; + } {/block} @@ -122,23 +207,795 @@ -