//视图层
<div class="approve_NI_3">
<div class="approve_NI_3A">
<div class="approve_NI_3top">
<img src="../images/sp_xing.png"/>
<div>图片</div>
</div>
<div class="approve_NI_3bottom">
<input type="file" name="img" id="file" accept="image/*;capture=camera" style="display: none;"/>
<!--<img src="../images/wd_mrtx.png" />-->
<div>
<img src="../images/sp_tupian.png" id="ui_avatar"/>
</div>
</div>
</div>
</div>
//js部分
$(function(){
$('#submit_btn').click(function(){
//alert(123);
mui.toast('添加审批成功');
setTimeout(function(){
window.location.href='./approve_sponsor.html';
},1000)
});
})
//上传图片
mui.plusReady(function(){
document.getElementById('ui_avatar').addEventListener('tap',function(){
if(mui.os.plus){
var a=[{
title:'拍照'
},{
title:'从手机相册选择'
}];
plus.nativeUI.actionSheet({
title:'修改头像',
cancel:'取消',
buttons:a
},function(b){
switch(b.index){
case 0:
break;
case 1:
//拍照
getImages();
break;
case 2:
//打开相册
galleryImages();
break;
default:
break;
}
},false);
}
});
//拍照
function getImages(){
var mobileCamera=plus.camera.getCamera();
mobileCamera.captureImage(function(e){
plus.io.resolveLocalFileSystemURL(e,function(entry){
var path=entry.toLocalURL()+'?version='+new Date().getTime();
uploadHeadImg(path);
},function(err){
console.log("读取拍照文件错误");
});
},function(e){
console.log("er",err);
},function(){
filename:'_doc/head.png';
});
}
//从本地相册选择
function galleryImages(){
//console.log("你选择了从相册选择");
plus.gallery.pick(function(a){
plus.io.resolveLocalFileSystemURL(a,function(entry){
plus.io.resolveLocalFileSystemURL('_doc/',function(root){
root.getFile('head.png',{},function(file){
//文件已经存在
file.remove(function(){
//console.log("文件移除成功");
entry.copyTo(root,'head.png',function(e){
var path=e.fullPath+'?version='+new Date().getTime();
//console.log(path);
uploadHeadImg(e.fullPath);
},function(err){
console.log("copy image fail: ",err);
});
},function(err){
console.log("删除图片失败:("+JSON.stringify(err)+")");
});
},function(err){
//打开文件失败
entry.copyTo(root,'head.png',function(e){
var path=e.fullPath+'?version='+new Date().getTime();
uploadHeadImg(e.fullPath);
},function(err){
console.log("上传图片失败:("+JSON.stringify(err)+")");
});
});
},function(e){
console.log("读取文件夹失败:("+JSON.stringify(err)+")");
});
});
},function(err){
console.log("读取拍照文件失败: ",err);
},{
filter:'image'
});
};
//上传图片
function uploadHeadImg(imgPath){
//选中图片之后,头像当前的照片变为选择的照片
var mainImg=document.getElementById('ui_avatar');
mainImg.src=imgPath;
mainImg.onload =function() {
var ordercode = $('#ordercode').val();//订单号
var goodsname = $('#goodsname').val();//商品名称
var reason = $('#reason').val();//异常原因
var ui_gid = $('#ui_gid').val();//审批人
var s_id = localStorage.getItem("s_id");
var time = getTime();
var sign = getSign([s_id,time]);
var han = /^[\u4e00-\u9fa5]+$/;
if(ordercode==""){
mui.toast('订单编号不能为空');
return false;
}
if(goodsname==""){
mui.toast('商品名称不能为空');
return false;
}
if (!han.test(goodsname)) {
mui.toast("商品名称必须为汉字")
return false;
}
if(!reason){
mui.toast('异常原因不能为空');
return false;
}
if (!han.test(reason)) {
mui.toast("异常原因必须为汉字")
return false;
}
if(!ui_gid){
mui.toast('审批人不能为空');
return false;
}
var imgData=getBase64Image(mainImg);
// var data = getBase64Image(img);
console.log(imgData);
var s_id = localStorage.getItem("s_id");
var time = getTime();
var sign = getSign([s_id,time]);
mui.ajax(api_url+"Power/updateImageware",{
data:{
'img':imgData,
's_id':s_id,
'time':time,
'sign':sign,
'ordercode': ordercode,
'goodsname': goodsname,
'reason': reason,
'ui_gid': ui_gid,
},
dataType:'json',//服务器返回json格式数据
type:'post',//HTTP请求类型
timeout:10000,//超时时间设置为10秒;
success:function(data){
if(data.code == 1){
mui.toast(data.message);
}else{
console.log(data.message);
mui.toast(data.message);
}
},
error:function(xhr,type,errorThrown){
if(type=='timeout'){
mui.alert('服务器连接超时,请稍后再试');
}
}
});
}
var images=new Image();
images.src=imgPath;
var imgData=getBase64Image(mainImg);
// var aaa = getBase64Image(mainImg);
console.log(imgData);
// var s_id = localStorage.getItem("s_id");
// var time = getTime();
// var sign = getSign([s_id,time]);
// mui.ajax(api_url+"Kjds/updateImage",{
// data:{
// 'img':imgData,
// 's_id':s_id,
// 'time':time,
// 'sign':sign
// },
// dataType:'json',//服务器返回json格式数据
// type:'post',//HTTP请求类型
// timeout:10000,//超时时间设置为10秒;
// success:function(data){
// if(data.code == 1){
// mui.toast(data.message);
// }else{
// console.log(data.message);
// mui.toast(data.message);
// }
// },
// error:function(xhr,type,errorThrown){
// if(type=='timeout'){
// mui.alert('服务器连接超时,请稍后再试');
// }
// }
// });
}
//压缩图片转成base64
function getBase64Image(img){
var canvas = document.createElement("canvas");
canvas.width = img.width;
canvas.height = img.height;
var ctx = canvas.getContext("2d");
ctx.drawImage(img, 0, 0, img.width, img.height);
var dataURL = canvas.toDataURL("image/png");
return dataURL
}
});
//后台接口部分
public function updateImageware(){
if(request()->isPost()){
$s_id=input('s_id');
$time = input('time');
$sign_temp = input('sign');
$ordercode = input('ordercode');
$goodsname = input('goodsname');
$reason = input('reason');
$ui_gid = input('ui_gid');
$sign = check_sign(array($s_id,$time));
//图片
$file = input('img');
if($sign == $sign_temp){
if($file){
$new_file = $this->base64_image_content($file,'public/uploads');
if($new_file){
$url = "http://".$_SERVER['HTTP_HOST'].$new_file;
$orderdata=Db::table('kjds_tb_order')->where(array("to_order_id"=>$ordercode))->find();
if($orderdata){
session_id($s_id);
$uid=Session::get('login_id');
$o_id=$orderdata['to_id'];
$o_gid=$orderdata['o_g_id'];
$datas['sp_oid']= $o_id; //审批订单id
$datas['sp_gid']= $o_gid; //审批商品id
$datas['sp_go_uid']=$uid;//发布用户ID
$datas['sp_to_uid']=$ui_gid;//审批人ID
$datas['sp_con']=$reason;//审批内容
$datas['sp_sptid']=1;//审批类型
$datas['sp_status']=0;//审批状态
$datas['sp_create']=time();//提交时间
$datas['sp_delete']=0;
$datas['sp_goodsname']=$goodsname;
$datas['sp_image']=$url;
$res = Db::table('kjds_approval')->insert($datas);
if($res){
//调用父类记录日志方法,添加操作记录
$whe['u_id']=$uid;
$userdata=Db::table('kjds_user')->where($whe)->find();
$uname=$userdata['u_username'];
$log_con="添加审批";//操作的内容
$log_type="添加";//日志分类
$oid=$o_id;//订单id
$gid=$o_gid;//商品id
$log=parent::setLog($uid,$uname,$log_con,$log_type,$oid,$gid);
if($log){
$result = array(
'code' => 1,
'message' => '图片获取成功',
'filePath'=>$url
);
}else{
$result = array(
'code' => 0,
'message' => '图片获取失败',
);
}
}else{
$result = array(
'code' => 0,
'message' => '添加审批失败',
);
}
}else{
$result = array(
'code' => 0,
'message' => '订单编号不存在!'
);
}
}else{
$result = array(
'code' => 0,
'message' => '上传失败2!'
);
}
}else{
$result = array(
'code' => 0,
'message' => '上传失败1!'
);
}
}else{
$result = array(
'code' => 0,
'message' => '请求错误!'
);
}
return json($result);
}
}