当前位置: 代码迷 >> 综合 >> 12.6笔记
  详细解决方案

12.6笔记

热度:71   发布时间:2023-10-18 22:34:44.0

12.6笔记

不断完善项目系统,提高用户体验度,但是还有好多懒得改了。今天具体的改动如下:

  1. 信息管理方面:
    条件搜索外显出来,不采用模态框显示。
    问题场景:当用户点击下拉框进行条件搜索的时候,有可能出现错点或者误点的情况,想重新点击搜索,或者点击搜索完之后,有可能进行第二次的搜索。
    解决:针对第一种情况,可以给刷新的点击按钮加事件,当用户点击的时候,对所有内容的下拉框进行清空。因为用的是bootstrap的selectpicker,所以网上的一般的教程不可用。具体代码:

    	function clearSearchContent() {document.getElementById("sel_userName").options.selectedIndex = 0;$("#sel_userName").selectpicker('refresh');document.getElementById("sel_beforeLevel").options.selectedIndex = 0;$("#sel_beforeLevel").selectpicker('refresh');document.getElementById("sel_appLevel").options.selectedIndex = 0;$("#sel_appLevel").selectpicker('refresh');document.getElementById("sel_AppScholar").options.selectedIndex = 0;$("#sel_AppScholar").selectpicker('refresh');document.getElementById("sel_userMajor").options.selectedIndex = 0;$("#sel_userMajor").selectpicker('refresh');document.getElementById("sel_userWorkAddr").options.selectedIndex = 0;$("#sel_userWorkAddr").selectpicker('refresh');
    

    }

    只能使用JavaScript的语法来获取元素内容,不能用jq的方法获取,会出错。

  2. api接口获取的数据存在数据库中为base64编码,结果显示在页面上也是字符串类型,所以需要将base64编码整成文件,然后存在数据库中,并且能够展示在页面上

    1. 肯定需要将base64编码的过程封装成为方法(base64转为图片,主要功能是将base64存到服务器的上某个路径上,然后获得文件的路径):

       public static String base64ToImg(String base64,String fileName) throws Exception{String uuid=UUID.randomUUID().toString().replaceAll("-","");//判断是否传进来为空if (base64 == null) {return null;}BASE64Decoder decoder=new BASE64Decoder();byte[] b=decoder.decodeBuffer(base64);for (int i = 0; i < b.length; i++) {if (b[i]<0){b[i]+=256;}}String imagePath= "盘符:"+File.separator+"文件路径";String imgFilePath=imagePath+File.separator+fileName+uuid+".jpg";String relativePath=fileName+uuid+".jpg";OutputStream outputStream=new FileOutputStream(imgFilePath);outputStream.write(b);outputStream.flush();outputStream.close();return relativePath;}
      

      文件名字肯定需要自己手动生成,需要唯一所以用UUID进行生成。具体操作:String uuid=UUID.randomUUID().toString().replaceAll("-","");

    2. 将通过api获得的base64编码传进去,然后返回的文件路径,相对路径,用于存数据库,但是仍然需要加一些内容才能使页面正常显示:

       String designSketchImg = DocUtil.base64ToImg(ikcCaseCommonList.get(i).getDesignsketch(), "design");/*<img alt="" src="/3bb7f0934229410d81677c36d3e9e381.png" style="height:auto; width:auto" />*/String saveDesignImg="<img alt=\"\" src="+"/"+designSketchImg+" style=\"height:auto;width:auto\" />";ikcQSolution.setDesignsketch(saveDesignImg);
      

重点:

1. bootstrap-selectpicker下拉框的一键清空

2. UUID的随机生成字符串

3. base64编码转为图片文件


  相关解决方案