|
@@ -0,0 +1,990 @@
|
|
|
+<?php
|
|
|
+namespace app\api\controller\screen;
|
|
|
+
|
|
|
+use app\hander\HelpHander;
|
|
|
+use app\api\controller\screen\Index;
|
|
|
+
|
|
|
+use think\Controller;
|
|
|
+use think\Db;
|
|
|
+
|
|
|
+class Project extends Controller
|
|
|
+{
|
|
|
+ public function __construct()
|
|
|
+ {
|
|
|
+ parent::__construct();
|
|
|
+
|
|
|
+ $this->orgId = input('orgid')?input('orgid'):0;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取用户数
|
|
|
+ * @param $orgid 组织id
|
|
|
+ * @param $roles 角色id
|
|
|
+ * @return mixed
|
|
|
+ */
|
|
|
+ private function get_user_count($orgid,$roles){
|
|
|
+ $count = $this->db
|
|
|
+ ->join('user_roles','user.USER_ID = user_roles.USER_ID')
|
|
|
+ ->join('user_org','user.USER_ID = user_org.USER_ID')
|
|
|
+ ->where_in('user_roles.ROLES_ID',$roles)
|
|
|
+ ->where('user.DEL_REF',0)
|
|
|
+ ->where('user.ENABLE',1)
|
|
|
+ ->where('user_org.ORG_TYPE',0)
|
|
|
+ ->where('user_org.ORG_ID',$orgid)
|
|
|
+ ->from('user')
|
|
|
+ ->count_all_results();
|
|
|
+ return $count;
|
|
|
+ }
|
|
|
+
|
|
|
+ // 各类人员占比接口
|
|
|
+ public function user(){
|
|
|
+ $this->load->model(array('OrgModel','RolesModel'));
|
|
|
+ $info = $this->OrgModel->show_one(array('ORG_ID'=>$this->orgId,'TYPE'=>'2'));
|
|
|
+ if(!$info||$info->ENABLE != 1||$info->DEL_REF != 0){
|
|
|
+ $this->error('项目不存在');
|
|
|
+ }
|
|
|
+ // 1=客户人员 2=综合人员 3=运送人员 4=维修人员 5=保洁人员 6=保安人员 7=调度人员 8=监管人员
|
|
|
+ $arr = array(
|
|
|
+ array('type' => 5),
|
|
|
+ array('type' => 3),
|
|
|
+ array('type' => 4),
|
|
|
+ array('type' => 6),
|
|
|
+ );
|
|
|
+ $allcount = 0;
|
|
|
+ foreach ($arr as $k=>$v){
|
|
|
+ $roles = $this->RolesModel->get_roles_type($this->orgId,$v['type']);
|
|
|
+ $arr[$k]['name'] = $roles['name'];
|
|
|
+ $arr[$k]['value'] = $this->get_user_count($this->orgId,$roles['roles']);
|
|
|
+ $allcount += $arr[$k]['value'];
|
|
|
+ }
|
|
|
+
|
|
|
+ $data = array(
|
|
|
+ array('value'=>$arr[0]['value'],'name'=>'保洁人员','name2'=>'保洁','bl'=>$allcount>0?round($arr[0]['value']*100/$allcount):0),
|
|
|
+ array('value'=>$arr[1]['value'],'name'=>'运送人员','name2'=>'运送','bl'=>$allcount>0?round($arr[1]['value']*100/$allcount):0),
|
|
|
+ array('value'=>$arr[2]['value'],'name'=>'维修人员','name2'=>'维修','bl'=>$allcount>0?round($arr[2]['value']*100/$allcount):0),
|
|
|
+ array('value'=>$arr[3]['value'],'name'=>'保安人员','name2'=>'保安','bl'=>$allcount>0?round($arr[3]['value']*100/$allcount):0),
|
|
|
+ );
|
|
|
+ $this->success('成功',['count' => $allcount,'list' => $data]);
|
|
|
+ }
|
|
|
+
|
|
|
+ public function todostis(){
|
|
|
+ $count1 = Db::name('orders')
|
|
|
+ ->where('org_id',$this->orgId)
|
|
|
+ ->where('del',0)
|
|
|
+ ->where('work_type_mode',3)
|
|
|
+ ->where('create_yyyymmdd',date('Ymd'))
|
|
|
+ ->where('order_mode','in',[5,6])
|
|
|
+ ->count();
|
|
|
+
|
|
|
+ $count2 = Db::name('orders')
|
|
|
+ ->where('org_id',$this->orgId)
|
|
|
+ ->where('del',0)
|
|
|
+ ->where('work_type_mode',1)
|
|
|
+ ->where('create_yyyymmdd',date('Ymd'))
|
|
|
+ ->where('order_mode','in',[5,6])
|
|
|
+ ->count();
|
|
|
+
|
|
|
+ $count3 = Db::name('daily_record')
|
|
|
+ ->where('org_id',$this->orgId)
|
|
|
+ ->where('create_yyyymmdd',date('Ymd'))
|
|
|
+ ->count();
|
|
|
+
|
|
|
+ $arr = [
|
|
|
+ [
|
|
|
+ 'name' => '运送任务',
|
|
|
+ 'count' => $count1
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'name' => '维修任务',
|
|
|
+ 'count' => $count2
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'name' => '日常任务',
|
|
|
+ 'count' => $count3
|
|
|
+ ]
|
|
|
+ ];
|
|
|
+ HelpHander::success($arr,'成功');
|
|
|
+ }
|
|
|
+
|
|
|
+ public function ysuser(){
|
|
|
+ $lists = model('User')->getYsUser($this->orgId,1);
|
|
|
+ $nlists = [];
|
|
|
+ if(count($lists) > 4){
|
|
|
+ $arr = array_rand($lists,4);
|
|
|
+ foreach ($arr as $k=>$v){
|
|
|
+ $nlists[] = $lists[$v];
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ $nlists = $lists;
|
|
|
+ }
|
|
|
+ foreach ($nlists as $k=>$v){
|
|
|
+ $count = Db::name('todo')
|
|
|
+ ->alias('a')
|
|
|
+ ->join('orders b','a.order_id=b.id')
|
|
|
+ ->where('a.create_yyyymmdd',date('Ymd'))
|
|
|
+ ->where('a.to_user_id',$v['id'])
|
|
|
+ ->where('a.todo_mode',3)
|
|
|
+ ->where('a.del',0)
|
|
|
+ ->where('a.org_id',$this->orgId)
|
|
|
+ ->count();
|
|
|
+ $nlists[$k]['count'] = $count;
|
|
|
+// $addr = Db::name('user_convey_addr')
|
|
|
+// ->alias('uca')
|
|
|
+// ->join('convey_addr ca','ca.id = uca.ADDR_ID')
|
|
|
+// ->where('uca.USER_ID',$v['USER_ID'])
|
|
|
+// ->order_by('uca.CREATE_TIME DESC')
|
|
|
+// ->select('ca.TITLE')
|
|
|
+// ->get('user_convey_addr as uca')
|
|
|
+// ->row_array();
|
|
|
+ $addr = [];
|
|
|
+ $nlists[$k]['addr_title'] = $addr?$addr['TITLE']:'';
|
|
|
+ }
|
|
|
+ HelpHander::success($nlists,'成功');
|
|
|
+ }
|
|
|
+
|
|
|
+ // 热点区域
|
|
|
+ public function hotaddr(){
|
|
|
+ //SELECT count(a.START) as COUNT,a.START FROM order_convey as a JOIN orders as o ON o.ORDER_ID = a.ORDER_ID GROUP BY a.`START` LIMIT 10
|
|
|
+ $curDay = date('Ymd');
|
|
|
+ $oldDay = date('Ymd',time() - 29*24*60*60);
|
|
|
+ $lists = Db::name('order_convey')
|
|
|
+ ->alias('oc')
|
|
|
+ ->join('orders o','o.id = oc.order_id')
|
|
|
+ ->where('o.org_id',$this->orgId)
|
|
|
+ ->where('o.create_yyyymmdd',$curDay)
|
|
|
+ ->where('o.work_type_mode',3)
|
|
|
+ ->where('o.del',0)
|
|
|
+ ->where('o.order_mode','in',[5,6])
|
|
|
+ ->field('COUNT(oc.start) as count,oc.start')
|
|
|
+ ->group('oc.start')
|
|
|
+ ->order('count','desc')
|
|
|
+ ->limit(10)
|
|
|
+ ->select();
|
|
|
+ $x = [];
|
|
|
+ $y1 = [];
|
|
|
+ $y2 = [];
|
|
|
+ foreach ($lists as $k=>$v){
|
|
|
+ $addr = Db::name('address')
|
|
|
+ ->where('id',$v['start'])
|
|
|
+ ->find();
|
|
|
+ $x[] = $addr?$addr['title']:'';
|
|
|
+ $y1[] = $v['count'];
|
|
|
+ $count = Db::name('order_convey')
|
|
|
+ ->alias('oc')
|
|
|
+ ->join('orders o','o.id = oc.order_id')
|
|
|
+ ->where('o.org_id',$this->orgId)
|
|
|
+ ->where('o.work_type_mode',3)
|
|
|
+ ->where('o.create_yyyymmdd','<=',$curDay)
|
|
|
+ ->where('o.create_yyyymmdd','>=',$oldDay)
|
|
|
+ ->where('o.order_mode','in',[5,6])
|
|
|
+ ->where('oc.start',$v['start'])
|
|
|
+ ->where('o.del',0)
|
|
|
+ ->count();
|
|
|
+ $y2[] = round($count/30,2);
|
|
|
+ }
|
|
|
+ $data = [
|
|
|
+ 'x' => $x,
|
|
|
+ 'y1' => $y1,
|
|
|
+ 'y2' => $y2
|
|
|
+ ];
|
|
|
+ HelpHander::success($data,'成功');
|
|
|
+ }
|
|
|
+
|
|
|
+ public function yscount(){
|
|
|
+ $curDay = date('Ymd');
|
|
|
+
|
|
|
+ $tcount = Db::name('orders')
|
|
|
+ ->where('org_id',$this->orgId)
|
|
|
+ ->where('work_type_mode',3)
|
|
|
+ ->where('create_yyyymmdd',$curDay)
|
|
|
+ ->where('order_mode','in',[5,6])
|
|
|
+ ->where('del',0)
|
|
|
+ ->count();
|
|
|
+
|
|
|
+ $fcount = Db::name('order_convey')
|
|
|
+ ->alias('oc')
|
|
|
+ ->join('orders o','o.id = oc.order_id')
|
|
|
+ ->where('o.org_id',$this->orgId)
|
|
|
+ ->where('o.work_type_mode',3)
|
|
|
+ ->where('o.create_yyyymmdd',$curDay)
|
|
|
+ ->whereRaw("TIMESTAMPDIFF(second,o.finish_time,oc.ywc_time) >=0")
|
|
|
+ ->where('o.order_mode','in',[5,6])
|
|
|
+ ->where('o.del',0)
|
|
|
+ ->count();
|
|
|
+ $bl1 = $tcount>0?round($fcount/$tcount,3)*100:0;
|
|
|
+
|
|
|
+ $wcount = Db::name('orders')
|
|
|
+ ->where('org_id',$this->orgId)
|
|
|
+ ->where('del',0)
|
|
|
+ ->where('work_type_mode',3)
|
|
|
+ ->where('create_yyyymmdd',$curDay)
|
|
|
+ ->where('order_mode','in',[1])
|
|
|
+ ->count();
|
|
|
+
|
|
|
+ $jxcount = Db::name('orders')
|
|
|
+ ->where('org_id',$this->orgId)
|
|
|
+ ->where('del',0)
|
|
|
+ ->where('work_type_mode',3)
|
|
|
+ ->where('create_yyyymmdd',$curDay)
|
|
|
+ ->where('order_mode','in',[5])
|
|
|
+ ->count();
|
|
|
+
|
|
|
+ $bhcount = Db::name('todo')
|
|
|
+ ->alias('a')
|
|
|
+ ->join('todo b','a.order_id=b.id')
|
|
|
+ ->where('a.org_id',$this->orgId)
|
|
|
+ ->where('b.del',0)
|
|
|
+ ->where('a.work_type_mode',3)
|
|
|
+ ->where('a.create_yyyymmdd',$curDay)
|
|
|
+ ->where('a.todo_mode','in',[4])
|
|
|
+ ->count();
|
|
|
+
|
|
|
+
|
|
|
+ $flist = Db::name('orders')
|
|
|
+ ->field('(TIMESTAMPDIFF(minute,create_time,send_time)) as minute')
|
|
|
+ ->where('org_id',$this->orgId)
|
|
|
+ ->where('work_type_mode',3)
|
|
|
+ ->where('create_yyyymmdd',$curDay)
|
|
|
+ ->where('del',0)
|
|
|
+ ->where('order_mode','in',[4,5,6])
|
|
|
+ ->select();
|
|
|
+ $flist = $flist?$flist:[];
|
|
|
+ $c = count($flist);
|
|
|
+ $minu = 0;
|
|
|
+ foreach ($flist as $k=>$v){
|
|
|
+ if($v['minute']){
|
|
|
+ $minu += $v['minute'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $avg = $c > 0?round($minu/$c,1):0;
|
|
|
+
|
|
|
+
|
|
|
+ $data = [
|
|
|
+ 'count1' => $bl1."%",
|
|
|
+ 'count2' => $avg,
|
|
|
+ 'count3' => $wcount,
|
|
|
+ 'count4' => $jxcount,
|
|
|
+ 'count5' => $tcount,
|
|
|
+ 'count6' => $bhcount
|
|
|
+ ];
|
|
|
+
|
|
|
+ HelpHander::success($data,'成功');
|
|
|
+ }
|
|
|
+
|
|
|
+ // 隐患预警数据统计
|
|
|
+ public function yinhuan(){
|
|
|
+ $list = [
|
|
|
+ ['标题', '隐患数量', '转任务量'],
|
|
|
+// ['报修', $bxwc, $bxxy],
|
|
|
+// ['保洁', $bjwc, $bjxy],
|
|
|
+// ['运送', $yswc, $ysxy],
|
|
|
+// ['隐患预警', $yhwc, $yhxy],
|
|
|
+ ];
|
|
|
+
|
|
|
+ $dlist = [
|
|
|
+ date('Y-m-d',strtotime('-6 days')),
|
|
|
+ date('Y-m-d',strtotime('-5 days')),
|
|
|
+ date('Y-m-d',strtotime('-4 days')),
|
|
|
+ date('Y-m-d',strtotime('-3 days')),
|
|
|
+ date('Y-m-d',strtotime('-2 days')),
|
|
|
+ date('Y-m-d',strtotime('-1 days')),
|
|
|
+ date('Y-m-d'),
|
|
|
+ ];
|
|
|
+ foreach ($dlist as $v){
|
|
|
+ $tt = date('Ymd',strtotime($v));
|
|
|
+ $count = Db::name('orders')
|
|
|
+ ->where('org_id',$this->orgId)
|
|
|
+ ->where('create_yyyymmdd',$tt)
|
|
|
+ ->where('del',0)
|
|
|
+ ->where('work_type_mode',4)
|
|
|
+ ->count();
|
|
|
+ $count1 = Db::name('todo')
|
|
|
+ ->alias('a')
|
|
|
+ ->join('orders b','a.order_id=b.id')
|
|
|
+ ->where('a.org_id',$this->orgId)
|
|
|
+ ->where('a.create_yyyymmdd',$tt)
|
|
|
+ ->where('a.del',0)
|
|
|
+ ->where('a.work_type_mode',4)
|
|
|
+ ->where('b.del',0)
|
|
|
+ ->group('a.order_id')
|
|
|
+ ->count();
|
|
|
+ $list[] = [date('m-d',strtotime($v)),$count,$count1];
|
|
|
+ }
|
|
|
+
|
|
|
+ $data = [
|
|
|
+ 'list' => $list
|
|
|
+ ];
|
|
|
+ HelpHander::success($data,'成功');
|
|
|
+ }
|
|
|
+
|
|
|
+ // 运送数据统计
|
|
|
+ public function yusong(){
|
|
|
+ $list = [
|
|
|
+ ['标题', '工单总量', '完成工单量'],
|
|
|
+ ];
|
|
|
+
|
|
|
+ $dlist = [
|
|
|
+ date('Y-m-d',strtotime('-6 days')),
|
|
|
+ date('Y-m-d',strtotime('-5 days')),
|
|
|
+ date('Y-m-d',strtotime('-4 days')),
|
|
|
+ date('Y-m-d',strtotime('-3 days')),
|
|
|
+ date('Y-m-d',strtotime('-2 days')),
|
|
|
+ date('Y-m-d',strtotime('-1 days')),
|
|
|
+ date('Y-m-d'),
|
|
|
+ ];
|
|
|
+ foreach ($dlist as $v){
|
|
|
+ $tt = date('Ymd',strtotime($v));
|
|
|
+ $count = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('CREATE_YYYYMMDD',$tt)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where('WORK_TYPE_MODE',3)
|
|
|
+ ->from('orders')
|
|
|
+ ->count_all_results();
|
|
|
+
|
|
|
+ $count1 = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('CREATE_YYYYMMDD',$tt)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where('WORK_TYPE_MODE',3)
|
|
|
+ ->where_in('CURR_ORDER_MODE',[9,11])
|
|
|
+ ->from('orders')
|
|
|
+ ->count_all_results();
|
|
|
+ $list[] = [date('m-d',strtotime($v)),$count,$count1];
|
|
|
+ }
|
|
|
+
|
|
|
+ $data = [
|
|
|
+ 'list' => $list
|
|
|
+ ];
|
|
|
+ $this->success('成功',$data);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 今日运送完成工单总量
|
|
|
+ public function yscounttoday(){
|
|
|
+ $curDay = date('Ymd');
|
|
|
+
|
|
|
+ $tcount = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('WORK_TYPE_MODE',3)
|
|
|
+ ->where('CREATE_YYYYMMDD',$curDay)
|
|
|
+ ->where_in('CURR_ORDER_MODE',[9,11])
|
|
|
+ ->from('orders')
|
|
|
+ ->count_all_results();
|
|
|
+
|
|
|
+ $data = [
|
|
|
+ 'count' => $tcount
|
|
|
+ ];
|
|
|
+ $this->success('成功',$data);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 医废
|
|
|
+ public function waste(){
|
|
|
+
|
|
|
+ $dlist = [
|
|
|
+ date('Y-m-d',strtotime('-6 days')),
|
|
|
+ date('Y-m-d',strtotime('-5 days')),
|
|
|
+ date('Y-m-d',strtotime('-4 days')),
|
|
|
+ date('Y-m-d',strtotime('-3 days')),
|
|
|
+ date('Y-m-d',strtotime('-2 days')),
|
|
|
+ date('Y-m-d',strtotime('-1 days')),
|
|
|
+ date('Y-m-d'),
|
|
|
+ ];
|
|
|
+ $xdata = [];
|
|
|
+ $ydata = [];
|
|
|
+ foreach ($dlist as $v){
|
|
|
+ $tt = date('Ymd',strtotime($v));
|
|
|
+// $count = $this->db
|
|
|
+//// ->where('ORG_ID',$this->orgId)
|
|
|
+//// ->where('CREATE_YYYYMMDD',$tt)
|
|
|
+//// ->where('DEL_REF',0)
|
|
|
+//// ->from('waste_record')
|
|
|
+//// ->count_all_results();
|
|
|
+///
|
|
|
+ $ret = Db::name('waste_record')
|
|
|
+ ->where('org_id',$this->orgId)
|
|
|
+ ->where('create_yyyymmdd',$tt)
|
|
|
+ ->where('del',0)
|
|
|
+ ->select();
|
|
|
+ $total = 0;
|
|
|
+ foreach ($ret as $kk=>$vv){
|
|
|
+ $total += $vv['weight'];
|
|
|
+ }
|
|
|
+ $ydata[] = $total/1000;
|
|
|
+ $xdata[] = date('m-d',strtotime($v));
|
|
|
+ }
|
|
|
+
|
|
|
+ $data = [
|
|
|
+ 'xdata' => $xdata,
|
|
|
+ 'ydata' => $ydata
|
|
|
+ ];
|
|
|
+ HelpHander::success($data,'成功');
|
|
|
+ }
|
|
|
+
|
|
|
+ public function ystask(){
|
|
|
+ $size = input('size')?input('size'):5;
|
|
|
+ $data = model('Orders')->get_cur_day_lists($this->orgId,$size);
|
|
|
+ foreach ($data as $k=>$v){
|
|
|
+ $data[$k]['xq_time'] = date('H:i',strtotime($v['xq_time']));
|
|
|
+ $data[$k]['send_time'] = $v['send_time']?date('H:i',strtotime($v['send_time'])):'';
|
|
|
+ $data[$k]['confirm_time'] = $v['confirm_time']?date('H:i',strtotime($v['confirm_time'])):'';
|
|
|
+ }
|
|
|
+ HelpHander::success($data,'成功');
|
|
|
+ }
|
|
|
+
|
|
|
+ public function ystaskcount(){
|
|
|
+ $this->load->model('OrdersModel');
|
|
|
+ $data = $this->OrdersModel->get_cur_day_count($this->orgId);
|
|
|
+ $this->success('成功',['count' => $data]);
|
|
|
+ }
|
|
|
+
|
|
|
+ public function daily(){
|
|
|
+ $lists = Db::name('daily_record')
|
|
|
+ ->alias('dr')
|
|
|
+ ->join('daily d','d.id = dr.daily_id')
|
|
|
+ ->where('dr.org_id',$this->orgId)
|
|
|
+ ->where('dr.create_yyyymmdd',date('Ymd'))
|
|
|
+ ->limit(9)
|
|
|
+ ->field('d.title,d.content,dr.user_id,dr.create_time')
|
|
|
+ ->order('dr.id','desc')
|
|
|
+ ->select();
|
|
|
+ foreach ($lists as $k=>$v){
|
|
|
+ $user = Db::name('user')
|
|
|
+ ->where('id',$v['user_id'])
|
|
|
+ ->find();
|
|
|
+ $lists[$k]['real_name'] = $user?$user['real_name']:'';
|
|
|
+ $lists[$k]['create_time'] = date('m-d H:i',strtotime($v['create_time']));
|
|
|
+ }
|
|
|
+ HelpHander::success($lists,'成功');
|
|
|
+ }
|
|
|
+
|
|
|
+ public function patrolList(){
|
|
|
+ $lists = Db::name('patrol_record')
|
|
|
+ ->alias('pr')
|
|
|
+ ->join('address pa','pa.id = pr.patrol_addr_id')
|
|
|
+ ->join('patrol_task pt','pt.id = pr.patrol_task_id')
|
|
|
+ ->join('user u','u.id = pr.user_id')
|
|
|
+ ->where('pr.org_id',$this->orgId)
|
|
|
+ ->where('pr.create_yyyymmdd',date('Ymd'))
|
|
|
+ ->limit(4)
|
|
|
+ ->field('pa.title,pt.title as task_title,u.real_name,pr.create_time')
|
|
|
+ ->order('pr.id','DESC')
|
|
|
+ ->select();
|
|
|
+ foreach ($lists as $k=>$v){
|
|
|
+ $lists[$k]['create_time'] = date('m-d H:i',strtotime($v['create_time']));
|
|
|
+ }
|
|
|
+ HelpHander::success($lists,'成功');
|
|
|
+ }
|
|
|
+
|
|
|
+ public function patrolImg(){
|
|
|
+ $lists = Db::name('patrol_record')
|
|
|
+ ->alias('pr')
|
|
|
+ ->join('patrol_task pt','pt.id = pr.patrol_task_id')
|
|
|
+ ->where('pr.org_id',$this->orgId)
|
|
|
+ ->where('pr.images','<>','null')
|
|
|
+ ->where('pr.create_yyyymmdd',date('Ymd'))
|
|
|
+ ->limit(4)
|
|
|
+ ->field('pt.title as task_title,pr.images')
|
|
|
+ ->order('pr.id','DESC')
|
|
|
+ ->select();
|
|
|
+ foreach ($lists as $k=>$v){
|
|
|
+ $imgs = explode(',',$v['images']);
|
|
|
+ $lists[$k]['images'] = $imgs[0];
|
|
|
+ }
|
|
|
+ HelpHander::success($lists?$lists:[],'成功');
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ // 评论,满意度
|
|
|
+ public function comment(){
|
|
|
+ $scores = [
|
|
|
+ ['score'=>1,'name'=>'一星','value'=>0],
|
|
|
+ ['score'=>2,'name'=>'二星','value'=>0],
|
|
|
+ ['score'=>3,'name'=>'三星','value'=>0],
|
|
|
+ ['score'=>4,'name'=>'四星','value'=>0],
|
|
|
+ ['score'=>5,'name'=>'五星','value'=>0],
|
|
|
+ ];
|
|
|
+
|
|
|
+ foreach ($scores as $k=>$v){
|
|
|
+ $count = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('SCORE',$v['score'])
|
|
|
+ ->from('comment')
|
|
|
+ ->count_all_results();
|
|
|
+ $scores[$k]['value'] = $count?$count:0;
|
|
|
+ unset($scores[$k]['score']);
|
|
|
+ }
|
|
|
+
|
|
|
+ $user = $this->db
|
|
|
+ ->select('sum(SCORE) as SCORE,TO_USER_ID')
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->group_by('TO_USER_ID')
|
|
|
+ ->distinct()
|
|
|
+ ->get('comment_reply')
|
|
|
+ ->result_array();
|
|
|
+ foreach ($user as $k=>$v){
|
|
|
+ $count = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('TO_USER_ID',$v['TO_USER_ID'])
|
|
|
+ ->from('comment_reply')
|
|
|
+ ->count_all_results();
|
|
|
+ $score = round($v['SCORE']/$count,1);
|
|
|
+ $user[$k]['SCORE'] = $score;
|
|
|
+
|
|
|
+ $info = $this->db
|
|
|
+ ->join('user_org uo','uo.USER_ID = u.USER_ID')
|
|
|
+ ->join('org o','uo.ORG_ID = o.ORG_ID')
|
|
|
+ ->where('uo.ORG_TYPE',1)
|
|
|
+ ->where('u.USER_ID',$v['TO_USER_ID'])
|
|
|
+ ->select('u.REAL_NAME,o.NAME as DEP_NAME')
|
|
|
+ ->get('user u')
|
|
|
+ ->row_array();
|
|
|
+ $user[$k]['REAL_NAME'] = $info['REAL_NAME'];
|
|
|
+ $user[$k]['DEP_NAME'] = $info['DEP_NAME'];
|
|
|
+ }
|
|
|
+
|
|
|
+ // 获取排名前5的人
|
|
|
+ $user = list_sort_by($user,'SCORE', 'desc');
|
|
|
+ $lists = [];
|
|
|
+ foreach ($user as $k=>$v){
|
|
|
+ if($k >= 5){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ $lists[] = $v;
|
|
|
+ }
|
|
|
+
|
|
|
+ $this->success('成功',['count'=>$scores,'list' => $lists]);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 工单统计
|
|
|
+ public function todo(){
|
|
|
+ $start = date('Y-m-d').' 00:00:00';
|
|
|
+ $end = date('Y-m-d').' 23:59:59';
|
|
|
+ $fininsh = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where('TODO_MODE',3)
|
|
|
+ ->where('DONE_TIME >=',$start)
|
|
|
+ ->where('DONE_TIME <=',$end)
|
|
|
+ ->from('todo')
|
|
|
+ ->count_all_results();
|
|
|
+
|
|
|
+ $unfininsh = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where_in('TODO_MODE',[1,2])
|
|
|
+ ->where('DONE_TIME >=',$start)
|
|
|
+ ->where('DONE_TIME <=',$end)
|
|
|
+ ->from('todo')
|
|
|
+ ->count_all_results();
|
|
|
+
|
|
|
+ $undeal = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where_in('CURR_ORDER_MODE',1)
|
|
|
+ ->where('CREATTE_TIME >=',$start)
|
|
|
+ ->where('CREATTE_TIME <=',$end)
|
|
|
+ ->from('orders')
|
|
|
+ ->count_all_results();
|
|
|
+
|
|
|
+ $total = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where_in('TODO_MODE',[1,2,3,4,5])
|
|
|
+ ->from('todo')
|
|
|
+ ->count_all_results();
|
|
|
+
|
|
|
+ $today = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where_in('TODO_MODE',[1,2,3,4,5])
|
|
|
+ ->where('CREATE_TIME >=',$start)
|
|
|
+ ->where('CREATE_TIME <=',$end)
|
|
|
+ ->from('todo')
|
|
|
+ ->count_all_results();
|
|
|
+
|
|
|
+ $commentcount = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->from('comment')
|
|
|
+ ->count_all_results();
|
|
|
+ $comment = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->select_sum('SCORE')
|
|
|
+ ->get('comment')
|
|
|
+ ->row_array();
|
|
|
+
|
|
|
+ $data = [
|
|
|
+ 'total' => $total,
|
|
|
+ 'today' => $today,
|
|
|
+ 'finish' => $fininsh,
|
|
|
+ 'unfinish' => $unfininsh,
|
|
|
+ 'undeal' => $undeal,
|
|
|
+ 'comment' => $commentcount&&$comment?round($comment['SCORE']/$commentcount,1):0
|
|
|
+ ];
|
|
|
+ $this->success('成功',$data);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ // 获取今日最新5条中的随机一条
|
|
|
+ public function patrol(){
|
|
|
+ $lists = $this->db
|
|
|
+ ->select('u.REAL_NAME,pa.TITLE,pr.IMAGES,pt.TITLE as CONTENT,pr.CREATE_TIME')
|
|
|
+ ->join('user u','u.USER_ID = pr.USER_ID')
|
|
|
+ ->join('patrol_addr pa','pa.PATROL_ADDR_ID = pr.PATROL_ADDR_ID')
|
|
|
+ ->join('patrol_task pt','pt.PATROL_TASK_ID = pr.PATROL_TASK_ID')
|
|
|
+ ->where('pr.ORG_ID',$this->orgId)
|
|
|
+ ->where('pr.CREATE_YYYYMMDD',date('Ymd'))
|
|
|
+ ->limit(5)
|
|
|
+ ->order_by('pr.PATROL_RECORD_ID DESC')
|
|
|
+ ->get('patrol_record pr')
|
|
|
+ ->result_array();
|
|
|
+ $info = null;
|
|
|
+ if($lists){
|
|
|
+ $info = $lists[array_rand($lists,1)];
|
|
|
+ }
|
|
|
+ if($info){
|
|
|
+ $imgs = $info['IMAGES']?explode(',',$info['IMAGES']):[];
|
|
|
+ $info['IMAGES'] = $imgs?$imgs[0]:'';
|
|
|
+
|
|
|
+ $info['CREATE_TIME'] = date('Y-m-d',strtotime($info['CREATE_TIME']));
|
|
|
+
|
|
|
+ $this->success('成功',$info);
|
|
|
+ }else{
|
|
|
+ $this->error('失败');
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 工单指数数据统计
|
|
|
+ public function todotime(){
|
|
|
+ $bxcount = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where('TODO_MODE',3)
|
|
|
+ ->where('WORK_TYPE_MODE',1)
|
|
|
+ ->from('todo')
|
|
|
+ ->count_all_results();
|
|
|
+ $bjcount = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where('TODO_MODE',3)
|
|
|
+ ->where('WORK_TYPE_MODE',2)
|
|
|
+ ->from('todo')
|
|
|
+ ->count_all_results();
|
|
|
+ $yscount = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where('TODO_MODE',3)
|
|
|
+ ->where('WORK_TYPE_MODE',3)
|
|
|
+ ->from('todo')
|
|
|
+ ->count_all_results();
|
|
|
+ $yhcount = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where('TODO_MODE',3)
|
|
|
+ ->where('WORK_TYPE_MODE',4)
|
|
|
+ ->from('todo')
|
|
|
+ ->count_all_results();
|
|
|
+
|
|
|
+ $bxinfo = $this->db
|
|
|
+ ->select_sum('XY_TIME')
|
|
|
+ ->select_sum('WC_TIME')
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where('TODO_MODE',3)
|
|
|
+ ->where('WORK_TYPE_MODE',1)
|
|
|
+ ->get('todo')
|
|
|
+ ->row_array();
|
|
|
+ $bxinfo = $bxinfo?$bxinfo:['XY_TIME'=>0,'WC_TIME'=>0];
|
|
|
+ $bjinfo = $this->db
|
|
|
+ ->select_sum('XY_TIME')
|
|
|
+ ->select_sum('WC_TIME')
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where('TODO_MODE',3)
|
|
|
+ ->where('WORK_TYPE_MODE',2)
|
|
|
+ ->get('todo')
|
|
|
+ ->row_array();
|
|
|
+ $bjinfo = $bjinfo?$bjinfo:['XY_TIME'=>0,'WC_TIME'=>0];
|
|
|
+ $ysinfo = $this->db
|
|
|
+ ->select_sum('XY_TIME')
|
|
|
+ ->select_sum('WC_TIME')
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where('TODO_MODE',3)
|
|
|
+ ->where('WORK_TYPE_MODE',3)
|
|
|
+ ->get('todo')
|
|
|
+ ->row_array();
|
|
|
+ $ysinfo = $ysinfo?$ysinfo:['XY_TIME'=>0,'WC_TIME'=>0];
|
|
|
+ $yhinfo = $this->db
|
|
|
+ ->select_sum('XY_TIME')
|
|
|
+ ->select_sum('WC_TIME')
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where('TODO_MODE',3)
|
|
|
+ ->where('WORK_TYPE_MODE',4)
|
|
|
+ ->get('todo')
|
|
|
+ ->row_array();
|
|
|
+ $yhinfo = $yhinfo?$yhinfo:['XY_TIME'=>0,'WC_TIME'=>0];
|
|
|
+
|
|
|
+ $bxwc = $bxcount?round($bxinfo['WC_TIME']/$bxcount/60,1):0;
|
|
|
+ $bxxy = $bxcount?round($bxinfo['XY_TIME']/$bxcount/60,1):0;
|
|
|
+ $bjwc = $bjcount?round($bjinfo['WC_TIME']/$bjcount/60,1):0;
|
|
|
+ $bjxy = $bjcount?round($bjinfo['XY_TIME']/$bjcount/60,1):0;
|
|
|
+ $yswc = $yscount?round($ysinfo['WC_TIME']/$yscount/60,1):0;
|
|
|
+ $ysxy = $yscount?round($ysinfo['XY_TIME']/$yscount/60,1):0;
|
|
|
+ $yhwc = $yhcount?round($yhinfo['WC_TIME']/$yhcount/60,1):0;
|
|
|
+ $yhxy = $yhcount?round($yhinfo['XY_TIME']/$yhcount/60,1):0;
|
|
|
+
|
|
|
+ $list = [
|
|
|
+ ['标题', '平均完成时', '响应时长'],
|
|
|
+ ['报修', $bxwc, $bxxy],
|
|
|
+ ['保洁', $bjwc, $bjxy],
|
|
|
+ ['运送', $yswc, $ysxy],
|
|
|
+ ['隐患预警', $yhwc, $yhxy],
|
|
|
+ ];
|
|
|
+
|
|
|
+ $data = [
|
|
|
+ 'bx' => $bxcount,
|
|
|
+ 'bj' => $bjcount,
|
|
|
+ 'ys' => $yscount,
|
|
|
+ 'yh' => $yhcount,
|
|
|
+ 'list' => $list
|
|
|
+ ];
|
|
|
+ $this->success('成功',$data);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 设备维检
|
|
|
+ public function device(){
|
|
|
+ $dcount = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where('ENABLE',1)
|
|
|
+ ->from('device')
|
|
|
+ ->count_all_results();
|
|
|
+ $rcount = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->from('device_record')
|
|
|
+ ->count_all_results();
|
|
|
+
|
|
|
+ $cur = date('Y-m');
|
|
|
+ $curTime = strtotime($cur.'-01');
|
|
|
+ $month = [];
|
|
|
+ for ($i=5;$i>0;$i--){
|
|
|
+ $date = strtotime("-".$i." month",$curTime);
|
|
|
+ $month[] = date('Y-m',$date);
|
|
|
+ }
|
|
|
+ $month[] = $cur;
|
|
|
+ $list = [];
|
|
|
+ foreach ($month as $k=>$v){
|
|
|
+ $list[] = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('CREATE_YYYYMM',str_ireplace('-','',$v))
|
|
|
+ ->from('device_record')
|
|
|
+ ->count_all_results();
|
|
|
+ }
|
|
|
+
|
|
|
+ $data = [
|
|
|
+ 'dcount' => $dcount,
|
|
|
+ 'rcount' => $rcount,
|
|
|
+ 'list' => $list,
|
|
|
+ 'month' => $month
|
|
|
+ ];
|
|
|
+ $this->success('成功',$data);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 24小时内记录
|
|
|
+ public function patrolRecord(){
|
|
|
+ $day = date('Ymd');
|
|
|
+ $time = strtotime(date('Y-m-d'));
|
|
|
+ $hours = [];
|
|
|
+ $plist1 = $plist2 = $plist3 = $plist4 = [];
|
|
|
+ for ($i=0;$i<24;$i++){
|
|
|
+ $hours[] = $i;
|
|
|
+ $stime = date('Y-m-d H:i:s',$time + $i*60*60);
|
|
|
+ $etime = date('Y-m-d H:i:s',$time + ($i+1)*60*60);
|
|
|
+ $plist1[] = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('PATROL_MODE',1)
|
|
|
+ ->where('CREATE_TIME >=',$stime)
|
|
|
+ ->where('CREATE_TIME <',$etime)
|
|
|
+ ->where('CREATE_YYYYMMDD',$day)
|
|
|
+ ->from('patrol_record')
|
|
|
+ ->count_all_results();
|
|
|
+ $plist2[] = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('PATROL_MODE',2)
|
|
|
+ ->where('CREATE_TIME >=',$stime)
|
|
|
+ ->where('CREATE_TIME <',$etime)
|
|
|
+ ->where('CREATE_YYYYMMDD',$day)
|
|
|
+ ->from('patrol_record')
|
|
|
+ ->count_all_results();
|
|
|
+ $plist3[] = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('PATROL_MODE',3)
|
|
|
+ ->where('CREATE_TIME >=',$stime)
|
|
|
+ ->where('CREATE_TIME <',$etime)
|
|
|
+ ->where('CREATE_YYYYMMDD',$day)
|
|
|
+ ->from('patrol_record')
|
|
|
+ ->count_all_results();
|
|
|
+ $plist4[] = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('PATROL_MODE',4)
|
|
|
+ ->where('CREATE_TIME >=',$stime)
|
|
|
+ ->where('CREATE_TIME <',$etime)
|
|
|
+ ->where('CREATE_YYYYMMDD',$day)
|
|
|
+ ->from('patrol_record')
|
|
|
+ ->count_all_results();
|
|
|
+ }
|
|
|
+
|
|
|
+ $data = [
|
|
|
+ 'hour' => $hours,
|
|
|
+ 'plist1' => $plist1,
|
|
|
+ 'plist2' => $plist2,
|
|
|
+ 'plist3' => $plist3,
|
|
|
+ 'plist4' => $plist4
|
|
|
+ ];
|
|
|
+ $this->success('成功',$data);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 报修工单
|
|
|
+ public function repair(){
|
|
|
+ $dlist = [
|
|
|
+ date('Y-m-d',strtotime('-6 days')),
|
|
|
+ date('Y-m-d',strtotime('-5 days')),
|
|
|
+ date('Y-m-d',strtotime('-4 days')),
|
|
|
+ date('Y-m-d',strtotime('-3 days')),
|
|
|
+ date('Y-m-d',strtotime('-2 days')),
|
|
|
+ date('Y-m-d',strtotime('-1 days')),
|
|
|
+ date('Y-m-d'),
|
|
|
+ ];
|
|
|
+
|
|
|
+ $names = [];
|
|
|
+ $counts = [];
|
|
|
+ foreach ($dlist as $v){
|
|
|
+ $names[] = date('m-d',strtotime($v));
|
|
|
+ $tt = date('Ymd',strtotime($v));
|
|
|
+ $count = Db::name('todo')
|
|
|
+ ->alias('a')
|
|
|
+ ->join('orders b','a.order_id=b.id')
|
|
|
+ ->where('a.del',0)
|
|
|
+ ->where('a.org_id',$this->orgId)
|
|
|
+ ->where('a.todo_mode',3)
|
|
|
+ ->where('a.work_type_mode',1)
|
|
|
+ ->where('a.create_yyyymmdd',$tt)
|
|
|
+ ->group('a.order_id')
|
|
|
+ ->count();
|
|
|
+ $counts[] = $count;
|
|
|
+ }
|
|
|
+
|
|
|
+ HelpHander::success(['names'=>$names,'counts' => $counts],'成功');
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public function ystypeuser(){
|
|
|
+ $this->load->model('UserModel');
|
|
|
+ $lists = $this->UserModel->getYsUser($this->orgId,1);
|
|
|
+ $lists = $lists?$lists:[];
|
|
|
+
|
|
|
+ $curday = date('Ymd');
|
|
|
+ $users = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where_in('TODO_MODE',[1,2])
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where('CREATE_YYYYMMDD',$curday)
|
|
|
+ ->select('TO_USER_ID')
|
|
|
+ ->group_by('TO_USER_ID')
|
|
|
+ ->get('todo')
|
|
|
+ ->result_array();
|
|
|
+ $users = $users?$users:[];
|
|
|
+ $userIds = [];
|
|
|
+ foreach ($users as $k=>$v){
|
|
|
+ $userIds[] = $v['TO_USER_ID'];
|
|
|
+ }
|
|
|
+
|
|
|
+ $data = [
|
|
|
+ 'list1' => [],
|
|
|
+ 'list2' => []
|
|
|
+ ];
|
|
|
+
|
|
|
+ $nlists = [];
|
|
|
+ foreach ($lists as $k=>$v){
|
|
|
+ if(!in_array($v['USER_ID'],$userIds)){
|
|
|
+ $nlists[] = $v;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $slist = [];
|
|
|
+ if(count($nlists) > 10){
|
|
|
+ $keys = array_rand($nlists,10);
|
|
|
+ foreach ($nlists as $k=>$v){
|
|
|
+ if(in_array($k,$keys)){
|
|
|
+ $slist[] = $v;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ $slist = $nlists;
|
|
|
+ }
|
|
|
+ foreach ($slist as $k=>$v){
|
|
|
+ $count = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('TO_USER_ID',$v['USER_ID'])
|
|
|
+ ->where_in('TODO_MODE',[1,2,3])
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where('CREATE_YYYYMMDD',$curday)
|
|
|
+ ->from('todo')
|
|
|
+ ->count_all_results();
|
|
|
+ $slist[$k]['COUNT'] = $count;
|
|
|
+
|
|
|
+ $addr = $this->db
|
|
|
+ ->join('convey_addr ca','ca.CONVEY_ADDR_ID = cpr.ADDR_ID')
|
|
|
+ ->select('ca.TITLE,cpr.CREATE_TIME')
|
|
|
+ ->where('USER_ID',$v['USER_ID'])
|
|
|
+ ->order_by('cpr.ID desc')
|
|
|
+ ->get('convey_plan_record cpr')
|
|
|
+ ->row_array();
|
|
|
+ $slist[$k]['TITLE'] = $addr?$addr['TITLE']:'';;
|
|
|
+ }
|
|
|
+
|
|
|
+ $nlists2 = [];
|
|
|
+ foreach ($lists as $k=>$v){
|
|
|
+ if(in_array($v['USER_ID'],$userIds)){
|
|
|
+ $nlists2[] = $v;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $slist2 = [];
|
|
|
+ if(count($nlists2) > 9){
|
|
|
+ $keys2 = array_rand($nlists2,9);
|
|
|
+ foreach ($nlists2 as $k=>$v){
|
|
|
+ if(in_array($k,$keys2)){
|
|
|
+ $slist2[] = $v;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ $slist2 = $nlists2;
|
|
|
+ }
|
|
|
+ foreach ($slist2 as $k=>$v){
|
|
|
+ $count = $this->db
|
|
|
+ ->where('ORG_ID',$this->orgId)
|
|
|
+ ->where('TO_USER_ID',$v['USER_ID'])
|
|
|
+ ->where_in('TODO_MODE',[1,2,3])
|
|
|
+ ->where('DEL_REF',0)
|
|
|
+ ->where('CREATE_YYYYMMDD',$curday)
|
|
|
+ ->from('todo')
|
|
|
+ ->count_all_results();
|
|
|
+ $slist2[$k]['COUNT'] = $count;
|
|
|
+
|
|
|
+ $addr = $this->db
|
|
|
+ ->join('convey_addr ca','ca.CONVEY_ADDR_ID = cpr.ADDR_ID')
|
|
|
+ ->select('ca.TITLE,cpr.CREATE_TIME')
|
|
|
+ ->where('USER_ID',$v['USER_ID'])
|
|
|
+ ->order_by('cpr.ID desc')
|
|
|
+ ->get('convey_plan_record cpr')
|
|
|
+ ->row_array();
|
|
|
+ $slist2[$k]['TITLE'] = $addr?$addr['TITLE']:'';
|
|
|
+ }
|
|
|
+
|
|
|
+ $data['list1'] = $slist; // 待命人员
|
|
|
+ $data['list2'] = $slist2; // 行动人员
|
|
|
+ $this->success('成功',$data);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+}
|