| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237 |
- <!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 sllsh = (DTOUtil.getValue("sllsh") == ""? "" : DTOUtil.getValue("sllsh"));
- 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;
- }
- </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 10px 10px 0px;">
- <div class="row" style="height:100%;margin:10px 0">
- <div class="col col-9">
- <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>
- <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=1" />
- </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">
- <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_TAKEPHOTO= {
- "sllsh":"<%=sllsh%>"
- };
- //如果GVAR已经定义了则追加
- if(GVAR){
- GVAR = $.extend(GVAR, GVAR_TAKEPHOTO);
- }else{
- var GVAR = GVAR_TAKEPHOTO;
- }
- 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(1);
- }else{
- var ui = document.getElementById("ocxdiv");
- ui.style.display="none";
- ui.style.visibility="hidden";
- document.getElementById("noniediv").style.height= (divHeight - 10) +"px";
- }
- //设置右侧div高度
- document.getElementById("image_list_div").style.height= (divHeight - 10) +"px";
- }
- //拍照
- function doGrabImage(){
- var strImageProcess = "{\"cut_type\":\"0\"}";
- var strStorageInfo = "{ \"xdpi\":\"200\", \"ydpi\":\"200\", \"jpg_quality\":\"60\"}";
- var params = "{\"camidx\":\"1\",\"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!viewphoto.do?title="+title+"&sllsh="+ GVAR.sllsh;
- }
- //清空
- 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={
- sllsh:GVAR.sllsh,
- tyccids:tyccids
- };
- CFW.oAJax.doService("mainviewService.savePhoto", mParams, '正在保存照片信息...',
- function(mData) {
- if(mData[0].FLAG=="1"){
- alert("保存成功!");
- 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>
|