我自己用的文件

来源:互联网 发布:视频剪刀手软件 编辑:程序博客网 时间:2024/05/21 12:50
<?php
namespace app\controllers;
use yii\web\Controller;
use yii\web\Cookie;
use app\models\Doctorer;
use app\models\Keshi;
use app\models\D_k;
use app\models\Yonghu;
use app\models\Nex;
use app\models\Yiself;
use app\models\Yuyue;
class NihaoController extends Controller{
  public function actionIndex(){
    return $this->renderPartial('index');
  }
    //注册接口
    public function actionZhuce(){
        $arr=\Yii::$app->request->post();
        $re=Doctorer::find()->asArray()->where(['username'=>$arr['username']])->one();
        if ($re) {
           return json_encode(array('msg'=>'1005'));
        }else{
        if ($arr['username']=='') {
            return json_encode(array('msg'=>'1001'));
        }else{
            if ($arr['pwd']=='') {
                return json_encode(array('msg'=>'1002'));
            }else{
                $do=new Doctorer;
                $do->username=$arr['username'];
                $do->pwd=$arr['pwd'];
                if ($do->save()){                   
                return json_encode(array('msg'=>'1003'));                    
                }else{
                return json_encode(array('msg'=>'1004'));
                }
            }
        }
            
    }
  }
   //登录接口
      public function actionDenglu(){
        $arr=\Yii::$app->request->post();
        $re=Doctorer::find()->asArray()->where(['username'=>$arr['username']])->one();
        if ($re) {
           if ($re['pwd']==$arr['pwd']) {
              $token=base64_encode($re['pwd']);
              return json_encode(array('msg'=>'1011','token'=>$token));
           }else{
              return json_encode(array('msg'=>'1012'));
           }
        }else{
           return json_encode(array('msg'=>'1013'));
            
    }
  }
   //修改密码接口
      public function actionUpd(){
        $arr=\Yii::$app->request->post();
        if ($arr['token']!==base64_encode($arr['pwd'])) {
           return json_encode(array('msg'=>'1025'));
        }else{
        $re=Doctorer::find()->asArray()->where(['username'=>$arr['username']])->one();
        if ($re){
            if ($arr['pwd']=='') {
               return json_encode(array('msg'=>'1021'));
            }else{
          $connection = \Yii::$app->db;
          $re=$connection->createCommand()->update('doctorer', ['pwd'=>$arr['pwd']],['username'=>$arr['username']])->execute();
          if ($re) {
           return json_encode(array('msg'=>'1024'));
          }else{
           return json_encode(array('msg'=>'1023'));
          }
         }
        }else{
           return json_encode(array('msg'=>'1022'));            
    }
     }
  }
      //科室接口
        public function actionKe(){
        $re=Keshi::find()->asArray()->all();
        if ($re) {
            return json_encode($re);
        }else{
            return json_encode(array('msg'=>'1031'));
        }        
      }
      //加入科室接口
        public function actionAddke(){
        $arr=\Yii::$app->request->post();
        $re=D_k::find()->asArray()->where(['d_name'=>$arr['username']])->one();
        if ($re) {
            return json_encode(array('msg'=>'1043'));
        }else{
        $dk=new D_k;
        $dk->d_name=$arr['username'];
        $dk->k_id=$arr['k_id'];
        if ($dk->save()) {
            return json_encode(array('msg'=>'1041'));
        }else{
            return json_encode(array('msg'=>'1042'));
        }
      }
    }
    //医生查询自己所属科室接口
    public function actionSelekeshi(){
      $arr=\Yii::$app->request->post();
      if ($arr['username']=='') {
        //医生用户名为空
        return json_encode(array('msg'=>'1051'));
      }else{
      $connection  =\Yii::$app->db;
      $username=$arr['username'];
      $command = $connection->createCommand("select d_name,kename from d_k LEFT JOIN keshi on d_k.k_id=keshi.id WHERE d_name='$username'")->queryOne();
      return json_encode(array('username'=>$command['d_name'],'keshi'=>$command['kename']));
      }
    }
    //医生修改自己所在的科室接口
    public function actionUpkeshi(){
      $arr=\Yii::$app->request->post();
      // print_r($arr);die;
      if ($arr['username']=='') {
        //医生用户名为空
        return json_encode(array('msg'=>'1061'));
      }else{
      $connection = \Yii::$app->db;
      $re=$connection->createCommand()->update('d_k', ['k_id'=>$arr['k_id']],['d_name'=>$arr['username']])->execute();
      if ($re) {
        //医生修改科室成功
         return json_encode(array('msg'=>'1062'));
      }else{
        //修改失败
         return json_encode(array('msg'=>'1063'));
       }
     }
    }
    //用户注册接口
    public function actionYonghu(){
        $arr=\Yii::$app->request->post();
        $re=Yonghu::find()->asArray()->where(['name'=>$arr['name']])->one();
        if ($re) {
          //用户已经存在
           return json_encode(array('msg'=>'1071'));
        }else{
      if ($arr['name']=='') {
        //用户名为空
        return json_encode(array('msg'=>'1072'));
      }else{
        if ($arr['pwd']=='') {
          //用户密码为空
          return json_encode(array('msg'=>'1073'));
        }else{
          $do=new Yonghu;
          $do->name=$arr['name'];
          $do->pwd=$arr['pwd'];
          if ($do->save()){  
          //用户注册成功          
          return json_encode(array('msg'=>'1074'));                    
          }else{
            //注册失败
          return json_encode(array('msg'=>'1075'));
          }
        }
      }          
    }
  }
  //用户登录接口
      public function actionYdenglu(){
        $arr=\Yii::$app->request->post();
        $re=Yonghu::find()->asArray()->where(['name'=>$arr['name']])->one();
        if ($re) {
           if ($re['pwd']==$arr['pwd']) {             
              //登录成功
              return json_encode(array('msg'=>'1081'));
           }else{
             //密码不正确
              return json_encode(array('msg'=>'1082'));
           }
        }else{
           //用户不存在
           return json_encode(array('msg'=>'1083'));            
    }
  }
  //用户查看医生列表接口
    public function actionDoctorlist(){
      $connection  =\Yii::$app->db;
      $command = $connection->createCommand("select d_name,kename from d_k LEFT JOIN keshi on d_k.k_id=keshi.id")->queryAll();
      return json_encode($command);
  }
    //留言接口
    public function actionNe(){
      $arr=\Yii::$app->request->post();
      // print_r($arr);die;
      if ($arr['neirong']=='') {
          //内容为空
        return json_encode(array('msg'=>'1091'));
      }else{
        if ($arr['yname']=='') {
          //医生名字为空
          return json_encode(array('msg'=>'1092'));
        }else{
          if ($arr['dusername']=='') {
            //用户的名字为空
           return json_encode(array('msg'=>'1093'));
          }else{
            $re=new Nex;
            $re->neirong=$arr['neirong'];
            $re->yname=$arr['yname'];
            $re->dusername=$arr['dusername'];
            if ($re->save()) {
              //留言成功
               return json_encode(array('msg'=>'1094'));
            }else{
              //留言失败
              return json_encode(array('msg'=>'1095'));
            }
          }
        }
      }
    }
    //医生查询留言接口
    public function actionShowne(){
       $arr=\Yii::$app->request->post();
       if ($arr['yname']=='') {
          //医生姓名为空
        return json_encode(array('msg'=>'1112'));
       }else{        
        $re=Nex::find()->asArray()->where(['yname'=>$arr['yname']])->all();
        if ($re) {
          //查询成功
         return json_encode($re);
        }else{
          //没有此医生数据
          return json_encode(array('msg'=>'1113'));
        }        
       }
    }
    //医生回复接口
    public function actionHfdoctor(){
       $arr=\Yii::$app->request->post();
       if ($arr['dusername']=='') {
        //回复用户名为空
         return json_encode(array('msg'=>'1121'));
       }else{
         if ($arr['yname']=='') {
           //医生名字为空
            return json_encode(array('msg'=>'1122'));
         }else{
            $re=new Nex;
            $re->neirong=$arr['neirong'];
            $re->dusername=$arr['dusername'];
            $re->yname=$arr['yname'];
            if ($re->save()) {
              //回复留言成功
              return json_encode(array('msg'=>'1123'));
            }else{
              //回复留言失败
              return json_encode(array('msg'=>'1124'));
            }
         }
       }
    }
    //用户查看回复留言接口
    public function actionYshowne(){
       $arr=\Yii::$app->request->post();
       if ($arr['dusername']=='') {
          //用户姓名为空
        return json_encode(array('msg'=>'1131'));
       }else{    
         if ($arr['yname']=='') {
               return json_encode(array('msg'=>'1132'));
             }else{
          $re=Nex::find()->asArray()->where(['and',['dusername'=>$arr['dusername']],['yname'=>$arr['yname']]])->all();
        if ($re) {
          //查询成功
         return json_encode($re);
        }else{
          //没有此用户数据
          return json_encode(array('msg'=>'1133'));
        }   
      }             
     }
    }
    public function actionYself(){
      $arr=\Yii::$app->request->post();
      if ($arr['yname']=='') {
        //医生的名字为空
        return json_encode(array('msg'=>'1141'));
      }else{
        if ($arr['overtime']==''||$arr['starttime']=='') {
          //出诊时间为空
          return json_encode(array('msg'=>'1142'));
        }else{
          if ($arr['sum']=='') {
             //用户的数量
             return json_encode(array('msg'=>'1143'));
          }else{
             $connection  =\Yii::$app->db;
             $username=$arr['yname'];
             $command = $connection->createCommand("select d_name,kename from d_k LEFT JOIN keshi on d_k.k_id=keshi.id WHERE d_name='$username'")->queryOne();
             if ($command['kename']=='') {
               //没有此医生的信息
              return json_encode(array('msg'=>'1146'));
             }else{
               $re=new Yiself;
               $re->yname=$arr['yname'];
               $re->kename=$command['kename'];
               $re->startime=$arr['starttime'];
               $re->overtime=$arr['overtime'];
               $re->sum=$arr['sum'];
               $re->qiang=$arr['qiang'];
               if ($re->save()) {
                //医生设置出诊成功
                 return json_encode(array('msg'=>'1144'));
               }else{
                //医生设置出诊失败
                return json_encode(array('msg'=>'1145'));
               }              
             }
          }
        }
      }
    }
    public function actionYuyu(){
      $arr=\Yii::$app->request->post();
      if ($arr['dusername']=='') {
         //用户名字为空
         return json_encode(array('msg'=>'1151'));
      }else{
         if ($arr['yname']=='') {
           //医生的名字为空
            return json_encode(array('msg'=>'1152'));
         }else{
            $res=Yiself::find()->asArray()->where(['and',['yname'=>$arr['yname']]])->andwhere(['and',['overtime'=>$arr['overtime']]])->one();
            if ($res) {
               $re=new Yuyue;
               $re->dusername=$arr['dusername'];
               $re->yname=$arr['yname'];
               $re->kename=$res['kename'];
               $re->overtime=$arr['overtime'];
               $re->starttime=$arr['starttime'];
               if ($re->save()) {
                  $arr2=Yiself::find()->asArray()->where(['and',['yname'=>$arr['yname']]])->andwhere(['and',['overtime'=>$arr['overtime']],['startime'=>$arr['starttime']]])->one();
                  if ($arr2['sum']>0) {
                      $connection = \Yii::$app->db;
                  $re=$connection->createCommand()->update('yiself', ['sum'=>$arr2['sum']-1],['yname'=>$arr['yname'],'startime'=>$arr['starttime'],'overtime'=>$arr['overtime']])->execute();
                  if ($re) {
                    //预约成功
                   return json_encode(array('msg'=>'1154'));
                  }else{
                    //预约失败(系统问题)
                    return json_encode(array('msg'=>'1153'));
                  }
                  }else{
                    //预约人数超出
                    return json_encode(array('msg'=>'1155'));
                  }               
               }else{
                //预约失败
                return json_encode(array('msg'=>'1153'));
               }
            }else{
              //系统错误
              return json_encode(array('msg'=>'1153'));
            }
         }
      }
    }
    //医生查看已经预约用户
    public function actionChayong(){
      $arr=\Yii::$app->request->post();
      if ($arr['yname']=='') {
        //医生的名字为空
         return json_encode(array('msg'=>'1161'));
      }else{
        if($arr['starttime']==''){
          //查询日期为空
         return json_encode(array('msg'=>'1162'));
        }else{
          $res=Yuyue::find()->asArray()->where(['and',['yname'=>$arr['yname']]])->andwhere(['and',['starttime'=>$arr['starttime']]])->one();
          if ($res=='') {
            //没有任何用户预约
            return json_encode(array('msg'=>'1163'));
          }else{
            //state表示为状态0为未会诊,1位已会诊
            return json_encode($res);
          }
        }       
      }
    }
    //医生修改就诊情况接口
    public function actionUpstate(){
      $arr=\Yii::$app->request->get();
      // print_r($arr);die;
      if ($arr['yname']=='') {
         //医生名字为空
        return json_encode(array('msg'=>'1171'));
      }else{
        if ($arr['dusername']=='') {
          //用户名字为空
          return json_encode(array('msg'=>'1172'));
        }else{
          $time=date('Y-m-d',time());
          if ($arr['starttime']==$time) {
             $connection = \Yii::$app->db;
             $re=$connection->createCommand()->update('yuyue', ['state' => 1],['dusername'=>$arr['dusername'],'yname'=>$arr['yname']])->execute();
             // print_r($re);die;
             if ($re) {
                $yi=Yiself::find()->asArray()->where(['yname'=>$arr['yname']])->andwhere(['startime'=>$arr['starttime']])->one();
                // print_r($yi);die;
                $xiu=$connection->createCommand()->update('yiself', ['jiuzhen' =>$yi['jiuzhen']+1],['startime'=>$arr['starttime'],'yname'=>$arr['yname']])->execute();
                if ($xiu) {
                  //修改成功
                  return json_encode(array('msg'=>'1173'));
                }else{
                   //修改失败
                  return json_encode(array('msg'=>'1173'));
                }
              
             }else{
              //修改失败,没有此医生
               return json_encode(array('msg'=>'1174'));
             }
          }else{
            //修改失败,时间不符合规定
            return json_encode(array('msg'=>'1175'));
          }          
        }
      }
    }
    //医生统计就诊情况明细
    public function actionChuzhenlv(){
      $arr=\Yii::$app->request->post();
      if ($arr['yname']=='') {
        //医生名字为空
        return json_encode(array('msg'=>'1181'));
      }else{
        if ($arr['day']=='') {
          //查询天数为空
          return json_encode(array('msg'=>'1182'));
        }else{
          $tomorrow = mktime(0,0,0,date("m"),date("d")-$arr['day']+1,date("Y"));
          $time=date("Y-m-d", $tomorrow);
          // echo $time;die;
          $time2=date("Y-m-d",time());
          $connection  =\Yii::$app->db;
          $re = $connection->createCommand("select startime,sum(sum),sum(jiuzhen) from yiself WHERE yname='".$arr['yname']."' AND startime BETWEEN '".$time."' AND '".$time2."' GROUP BY startime  ")->queryAll();
          if ($re) {
             foreach ($re as $key => $value) {
               $re[$key]['lv']=$value['sum(jiuzhen)']/$value['sum(sum)']*100;
             }
             //计算成功,返回概率
            return json_encode($re);
          }else{
            //没有此医生
            return json_encode(array('msg'=>'1183'));
          }
        }
      }
    }
    public function actionZonglv(){
      $arr=\Yii::$app->request->post();
      if ($arr['yname']=='') {
        //医生的名字为空
         return json_encode(array('msg'=>'1191'));
      }else{
        if ($arr['starttime']=='') {
          //开始时间为空
           return json_encode(array('msg'=>'1192'));
        }else{
            if ($arr['overtime']=='') {
              //结束时间为空
              return json_encode(array('msg'=>'1193'));
            }else{
              $re=Yiself::find()->asArray()->where(['yname'=>$arr['yname']])->andwhere(['between','startime',$arr['starttime'],$arr['overtime']])->all();
             if ($re) {
                $zongshu=0;
                $jiuzh=0;
               foreach ($re as $key => $value) {
                 $zongshu+=$value['sum'];
                 $jiuzh+=$value['jiuzhen'];
               }
              $jiuzhenlv=$jiuzh/$zongshu*100;
              //计算成功,返回百分比
              return json_encode(array('msg'=>$jiuzhenlv));
             }else{
              //没有记录
              return json_encode(array('msg'=>'1194'));
             }              
          }
        }
      }
    }
}
0 0
原创粉丝点击