淘现场详情页

对于一个购物类App来说,商品和购物车部分十分重要。在《海外购》App中,卖家每次可发布一个淘现场(相当于店铺),一个淘现场至少要发布3件商品。而进入淘现场中,里面有个功能——帮忙看。解释一下,如果某个淘现场是某家品牌店,但是买家想要的商品不在卖家发出的商品里,那么这时可以让卖家在店里帮忙购买,买家点击帮忙看即可发布现场帮忙看请求,卖家可以进行回复。

现场详情效果图:


1、根据不同状态显示商品的操作,代码如下:

if(userId==null){
changehtml='';
}else if(minusMy<0){
changehtml='<div class="over1" style="margin-top:.35em;margin-left: 12%">已结束</div>'; 
}else if(offShelf==true){
changehtml='<div class="over1" style="margin-top:.35em;margin-left: 12%">已下架</div>'; 
}else if(count==0){
changehtml='<div class="over1" style="margin-top:.35em;margin-left: 12%">已售罄</div>';    
}else{
changehtml='<div class="btnblue" id="addcart" style="margin-top:.35em;margin-left: 8%" onclick="addcart('+"'"+img_id+"'"+');">加入购物车</div>'; 
}

2、点击添加购物车,代码如下:

var flag=true;
function addcart(id){ 
// alert(userId+","+sellerId);
if(userId==sellerId){
var alertcontent="不能购买自己发布的商品!";
appcan.locStorage.setVal("alertcontent",alertcontent);
appcan.frame.open("alertPop","alertPop.html");
return;
}else{
if(flag){
$("#addcart").css("background-color","#17a0c7");  
flag=false;
appcan.request.ajax({
url :api+'/api/cart/addItem',
type : 'POST',
dataType : 'json',
data : {
"userId": userId,
"items": {"itemId":id}
},
success : function(data) {
if(data.status == 1){
uexWindow.toast("0", "5", "添加成功", "2000");
uexWindow.evaluatePopoverScript("cart", "content", "shoppingTrolley()");
$("#addcart").css("background-color","#00C1F9");
flag=true;
}  
else{
uexWindow.toast("0", "5", "添加失败", "2000");
$("#addcart").css("background-color","#00C1F9");
flag=true;
}                
},
error : function(errMessage) {
//alert("errMessage:"+JSON.stringify(errMessage)); 
$("#addcart").css("background-color","#00C1F9");
flag=true;                        
}
}) 
}
}
}

3、点击帮忙看,跳出输入框,发布现场帮忙看,代码如下:

function helplo(){
var minusMy=appcan.locStorage.getVal("minusMy");
var have_input=$("#hlo").next().is(".uinput13"); 
if(userId==null){
appcan.window.open("login","../login.html",16);
}else if(minusMy<0){
var alertcontent="淘现场已经结束!";
appcan.locStorage.setVal("alertcontent",alertcontent);
appcan.frame.open("alertPop","alertPop.html");
}else if(!have_input){
var html="";
var i="hl";
html+='<div class="ub uinput13" id="consult" style="height: 2.35em;width:96%;background-color: #FFFFFF;padding:.5em 2%;border-top: 1px solid #DDDDDD;margin-top: 2em;position: fixed;bottom: 0">'
+'<img src="../image/Picture-50.png" id="imghl" onclick="choose('+"'"+i+"'"+')" style="width:2.5em;height: 2.5em;margin:.05em" />'
+'<input type="text" onblur="hide()" id="inputtext" placeholder="回复"/>'
+'<button class="send" onclick="send();this.disabled = true;">发送</button>'
+'</div>';
$("#hlo").after(html); 
$("#inputtext").focus(); 
uexWindow.showSoftKeyboard(); 
}
}

4、如果是卖家,不显示帮忙看按钮,可以点击买家发布的帮忙看信息,跳出恢复输入框,回复买家,代码如下:

function replyshoplive(id,i) {
var have_input=$("#reply"+i).next().is(".uinput13");
var minusMy=0;//appcan.locStorage.getVal("minusMy");
if(minusMy<0){
var alertcontent="淘现场已经结束!";
appcan.locStorage.setVal("alertcontent",alertcontent);
appcan.frame.open("alertPop","alertPop.html");
}else if(!have_input){               
$(".uinput13").remove(); 
var rhtml="";
rhtml+='<div class="ub uinput13" style="padding:.7em .5em ">'
+'<img src="../image/Picture-50.png" id="img'+i+'" onclick="choose('+i+')" style="width:2.5em;height: 2.5em;margin:.05em" />'
+'<input type="text" id="inputtext'+i+'" placeholder="回复"/>'    // onblur="hide('+i+');"           
+'<button class="send" onclick="sendr('+"'"+id+"'"+','+i+');this.disabled = true;">发送</button>'
+'</div>';
$("#reply"+i).after(rhtml);  
$("#inputtext"+i).focus(); 
uexWindow.showSoftKeyboard(); 
}                 
}

5、现场帮忙看及回复信息的时间判断并显示,代码如下:

function judgetime(time){
var today=new Date();
var nowtime=parseInt(today.getTime()/1000);       
var overtime=moment(time, 'YYYY-MM-DDTHH:mm:ss.sssZ');
var deadline=overtime.unix();
var minus=nowtime-deadline;
if((minus/86400)>1){   
var ctime=new Date(time);   
var yy=ctime.getFullYear();
var MM=ctime.getMonth()+1;
var dd=ctime.getDate();  
ztime= yy+"-"+MM+"-"+dd; 
}else if((minus/3600)>1){
var hh=parseInt(minus/3600);
ztime=hh+"小时前";     
}else if((minus/60)>1){
var mm=parseInt(minus/60);
ztime=mm+"分钟前";          
}else{
ztime="0分钟前";
}            
}
还需要帮助吗? 联系我们
最新更新 18th Nov 2016