223 lines
9.4 KiB
PHP
223 lines
9.4 KiB
PHP
<?php
|
|
// +----------------------------------------------------------------------
|
|
// | 小说系统 [ WE CAN DO IT JUST THINK IT ]
|
|
// +----------------------------------------------------------------------
|
|
|
|
namespace app\admin\controller;
|
|
use app\common\controller\Admin;
|
|
use think\Db;
|
|
use think\Cache;
|
|
|
|
class Newpaysetting extends Admin {
|
|
|
|
public function _initialize() {
|
|
parent::_initialize();
|
|
}
|
|
|
|
public function index() {
|
|
|
|
$this->setMeta('新充值配置');
|
|
return $this->fetch();
|
|
}
|
|
|
|
public function refreshs(){
|
|
$info = array();
|
|
$twolist = array();
|
|
$info['list1'] = db('pay_setting_types')->where('type','0')->find();
|
|
$info['list2'] = db('pay_setting_types')->where('type','14')->find();
|
|
$info['list3'] = db('pay_setting_types')->where('type','13')->find();
|
|
$info['list4'] = db('pay_setting_types')->where('type','12')->find();
|
|
$info['list5'] = db('pay_setting_types')->where('type','11')->find();
|
|
$info['list6'] = db('pay_setting_types')->where('type','4-5-6')->find();
|
|
$info['list7'] = db('pay_setting_types')->where('type','8')->find();
|
|
$info['list8'] = db('pay_setting_types')->where('type','7')->find();
|
|
|
|
$twolist['twolist1'] = db('pay_setting_back')->where('type','0')->find();
|
|
$twolist['twolist2'] = db('pay_setting_back')->where('type','14')->find();
|
|
$twolist['twolist3'] = db('pay_setting_back')->where('type','13')->find();
|
|
$twolist['twolist4'] = db('pay_setting_back')->where('type','12')->find();
|
|
$twolist['twolist5'] = db('pay_setting_back')->where('type','11')->find();
|
|
$twolist['twolist6'] = db('pay_setting_back')->where('type','4-5-6')->find();
|
|
$twolist['twolist7'] = db('pay_setting_back')->where('type','8')->find();
|
|
$twolist['twolist8'] = db('pay_setting_back')->where('type','7')->find();
|
|
|
|
foreach($info as $k=>$v){
|
|
if($v){
|
|
$info[$k]['status'] = 1;
|
|
$info[$k]['index'] = db('pay_setting_types_list')->where(['pid'=>$v['id']])->order('sort asc')->select();
|
|
foreach($info[$k]['index'] as $k2=>$v2){
|
|
$info[$k]['index'][$k2]['moneys'] = db('pay_setting')->field('id,price,giveegold,title,ispay')->where('type',1)->order('price asc')->select();
|
|
$info[$k]['index'][$k2]['val'] = intval($v2['val']);
|
|
}
|
|
}else{
|
|
$info[$k]['status'] = 2;
|
|
$info[$k]['first'] = '';
|
|
$info[$k]['plural'] = '';
|
|
$info[$k]['radio'] = '';
|
|
$info[$k]['index'][0]['val'] = '';
|
|
$info[$k]['index'][0]['sort'] = '';
|
|
$info[$k]['index'][0]['moneys'] = db('pay_setting')->field('id,price,giveegold,title,ispay')->where('type',1)->order('price asc')->select();
|
|
}
|
|
}
|
|
|
|
foreach($twolist as $k=>$v){
|
|
if($v){
|
|
$twolist[$k]['status'] = 1;
|
|
$twolist[$k]['moneys'] = db('pay_setting')->field('id,price,giveegold,title,ispay')->where('type',1)->order('price asc')->select();
|
|
$twolist[$k]['first'] = intval($v['first']);
|
|
}else{
|
|
$twolist[$k]['status'] = 2;
|
|
$twolist[$k]['first'] = '';
|
|
$twolist[$k]['moneys'] = db('pay_setting')->field('id,price,giveegold,title,ispay')->where('type',1)->order('price asc')->select();
|
|
}
|
|
}
|
|
|
|
exit(json_encode(array('status'=>1,'info'=>$info,'twolist'=>$twolist)));
|
|
}
|
|
|
|
public function setOne(){
|
|
$data = input('');
|
|
if($data['list']['radio']){
|
|
$this->checkpaysetting($data['list']['index']);
|
|
$index = $data['list']['index'];
|
|
$is = db('pay_setting_types')->where('type',$data['t'])->find();
|
|
if($is){
|
|
unset($data['list']['status']);
|
|
unset($data['list']['index']);
|
|
db('pay_setting_types')->where('type',$data['t'])->update($data['list']);
|
|
foreach($index as $k=>$v){
|
|
$is = db('pay_setting_types_list')->where(['id'=>$v['id']])->count();
|
|
if($is){
|
|
$listarr['val'] = $v['val'];
|
|
$listarr['sort'] = $v['sort'];
|
|
db('pay_setting_types_list')->where(['id'=>$v['id']])->update($listarr);
|
|
}else{
|
|
$listarr['type'] = $data['t'];
|
|
$listarr['pid'] = $data['list']['id'];
|
|
$listarr['val'] = $v['val'];
|
|
$listarr['sort'] = $v['sort'];
|
|
db('pay_setting_types_list')->insert($listarr);
|
|
}
|
|
}
|
|
}else{
|
|
$data['list']['type'] = $data['t'];
|
|
unset($data['list']['status']);
|
|
unset($data['list']['index']);
|
|
$pid = db('pay_setting_types')->insertGetId($data['list']);
|
|
foreach($index as $k=>$v){
|
|
$listarr['type'] = $data['t'];
|
|
$listarr['pid'] = $pid;
|
|
$listarr['val'] = $v['val'];
|
|
$listarr['sort'] = $v['sort'];
|
|
db('pay_setting_types_list')->insert($listarr);
|
|
}
|
|
}
|
|
exit(json_encode(array('status'=>1)));
|
|
}else{
|
|
exit(json_encode(array('status'=>2,'msg'=>'请选择按章节或全本购买')));
|
|
}
|
|
}
|
|
|
|
public function checkpaysetting($list){
|
|
if(empty($list)){
|
|
exit(json_encode(array('status'=>2,'msg'=>'错误')));
|
|
}
|
|
foreach($list as $k=>$v){
|
|
$is = db('pay_setting')->where(['id'=>$v['val']])->count('id');
|
|
if(empty($is)){
|
|
exit(json_encode(array('status'=>2,'msg'=>'请添加对应充值项')));
|
|
}
|
|
}
|
|
}
|
|
|
|
public function getmoneys(){
|
|
$m = db('pay_setting')->field('id,price,giveegold,title,ispay')->where('type',1)->order('price asc')->select();
|
|
exit(json_encode(array('status'=>1,'moneys'=>$m)));
|
|
}
|
|
|
|
public function delOne(){
|
|
$data = input('');
|
|
$pid = db('pay_setting_types')->where('type',$data['t'])->value('id');
|
|
db('pay_setting_types_list')->where(['pid'=>$pid])->delete();
|
|
db('pay_setting_types')->where('type',$data['t'])->delete();
|
|
exit(json_encode(array('status'=>1)));
|
|
}
|
|
|
|
public function delOneList(){
|
|
$item = input('');
|
|
$item = $item['item'];
|
|
$pid = db('pay_setting_types_list')->where(['id'=>$item['id']])->value('pid');
|
|
$r = db('pay_setting_types_list')->where(['pid'=>$pid])->count('id');
|
|
if($r<=1){
|
|
exit(json_encode(array('status'=>2,'msg'=>'不能删除最后一条')));
|
|
}
|
|
db('pay_setting_types_list')->where(['id'=>$item['id']])->delete();
|
|
exit(json_encode(array('status'=>1)));
|
|
}
|
|
|
|
public function settwolist(){
|
|
$data = input('');
|
|
if($data['list']['first']){
|
|
$is = db('pay_setting_back')->where('type',$data['t'])->find();
|
|
if($is){
|
|
$r = db('pay_setting_back')->where('type',$data['t'])->update($data['list']);
|
|
}else{
|
|
$data['list']['type'] = $data['t'];
|
|
$r = db('pay_setting_back')->insert($data['list']);
|
|
}
|
|
if($r){
|
|
exit(json_encode(array('status'=>1)));
|
|
}else{
|
|
exit(json_encode(array('status'=>2,'msg'=>'错误或重复值')));
|
|
}
|
|
}else{
|
|
exit(json_encode(array('status'=>2,'msg'=>'错误')));
|
|
}
|
|
}
|
|
|
|
public function deltwolist(){
|
|
$data = input('');
|
|
$r = db('pay_setting_back')->where('type',$data['t'])->delete();
|
|
if($r){
|
|
exit(json_encode(array('status'=>1)));
|
|
}else{
|
|
exit(json_encode(array('status'=>2,'msg'=>'错误')));
|
|
}
|
|
}
|
|
|
|
public function gettwolist(){
|
|
$data = input('');
|
|
$toggtim = empty(input('toggtim'))?1:input('toggtim');
|
|
if($toggtim=='1'){ //今日
|
|
$startdata = date('Y-m-d 0:0:0'); //今日凌晨
|
|
$enddata = strtotime(date('Y-m-d H:i:s')); //现在
|
|
$enddata = date('Y-m-d H:i:s',$enddata);
|
|
$txt = '今日';
|
|
}else{ //昨日
|
|
$startdata=mktime(0,0,0,date('m'),date('d')-1,date('Y'));
|
|
$startdata = date('Y-m-d H:i:s',$startdata);
|
|
$enddata=mktime(0,0,0,date('m'),date('d'),date('Y'));
|
|
$enddata = date('Y-m-d H:i:s',$enddata);
|
|
$txt = '昨日';
|
|
}
|
|
$startdata = strtotime($startdata);
|
|
$enddata = strtotime($enddata);
|
|
$info = array();
|
|
$info['type'] = $data['type'];
|
|
if($data['type']=='4-5-6'){
|
|
$data['type'] = array('in','4,5,6');
|
|
}
|
|
$info['typeName'] = $data['typeName'];
|
|
$info['seeNum'] = db('member_backlog')->where('addtime', 'between', [$startdata,$enddata])->where(['type'=>$data['type']])->count('id');
|
|
$info['payNum'] = db('order')->where('iscontrol',0)->where('create_time', 'between', [$startdata,$enddata])->where(['isback'=>1,'userType'=>$data['type'],'status'=>1])->count('id');
|
|
$info['money'] = db('order')->where('iscontrol',0)->where('create_time', 'between', [$startdata,$enddata])->where(['isback'=>1,'userType'=>$data['type'],'status'=>1])->sum('money');
|
|
$info['totalMoney'] = db('order')->where('iscontrol',0)->where(['isback'=>1,'userType'=>$data['type'],'status'=>1])->sum('money');
|
|
$info['totalPayNum'] = db('order')->where('iscontrol',0)->where(['isback'=>1,'userType'=>$data['type'],'status'=>1])->count('id');
|
|
$info['alltotalMoney'] = db('order')->where('iscontrol',0)->where(['isback'=>1,'status'=>1])->sum('money');
|
|
$info['alltotalPayNum'] = db('order')->where('iscontrol',0)->where(['isback'=>1,'status'=>1])->count('id');
|
|
exit(json_encode(array('status'=>1,'info'=>$info,'txt'=>$txt)));
|
|
}
|
|
|
|
|
|
|
|
} |