Explorar el Código

手机端客户验收单列表、手机端客户验收单详情、手机端客户验退单列表、手机端客户验退单详情

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@1930 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d
zhangzl hace 10 años
padre
commit
c08dc7ba77

+ 180 - 1
src/main/webapp/resources/js/index/mobile.index.app.js

@@ -28,6 +28,14 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ui.
 			url : "/notice",
 			templateUrl : "static/tpl/index_mobile/sale/notice_list.html",
 			controller: 'SaleNoticeListCtrl'
+		}).state('sale.accept', {// 销售,验收单列表
+			url : "/accept",
+			templateUrl : "static/tpl/index_mobile/sale/accept_list.html",
+			controller: 'SaleAcceptListCtrl'
+		}).state('sale.return', {// 销售,退货单列表
+			url : "/return",
+			templateUrl : "static/tpl/index_mobile/sale/return_list.html",
+			controller: 'SaleReturnListCtrl'
 		}).state('sale.order_detail', {// 销售,订单详情
 			url : "/order/:id",
 			templateUrl : "static/tpl/index_mobile/sale/order_detail.html",
@@ -44,7 +52,15 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ui.
 			url: '/notice/:id',
 			templateUrl: 'static/tpl/index_mobile/sale/notice_detail.html',
 			controller: 'SaleNoticeCtrl'
-		});
+		}).state('sale.accept_detail', {// 销售,验收单详情
+			url: '/accept/:id',
+			templateUrl: 'static/tpl/index_mobile/sale/accept_detail.html',
+			controller: 'SaleAcceptCtrl'			
+		}).state('sale.return_detail', {// 销售,退货单详情
+			url: '/return/:id',
+			templateUrl: 'static/tpl/index_mobile/sale/return_detail.html',
+			controller: 'SaleReturnCtrl'
+			})		
 	}]);
 	
 	app.factory('StatusCode', function(){
@@ -688,8 +704,171 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ui.
 				$scope.logShow = false;
 			}
 		};
+	}]);
+
+	/**
+	 * 客户验收单列表*/
+	app.controller('SaleAcceptListCtrl',['$scope','BaseService','PurcAccept','toaster',function($scope,BaseService,PurcAccept,toaster){
+		$scope.data = {};// 列表数据				
+		var pageParams = {// 页面参数
+			page : 1,
+			count : 5,
+			sorting: {
+                date: 'desc'
+            }		
+          };
+        
+		// 加载数据
+		var getData = function(add) {
+			$scope.loading = true;
+			PurcAccept.getAll(BaseService.parseParams(pageParams),null,function(data){
+				if(add) {
+					data.content = $scope.data.content.concat(data.content);
+					$scope.data = data;
+				} else {
+					$scope.data = data;
+					console.log($scope.data);
+				}
+				$scope.loading = false;
+			}, function(response){
+				$scope.loading = false;
+				toaster.pop('error', '加载数据失败', response.data);
+			});
+		};
+         
+		getData();//初始获取数据
+		
+		$scope.getMoreData = function() {
+			pageParams.page ++;
+			getData(true);
+		};
+		
+		// 获取物料种类数
+		$scope.getProdKind = function(accept) {
+			var kind = 0;
+			angular.forEach(accept.acceptItems, function(item){
+				kind = item.number;
+			});
+			return kind; 
+		};
+		
+		// 获取物料总数
+		$scope.getProdCount = function(accept) {
+			var count = 0;
+			angular.forEach(accept.acceptItems, function(item){
+				count += (item.qty || 0);
+			});
+			return count;
+		};
+
+
+	}]);
+	
+	/** 
+	 * 客户验收单详情
+	 */
+	app.controller('SaleAcceptCtrl',['$scope','$stateParams','PurcAccept','Symbol','toaster',function($scope,$stateParams,PurcAccept,Symbol,toaster){
+		$scope.loading = true;
+		$scope.symbol = Symbol.currency;//把币别转化为符号
 		
+		PurcAccept.get({id:$stateParams.id}, function(data){
+				$scope.accept = data;
+				$scope.loading = false;
+			},function(response){
+				$scope.loading = false;
+				toaster.pop('error', '加载失败', response.data);
+		});
 		
+		//查看更多
+		$scope.page = 1;
+		$scope.count = 4;
+		$scope.showMore = function(length){
+			length = $scope.accept.acceptItems.length;					
+			$scope.page ++;
+		}
+
+	}]);
+
+	/**
+	 * 客户验退单列表
+	 */
+	app.controller('SaleReturnListCtrl',['$scope','BaseService','PurcReturn','toaster',function($scope,BaseService,PurcReturn,toaster){
+		$scope.data = {};// 列表数据				
+		var pageParams = {// 页面参数
+			page : 1,
+			count : 5,
+			sorting: {
+                date: 'desc'
+            }		
+          };
+        
+		// 加载数据
+		var getData = function(add) {
+			$scope.loading = true;
+			PurcReturn.getAll(BaseService.parseParams(pageParams),null,function(data){
+				if(add) {
+					data.content = $scope.data.content.concat(data.content);
+					$scope.data = data;
+				} else {
+					$scope.data = data;
+					console.log($scope.data);
+				}
+				$scope.loading = false;
+			}, function(response){
+				$scope.loading = false;
+				toaster.pop('error', '加载数据失败', response.data);
+			});
+		};
+         
+		getData();
+		
+		$scope.getMoreData = function() {
+			pageParams.page ++;
+			getData(true);
+		};
+		
+		// 获取物料种类数
+		$scope.getProdKind = function(returns) {
+			var kind = 0;
+			angular.forEach(returns.returnItems, function(item){
+				kind = item.number;
+			});
+			return kind; 
+		};
+		
+		// 获取物料总数
+		$scope.getProdCount = function(returns) {
+			var count = 0;
+			angular.forEach(returns.returnItems, function(item){
+				count += (item.qty || 0);
+			});
+			return count;
+		};
+	}])
+
+	
+	/**
+	 * 客户验退单详情
+	 * */
+	app.controller('SaleReturnCtrl',['$scope','$stateParams','PurcReturn','Symbol','toaster',function($scope,$stateParams,PurcReturn,Symbol,toaster){
+		$scope.symbol = Symbol.currency;//把币别转化为符号
+		$scope.loading = true;
+		PurcReturn.get({id:$stateParams.id},function(data){
+			$scope.returns = data;
+			$scope.loading = false;
+		},function(response) {
+			$scope.loading = false;
+			toaster.pop('error', '加载失败', response.data);
+		});
+		
+		//点击加载更多
+		$scope.page = 1;
+		$scope.count = 4;
+		$scope.showMore = function(length){
+			length = $scope.accept.acceptItems.length;					
+			$scope.page ++;
+		}
+
 	}]);
 	return app;
 });

+ 2 - 0
src/main/webapp/resources/js/index/services/Purc.js

@@ -204,9 +204,11 @@ define([ 'ngResource'], function() {
 		});
 	}]).factory('PurcAccept', ['$resource', function($resource) {
 		return $resource('sale/accept/:id', {}, {
+			getAll: {}
 		});
 	}]).factory('PurcReturn', ['$resource', function($resource) {
 		return $resource('sale/return/:id', {}, {
+			getAll: {}
 		});
 	}]).factory('PurcBadIn', ['$resource', function($resource) {
 		return $resource('sale/badIn/:id', {}, {

+ 153 - 0
src/main/webapp/resources/tpl/index_mobile/sale/accept_detail.html

@@ -0,0 +1,153 @@
+<style>
+	h4 {
+		margin:0;
+		line-height: 30px;
+	}
+	
+	.top1 {
+		height: 50px;
+		font-family: Microsoft Yahei;
+		line-height: 50px;
+		}
+	
+	.order {
+		position: relative;
+		margin-bottom: 0;
+		background: #eff2f9;
+	}
+	
+	.orderInfo {
+		padding: 18px 0;
+	}
+	
+	.order .order-line {
+		background: #ffffff;
+		margin-bottom: 44px;
+		padding: 0 15px;
+		line-height: 44px;
+	}
+	
+	.middle-border {
+		border-top: solid 1px #CCCCCC;
+		margin: 0;
+	}
+	
+	.margin0 {
+		margin:0;
+	}
+	.morebtn {
+		width: 100%;
+		text-align: center;
+		padding-bottom: 44px;
+	}
+			
+	.orderId-color {
+		color: green;
+	}
+
+	.oi-margin {
+		margin-left: -20px;
+	}
+</style>
+<div class="order row">
+	<!-- loading start -->
+	<div class="loading in col-xs-12" ng-class="{'in': loading}">
+		<i></i>
+	</div>
+	<!-- loading end -->
+	<div class="col-xs-12">
+		<!-- title start -->
+		<div class="row">
+			<div class="top1 bold col-xs-12">
+				<a ui_sref="sale.accept" class="topText f16">&nbsp;<i
+					class="fa fa-angle-left"></i>&nbsp;订单详情
+				</a>
+			</div>
+		</div>
+		<!-- title end -->
+		<!-- order headInfo start -->
+		<h4 class="orderInfo row">
+			<div class="col-xs-12">
+				<div class="row ">
+					<div class="col-xs-5 text-black text-right">单据时间:</div>
+					<div class="col-xs-7 oi-margin">{{accept.date|date:"yyyy-MM-dd"}}</div>
+				</div>
+			</div>
+			<div class="col-xs-12">
+				<div class="row">
+					<div class="col-xs-5 text-black text-right">客户:</div>
+					<div class="col-xs-7  oi-margin">{{accept.acceptItems[0].orderItem.order.enterprise.enName}}</div>
+				</div>
+			</div>
+			<div class="col-xs-12">
+				<div class="row">
+					<div class="col-xs-5 text-black text-right">验收单号:</div>
+					<div class="col-xs-7 oi-margin">{{accept.code}}</div>
+				</div>
+			</div>
+			<div class="col-xs-12" ng-if="accept.sendCode">
+				<div class="row">
+					<div class="col-xs-5 text-black text-right">送货单号:</div>
+					<div class="col-xs-7 oi-margin">{{accept.sendCode}}</div>
+				</div>
+			</div>
+		</h4>
+		<!-- order headInfo end -->
+		<!-- order detailInfo start -->
+		<div class="order-line row f16" ng-repeat="item in accept.acceptItems "
+			ng-if="$index<page*count">
+			<div class="col-xs-10 text-num bold  text-left text-primary">{{item.orderItem.product.code}}</div>
+			<div class="row text-left margin0">
+				<div class="col-xs-1">
+					<label class="text-black"><i style="color: #339999;"
+						class="fa fa-newspaper-o"></i></label>
+				</div>
+			</div>
+			<div class="row margin0">
+				<div class="col-xs-12">{{item.orderItem.product.title}}</div>
+			</div>
+			<div class="row text-muted margin0">
+				<div class="col-xs-12">{{item.orderItem.product.spec}}</div>
+			</div>
+			<div class="row middle-border">
+				<div class="col-xs-5">采购单价</div>
+				<div class="col-xs-7 text-right text-muted">{{item.orderPrice|number:6}} {{item.orderItem.order.currency}}</div>
+			</div>
+			<div class="row middle-border">
+				<div class="col-xs-5">税率</div>
+				<div class="col-xs-7 text-right text-muted">{{item.taxrate}}%</div>
+			</div>
+			<div class="row middle-border">
+				<div class="col-xs-5">验收数量</div>
+				<div class="col-xs-7 text-right">
+					<span class="text-muted">{{item.qty}}</span> <span
+						class="text-muted">{{item.orderItem.product.unit}}</span>
+				</div>
+			</div>
+			<div class="row middle-border">
+				<div class="col-xs-5">入库批号</div>
+				<div class="col-xs-7 text-right text-muted">{{item.batchCode}}</div>
+			</div>
+			<div class="row middle-border">
+				<div class="col-xs-5">单据编号</div>
+				<div class="col-xs-7 text-right">
+					<a class="orderId-color"
+						ui-sref="sale.order_detail({id:item.orderItem.order.id})">{{item.orderItem.order.code}}</a>
+				</div>
+			</div>
+			<div class="row middle-border">
+				<div class="col-xs-5">第 {{item.orderItem.number}} 行</div>
+				<div class="col-xs-7 text-right text-muted">数量
+					{{item.orderItem.qty}}</div>
+			</div>
+		</div>
+		<!-- order headInfo end -->
+		<div class="row f16">
+			<div class="col-xs-12 morebtn">
+				<div ng-click="showMore()"
+					ng-if="accept.acceptItems.length > page*count">点击加载更多&gt;&gt;</div>
+				<div ng-if="!(accept.acceptItems.length > page*count)">已加载全部</div>
+			</div>
+		</div>
+	</div>
+</div>

+ 75 - 0
src/main/webapp/resources/tpl/index_mobile/sale/accept_list.html

@@ -0,0 +1,75 @@
+<style>
+/* title */
+.title {
+	padding-bottom: 10px;
+	border-bottom: solid 1px #e8e8e8;
+	margin-bottom: 0;
+}
+
+/* order */
+.order {
+	position: relative;
+	margin-bottom: 0;
+	padding-top: 10px;
+	background: #eff2f9;
+}
+
+.order .order-line {
+	background: #ffffff;
+	margin-bottom: 10px;
+}
+
+.order .order-line:HOVER, .order .order-line:ACTIVE {
+	background: #d7d7d7;
+}
+
+</style>
+<!-- loading start -->
+<div class="loading in" ng-class="{'in': loading}">
+	<i></i>
+</div>
+<!-- loading end -->
+
+<div class="row">
+	<!-- title start -->
+	<h4 class="title col-xs-12">
+		<a ui-sref="index"><i class="fa fa-angle-left fa-lg"></i>&nbsp;&nbsp;客户采购验收单</a>
+	</h4>
+	<!-- title end -->
+</div>
+
+<!-- order list start -->
+<ul class="list-group order row" ng-if="data.content">
+	<li class="list-group-item col-xs-12 order-line"
+		ng-repeat="accept in data.content"
+		ui-sref="sale.accept_detail({id:accept.id})">
+		<div class="row">
+			<div class="col-xs-8 text-num text-inverse">{{accept.code}}</div>
+			<div class="col-xs-4 text-muted f12 text-right">{{accept.date |
+				date:'MM月dd日'}}</div>
+		</div>
+		<div class="row">
+			<div class="col-xs-12 f14 text-light">
+				<span>{{accept.acceptItems[0].orderItem.order.enterprise.enName}}</span>
+			</div>
+			<div class="col-xs-12 f14">
+				<i class="fa fa-cube text-primary"></i> <span
+					ng-repeat="item in accept.acceptItems" ng-if="$index<5"> <span
+					class="text-primary" ng-bind="item.orderItem.product.code"></span><span
+					ng-if="!$last && $index<4">、</span>
+				</span>等 <span class="text-default">{{getProdKind(accept)}}</span> 类,共 <span
+					class="text-default">{{getProdCount(accept)}}</span> 件商品
+			</div>
+		</div>
+	</li>
+	<li ng-if="data.number < data.totalPages"
+		class="list-group-item col-xs-12 text-center" ng-click="getMoreData()">
+		{{data.content.length}}/{{data.totalElements}}<br> 点击加载更多单据...
+	</li>
+	<li ng-if="data.number >= data.totalPages"
+		class="list-group-item col-xs-12 text-center">
+		{{data.content.length}}/{{data.totalElements}}<br> 已加载全部
+	</li>
+</ul>
+<!-- order list end -->
+

+ 153 - 0
src/main/webapp/resources/tpl/index_mobile/sale/return_detail.html

@@ -0,0 +1,153 @@
+<style>
+	h4 {
+		margin:0;
+		line-height: 30px;
+	}
+	
+	.top1 {
+	height: 50px;
+	font-family: Microsoft Yahei;
+	line-height: 50px;
+		}
+	
+	.order {
+		position: relative;
+		margin-bottom: 0;
+		background: #eff2f9;
+	}
+	
+	.orderInfo {
+		padding: 18px 0;
+	}
+	
+	.order .order-line {
+		background: #ffffff;
+		margin-bottom: 44px;
+		padding: 0 15px;
+		line-height: 44px;
+	}
+	
+	.middle-border {
+		border-top: solid 1px #CCCCCC;
+		margin: 0;
+	}
+	
+	.margin0 {
+		margin:0;
+	}
+	.morebtn {
+		width: 100%;
+		text-align: center;
+		padding-bottom: 44px;
+	}
+			
+	.orderId-color {
+		color: green;
+	}
+
+	.oi-margin {
+		margin-left: -20px;
+	}
+</style>
+<div class="order row">
+	<!-- loading start -->
+	<div class="loading in col-xs-12" ng-class="{'in': loading}">
+		<i></i>
+	</div>
+	<!-- loading end -->
+	<div class="col-xs-12">
+		<!-- title start -->
+		<div class="row">
+			<div class="top1 bold col-xs-12">
+				<a ui_sref="sale.return" class="topText f16">&nbsp;<i
+					class="fa fa-angle-left"></i>&nbsp;订单详情
+				</a>
+			</div>
+		</div>
+		<!-- title end -->
+		<!-- order headInfo start -->
+		<h4 class="orderInfo row">
+			<div class="col-xs-12">
+				<div class="row ">
+					<div class="col-xs-5 text-black text-right">单据时间:</div>
+					<div class="col-xs-7 oi-margin">{{returns.date|date:"yyyy-MM-dd"}}</div>
+				</div>
+			</div>
+			<div class="col-xs-12">
+				<div class="row">
+					<div class="col-xs-5 text-black text-right">客户:</div>
+					<div class="col-xs-7  oi-margin">{{returns.returnItems[0].orderItem.order.enterprise.enName}}</div>
+				</div>
+			</div>
+			<div class="col-xs-12">
+				<div class="row">
+					<div class="col-xs-5 text-black text-right">验收单号:</div>
+					<div class="col-xs-7 oi-margin">{{returns.code}}</div>
+				</div>
+			</div>
+			<div class="col-xs-12" ng-if="return.sendCode">
+				<div class="row">
+					<div class="col-xs-5 text-black text-right">送货单号:</div>
+					<div class="col-xs-7 oi-margin">{{returns.sendCode}}</div>
+				</div>
+			</div>
+		</h4>
+		<!-- order headInfo end -->
+		<!-- order detailInfo start -->		
+		<div class="order-line row f16" ng-repeat="item in returns.returnItems "
+			ng-if="$index<page*count">
+			<div class="col-xs-10 text-num bold  text-left text-primary">{{item.orderItem.product.code}}</div>
+			<div class="row text-left margin0">
+				<div class="col-xs-1">
+					<label class="text-black"><i style="color: #339999;"
+						class="fa fa-newspaper-o"></i></label>
+				</div>
+			</div>
+			<div class="row margin0">
+				<div class="col-xs-12">{{item.orderItem.product.title}}</div>
+			</div>
+			<div class="row text-muted margin0">
+				<div class="col-xs-12">{{item.orderItem.product.spec}}</div>
+			</div>
+			<div class="row middle-border">
+				<div class="col-xs-5">采购单价</div>
+				<div class="col-xs-7 text-right text-muted">{{item.orderPrice|number:6}} {{item.orderItem.order.currency}}</div>
+			</div>
+			<div class="row middle-border">
+				<div class="col-xs-5">税率</div>
+				<div class="col-xs-7 text-right text-muted">{{item.taxrate}}%</div>
+			</div>
+			<div class="row middle-border">
+				<div class="col-xs-5">验收数量</div>
+				<div class="col-xs-7 text-right">
+					<span class="text-muted">{{item.qty}}</span> <span
+						class="text-muted">{{item.orderItem.product.unit}}</span>
+				</div>
+			</div>
+			<div class="row middle-border">
+				<div class="col-xs-5">入库批号</div>
+				<div class="col-xs-7 text-right text-muted">{{item.batchCode}}</div>
+			</div>
+			<div class="row middle-border">
+				<div class="col-xs-5">单据编号</div>
+				<div class="col-xs-7 text-right">
+					<a class="orderId-color"
+						ui-sref="sale.order_detail({id:item.orderItem.order.id})">{{item.orderItem.order.code}}</a>
+				</div>
+			</div>
+			<div class="row middle-border">
+				<div class="col-xs-5">第 {{item.orderItem.number}} 行</div>
+				<div class="col-xs-7 text-right text-muted">数量
+					{{item.orderItem.qty}}</div>
+			</div>
+		</div>
+		<!-- order detailInfo end -->
+		<div class="row f16">
+			<div class="col-xs-12 morebtn">
+				<div ng-click="showMore()"
+					ng-if="returns.returnItems.length > page*count">点击加载更多&gt;&gt;</div>
+				<div ng-if="!(returns.returnItems.length > page*count)">已加载全部</div>
+			</div>
+		</div>
+	</div>
+</div>

+ 75 - 0
src/main/webapp/resources/tpl/index_mobile/sale/return_list.html

@@ -0,0 +1,75 @@
+<style>
+/* title */
+.title {
+	padding-bottom: 10px;
+	border-bottom: solid 1px #e8e8e8;
+	margin-bottom: 0;
+}
+
+/* order */
+.order {
+	position: relative;
+	margin-bottom: 0;
+	padding-top: 10px;
+	background: #eff2f9;
+}
+
+.order .order-line {
+	background: #ffffff;
+	margin-bottom: 10px;
+}
+
+.order .order-line:HOVER, .order .order-line:ACTIVE {
+	background: #d7d7d7;
+}
+
+</style>
+<!-- loading start -->
+<div class="loading in" ng-class="{'in': loading}">
+	<i></i>
+</div>
+<!-- loading end -->
+
+<div class="row">
+	<!-- title start -->
+	<h4 class="title col-xs-12">
+		<a ui-sref="index"><i class="fa fa-angle-left fa-lg"></i>&nbsp;&nbsp;客户采购验退单</a>
+	</h4>
+	<!-- title end -->
+</div>
+
+<!-- order list start -->
+<ul class="list-group order row" ng-if="data.content">
+	<li class="list-group-item col-xs-12 order-line"
+		ng-repeat="returns in data.content"
+		ui-sref="sale.return_detail({id:returns.id})">
+		<div class="row">
+			<div class="col-xs-8 text-num text-inverse">{{returns.code}}</div>
+			<div class="col-xs-4 text-muted f12 text-right">{{returns.date
+				| date:'MM月dd日'}}</div>
+		</div>
+		<div class="row">
+			<div class="col-xs-12 f14 text-light">
+				<span>{{returns.returnItems[0].orderItem.order.enterprise.enName}}</span>
+			</div>
+			<div class="col-xs-12 f14">
+				<i class="fa fa-cube text-primary"></i> <span
+					ng-repeat="item in returns.returnItems" ng-if="$index<5"> <span
+					class="text-primary" ng-bind="item.orderItem.product.code"></span><span
+					ng-if="!$last && $index<4">、</span>
+				</span>等 <span class="text-default">{{getProdKind(returns)}}</span> 类,共 <span
+					class="text-default">{{getProdCount(returns)}}</span> 件商品
+			</div>
+		</div>
+	</li>
+	<li ng-if="data.number < data.totalPages"
+		class="list-group-item col-xs-12 text-center" ng-click="getMoreData()">
+		{{data.content.length}}/{{data.totalElements}}<br> 点击加载更多单据...
+	</li>
+	<li ng-if="data.number >= data.totalPages"
+		class="list-group-item col-xs-12 text-center">
+		{{data.content.length}}/{{data.totalElements}}<br> 已加载全部
+	</li>
+</ul>
+<!-- order list end -->
+