lgy пре 6 година
родитељ
комит
32be8c8c9b
1 измењених фајлова са 45 додато и 2 уклоњено
  1. 45 2
      application/inter/controller/Writereport.php

+ 45 - 2
application/inter/controller/Writereport.php

@@ -243,7 +243,25 @@ class Writereport extends Base
             $patient_info['name']     = isset($param['name']) ? $param['name'] : '';
             $patient_info['age']      = isset($param['age']) ? $param['age'] : '';
             $patient_info['phone']    = isset($param['phone']) ? $param['phone'] : '';
-            $patient_info['sex']      = isset($param['sex']) ? $param['sex'] : '';
+            if(isset($param['sex']) && !empty($param['sex'])){
+                switch($param['sex']){
+                    case '男';
+                        $sex = 'M';
+                        break;
+                    case '女';
+                        $sex = 'F';
+                        break;
+                    case 'm';
+                        $sex = 'M';
+                        break;
+                    case 'f';
+                        $sex = 'F';
+                        break;
+                    default :
+                        $sex = $param['sex'];
+                }
+                $patient_info['sex']      =   $sex;
+            }
             $patient = DB::table('patient_infos')->where('id',$param['pid'])->update($patient_info);
             $info = array();
             $info['exam_id'] = $param['id'];
@@ -1046,9 +1064,34 @@ class Writereport extends Base
      **/
     public function write_info(){
         $sessionid = $_REQUEST['sessionid'];
+        if(isset($_REQUEST['is_remote']) && $_REQUEST['is_remote'] == 1){
+            //  是远程写报告  7
+            $return  = Verify::check_role($sessionid,7);
+        }else{
+            //  本地写报告权限 2
+            $return  = Verify::check_role($sessionid,2);
+        }
+        if($return != 1){
+            return json_encode(['status'=>'fail','code'=>'1029','msg'=>'没有操作权限']);
+        }
+        $param = $_REQUEST['param'];
+        if(isset($_REQUEST['is_remote']) && $_REQUEST['is_remote'] == 1){
+            //远程
+            $status = DB::table('remote_application')->where('id',$param['rid'])->field('report_status')->find();
+            if($status['report_status']  ==  12){
+                return json_encode(['status'=>'fail','code'=>'1034','msg'=>'报告已被撤回,无法进行保存填写']);
+            }elseif($status['report_status'] > 6){
+                return json_encode(['status'=>'fail','code'=>'1034','msg'=>'报告已被保存,无法再次被修改']);
+            }
+        }else{
+            //本地
+            $status = DB::table('exams')->where('id',$param['id'])->field('exam_status')->find();
+            if($status['exam_status'] > 6){
+                return json_encode(['status'=>'fail','code'=>'1034','msg'=>'报告已被保存,无法再次被修改']);
+            }
+        }
         $doctor = Cache::get($sessionid);
         $is_remote = $_REQUEST['is_remote'];
-        $param = $_REQUEST['param'];
         $patient_info['name']       = isset($param['name']) ? $param['name'] : '';
         $patient_info['sex']       = isset($param['sex']) ? $param['sex'] : '';
         $patient_info['age']       = isset($param['age']) ? $param['age'] : '';