Changeset 109


Ignore:
Timestamp:
Apr 18, 2011, 3:47:28 PM (6 years ago)
Author:
taco@…
Message:

Fixing drag-and-drop bugs, looking to fix bug with pre-existing directory named after assaytoken

Location:
nugoctdwebapp/src/java/ctd/services
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • nugoctdwebapp/src/java/ctd/services/getCleanData2.java

    r107 r109  
    341341                Process p6 = Runtime.getRuntime().exec(strCommand2);
    342342
    343                 String strCommand3 = "mv " + zip_folder + " " + res.getString("ws.upload_folder")+getCTD_REF();
     343                File final_folder =new File(res.getString("ws.upload_folder")+getCTD_REF());
     344                String strCommand3;
     345                boolean exists = final_folder.exists();
     346                if(exists){
     347                    strCommand3 = "cp " + zip_folder + "/* " + res.getString("ws.upload_folder")+getCTD_REF();
     348                } else {
     349                    strCommand3 = "mv " + zip_folder + " " + res.getString("ws.upload_folder")+getCTD_REF();
     350                }
    344351                Process p7 = Runtime.getRuntime().exec(strCommand3);
    345352                //String strCommand4 = "cp " + zip_folder + "/* "+res.getString("ws.upload_folder")+getCTD_REF()+"/";
  • nugoctdwebapp/src/java/ctd/services/getSamples.java

    r107 r109  
    1313import java.util.Enumeration;
    1414import java.util.HashMap;
     15import java.util.Iterator;
    1516import java.util.LinkedList;
     17import java.util.Map;
     18import java.util.Map.Entry;
    1619import java.util.ResourceBundle;
     20import java.util.Set;
    1721import java.util.logging.Level;
    1822import java.util.logging.Logger;
     
    8690
    8791        strReturn += "<table>";
    88         strReturn += "<tr class='fs_th'><th>Filenames</th><th>Samplenames</th></tr>";
     92        strReturn += "<tr class='fs_th'><th class='mark'>Filenames</th><th class='mark'>Samplenames</th></tr>";
    8993
    9094        LinkedList<String> lstFilenames = new LinkedList<String>();
     
    97101                // Get the entry name
    98102                String zipEntryName = ((ZipEntry)entries.nextElement()).getName();
    99                 //if(!zipEntryName.equals(".") && !zipEntryName.equals("..")){
     103                if(!zipEntryName.equals(".") && !zipEntryName.equals("..")){
    100104                    lstFilenames.add(zipEntryName);
    101                 //}
     105                }
    102106            }
    103107        } catch (IOException e) {
     
    106110
    107111        //From samples to filenames
    108         HashMap<Integer, Integer> results = new HashMap<Integer, Integer>();
     112        HashMap<String, String> results = new HashMap<String, String>();
     113        HashMap<String, Integer> sampletokens = new HashMap<String, Integer>();
    109114        boolean[] used = new boolean[lstFilenames.size()];
     115        Logger.getLogger(getTicket.class.getName()).log(Level.SEVERE, "getSamples(): lstGSCFResponsesize: "+lstGSCFResponse.size());
     116        Logger.getLogger(getTicket.class.getName()).log(Level.SEVERE, "getSamples(): lstFilenamessize: "+lstFilenames.size());
    110117        for(int i = 0; i < lstGSCFResponse.size() && i<lstFilenames.size(); i++){
    111118            HashMap<String, String> map = (HashMap<String, String>) lstGSCFResponse.get(i);
     
    135142            }
    136143            used[highest_match]=true;
    137             results.put(i,highest_match);
    138         }
    139 
    140         for(int i = 0; i < results.size() && i < lstGSCFResponse.size(); i++){
     144            results.put(lstGSCFResponse.get(i).toString(),lstFilenames.get(highest_match));
     145            sampletokens.put(lstGSCFResponse.get(i).toString(), i);
     146        }
     147
     148        Iterator it = results.entrySet().iterator();
     149        int i = 0;
     150        Logger.getLogger(getTicket.class.getName()).log(Level.SEVERE, "getSamples(): resultssize: "+results.size());
     151        while(it.hasNext()){
    141152            String strColor = "#DDEFFF";
    142153            if(i%2==0) {
    143154                strColor = "#FFFFFF";
    144155            }
    145             int fn = results.get(i);
    146             HashMap<String, String> map = (HashMap<String, String>) lstGSCFResponse.get(i);
    147             strReturn += "<tr><td class='forbid' style='width:50%; background-color:"+strColor+"; font-size:small;'>"+lstFilenames.get(fn)+"<input type='hidden' value='"+lstFilenames.get(fn)+"'/></td><td style='width:50%; background-color:"+strColor+"; font-size:small;'><div class='drag' style='padding: 3px'>"+map.get("name")+" - "+map.get("event")+" - "+map.get("Text on vial")+"<input type='hidden' value='"+map.get("sampleToken")+"'/></div></td></tr>";
    148             lstGSCFResponse.remove(i);
    149             lstGSCFResponse.remove(i);
     156            i++;
     157
     158            Map.Entry<String, String> kv = (Map.Entry<String, String>) it.next();
     159            //HashMap<String, String> map = (HashMap<String, String>) lstGSCFResponse.get(i);
     160            String fn = kv.getValue();
     161            HashMap<String, String> map = (HashMap<String, String>) lstGSCFResponse.get(sampletokens.get(kv.getKey()));
     162            strReturn += "<tr><td class='mark' style='width:50%; background-color:"+strColor+"; font-size:small;'>"+fn+"<input type='hidden' value='"+fn+"'/></td><td style='width:50%; background-color:"+strColor+"; font-size:small;'><div class='drag' style='padding: 3px'>"+map.get("name")+" - "+map.get("event")+" - "+map.get("Text on vial")+"<input type='hidden' value='"+map.get("sampleToken")+"'/></div></td></tr>";
     163        }
     164
     165        //Remove used tokens from lstGSCFResponse
     166        Iterator it2 = sampletokens.entrySet().iterator();
     167        while(it2.hasNext()){
     168            Map.Entry<String, Integer> kv = (Map.Entry<String, Integer>) it2.next();
     169            for(int j = 0; j < lstGSCFResponse.size(); j++){
     170                if(kv.getKey().equals(lstGSCFResponse.get(j).toString())){
     171                    lstGSCFResponse.remove(j);
     172                }
     173            }
    150174        }
    151175
    152176        // Add remainder of samples
    153         strReturn += "<tr class='fs_th'><td colspan='2' class='forbid'><br />The following sampletokens are not matched with a file.</td></tr>";
    154         strReturn += "<tr><td colspan='2' style='height:100px; font-size:small;'>";
     177        boolean blnRemainingSamples = false;
     178        if(lstGSCFResponse.size()>0){
     179            strReturn += "<tr class='fs_th mark'><td class='mark' colspan='2'><br />The following sampletokens are not matched with a file.</td></tr>";
     180        }
    155181        while(lstGSCFResponse.size()>0){
    156182            HashMap<String, String> map = (HashMap<String, String>) lstGSCFResponse.pop();
    157             strReturn += "<div class='drag' style='padding: 3px'>"+map.get("name")+" - "+map.get("event")+" - "+map.get("Text on vial")+"</div>";
    158         }
    159 
    160         strReturn += "</td></tr></table>";
     183            strReturn += "<tr><td colspan='2' style='font-size:small;'>"
     184                    + "<div class='drag' style='padding: 3px'>"+map.get("name")+" - "+map.get("event")+" - "+map.get("Text on vial")+"</div>"
     185                    + "</td></tr>";
     186        }
     187        strReturn += "</table>";
    161188
    162189        return strReturn;
Note: See TracChangeset for help on using the changeset viewer.