diff --git a/application/admin/controller/Auth.php b/application/admin/controller/Auth.php index 830881f..f50f6db 100644 --- a/application/admin/controller/Auth.php +++ b/application/admin/controller/Auth.php @@ -21,10 +21,10 @@ class Auth extends Common if($val){ $map['username|email|tel']= array('like',"%".$val."%"); } - if (session('aid')!=1){ - $map='admin_id='.session('aid'); - - } +// if (session('aid')!=1){ +// $map='admin_id='.session('aid'); +// +// } $list=Db::table(config('database.prefix').'admin')->alias('a') ->join(config('database.prefix').'auth_group ag','a.group_id = ag.group_id','left') ->field('a.*,ag.title') diff --git a/application/admin/controller/Client.php b/application/admin/controller/Client.php index cd9d9fe..57d9b24 100644 --- a/application/admin/controller/Client.php +++ b/application/admin/controller/Client.php @@ -1,6 +1,7 @@ $out_point){ + if($out_point>0){ $out_point_log = []; $out_point_log['aid'] = $data['aid']; $out_point_log['take_id'] = $result; @@ -1028,6 +1035,7 @@ class Client extends Common{ $out_point_log['after_point'] = $admin_point['in_point'] - $out_point; $out_point_log['active_id'] = $data['active_id']; $out_point_log['active_name'] = $activeInfo['name']; + $out_point_log['take_money'] = intval($data['take_money']); $out_point_log['money'] = $can_out_money; $out_point_log['point'] = $out_point; $out_point_log['remark'] = $activeInfo['content']; @@ -1039,33 +1047,37 @@ class Client extends Common{ Db::table('admin_point')->where(['id'=>$admin_point['id']])->setDec('in_point',$out_point); //依次扣除 用户id 要扣除多少分 $this->subAdminPoint($data['aid'],$out_point); - }else{ - $out_point = 0; } + //重新获取最新的数据了 $admin_point = Db::table('admin_point') ->where(['aid' => $data['aid']])->find(); //再计算提货积分 提货金额 * (积分/金额比) - $in_point = intval(intval($data['take_money'])*$get_money_point_rate); - - $out_point_log = []; - $out_point_log['aid'] = $data['aid']; - $out_point_log['take_id'] = $result; - $out_point_log['change'] = $in_point; - $out_point_log['type'] = 0; - $out_point_log['in_point'] = $admin_point['in_point']; - $out_point_log['after_point'] = $admin_point['in_point'] + $in_point; - $out_point_log['active_id'] = $data['active_id']; - $out_point_log['active_name'] = $activeInfo['name']; - $out_point_log['money'] = intval($data['take_money']); - $out_point_log['point'] = $out_point_log['use_point'] = $in_point; - $out_point_log['remark'] = $activeInfo['content']; - $out_point_log['out_time'] = strtotime(date('Y-m-d',strtotime('+1 years +1 days')))-1; - $out_point_log['add_time'] = time(); - Db::table('admin_point_log')->insert($out_point_log); - - //加上提货积分 - Db::table('admin_point')->where(['id'=>$admin_point['id']])->setInc('point',$in_point); - Db::table('admin_point')->where(['id'=>$admin_point['id']])->setInc('in_point',$in_point); + $in_point = intval(intval($data['take_money']-$can_out_money)*$get_money_point_rate); + if($in_point>0){ + + $out_point_log = []; + $out_point_log['aid'] = $data['aid']; + $out_point_log['take_id'] = $result; + $out_point_log['change'] = $in_point; + $out_point_log['type'] = 0; + $out_point_log['in_point'] = $admin_point['in_point']; + $out_point_log['after_point'] = $admin_point['in_point'] + $in_point; + $out_point_log['active_id'] = $data['active_id']; + $out_point_log['active_name'] = $activeInfo['name']; + $out_point_log['take_money'] = intval($data['take_money']); + $out_point_log['money'] = intval($data['take_money']-$can_out_money); + $out_point_log['point'] = $out_point_log['use_point'] = $in_point; + $out_point_log['remark'] = $activeInfo['content']; + $out_point_log['out_time'] = strtotime(date('Y-m-d',strtotime('+1 years +1 days')))-1; + $out_point_log['add_time'] = time(); + Db::table('admin_point_log')->insert($out_point_log); + + //加上提货积分 + Db::table('admin_point')->where(['id'=>$admin_point['id']])->setInc('point',$in_point); + Db::table('admin_point')->where(['id'=>$admin_point['id']])->setInc('in_point',$in_point); + + } + //重新获取最新的数据了 $admin_point = Db::table('admin_point') ->where(['aid' => $data['aid']])->find(); @@ -1082,7 +1094,11 @@ class Client extends Common{ $message['point'] = $admin_point['point']; $message['remark'] = str_replace(["{pre_point}","{take_money}","{out_point}","{get_point}","{point}","{active_content}"],[$pre_point,intval($data['take_money']),$out_point,$in_point,$admin_point['point'],$activeInfo['content']],$weixin_template_0); $message['add_time'] = time(); - Db::table('admin_point_message')->insert($message); + $messageId = Db::table('admin_point_message')->insert($message,0,1); + if($messageId){ + $task = new Task(); + $task->sendWxMessageById($messageId); + } $msg = ['code' => 0,'msg'=>'添加成功!','data'=>[]]; return json($msg); @@ -1096,7 +1112,7 @@ class Client extends Common{ return $this->fetch('client/take_add'); } - //用户积分列表 + //我的积分列表 public function userPointList(){ if(request()->isPost()){ $page =input('page')?input('page'):1; @@ -1113,19 +1129,32 @@ class Client extends Common{ return $this->fetch('client/point_list'); } + + //我的积分列表 + public function personPointList(){ + $aid = $this->sys_admin_info['admin_id']; + $result = db('admin') + -> alias("a") + -> join('admin_point b','a.admin_id=b.aid') + ->where('a.admin_id',$aid) + ->find(); + $this->assign("result",$result); + return $this->fetch('client/point_list3'); + } //用户积分列表 public function userPointDetail(){ $aid = input("id"); if($this->sys_admin_info['group_id'] == 11){ - $aid = $this->sys_admin_info['admin__id']; + $aid = $this->sys_admin_info['admin_id']; } if(request()->isPost()){ $page =input('page')?input('page'):1; $pageSize =input('limit')?input('limit'):config('pageSize'); $list = db('admin_point_log') - ->field("b.*,a.username") + ->field("b.*,a.username,c.remark as take_remark,c.good_name") -> alias("b") -> join('admin a','a.admin_id=b.aid') + -> join('admin_take c','b.take_id=c.id') ->where('b.aid',$aid) ->order("id desc") ->paginate(array('list_rows'=>$pageSize,'page'=>$page)) @@ -1135,6 +1164,26 @@ class Client extends Common{ $this->assign("id",$aid); return $this->fetch('client/point_detail'); } + //用户积分列表 + public function personPointDetail(){ + $aid = $this->sys_admin_info['admin_id']; + if(request()->isPost()){ + $page =input('page')?input('page'):1; + $pageSize =input('limit')?input('limit'):config('pageSize'); + $list = db('admin_point_log') + ->field("b.*,a.username,c.remark as take_remark,c.good_name") + -> alias("b") + -> join('admin a','a.admin_id=b.aid') + -> join('admin_take c','b.take_id=c.id') + ->where('b.aid',$aid) + ->order("id desc") + ->paginate(array('list_rows'=>$pageSize,'page'=>$page)) + ->toArray(); + return $result = ['code'=>0,'msg'=>'获取成功!','data'=>$list['data'],'count'=>$list['total'],'rel'=>1]; + } + $this->assign("id",$aid); + return $this->fetch('client/point_detail2'); + } // 将扣除的积分指定到每条记录上 public function subAdminPoint($aid=0,$out_point=0){ diff --git a/application/admin/controller/Common.php b/application/admin/controller/Common.php index 9766d64..7f047fb 100644 --- a/application/admin/controller/Common.php +++ b/application/admin/controller/Common.php @@ -10,7 +10,7 @@ class Common extends Controller { //判断管理员是否登录 if (!session('aid')) { - $this->redirect('admin/login/index?wechat='.$_GET["wechat"]); + $this->redirect('admin/login/index',['wechat'=>$this->request->param("wechat")]); } define('MODULE_NAME',strtolower(request()->controller())); define('ACTION_NAME',strtolower(request()->action())); @@ -20,6 +20,7 @@ class Common extends Controller //当前操作权限ID if(session('aid')!=1){ $this->HrefId = db('auth_rule')->where('href',MODULE_NAME.'/'.ACTION_NAME)->value('id'); +// var_dump(MODULE_NAME.'/'.ACTION_NAME);die; //当前管理员权限 $map['a.admin_id'] = session('aid'); $rules=Db::table(config('database.prefix').'admin')->alias('a') diff --git a/application/admin/controller/Login.php b/application/admin/controller/Login.php index a236dbf..67aaef8 100644 --- a/application/admin/controller/Login.php +++ b/application/admin/controller/Login.php @@ -55,7 +55,7 @@ class Login extends Controller if(request()->isPost()) { $data = input('post.'); - $return = $admin->login($data,$this->system['code'],$wxInfo); + $return = $admin->login($data,$this->system['code']); return ['code' => $return['code'], 'msg' => $return['msg']]; }else{ $this->assign("wxid",$wxid); diff --git a/application/admin/model/Admin.php b/application/admin/model/Admin.php index 9d59eb0..1868b13 100644 --- a/application/admin/model/Admin.php +++ b/application/admin/model/Admin.php @@ -14,6 +14,9 @@ class Admin extends Model } } $user=Db::name('admin')->where('username',$data['username'])->find(); + if(!$user){ + $user=Db::name('admin')->where('tel',$data['username'])->find(); + } if($user) { if(!$user['wxid'] && $data['wxid']){ $update = ["wxid"=>$data['wxid'],"openid"=>$data['openid']]; diff --git a/application/admin/view/auth/adminForm.html b/application/admin/view/auth/adminForm.html index 5a83f91..31f3de2 100644 --- a/application/admin/view/auth/adminForm.html +++ b/application/admin/view/auth/adminForm.html @@ -15,18 +15,18 @@ - - - - - - - - - - - - +
+ +
+ +
+
+
+ +
+ +
+
diff --git a/application/admin/view/client/active_list.html b/application/admin/view/client/active_list.html index a9def12..1a8887c 100644 --- a/application/admin/view/client/active_list.html +++ b/application/admin/view/client/active_list.html @@ -92,7 +92,7 @@ return res.get_money+"元赠送"+res.get_point+"积分"; }}, {field: 'out_money', title:'抵扣积分',templet:function (res) { - return res.out_point+"积分抵扣"+res.get_point+"元"; + return res.out_point+"积分抵扣"+res.out_money+"元"; }}, {field:'status', title: '{:lang("status")}',width:150,toolbar: '#status'}, {field: 'add_time', title:'创建时间',templet:function (res) { diff --git a/application/admin/view/client/point_detail.html b/application/admin/view/client/point_detail.html index 132934a..4beaead 100644 --- a/application/admin/view/client/point_detail.html +++ b/application/admin/view/client/point_detail.html @@ -73,9 +73,9 @@ + + + + + + + +{include file="common/foot"/} + + + + + + + + \ No newline at end of file diff --git a/application/admin/view/client/point_list2.html b/application/admin/view/client/point_list2.html new file mode 100644 index 0000000..18c482b --- /dev/null +++ b/application/admin/view/client/point_list2.html @@ -0,0 +1,148 @@ + + + + + {:config('sys_name')}后台管理 + + + + + + + + + + + + + + + +
+
+
+ + + + + + + +{include file="common/foot"/} + + + + + + + + \ No newline at end of file diff --git a/application/admin/view/client/point_list3.html b/application/admin/view/client/point_list3.html new file mode 100644 index 0000000..31739e6 --- /dev/null +++ b/application/admin/view/client/point_list3.html @@ -0,0 +1,79 @@ +{include file="common/head"/} +
+
+ 我的积分 +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+ +
+ +
+
+
+{include file="common/foot"/} + + + \ No newline at end of file diff --git a/application/admin/view/index/index.html b/application/admin/view/index/index.html index 3a8266b..ef8bf32 100644 --- a/application/admin/view/index/index.html +++ b/application/admin/view/index/index.html @@ -54,7 +54,8 @@
@@ -210,14 +210,14 @@
动态
- - + + {volist name='result' id='vo'}
-
+

{$vo.username} 跟进 {$vo.kh_name}

跟进记录: {$vo.reply_msg}

跟进时间:{$vo.create_date|date='Y-m-d H:i:s'} diff --git a/application/admin/view/order/index.html b/application/admin/view/order/index.html index 680d505..b46f6c1 100644 --- a/application/admin/view/order/index.html +++ b/application/admin/view/order/index.html @@ -225,7 +225,7 @@ $('body').on('click','#add',function() { var indexOpen = layer.open({ type: 2, - title: '添加客户', + title: '添加订单', closeBtn: 1, //是否显示关闭按钮 area: ['100%','86%'], anim: 2, //动画 diff --git a/application/admin/view/order/personindex.html b/application/admin/view/order/personindex.html index 95eb27c..d619e3a 100644 --- a/application/admin/view/order/personindex.html +++ b/application/admin/view/order/personindex.html @@ -226,7 +226,7 @@ $('body').on('click','#add',function() { var indexOpen = layer.open({ type: 2, - title: '添加客户', + title: '添加订单', closeBtn: 1, //是否显示关闭按钮 area: ['100%','86%'], anim: 2, //动画 diff --git a/application/task/controller/Task.php b/application/task/controller/Task.php index bb9c5b0..ae5b38e 100644 --- a/application/task/controller/Task.php +++ b/application/task/controller/Task.php @@ -81,12 +81,12 @@ class Task extends Controller{ "data"=>[ "first"=>["value"=>"合肥金麓积分变动通知"], "keyword1"=>["value"=>$message['good_name']?$message['good_name']:"提货商品"], - "keyword2"=>["value"=>$message['take_money']], - "keyword3"=>["value"=>$message['out_point']], - "keyword4"=>["value"=>$message['get_point']."(有效积分:".$message['point'].")"], + "keyword2"=>["value"=>$message['take_money'],"color"=>"#ff0000"], + "keyword3"=>["value"=>$message['out_point'],"color"=>"#ffa500"], + "keyword4"=>["value"=>$message['get_point']."(有效积分:".$message['point'].")","color"=>"#ffa500"], // "keyword5"=>["value"=>$message['point']], - "keyword5"=>["value"=>date("Y年m月d日 H:i",$message['take_time']?:$message['add_time'])], - "remark"=>["value"=>$message['remark']], + "keyword5"=>["value"=>date("Y年m月d日 H:i",$message['take_time']?:$message['add_time']),"color"=>"#808080"], + "remark"=>["value"=>$message['remark'],"color"=>"#808080"], ], ]; $wxMessage = json_encode($wxMessage, JSON_UNESCAPED_UNICODE); @@ -105,11 +105,66 @@ class Task extends Controller{ } Db::table('admin_point_message')->where('id',$message['id'])->update($update); } + } + // 定时任务 每日过期积分 + public function sendWxMessageById($id){ + $weixinInfo = config('weixin_info'); + $weixinTemplate = config('weixin_templates'); + $now = time(); + $appid = $weixinInfo['appid']; + $appsecret = $weixinInfo['appSecret']; - } + $access_token_url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={$appid}&secret={$appsecret}"; + $access_token_json = $this->https_request($access_token_url,[]);//自定义函数 + $access_token_array = json_decode($access_token_json,true);//对 JSON 格式的字符串进行解码,转换为 PHP 变量,自带函数 + //获取access_token + $access_token = $access_token_array['access_token'];//获取access_token对应的值 + //待发送的积分消息 + $messages = Db::table('admin_point_message')->where(['status'=>0])->where("id",$id)->select(); + foreach ($messages as $message){ + if(!$message['openid'] || !$weixinTemplate[$message['tempid']]){ + $update = [ + "status"=>-1 + ]; + Db::table('admin_point_message')->where('id',$message['id'])->update($update); + continue; + } + + $wxMessage = [ + 'touser' => $message['openid'], + 'template_id' => $weixinTemplate[$message['tempid']], + "url" => 'http://jm.iiixo.com/', + "data"=>[ + "first"=>["value"=>"合肥金麓积分变动通知"], + "keyword1"=>["value"=>$message['good_name']?$message['good_name']:"提货商品"], + "keyword2"=>["value"=>$message['take_money'],"color"=>"#ff0000"], + "keyword3"=>["value"=>$message['out_point'],"color"=>"#ffa500"], + "keyword4"=>["value"=>$message['get_point']."(有效积分:".$message['point'].")","color"=>"#ffa500"], +// "keyword5"=>["value"=>$message['point']], + "keyword5"=>["value"=>date("Y年m月d日 H:i",$message['take_time']?:$message['add_time']),"color"=>"#808080"], + "remark"=>["value"=>$message['remark'],"color"=>"#808080"], + ], + ]; + $wxMessage = json_encode($wxMessage, JSON_UNESCAPED_UNICODE); + $url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token={$access_token}"; + $res = $this->https_request($url,$wxMessage);//自定义函数 + $result = json_decode($res,true);//对 JSON 格式的字符串进行解码,转换为 PHP 变量,自带函数 + if($result['errcode'] == 0 ){ + $update = [ + "status"=>1, + "send_time" => time(), + ]; + }else{ + $update = [ + "status"=>-1, + ]; + } + Db::table('admin_point_message')->where('id',$message['id'])->update($update); + } + } public function https_request($url,$data)//自定义函数,访问url返回结果 { $curl = curl_init(); diff --git a/config/app.php b/config/app.php index cefe23e..e13ad0f 100644 --- a/config/app.php +++ b/config/app.php @@ -107,7 +107,7 @@ return [ // 使用注解路由 'route_annotation' => false, // 域名根,如thinkphp.cn - 'url_domain_root' => 'http://www.ahshushijia.com', + 'url_domain_root' => 'http://jm.iiixo.com/', // 是否自动转换URL中的控制器和操作名 'url_convert' => true, // 默认的访问控制器层 @@ -161,7 +161,7 @@ return [ ], 'pageSize'=>15, //自定义配置 - 'sys_name' =>'威尔汉森', + 'sys_name' =>'合肥金麓', //文件上传 'addwater'=>false, 'watertext'=>'Meyoo',