| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456 | 
							- <!doctype html>
 
- <html>
 
- <head>
 
- <meta charset="utf-8">
 
- <meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0" />
 
- <meta name="author" content="siweiyong 2602812659@qq.com"/>
 
- <title>收银台</title>
 
- <link rel="stylesheet" href="scripts/miniui/themes/default/miniui.css">
 
- <link rel="stylesheet" href="layui/css/layui.css" />
 
- <link rel="stylesheet" href="css/common.css">
 
- </head>
 
- <body style="background: #F6F7F9;">
 
- <div class="main">
 
- 	<div class="layui-row">
 
- 		<div class="main_left layui-col-xs12 layui-col-md3">
 
- 			<div class="layui-row">
 
- 				<div class="top">
 
- 					<i class="layui-icon layui-icon-app"></i>商品列表
 
- 				</div>
 
- 				<div class="left_main">
 
- 					<input id="key" class="mini-textbox" placeholder="请输入商品名称" onenter="onKeyEnter"/>
 
-     				<a class="mini-button" onclick="search()">查询</a> 
 
-     				<ul id="tree1" class="mini-tree" url="data/tree.json" showTreeIcon="true" textField="name" idField="id" expandOnLoad="true" onNodeClick="onNodeClick">
 
- 					</ul>
 
- 				</div>
 
- 			</div>
 
- 		</div>
 
- 		<div class="main_right layui-col-xs12 layui-col-md9">
 
- 			<div class="layui-row">
 
- 				<div class="top">
 
- 					<label>商品编码:</label>
 
- 					<div class="layui-input-inline">
 
- 						<input type="text" name="title" required lay-verify="required" placeholder="扫码或手动输入商品编码" autocomplete="off" class="layui-input">
 
- 					</div>
 
- 					<div class="layui-input-inline">
 
- 						<button class="layui-btn layui-btn-primary" style="vertical-align: middle;margin-bottom: 2px;">添加</button>
 
- 					</div>
 
- 				</div>
 
- 				<div class="goods_list">
 
- 					<table class="layui-table">
 
- 						<thead>
 
- 							<tr>
 
- 								<th lay-data="{field:'id'}">商品编码</th>
 
- 								<th lay-data="{field:'name'}">商品名称</th>
 
- 								<th lay-data="{field:'price', edit: 'text'}">零售价(元)</th>
 
- 								<th lay-data="{field:'number', edit: 'text'}">数量</th>
 
- 								<th lay-data="{field:'integral'}">积分</th>
 
- 								<!--<th lay-data="{field:'staff', edit: 'text'}">提成员工</th>-->
 
- 								<th lay-data="{field:'remarks', edit: 'text'}">备注</th>
 
- 								<th lay-data="{field:'operation'}">操作</th>
 
- 							</tr>
 
- 						</thead>
 
- 						<tbody id="myTbody">
 
- 							
 
- 						</tbody>
 
- 					</table>
 
- 				</div>
 
- 				<div class="total ft16">
 
- 					合计:【<span> 消费总金额:<i class="totalMoney">0.00</i> </span>】【<span> 消费总数量:<i class="totalQuantity">0</i> </span>】【 <span> 总积分:<i class="totalIntegral">0</i> </span>】
 
- 				</div>
 
- 				<table class="reading layui-table" lay-even="">
 
- 					<tbody>
 
- 						<tr>
 
- 							<td>会员查找</td>
 
- 							<td colspan="3">
 
- 								<div class="layui-input-inline">
 
- 									<input type="text" class="layui-input" placeholder="扫描或者手动输入会员卡号" />
 
- 								</div>
 
- 								<button class="card_reading layui-btn">读卡</button>
 
- 								<a href="#" class="registration layui-btn layui-btn-primary">会员登记</a>
 
- 							</td>
 
- 						</tr>
 
- 						<tr>
 
- 							<td>会员卡号:</td>
 
- 							<td></td>
 
- 							<td>会员姓名:</td>
 
- 							<td></td>
 
- 						</tr>
 
- 						<tr>
 
- 							<td>会员级别:</td>
 
- 							<td></td>
 
- 							<td>有效期:</td>
 
- 							<td></td>
 
- 						</tr>
 
- 						<tr>
 
- 							<td>可用积分:</td>
 
- 							<td></td>
 
- 							<td>可用储值:</td>
 
- 							<td></td>
 
- 						</tr>
 
- 					</tbody>
 
- 				</table>
 
- 				<div class="towbtn">
 
- 					<input type="submit" id="settlement" value="结算">
 
- 					<input type="reset" value="清空" />
 
- 				</div>
 
- 			</div>
 
- 		</div>
 
- 	</div>
 
- </div>
 
- <div class="mask_box">
 
- 	<div class="mask"></div>
 
- 	<div class="box">
 
- 		<div class="box_top">结算</div>
 
- 		<div class="box_block box_block1">
 
- 			<div class="block_left"><label for="">应付金额:</label></div>
 
- 			<div class="block_right"><input type="text" class="layui-input" value="23131" readonly style="border: none;" /></div>
 
- 		</div>
 
- 		<div class="box_block box_block2">
 
- 			<div class="block_left"><input type="checkbox" name="" />优惠券:</div>
 
- 			<div class="block_right">
 
- 				<select class="layui-select" name="" id="">
 
- 					<option value="0">请选择</option>
 
- 					<option value="1">1</option>
 
- 					<option value="2">2</option>
 
- 					<option value="3">3</option>
 
- 					<option value="4">4</option>
 
- 				</select>
 
- 			</div>
 
- 			<div class="block_left">还需支付:</div>
 
- 			<div class="block_right"><input type="text" class="layui-input" value="32432" readonly style="border: none;" /></div>
 
- 		</div>
 
- 		<div class="box_block box_block3">
 
- 			<div class="block_left"><input type="radio" name="payment" /><label for="use_coupon">现金支付:</label></div>
 
- 			<div class="block_right">
 
- 				<input type="text" class="layui-input" />
 
- 			</div>
 
- 			<br style="clear: both;">
 
- 			<div class="block_left"><input type="radio" name="payment" /><label for="use_coupon">移动支付:</label></div>
 
- 			<div class="block_right">
 
- 				<input type="text" class="layui-input" />
 
- 			</div>
 
- 			<br style="clear: both;">
 
- 			<div class="block_left"><input type="radio" name="payment" /><label for="use_coupon">其他支付:</label></div>
 
- 			<div class="block_right">
 
- 				<input type="text" class="layui-input" />
 
- 			</div>
 
- 		</div>
 
- 		<div class="remark_mess">
 
- 			<div class="block_left">
 
- 				备注:
 
- 			</div>
 
- 			<div class="block_right">
 
- 				<textarea class="layui-textarea" name="" rows="" cols="" maxlength="200" placeholder="最多输入200字符"></textarea>
 
- 			</div>
 
- 			<br style="clear: both;">
 
- 			<div class="block_left">
 
- 				交易时间:
 
- 			</div>
 
- 			<div class="block_right">
 
- 				<input type="text" value="2018-11-23 08:23:43" class="layui-input" readonly style="border: none;" />
 
- 			</div>
 
- 		</div>
 
- 		<div class="bot">
 
- 			<input type="submit" value="提交">
 
- 			<input type="text" value="取消">
 
- 		</div>
 
- 	</div>
 
- </div>
 
- <script src="http://www.jq22.com/jquery/jquery-2.1.1.js"></script>
 
- <script src="scripts/miniui/miniui.js"></script>
 
- <script src="layui/layui.js"></script>
 
- <script>
 
- 	$(function() {
 
- 		$("#settlement").click(function(){
 
- 			$(".mask_box").show();
 
- 		})
 
- 		$(".bot input:nth-child(2)").click(function(){
 
- 			$(".mask_box").hide();
 
- 		})
 
- 	})
 
- 	
 
- 	/*miniui - tree 插件 - 开始*/
 
- 	mini.parse();
 
-     var tree = mini.get("tree1");
 
-     function search() {
 
-         var key = mini.get("key").getValue();
 
-         if (key == "") {
 
-             tree.clearFilter();
 
-         } else {
 
-             key = key.toLowerCase();                
 
-             tree.filter(function (node) {
 
-                 var name = node.name ? node.name.toLowerCase() : "";
 
-                 if (name.indexOf(key) != -1) {
 
-                     return true;
 
-                 }
 
-             });
 
-         }
 
-     }
 
-     function onKeyEnter(e) {
 
-         search();
 
-     }
 
-     var totalQuantity = 0;    //总数量
 
- 	var totalMoney = 0;       //总金额
 
- 	var totalIntegral = 0;    //总积分
 
- 	function onNodeClick(){  
 
- 		//获取选中节点的值
 
- 		var flag = false;
 
-   		var tree=mini.get("tree1");
 
-         node=tree.getSelectedNode();
 
-   		
 
-   		if(node.end){
 
-   			/*树结构选中商品,table列表变化 - 开始*/
 
- 	        totalQuantity++;
 
- 	        $('.totalQuantity').html(totalQuantity);
 
- 	        
 
- 	        this_price = node.price; //获取单价
 
- 	        this_price = parseFloat(this_price);
 
- 	        totalMoney += this_price;
 
- 	        $('.totalMoney').html(totalMoney.toFixed(2));
 
- 	        
 
- 	        this_integral = node.integral; //获取积分  
 
- 	        this_integral = parseFloat(this_integral);
 
- 	        totalIntegral += this_integral;
 
- 	        $('.totalIntegral').html(totalIntegral.toFixed(0));
 
-   			/*树结构选中商品,table列表变化 - 结束*/
 
-   			
 
-   			if($("#myTbody tr").length <= 0){
 
-   				var addtr = '<tr class="mytr">';
 
- 				addtr += '<td>'+node.id+'</td>';
 
- 				addtr += '<td>'+node.name+'</td>'	;					
 
- 				addtr += '<td class="kbj danjia">'+node.price+'</td>';
 
- 				addtr += '<td class="numberTd"><div class="jiajian"><span class="jian" onclick="num_sub(this)">-</span><input type="text" value="1" class="num"><span class="jia" onclick="num_add(this)">+</span></div></td>';
 
- 				addtr += '<td class="jifen">'+node.integral+'</td>';						
 
- 				addtr += '<td class="kbj remarks"></td>';						
 
- 				addtr += '<td><button class="delete_btn">删除</button></td>';						
 
- 				addtr += '</tr>';
 
- 				$("#myTbody").append(addtr);
 
- 				return;
 
-   			}else{          
 
- 				$("#myTbody tr").each(function () {
 
-                     //找到商品的名称与上面获取到的商品名称进行对比
 
-                     if ($(this).children("td:eq(0)").html() == node.id) {
 
-                         //找到此商品的数量
 
-                         var count = parseInt($(this).children("td:eq(3)").find("input").val());
 
-                         count++;
 
-                         $(this).children("td:eq(3)").find("input").val(count); //对商品的数量进行重新赋值
 
- 						flag = true;
 
-                         return false;
 
-                     }else {
 
-                         flag = false;
 
-                     }
 
-                 })
 
-   			}
 
- 			//如果为默认值也就是说里面没有此商品,所以添加此商品。
 
- 			if (flag == false) {
 
- 				var addtr = '<tr class="mytr">';
 
- 				addtr += '<td>'+node.id+'</td>';
 
- 				addtr += '<td>'+node.name+'</td>'	;					
 
- 				addtr += '<td class="danjia">'+node.price+'</td>';
 
- 				addtr += '<td><div class="jiajian"><span class="jian" onclick="num_sub(this)">-</span><input type="text" value="1" class="num"><span class="jia" onclick="num_add(this)">+</span></div></td>';
 
- 				addtr += '<td class="jifen">'+node.integral+'</td>';						
 
- 				addtr += '<td class="remarks"></td>';						
 
- 				addtr += '<td><button class="delete_btn">删除</button></td>';						
 
- 				addtr += '</tr>';
 
- 				$("#myTbody").append(addtr);
 
- 			}
 
-   		}
 
- 	}
 
- 	/*miniui - tree 插件 - 结束*/
 
- 	
 
- 	//加的效果 
 
- 	function num_add(on_this){
 
- 		
 
- 		var totalQuantity = 0;    //总数量
 
- 		var totalMoney = 0;       //总金额
 
- 		var totalIntegral = 0;    //总积分
 
- 		$("#myTbody tr").each(function(){
 
- 			
 
- 	        //获取当前行的单价
 
- 	        this_price = $(this).children(".danjia").text();
 
- 	        this_price = parseFloat(this_price);
 
- 	        
 
- 	        //获取当前行的积分
 
- 	        this_integral = $(this).children(".jifen").text();
 
-         	this_integral = parseFloat(this_integral);
 
-         	
 
-         	//获取当前行的数量
 
-         	this_num = $(this).find(".num").val();
 
-         	this_num = parseInt(this_num);
 
-         	
 
-         	//获取当前行的总价格、总积分
 
-         	var trmoney = this_price*this_num;
 
-         	var trIntegral = this_integral*this_num;
 
-         	
 
-         	//总金额、总数量、总积分
 
-         	totalQuantity += this_num*1;   //总数量
 
-         	totalMoney += trmoney*1        //总金额
 
-         	totalIntegral += trIntegral*1  //总积分
 
- 		}) 
 
- 		$(".totalQuantity").html(totalQuantity);
 
- 		$(".totalMoney").html(totalMoney); 
 
- 		$(".totalIntegral").html(totalIntegral);
 
- 		
 
-         this_price = $(on_this).parents("td").siblings("td.danjia").text();//获取单价
 
-         this_price = parseFloat(this_price);
 
-         console.log(totalMoney);
 
-         totalMoney += this_price;
 
-         $('.totalMoney').html(totalMoney.toFixed(2));
 
-         console.log(totalMoney);
 
-         
 
-         this_integral = $(on_this).parents("td").siblings("td.jifen").text();//获取积分  
 
-         this_integral = parseFloat(this_integral);
 
-         totalIntegral += this_integral;
 
-         $('.totalIntegral').html(totalIntegral.toFixed(0));
 
- 		
 
- 		//当前商品数量
 
-         this_num = $(on_this).siblings('.num');
 
-         var get_this_num = parseInt(this_num.val())+1;
 
-         this_num.val(get_this_num);
 
-         
 
-         totalQuantity++;
 
-         $('.totalQuantity').html(totalQuantity);
 
-     }
 
- 	
 
- 	//减的效果  
 
- 	function num_sub(on_this){
 
-         
 
-         var totalQuantity = 0;    //总数量
 
- 		var totalMoney = 0;       //总金额
 
- 		var totalIntegral = 0;    //总积分
 
- 		$("#myTbody tr").each(function(){
 
- 			
 
- 	        //获取当前行的单价
 
- 	        this_price = $(this).children(".danjia").text();
 
- 	        this_price = parseFloat(this_price);
 
- 	        
 
- 	        //获取当前行的积分
 
- 	        this_integral = $(this).children(".jifen").text();
 
-         	this_integral = parseFloat(this_integral);
 
-         	
 
-         	//获取当前行的数量
 
-         	this_num = $(this).find(".num").val();
 
-         	this_num = parseInt(this_num);
 
-         	
 
-         	//获取当前行的总价格、总积分
 
-         	var trmoney = this_price*this_num;
 
-         	var trIntegral = this_integral*this_num;
 
-         	
 
-         	//总金额、总数量、总积分
 
-         	totalQuantity += this_num*1;   //总数量
 
-         	totalMoney += trmoney*1        //总金额
 
-         	totalIntegral += trIntegral*1  //总积分
 
- 		}) 
 
- 		$(".totalQuantity").html(totalQuantity);
 
- 		$(".totalMoney").html(totalMoney); 
 
- 		$(".totalIntegral").html(totalIntegral);
 
-         
 
-         //当前商品数量
 
-         this_num = $(on_this).siblings('.num');
 
-         if(this_num.val() <= 1){
 
-             this_num.siblings('.jian').removeAttr('onclick');
 
-             return;
 
-         }else{
 
-         	var get_this_num = this_num.val()-1;
 
- 	        this_num.val(get_this_num);
 
- 	        
 
- 	        this_price = $(on_this).parents("td").siblings("td.danjia").text();//获取单价
 
- 	        totalMoney -= this_price;
 
- 	        $('.totalMoney').html(totalMoney.toFixed(2));
 
- 	        
 
- 	        this_integral = $(on_this).parents("td").siblings("td.jifen").text();//获取积分  
 
- 	        totalIntegral -= this_integral;
 
- 	        $('.totalIntegral').html(totalIntegral.toFixed(0));
 
- 	        
 
- 	        totalQuantity--;
 
- 	        $('.totalQuantity').html(totalQuantity);	
 
-         }
 
-     }
 
- 	
 
- 	//输入商品数量时改变合计的内容
 
- 	$("#myTbody").on("keyup",".num",function(){
 
- 		if($(this).val()==''){
 
-             $(this).val('1');
 
-         }
 
-         $(this).val($(this).val().replace(/\D|^0/g,''));
 
- 		setTotal();	
 
- 	})
 
- 	
 
- 	//点击 - 备注 - 可编辑
 
- 	$("#myTbody").on("click","td.remarks",function(){
 
- 		if(!$(this).is('.bj')){       
 
- 			$(this).addClass('bj').html('<textarea class="layui-textarea" value="'+$(this).val()+'" />').find('textarea').focus().blur(function(){$(this).parent().removeClass('bj').html($(this).val())});    
 
- 		} 
 
- 	})
 
- 	
 
- 	//点击 - 单价 - 可编辑
 
- 	$("#myTbody").on("click","td.danjia",function(){
 
- 		if(!$(this).is('.bj')){   
 
- 			var currentPrice = $(this).html();
 
- 			$(this).focus();
 
- 			$(this).addClass('bj').html('<input type="tel" class="layui-input" value="'+$(this).text()+'" />').find('input').focus().blur();    
 
- 		} 
 
- 	})
 
- 	//输入商品价格时改变合计的内容
 
- 	$("#myTbody").on("change",".danjia input",function(){
 
- 		var $this = $(this).val();
 
- 		var reg = /^(([1-9]+)|([0-9]+\.[0-9]{1,2}))$/;
 
- 		if(!reg.test($this)){
 
- 			alert("请输入非负浮点数");
 
- 			$(this).parent().removeClass('bj').html($this||"1.00");
 
- 			$(this).val(currentPrice);
 
- 	    }else{
 
- 	    	$(this).parent().removeClass('bj').html($this||"1.00");
 
- 		 	setTotal();
 
- 		}
 
- 	})
 
- 	
 
- 	//table tr 点击删除
 
- 	$("#myTbody").on("click",".delete_btn",function(){
 
- 		if($("#myTbody tr").length < 1){
 
- 			$(".totalQuantity").html("0");
 
- 			$(".totalMoney").html("0"); 
 
- 			$(".totalIntegral").html("0");
 
- 			return;
 
- 		}
 
- 		
 
- 		$(this).parents("#myTbody tr").remove();
 
- 		setTotal();
 
- 	})
 
- 	
 
- 	function setTotal(){
 
- 		var totalQuantity = 0;    //总数量
 
- 		var totalMoney = 0;       //总金额
 
- 		var totalIntegral = 0;    //总积分
 
- 		$("#myTbody tr").each(function(){
 
- 			
 
- 	        //获取当前行的单价
 
- 	        this_price = $(this).children(".danjia").text();
 
- 	        this_price = parseFloat(this_price);
 
- 	        
 
- 	        //获取当前行的积分
 
- 	        this_integral = $(this).children(".jifen").text();
 
-         	this_integral = parseFloat(this_integral);
 
-         	
 
-         	//获取当前行的数量
 
-         	this_num = $(this).find(".num").val();
 
-         	this_num = parseInt(this_num);
 
-         	
 
-         	//获取当前行的总价格、总积分
 
-         	var trmoney = this_price*this_num;
 
-         	var trIntegral = this_integral*this_num;
 
-         	
 
-         	//总金额、总数量、总积分
 
-         	totalQuantity += this_num*1;   //总数量
 
-         	totalMoney += trmoney*1        //总金额
 
-         	totalIntegral += trIntegral*1  //总积分
 
- 		}) 
 
- 		$(".totalQuantity").html(totalQuantity);
 
- 		$(".totalMoney").html(totalMoney); 
 
- 		$(".totalIntegral").html(totalIntegral);
 
- 	}
 
- </script>
 
- </body>
 
- </html>
 
 
  |