当前位置:编程学习 > JAVA >>

tobacco项目中的代码片段

[java]  
/** 
 * 最新版的到生成入库单页面 
 * @return 
 */  
public String saveIn() {  
    getCapacity(duoStr);  
    epcList=new ArrayList<Map<String,Object>>();  
    int k=0;//k指第几个垛,0为第一个垛(默认)  
    //先将垛的剩余容量赋给j,给epc分配一个垛后,j减1  
    int j=Integer.parseInt(targetList.get(k).get("capacity").toString());  
    //当前垛的id  
    String x=(String)targetList.get(k).get("id");  
    if(epcArray!=null&&epcArray.length>0){  
    for (int i = 0; i < epcArray.length; i++) {  
        Map<String, Object> epcMap=new HashMap<String, Object>();  
        epcMap.put("epc", epcArray[i]);  
        epcMap.put("storage", x);  
        epcMap.put("libId", libId);  
        epcMap.put("areaId",areaId);  
        epcList.add(epcMap);  
        //开始处理垛容量  
        j--;  
        if(j==0){//如果垛满,开始分配下一垛  
            k++;  
            j=Integer.parseInt(targetList.get(k).get("capacity").toString());  
            x=(String)targetList.get(k).get("id");  
        }  
    }  
      
    //将包信息存入数据库  
    for (Map<String, Object> epc : epcList) {  
        inDAO.addEpc(Integer.parseInt(epc.get("storage").toString()),epc.get("epc").toString(),  
                Integer.parseInt(epc.get("libId").toString()),  
                Integer.parseInt(epc.get("areaId").toString()));  
        inDAO.updateStatus(epc.get("epc").toString());  
    }  
      
    }//要有烟包才存在之前的逻辑  
  
    //开始生成入库单填写界面  
    structureList=queryMeta(table);  
    for (Map<String, Object>  st : structureList) {  
        //如果metadate是下拉列表类型时,查出下拉列表,加入该metadata  
        //的map中  
        if(st.get("INPUT_TYPE").toString().equals("3")){  
            String sql=st.get("OWNER_ID").toString();  
            List<Map<String,Object>> list=inCenterDAO.querySelect(sql);  
            st.put("SELECT_LIST", list);  
        }  
    }  
    return "saveIn";  
}  
 
之后转到jsp页面自动生成表单
[html] 
<table>  
<c:forEach items="${structureList}" var="st">  
    <c:if test="${tdCount%2==0}">  
        <tr>  
    </c:if>  
        <th>${st.meta_name }</th>  
        <td>  
            <c:if test="${st.input_type==1}">  
                <input type="text" name="${st.meta_key }" value="${pa[st.meta_key] }" />  
            </c:if>  
            <c:if test="${st.input_type==2}">  
                <input type="text" name="${st.meta_key }"  value="${pa[st.meta_key] }"  
                    onfocus="WdatePicker({skin:'whyGreen',dateFmt:'yyyy-MM-dd HH:mm:ss',maxDate:'%y-%M-%d'})" class="Wdate" />  
            </c:if>  
            <c:if test="${st.input_type==3}">  
                <select name="${st.meta_key }">  
                    <option value="">--请选择--</option>  
                    <c:forEach items="${st.select_list }" var="op">  
                        <option value="${op.id }">${op.name }</option>  
                    </c:forEach>  
                </select>  
            </c:if>  
            <c:if test="${st.nullable == 0 }">  
                <strong>*</strong>  
            </c:if>  
        </td>  
            <c:set var="tdCount" value="${tdCount+1 }"></c:set>  
        <c:if test="${tdCount % 2 == 0 }">  
            </tr>  
        </c:if>  
</c:forEach>  
</table>  
 
 
13年2月23日加班做自动判断每个垛还能放多少包,小逻辑很多,如下:
[java]  
js.util.attachEvent(window,"load",freshData);  
js.util.attachEvent(window,"load",bindInterval);  
[java]  
function freshData(){  
    js.ajax.post("${path}/page/in/refreshIn.action",{},function(data){  
        var list=eval(data.responseText);  
        for(var i in list){  
            createRow(list[i]);  
        }  
    });  
    //处理完最新10个的列表之后,再处理总数  
    freshTotal(); &nb
补充:软件开发 , Java ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,