说明:

修复删除文件夹逻辑错误的问题

 

1.更新up6.js

更新前:

更新后:

代码:

        , "RemoveFolder": function (fileSvr)

        {

            var ref = this;

            var idSvr = fileSvr.idSvr;

            var ui = this.filesUiMap[idSvr];

 

            $.ajax({

                type: "GET"

                   , dataType: 'jsonp'

                   , jsonp: "callback" //自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名

                   , url: this.Config["UrlFdDel"]

                   , data: { uid: fileSvr.uid, fid: fileSvr.idSvr,fd_id:fileSvr.fdID, time: new Date().getTime() }

                  , success:function (msg){if (msg == 1){ui.empty();}}

                  , error: function () { alert("发送删除文件信息失败!"); }

                  , complete: function (req, sta) { req = null; }

            });

        }

 

2.更新fd_del.jsp

更新前:

更新后:

 

更新后的代码:

<%@ page language="java" import="up6.*" pageEncoding="UTF-8"%><%@

     page contentType="text/html;charset=UTF-8"%><%@

     page import="org.apache.commons.lang.StringUtils" %><%

/*

     此页面主要用来执行删除文件夹逻辑。

     只修改数据库中文件夹状态。

     更新记录:

         2014-07-24 创建

*/

String path = request.getContextPath();

 

String fid         = request.getParameter("fid");

String fd_id = request.getParameter("fd_id");

String uid         = request.getParameter("uid");

String callback = request.getParameter("callback");//jsonp

int ret = 0;

 

//参数为空

if ( !StringUtils.isBlank(fid)

     &&   !StringUtils.isBlank(fd_id)

     ||   uid.length()>0 )

{

     DBFolder.Remove(Integer.parseInt(fid),Integer.parseInt(fd_id), Integer.parseInt(uid));

     ret = 1;

}

out.write(callback + "{(\"value\":"+ret+")}");

%>

 

3.更新DBFolder.java

更新前:

更新后:

更新代码:

删除文件夹时仅更新文件标识,文件夹标识,同时更新所有子文件标识。

     static public void Remove(int id_file,int id_folder,int uid)

     {

         StringBuilder sb = new StringBuilder();

         sb.append("begin ");

         sb.append("update up6_files set f_deleted=1 where f_idSvr=? and f_uid=?;");//更新文件表

         sb.append("update up6_files set f_deleted=1 where f_pidRoot=? and f_uid=?;");//更新子文件

         sb.append("update up6_folders set fd_delete=1 where fd_id=? and fd_uid=?;");//更新文件夹

         sb.append(" end;");        

         DbHelper db = new DbHelper();

         PreparedStatement cmd = db.GetCommand(sb.toString());

         try

         {

              cmd.setInt(1, id_file);

              cmd.setInt(2, uid);

              cmd.setInt(3, id_folder);

              cmd.setInt(4, uid);

              cmd.setInt(5, id_folder);

              cmd.setInt(6, uid);

         } catch (SQLException e) {

              // TODO Auto-generated catch block

              e.printStackTrace();

         }

         db.ExecuteNonQuery(cmd);

     }

最新文章

  1. 第二百二十四天 how can I 坚持
  2. [Unity菜鸟] Final IK
  3. 取得Resultset的记录条数
  4. C++的this指针
  5. BZOJ 1635: [Usaco2007 Jan]Tallest Cow 最高的牛
  6. 转: ajax跨域之JSONP
  7. SSH key introduction
  8. 通过hook实现禁止shift+delete快捷键
  9. storm-sql-kafka问题情况
  10. 谈一谈java中的Canves机制
  11. linux中运行.sql文件
  12. html页面使用前端框架布局时,弹出子页面等情况若出现布局混乱,可能是回发导致
  13. vue.js精讲01
  14. 5.9 C++重载转型操作符
  15. git只合并某一个分支的某个commit
  16. HDU4292(KB11-H 最大流)
  17. kubernetes dns 初步理解和使用 dnsmasq dns服务器跟host机器同步
  18. Error: cannot allocate vector of size 88.1 Mb问题
  19. SaltStack生产案例-系统初始化
  20. Shell_NotifyIcon托盘图标闪烁

热门文章

  1. Struts2中的异常处理
  2. PHP基础课程学习总结
  3. [转载]:fortran之format格式化输出总结
  4. NHibernate系列文章十四:NHibernate事务
  5. A required class was missing while executing org.apache.maven.plugins:maven-war-plugin:2.1.1:war
  6. Android 下拉刷新框架实现
  7. sql良好习惯
  8. SQL SERVER连接、合并查询
  9. Warchall: Live RCE
  10. [转] Python包和类的基本用法