Procházet zdrojové kódy

Merge branch 'dev' of http://code.pacsonline.cn/zskk_bg/yuanchengpasc into pro

lgy před 6 roky
rodič
revize
1405dc743a
2 změnil soubory, kde provedl 98 přidání a 44 odebrání
  1. 63 15
      .idea/workspace.xml
  2. 35 29
      application/inter/controller/Dcquery.php

+ 63 - 15
.idea/workspace.xml

@@ -37,8 +37,8 @@
       <file leaf-file-name="Index.php" pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/application/index/controller/Index.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state vertical-scroll-proportion="1.4426229">
-              <caret line="92" column="4" selection-start-line="92" selection-start-column="4" selection-end-line="139" selection-end-column="5" />
+            <state vertical-scroll-proportion="-17.67213">
+              <caret line="93" column="31" selection-start-line="93" selection-start-column="20" selection-end-line="93" selection-end-column="31" />
               <folding />
             </state>
           </provider>
@@ -47,8 +47,8 @@
       <file leaf-file-name="Dcquery.php" pinned="false" current-in-tab="true">
         <entry file="file://$PROJECT_DIR$/application/inter/controller/Dcquery.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state vertical-scroll-proportion="0.6173913">
-              <caret line="148" column="19" selection-start-line="148" selection-start-column="19" selection-end-line="148" selection-end-column="19" />
+            <state vertical-scroll-proportion="0.40869564">
+              <caret line="156" column="47" selection-start-line="156" selection-start-column="47" selection-end-line="156" selection-end-column="47" />
               <folding />
             </state>
           </provider>
@@ -157,9 +157,9 @@
         <option value="$PROJECT_DIR$/application/database.php" />
         <option value="$PROJECT_DIR$/application/common.php" />
         <option value="$PROJECT_DIR$/application/admin/command/Upgrade.php" />
-        <option value="$PROJECT_DIR$/application/index/controller/Index.php" />
         <option value="$PROJECT_DIR$/application/inter/controller/Writereport.php" />
         <option value="$PROJECT_DIR$/application/common/versionsql/Version2" />
+        <option value="$PROJECT_DIR$/application/index/controller/Index.php" />
         <option value="$PROJECT_DIR$/application/inter/controller/Dcquery.php" />
       </list>
     </option>
@@ -252,6 +252,54 @@
               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
             </PATH_ELEMENT>
           </PATH>
+          <PATH>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="yczd" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="yczd" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="yczd" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="application" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="index" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+          </PATH>
+          <PATH>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="yczd" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="yczd" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="yczd" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="application" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="index" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="controller" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+          </PATH>
           <PATH>
             <PATH_ELEMENT>
               <option name="myItemId" value="yczd" />
@@ -751,14 +799,6 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/application/index/controller/Index.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state vertical-scroll-proportion="1.4426229">
-          <caret line="92" column="4" selection-start-line="92" selection-start-column="4" selection-end-line="139" selection-end-column="5" />
-          <folding />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/application/inter/controller/Writereport.php">
       <provider selected="true" editor-type-id="text-editor">
         <state vertical-scroll-proportion="-16.032259">
@@ -783,10 +823,18 @@
         </state>
       </provider>
     </entry>
+    <entry file="file://$PROJECT_DIR$/application/index/controller/Index.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state vertical-scroll-proportion="-17.67213">
+          <caret line="93" column="31" selection-start-line="93" selection-start-column="20" selection-end-line="93" selection-end-column="31" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
     <entry file="file://$PROJECT_DIR$/application/inter/controller/Dcquery.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state vertical-scroll-proportion="0.6173913">
-          <caret line="148" column="19" selection-start-line="148" selection-start-column="19" selection-end-line="148" selection-end-column="19" />
+        <state vertical-scroll-proportion="0.40869564">
+          <caret line="156" column="47" selection-start-line="156" selection-start-column="47" selection-end-line="156" selection-end-column="47" />
           <folding />
         </state>
       </provider>

+ 35 - 29
application/inter/controller/Dcquery.php

@@ -147,18 +147,16 @@ class Dcquery extends Controller
                 }else{
                     $image[$key]['url'] = $url.$value['metadata'];
                 }*/
-                if(empty($value['remote_url']) && empty($value['local_url'])){
-                    $image[$key]['url'] = 'dicomweb://'.$_REQUEST['address'].'/'.$value['metadata'];
-                }else{
-                    $imageUrl = $this->generateUrl($value['url'],$_REQUEST['address'],$value['remote_url'],$value['local_url'],$value['status']);
-                    if(!$imageUrl){
-                        $file = ROOT_PATH . 'public' . DS . 'get_studiesinfo/'.date('Ymd').'-fail.log';
-                        $log = 'url错误,传值为--'.$_REQUEST['address'];
-                        file_put_contents($file, $log,FILE_APPEND);
-                        continue;
-                    }
-                    $image[$key]['imageNumber'] = $value['instanceNumber'];
+                $imageUrl = $this->generateUrl($value['url'],$_REQUEST['address'],$value['remote_url'],$value['local_url'],$value['status'],$value['metadata']);
+                if(!$imageUrl){
+                    $file = ROOT_PATH . 'public' . DS . 'get_studiesinfo/'.date('Ymd').'-fail.log';
+                    $log = 'url错误,传值为--'.$_REQUEST['address'];
+                    file_put_contents($file, $log,FILE_APPEND);
+                    continue;
                 }
+                $image[$key]['url'] = $imageUrl;
+                $image[$key]['imageNumber'] = $value['instanceNumber'];
+
             }
             $series[$k]['instances'] = $image;
             $series[$k]['seriesInstanceUid'] = $v['seriesuid'];
@@ -185,31 +183,35 @@ class Dcquery extends Controller
         $return['studies'][] = $info;
         return json_encode($return);
     }
-    public function generateUrl($url, $address, $remote_url, $local_url, $status) {
+    public function generateUrl($url, $address, $remote_url, $local_url, $status, $metadata) {
         if(empty($address)) {
             return self::generateNormalUrl($url);
         }
         if(preg_match("/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/",$address)) {
-            return self::generateIpUrl($url,$address,$remote_url, $local_url, $status);
+            return self::generateIpUrl($url,$address,$remote_url, $local_url, $status,$metadata);
         }
         return  self::generateNormalUrl($url,$address);
     }
-    public function generateIpUrl($url, $address, $remote_url, $local_url, $status) {
-        //获取ip
-        $ip = $this->getIpbyAddress($address);
-        if(in_array($ip,json_decode(LC_IPS,TRUE))) {
-            //浪潮政务云访问
-            return "dicomweb://$address/$remote_url";
-        }
-        if($status & STATUS_LOCAL) {
-            //内网url有效
-            return "dicomweb://$address/$local_url";
-        }
-        if($status & STATUS_REMOTE) {
-            //外网url有效
-            return "dicomweb://$address/".REMOTE_FLAG."/$remote_url";
+    public function generateIpUrl($url, $address, $remote_url, $local_url, $status,$metadata) {
+        if(empty($remote_url) && empty($local_url)){
+            return 'dicomweb://'.$address.'/'.$metadata;
+        }else{
+            //获取ip
+            $ip = $this->getIpbyAddress($address);
+            if(in_array($ip,json_decode(LC_IPS,TRUE))) {
+                //浪潮政务云访问
+                return "dicomweb://$address/$remote_url";
+            }
+            if($status & STATUS_LOCAL) {
+                //内网url有效
+                return "dicomweb://$address/$local_url";
+            }
+            if($status & STATUS_REMOTE) {
+                //外网url有效
+                return "dicomweb://$address/".REMOTE_FLAG."/$remote_url";
+            }
+            return  null;
         }
-        return  null;
     }
     public function getIpbyAddress($url){
         $ip = explode(':',$url);
@@ -229,7 +231,11 @@ class Dcquery extends Controller
             $dicurl = 'dicomweb://'.$lujing[1].'/'.$url;
             return $dicurl;
         }else{
-            $dicurl = 'dicomweb://'.$domain.'/'.$url;
+            if(empty($domain)){
+                $dicurl = 'dicomweb://dcm.pacsonline.cn/'.$url;
+            }else{
+                $dicurl = 'dicomweb://'.$domain.'/'.$url;
+            }
             return $dicurl;
         }
     }