调用我们自己的添加图片的代码,但是在删除图片时出现问题。hibernate他是可以把所有的图片放在一个set里面他自己更新图片信息

下面是页面遍历图片,需要用到图片的id:

<div class="product_detail" style="width:90%;margin:0px auto;padding-top:10px;text-align:left;">
                <ul>
                    <s:iterator value="aProofs" var="file" status="stFile">
                        
                        <li style="position:relative;width:50px;height:50px;">
                            <input type="hidden" name="oldFileId" value="${file.id }"/>
                            <a rel="example_group"  href="/<s:property value="#file.photoPath"/>">
                                <img src="/<s:property value="#file.photoPath"/>" border="0" style="width:50px;height:50px; vertical-align:middle;"/>
                            </a>
                            <s:if test='afterSaleService.orderStateSequence==88'>
                                <a class="o2odelete"></a>
                            </s:if>
                        </li>
                    </s:iterator>
                    
                </ul>
            </div>

这个就是页面效果的删除,但并没有删除数据库中的数据:

$(".o2odelete").click(function(){
        $(this).parent("li").remove();
    })

上传图片的input:

      <div class="imgs" style="display:block;">
                    <div id="preview1"></div>
                    <input type="file"  name="imageFile" onchange="preview(this,1)"  class="comment-pic-upd" style="border:none;"/>
                    <img src="/m/images/account/file.jpg"/>
                </div>

后台需要用到的参数

private File[] imageFile = null;                                       /*多文件上传*/

private String[] oldFileId = null;
private Set<AfterSaleProof> aProofs=null;

 

      After  after = userAfterSaleFace.getAfter(orderno).get(0);
                after.setCustomMoney(afterSaleService.getCustomMoney());
                after.setReason(afterSaleService.getReason());
                Set<AfterProof> newProof=new HashSet<AfterProof>();
                if(oldFileId!=null&&oldFileId.length>0){
                    for(String oldId : oldFileId) {
                        AfterProof  oldProof = userAfterSaleFace.getAfterSaleProof(oldId);
                        newProof.add(oldProof);
                    }
                }
                if(imageFile!=null){
                    for (int i = 0; i < imageFile.length; i++) {
                        AfterProofaf = new AfterProof();
                        if(imageFile != null){
                            String path=this.saveAttach(imageFile[i], imageFileFileName[i], 1, "afterSaleService");
                            af.setPhotoPath(path);
                            af.setName(imageFileFileName[i]);
                            af.setSerialNum(i+1);
                        }
                        newProofs.add(af);
                    }
                }
                after.setAfterProofs(newProofs);        
                userAfterSaleFace.addOrUpdateAfterSaleService(afterSaleServices, methodArg);

最后更新一下实体。

posted on 2017-03-02 17:45  爱上码  阅读(235)  评论(0编辑  收藏  举报