| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333 |
- <!DOCTYPE HTML>
- <%@ page language="java" pageEncoding="UTF-8" import="java.util.*" contentType="text/html; charset=UTF-8"%>
- <%@include file="/jsp/framework/head.jsp"%>
- <%@ taglib uri="/WEB-INF/hnisi.tld" prefix="hnisi"%>
- <%
- String sdzlid = (DTOUtil.getValue("sdzlid") == ""? "" : DTOUtil.getValue("sdzlid"));
- String sdjlid = (DTOUtil.getValue("sdjlid") == ""? "" : DTOUtil.getValue("sdjlid"));
- Map dataMap = new HashMap();
- dataMap = (Map) DTOUtil.getData().get("dataMap") == null?null:(Map) DTOUtil.getData().get("dataMap");
- final String putObjectUrl = ConfUtil.getParam("GGFW_WJFW_UPLOAD_URL");
- final String usertoken=(String)request.getSession().getAttribute("usertoken");
- %>
- <html>
- <style>
- html,body{
- width: 100%;
- height: 100%;
- margin: 0;
- padding: 0;
- }
- .div-default:active, .div-default:hover {
- background-color:#FFFACD;
- }
- .zllb-div1{
- padding: 10px 5px 10px 5px;
- background: #fbfbfb;
- border-top: 1px solid #efefef;
- border-bottom: 1px solid #efefef;
- }
- .zllb-div2{
- padding: 10px 5px 10px 5px;
- background: #fff;
- border-top: 1px solid #fff;
- border-bottom: 1px solid #fff;
- }
- .div-on {
- background-color:#FFFACD;
- border-color: #8c8c8c;
- color: #8c8c8c;
- }
- </style>
- <head lang="zh-cn">
- <meta charset="utf-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width,initial-scale=1">
- <title>高拍仪</title>
- </head>
- <body onLoad="Init()">
- <div id="root" style="width: 100%;height: 100%;padding:0 0 5px 0;">
- <div class="row" style="height:100%;margin:10px 0">
- <!-- 第一块资料类别 -->
- <div class="col col-3-1">
- <div class="section" style="width: 100%;height: 100%;">
- <div class="section-title">
- <img class="title-icon" src="${ctx}/themes/zjrs/images/title-icon.png" />
- <span class="section-title-text">资料类别</span>
- </div>
- <div id="zllb" class="bg_set" style="overflow:auto;">
- <%if(dataMap != null){
- List<Map<String, Object>> sdzlList = (List) dataMap.get("sdzlList");
- if(sdzlList != null){
- for(int i=0;i<sdzlList.size();i++){
- %>
- <div id="zllbdiv<%=sdzlList.get(i).get("SDZLID") %>" <%if(i%2 == 0){ %> class="zllb-div1 div-default" <%}else{ %> class="zllb-div2 div-default" <%} %> onclick="setSdzlid('<%=sdzlList.get(i).get("SDZLID")%>')">
- <%
- if("1".equals(sdzlList.get(i).get("SFBSBZ"))){
- %>
- <a style="color:red;">*</a>
- <%
- }
- %>
- <%=(String) sdzlList.get(i).get("ZLLBMC")%>(<a id="zllb<%=sdzlList.get(i).get("SDZLID") %>" style="color:blue;"><%=sdzlList.get(i).get("CNT")%></a>)
- </div>
- <%
- }
- }
- } %>
- </div>
- </div>
- </div>
- <div class="col col-3-2">
- <div class="section" style="width: 100%;height: 100%;">
- <div class="section-title">
- <img class="title-icon" src="${ctx}/themes/zjrs/images/title-icon.png" />
- <span class="section-title-text">拍摄预览区</span>
- <span class="section-title-extra-btn">
- <a style="color:red;">拍照完成确认无误后,请务必点击【保存】。</a>
- <input type="radio" name="camidx" value="0" onclick="selectCamera(0)" checked="checked"/>文档头
- <input type="radio" name="camidx" value="1" onclick="selectCamera(1)"/>人像头
- <a class="btn btn-primary" onclick="doGrabImage()">拍照</a>
- <a class="btn btn-primary" onclick="goBack()">返回</a>
- </span>
- </div>
- <div id="noniediv" class="bg_set">
- <img id="streamimage" style="width:100%;height: 100%;" src="http://127.0.0.1:38088/?video=stream&camidx=0" />
- </div>
- <!-- 如果是ie浏览器,会显示ocx -->
- <div id="ocxdiv" style="width: 100%;height: 94%;">
- <OBJECT id="ocxstreamimage" name="showVideoOcx" width="100%" height="100%" classid="clsid:A4B4E9B5-78E6-4CE3-B8A1-4B36237943F8"></OBJECT>
- </div>
- </div>
- </div>
- <div class="col col-3-3">
- <div class="section" style="width: 100%;height: 100%;">
- <div class="section-title">
- <img class="title-icon" src="${ctx}/themes/zjrs/images/title-icon.png" />
- <span class="section-title-text">缩略图</span>
- <span class="section-title-extra-btn">
- <a class="btn btn-ghost" onclick="doClear()">清空</a>
- <a class="btn btn-primary" onclick="doSave()">保存</a>
- </span>
- </div>
- <div id="image_list_div" class="bg_set" style="overflow:auto;">
- </div>
- </div>
- </div>
- </div>
- </div>
- </body>
- <script src="/web/jsp/shoudan/web/mainview/jquery/jquery.js"></script>
- <script type="text/javascript">
- var GVAR_FOUNDER= {
- "sdzlid":"<%=sdzlid%>",
- "sdjlid":"<%=sdjlid%>",
- "camidx":"0"
- };
- //如果GVAR已经定义了则追加
- if(GVAR){
- GVAR = $.extend(GVAR, GVAR_FOUNDER);
- }else{
- var GVAR = GVAR_FOUNDER;
- }
- var $2 = $.noConflict(); // 第二个加载的jQuery对象变成了 $2
- var imgObj = {};//拍摄照片结果
- var imgCnt = 0;//拍摄照片计数
- var imgSaveCnt = 0;//保存照片计数
- //浏览器类型
- function BrowserType(){
- var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
- if(userAgent.indexOf("Firefox") > -1){
- return "Firefox";
- }else if(userAgent.indexOf("Chrome") > -1){
- return "Chrome";
- }
- return "IE";
- }
- //是否IE浏览器
- function IsIE(){
- if(BrowserType() == "IE"){
- return true;
- }else{
- return false;
- }
- }
- //启动 CameraService 服务程序
- function Init(){
- window.location.href="cameraServicetis:0";
- //计算高度
- var distance = document.documentElement.clientHeight;
- var divHeight = distance-52;
- //ie浏览器
- if(IsIE()){
- var ui = document.getElementById("noniediv");
- ui.style.display="none";
- ui.style.visibility="hidden";
- document.getElementById("ocxdiv").style.height= divHeight +"px";
- showVideoOcx.StartPreview(0);
- }else{
- var ui = document.getElementById("ocxdiv");
- ui.style.display="none";
- ui.style.visibility="hidden";
- document.getElementById("noniediv").style.height= (divHeight - 10) +"px";
- }
- document.getElementById("zllb").style.height= (divHeight - 10) + "px";//左侧div
- document.getElementById("image_list_div").style.height= (divHeight - 10) + "px";//右侧div高度
-
- var sdzlid = "<%=sdzlid%>";
- if(sdzlid.length > 0){
- //默认选中传参sdzl
- setSdzlid(sdzlid);
- }
- }
- //切换收单资料id
- function setSdzlid(sdzlid){
- //div增加选中样式
- var div = document.getElementById("zllbdiv"+sdzlid);
- div.className += ' div-on';
- if(GVAR.sdzlid != sdzlid && GVAR.sdzlid != ""){
- var divdel = document.getElementById("zllbdiv"+GVAR.sdzlid);
- var classVal = divdel.getAttribute("class");
- classVal = classVal.replace(" div-on","");
- divdel.setAttribute("class",classVal);
- }
- GVAR.sdzlid = sdzlid;
- }
- //切换摄像头
- function selectCamera(index){
- GVAR.camidx=index;
- //ie浏览器
- if(IsIE()){
- showVideoOcx.StartPreview(index);
- }else{
- document.getElementById("streamimage").src="http://127.0.0.1:38088/video=stream&camidx="+index;
- }
- }
- //拍照
- function doGrabImage(){
- var strImageProcess = "";
- if(GVAR.camidx == "0"){//文档头
- strImageProcess = "{\"cut_type\":\"1\",\"rotate\":\"270\"}";//自动切边,图片逆时针旋转90度
- }else{
- strImageProcess = "{\"cut_type\":\"0\"}";
- }
- var strStorageInfo = "{ \"xdpi\":\"200\", \"ydpi\":\"200\", \"jpg_quality\":\"60\"}";
- var params = "{\"camidx\":\"" + GVAR.camidx + "\",\"make_uuid\":\"0\",\"image_storage_info\":" + strStorageInfo + ",\"image_process_info\":" + strImageProcess + "}";
- //alert("params="+params);
- var url = "http://127.0.0.1:38088/video=grabimage";
- $2.ajax({
- type: "post",
- url: url,
- dataType: "json",
- data: params,
- success: function(data){
- if(data.code != 0){
- alert(data.message);
- }else{
- var images = data.images;
- var iCount = data.image_count;
- var strImageList = "";
- for(var i = 0; i < iCount; i++){
- //保存数据到图片集
- imgCnt++;
- imgSaveCnt++;
- var imgKey = "img" + imgCnt;
- imgObj[imgKey] = images[i].base64;
- //界面显示
- strImageList += "<img id=\"" + imgKey + "\" src=\"data:image/jpg;base64," + images[i].base64 + "\" width=96% />";
- //if(typeof(images[i].uuid) != "undefined")
- //document.getElementById("pdf_input").value = images[i].uuid;
- }
- document.getElementById("image_list_div").innerHTML = strImageList + document.getElementById("image_list_div").innerHTML;
- }
- }
- });
- }
- //返回
- function goBack(){
- var title=encodeURIComponent('收单页面');
- window.location.href = "${ctx}/shoudan/web/mainview/mainview.do?title="+title+"&sdzlid="+ GVAR.sdzlid +"&sdjlid="+GVAR.sdjlid;
- }
- //清空
- function doClear(){
- document.getElementById("image_list_div").innerHTML = "";
- imgObj = {};//拍摄照片结果
- imgCnt = 0;//拍摄照片计数
- imgSaveCnt = 0;//保存照片计数
- }
- //保存
- function doSave(){
- if(imgSaveCnt > 0){
- var url = "<%=putObjectUrl%>";
- var token = "<%=usertoken%>";
- if(CFW.oValid.fnIsNull(token)){
- alert("系统登录超时,上传失败,请重新登录后上传!");
- return;
- }
- var tyccids = putFiles(url,token);
-
- var mParams={
- sdzlid:GVAR.sdzlid,
- tyccids:tyccids
- };
- CFW.oAJax.doService("mainviewService.saveSdzlmx", mParams, '正在上传资料信息...',
- function(mData) {
- if(mData[0].FLAG=="1"){
- alert("保存成功!");
- //更新资料类别总数
- var cnt = document.getElementById("zllb"+GVAR.sdzlid).innerHTML;
- var zlmxCnt = parseInt(cnt) + imgSaveCnt;
- document.getElementById("zllb"+GVAR.sdzlid).innerHTML = zlmxCnt;
- doClear();
- }else{
- alert("保存失败!");
- }
- }
- );
- }else{
- alert("请先点击拍照,拍摄需要保存的文件!");
- }
- }
- //文件上传,返回统一存储ID
- function putFiles(url,token){
- var tyccids = "";
- for(var i=0;i<imgSaveCnt;i++){
- var formdata = new FormData();
- var imgindex=i+1;
- const blob = base64ToBlob("data:image/jpeg;base64,"+imgObj["img"+imgindex]);
- const file = blobToFile(blob, "img"+imgindex+".jpg");
-
- formdata.append('file', file, "img"+imgindex+".jpg");
- formdata.append('business', 'business1');
-
- var tyccid = putObject(url,token,formdata);
-
- tyccids +=tyccid+",";
- }
-
- return tyccids;
- }
- </script>
- <script src="${ctx}/jsp/shoudan/web/mainview/js/put-object-to-fileserver.js"></script>
- </html>
|