Browse Source

采购订单页面样式更改

hejq 8 years ago
parent
commit
921709bedd

+ 210 - 192
src/main/webapp/resources/tpl/index/purc/order.html

@@ -1,170 +1,195 @@
 <style>
-.condition .more.open {
-	margin-top: 10px;
-	height: 36px;
-	opacity: 1;
-}
+	.condition .more.open {
+		margin-top: 10px;
+		height: 36px;
+		opacity: 1;
+	}
 
-.condition .more .form-group {
-	margin-bottom: 0;
-}
+	.condition .more .form-group {
+		margin-bottom: 0;
+	}
 
-.order-table .header>th {
-	height: 38px;
-	text-align: center;
-	background: #f5f5f5;
-	border-top: 1px solid #e8e8e8;
-	border-bottom: 1px solid #e8e8e8;
-}
+	.order-table .header>th {
+		height: 38px;
+		text-align: center;
+		background: #f5f5f5;
+		border-top: 1px solid #e8e8e8;
+		border-bottom: 1px solid #e8e8e8;
+	}
 
-.order-table .sep-row {
-	height: 10px;
-}
+	.order-table .sep-row {
+		height: 10px;
+	}
 
-.order-table .selector {
-	vertical-align: middle;
-	margin: 0 0 2px 0;
-}
+	.order-table .selector {
+		vertical-align: middle;
+		margin: 0 0 2px 0;
+	}
 
-.toolbar label {
-	margin-right: 10px;
-	margin-bottom: 0;
-}
+	.toolbar label {
+		margin-right: 10px;
+		margin-bottom: 0;
+	}
 
-.toolbar .select_all {
-	margin: 0 6px 0 10px;
-	line-height: 20px;
-}
+	.toolbar .select_all {
+		margin: 0 6px 0 10px;
+		line-height: 20px;
+	}
 
-.toolbar .btn {
-	-moz-border-radius: 2px;
-	margin-right: 5px;
-	border: 1px solid #dcdcdc;
-	border-radius: 2px;
-	-webkit-border-radius: 2px;
-}
+	.toolbar .btn {
+		-moz-border-radius: 2px;
+		margin-right: 5px;
+		border: 1px solid #dcdcdc;
+		border-radius: 2px;
+		-webkit-border-radius: 2px;
+	}
 
-.order-table .order-hd {
-	background: #f5f5f5;
-	height: 40px;
-	line-height: 40px;
-}
+	.order-table .order-hd {
+		background: #f5f5f5;
+		height: 40px;
+		line-height: 40px;
+	}
 
-.order-table .order-hd td.first {
-	padding-left: 20px;
-}
+	.order-table .order-hd td.first {
+		padding-left: 20px;
+	}
 
-.order-table .order-hd .order-main span {
-	margin-right: 8px;
-}
+	.order-table .order-hd .order-main span {
+		margin-right: 8px;
+	}
 
-.order-table .order-hd .order-code {
-	font-style: normal;
-	font-family: verdana;
-}
+	.order-table .order-hd .order-code {
+		font-style: normal;
+		font-family: verdana;
+	}
 
-.order-table .order-hd .order-sum {
-	padding: 0 5px;
-}
+	.order-table .order-hd .order-sum {
+		padding: 0 5px;
+	}
 
-/*.order-table>tbody {
-	border: 1px solid transparent;
-	border-bottom: 10px #ddd solid;
-}*/
-.order-table>tbody:hover{
-	border: #d32526 2px solid !important;
-}
-/*.order-table>tbody:hover .order-hd td{
-	border-top: #d32526 2px solid !important;
-}*/
+	/*.order-table>tbody {
+        border: 1px solid transparent;
+        border-bottom: 10px #ddd solid;
+    }*/
+	.order-table>tbody:hover{
+		border: #d32526 2px solid !important;
+	}
+	/*.order-table>tbody:hover .order-hd td{
+        border-top: #d32526 2px solid !important;
+    }*/
 
-.order-table .operates {
-	display: none;
-}
+	.order-table .operates {
+		display: none;
+	}
 
-.order-table .operates i {
-	padding: 0 2px;
-}
+	.order-table .operates i {
+		padding: 0 2px;
+	}
 
-.order-table>tbody:hover .operates {
-	display: block;
-}
-.order-table>tbody:hover .operates-status {
-	display: none;
-}
+	.order-table>tbody:hover .operates {
+		display: block;
+	}
+	.order-table>tbody:hover .operates-status {
+		display: none;
+	}
 
 
-.order-table .order-bd {
-	border-bottom: 1px solid #e6e6e6;
-}
+	.order-table .order-bd {
+		border-bottom: 1px solid #e6e6e6;
+	}
 
-.order-table .order-bd>td {
-	padding: 10px 5px;
-	vertical-align: top;
-	position: relative;
-}
+	.order-table .order-bd>td {
+		padding: 10px 5px;
+		vertical-align: top;
+		position: relative;
+	}
 
-.order-table .order-bd .product {
-	padding-left: 20px;
-}
+	.order-table .order-bd .product {
+		padding-left: 20px;
+	}
 
-.order-table .order-bd .order-number {
-	position: absolute;
-	top: -1px;
-	left: -1px;
-	width: 20px;
-	height: 20px;
-	line-height: 20px;
-	text-align: center;
-	background: #f5f5f5;
-	font-weight: 500;
-	border: solid 1px #d5d5d5;
-	border-radius: 0 0 10px 0;
-}
+	.order-table .order-bd .order-number {
+		position: absolute;
+		top: -1px;
+		left: -1px;
+		width: 20px;
+		height: 20px;
+		line-height: 20px;
+		text-align: center;
+		background: #f5f5f5;
+		font-weight: 500;
+		border: solid 1px #d5d5d5;
+		border-radius: 0 0 10px 0;
+	}
 
-.order-table .order-bd .order-number.key {
-	background: #56a022;
-	color: #ffffff;
-}
+	.order-table .order-bd .order-number.key {
+		background: #56a022;
+		color: #ffffff;
+	}
 
-.unPrinted {
-	color: #56a022;
-}
+	.unPrinted {
+		color: #56a022;
+	}
 
-.info-container .info:hover {
-	color: #CC3333;
-}
-.buy-cart{
-	font-size: 14px;
-	padding: 0;
-	margin-left: 50px;
-}
-.buy-cart a{
-	color: #5078cb;
-	float: left;
-	margin-left: 15px;
-}
-.buy-cart a img{
-	margin-right: 3px;
-}
-#public .menu .btn-group{
-	height: inherit !important;
-}
-.menu .new-dot{
-	width: 20px;
-	height: 20px;
-	line-height: 20px;
-	font-size: 12px;
-	color: #fff;
-	font-weight: inherit;
-	top: -2px;
-}
+	.info-container .info:hover {
+		color: #CC3333;
+	}
+	.buy-cart{
+		font-size: 14px;
+		padding: 0;
+		margin-left: 50px;
+	}
+	.buy-cart a{
+		color: #5078cb;
+		float: left;
+		margin-left: 15px;
+	}
+	.buy-cart a img{
+		margin-right: 3px;
+	}
+	#public .menu .btn-group{
+		height: inherit !important;
+	}
+	.menu .new-dot{
+		width: 20px;
+		height: 20px;
+		line-height: 20px;
+		font-size: 12px;
+		color: #fff;
+		font-weight: inherit;
+		top: -2px;
+	}
+	.order-table .product div.text-over {
+		width: 340px;
+		white-space: nowrap;
+		text-overflow: ellipsis;
+		overflow: hidden;
+	}
+	.order-table .product div.text-flow b{
+		float: left;
+	}
+	.order-table .product div.text-flow span{
+		float: left;
+		display: inline-block;
+		width: 290px;
+		white-space: nowrap;
+		text-overflow: ellipsis;
+		overflow: hidden;
+	}
+	.order-table .product div.text-overflow span{
+		float: left;
+		display: inline-block;
+		width: 340px;
+		white-space: nowrap;
+		text-overflow: ellipsis;
+		overflow: hidden;
+	}
 </style>
 <link rel="stylesheet" href="static/css/public.css">
 <div class="block" id="public">
-<div class="loading in" ng-class="{'in': loading}">
-	<i></i>
-</div><div class="pub-com_head">
+	<div class="loading in" ng-class="{'in': loading}">
+		<i></i>
+	</div><div class="pub-com_head">
 	<span>采购订单</span>
 	<div class="p-right">
 		<a ui-sref="purc.newOrder" title="新增采购单"><img src="static/img/icon/add.png"/>新增</a>
@@ -172,33 +197,33 @@
 		<a href="#" ng-click="exportXls()" target="_self" class="text-simple" title="导出Excel表格"><i class="fa fa-file-excel-o fa-fw"></i>导出</a>
 	</div>
 </div>
-<div class="menu condition block">
+	<div class="menu condition block">
 		<div class="row">
 			<div class="col-xs-9">
 				<div class="btn-group btn-group-sm btn-group-justified">
 					<div class="btn-group btn-group-sm">
 						<button type="button" class="btn btn-default btn-line"
-							ng-class="{'btn-info':active=='all'}" ng-click="setActive('all')">全部
+								ng-class="{'btn-info':active=='all'}" ng-click="setActive('all')">全部
 							<b class="new-dot" ng-if="unread.replied > 0">{{unread.replied>99?'99+':unread.replied}}</b>
 						</button>
 					</div>
 					<div class="btn-group btn-group-sm">
 						<button type="button" class="btn btn-default btn-line"
-							ng-class="{'btn-info':active=='done'}" ng-click="setActive('done')">已回复
+								ng-class="{'btn-info':active=='done'}" ng-click="setActive('done')">已回复
 							<b class="new-dot" ng-if="unread.replied > 0">{{unread.replied>99?'99+':unread.replied}}</b>
 						</button>
 					</div>
 					<div class="btn-group btn-group-sm">
 						<button type="button" class="btn btn-default btn-line"
-							ng-class="{'btn-info':active=='todo'}" ng-click="setActive('todo')">待回复</button>
+								ng-class="{'btn-info':active=='todo'}" ng-click="setActive('todo')">待回复</button>
 					</div>
 					<div class="btn-group btn-group-sm">
 						<button type="button" class="btn btn-default btn-line"
-							ng-class="{'btn-info':active=='waiting'}" ng-click="setActive('waiting')">待交货</button>
+								ng-class="{'btn-info':active=='waiting'}" ng-click="setActive('waiting')">待交货</button>
 					</div>
 					<div class="btn-group btn-group-sm">
 						<button type="button" class="btn btn-default btn-line"
-							ng-class="{'btn-info':active=='end'}" ng-click="setActive('end')">已结案</button>
+								ng-class="{'btn-info':active=='end'}" ng-click="setActive('end')">已结案</button>
 					</div>
 				</div>
 			</div>
@@ -207,7 +232,7 @@
 			</div>
 		</div>
 	</div>
-<!--<div class="height10">&nbsp;</div>-->
+	<!--<div class="height10">&nbsp;</div>-->
 	<div class="condition block">
 		<div class="search-bg condition block" style="padding: 10px 15px;">
 			<div class="row">
@@ -274,8 +299,8 @@
 			</div>
 		</div>
 	</div>
-<table class="order-table block" ng-table="tableParams">
-	<thead>
+	<table class="order-table block" ng-table="tableParams">
+		<thead>
 		<tr class="header">
 			<th>物料</th>
 			<th width="80">含税单价</th>
@@ -285,8 +310,8 @@
 			<th width="180">单据状态</th>
 			<th width="120">供应商</th>
 		</tr>
-	</thead>
-	<tbody ng-if="tableParams.total() == 0">
+		</thead>
+		<tbody ng-if="tableParams.total() == 0">
 		<tr>
 			<td colspan="6">
 				<div class="row text-muted info-container" style="padding: 50px 10px;">
@@ -303,15 +328,15 @@
 						<div class="f14">
 							<div class="info">
 								<p>1、您的采购单在ERP系统上还没审核,订单无法上传到平台<br>
-								解决:采购员沟通确认单据是否已经审核(只有ERP中已经审核的单据才能接收到)</p>
+									解决:采购员沟通确认单据是否已经审核(只有ERP中已经审核的单据才能接收到)</p>
 							</div>
 							<div class="info">
 								<p>2、ERP中供应商信息有误<br>
-								解决:与您的供应商沟通确认他的资料在供应商资料中是否维护正确,尤其是企业UU号</p>
+									解决:与您的供应商沟通确认他的资料在供应商资料中是否维护正确,尤其是企业UU号</p>
 							</div>
 							<div class="info">
 								<p>3、您的供应商正在使用旧版本的UAS商务平台<br>
-								解决:我们仍有部分用户在使用旧版本UAS商务平台系统,你可以用您的企业UU号和管理员个人UU号 <a href="http://www.usoftchina.com" class="text-bold text-link" title="http://www.usoftchina.com" target="_blank">登陆旧版本UAS商务平台</a></p>
+									解决:我们仍有部分用户在使用旧版本UAS商务平台系统,你可以用您的企业UU号和管理员个人UU号 <a href="http://www.usoftchina.com" class="text-bold text-link" title="http://www.usoftchina.com" target="_blank">登陆旧版本UAS商务平台</a></p>
 							</div>
 						</div>
 						<br>
@@ -320,8 +345,8 @@
 				</div>
 			</td>
 		</tr>
-	</tbody>
-	<tbody ng-repeat="order in $data track by order.id">
+		</tbody>
+		<tbody ng-repeat="order in $data track by order.id">
 		<tr class="order-hd" ng-dblclick="order.$collapsed=!order.$collapsed" ng-class="{'text-bold': order.display>0}">
 			<td class="first" colspan="5">
 				<div class="order-main">
@@ -335,16 +360,16 @@
 						ng-model="order.$selected" ng-click="checkOne(order)">
 					</span> -->
 					<span class="text-num text-bold"
-						ng-bind="::order.date | date:'yyyy-MM-dd'"></span>
+						  ng-bind="::order.date | date:'yyyy-MM-dd'"></span>
 					<span ng-bind="::order.receiveName"></span>
 					<span>订单号:<a title="查看详情"
-						class="text-num order-detail" ng-bind="::order.code" ui-sref="purc.order_detail({id:order.id})" target="_self"
-						ng-click="setOrdersRead(order.id)"></a></span>
+								 class="text-num order-detail" ng-bind="::order.code" ui-sref="purc.order_detail({id:order.id})" target="_self"
+								 ng-click="setOrdersRead(order.id)"></a></span>
 				</div>
 			</td>
 			<td ng-if="!isUser" class="order-sum">{{::order.currency}}: <span
-				ng-bind="getOrderTotal(order.orderItems) | number : 2"
-				class="text-num text-bold"></span>
+					ng-bind="getOrderTotal(order.orderItems) | number : 2"
+					class="text-num text-bold"></span>
 			</td>
 			<td ng-if="isUser" class="order-sum"></td>
 			<td class="text-center">
@@ -361,17 +386,18 @@
 			ng-if="!order.$collapsed "><!-- && (!searchFilterXls.keyword || item.key || order.$showAll) -->
 			<td class="product">
 				<div class="text-num order-number" ng-class="{'key': item.key&&order.$showAll}" title="第{{::item.number}}行">{{::item.number}}</div>
-				<div class="text-num text-bold">
+				<div class="text-num text-bold text-overflow" title="{{::item.product.code}}">
 					<span ng-bind="::item.product.code"></span>
 				</div>
-				<div>
+				<div class="text-overflow" title="{{::item.product.title}}">
 					<span ng-bind="::item.product.title"></span>
 				</div>
-				<div class="text-muted"
-					ng-bind="::item.product.spec"></div>
-				<div class="text-muted text-bold" ng-if="item.vendspec"><span ng-bind="::item.vendspec"></span></div>
-				<div class="text-bold text-inverse" ng-if="item.factory">送货工厂:<span ng-bind="::item.factory"></span></div>
-				<div class="text-bold text-inverse" ng-if="item.remark">备注:<span ng-bind="::item.remark"></span></div>
+				<div class="text-muted text-over"
+					 title="{{::item.product.spec}}"
+					 ng-bind="::item.product.spec"></div>
+				<div class="text-muted text-bold text-overflow" ng-if="item.vendspec" title="{{item.vendspec}}"><span ng-bind="::item.vendspec"></span></div>
+				<div class="text-bold text-inverse text-flow" ng-if="item.factory" title="{{item.factory}}"><b>送货工厂:</b><span ng-bind="::item.factory"></span></div>
+				<div class="text-bold text-inverse text-flow" ng-if="item.remark" title="{{item.remark}}"><b>备注:</b><span ng-bind="::item.remark"></span></div>
 			</td>
 			<td class="text-center">
 				<div ng-if="!isUser" class="text-num" ng-bind="::item.price | number:6"></div>
@@ -382,26 +408,26 @@
 				<div class="text-muted" ng-bind="::item.product.unit"></div>
 				<div style="margin: 0 auto" ng-if="item.$editing">
 					<input type="number" ng-model="item.reply.qty" min="0" max="{{item.qty}}"
-						ng-init="item.reply.qty=item.qty-item.replyQty"
-						class="form-control input-xs" placeholder="0~{{item.qty-item.replyQty}}">
+						   ng-init="item.reply.qty=item.qty-item.replyQty"
+						   class="form-control input-xs" placeholder="0~{{item.qty-item.replyQty}}">
 				</div>
 			</td>
 			<td class="text-center br-l">
 				<div class="text-num" ng-bind="::item.delivery | date:'yyyy-MM-dd'"></div>
 				<br>
 				<div style="margin: 0 auto"
-					class="input-group input-group-xs input-trigger"
-					ng-if="item.$editing">
+					 class="input-group input-group-xs input-trigger"
+					 ng-if="item.$editing">
 					<input type="text" ng-model="item.reply.delivery"
-						class="form-control" placeholder="回复交期"
-						datepicker-popup="yyyy-MM-dd" is-open="item.$opened"
-						min-date="order.date" ng-required="true" current-text="今天"
-						clear-text="清除" close-text="关闭"
-						datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
-						ng-focus="openDatePicker($event, item, '$opened')"> <span
+						   class="form-control" placeholder="回复交期"
+						   datepicker-popup="yyyy-MM-dd" is-open="item.$opened"
+						   min-date="order.date" ng-required="true" current-text="今天"
+						   clear-text="清除" close-text="关闭"
+						   datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
+						   ng-focus="openDatePicker($event, item, '$opened')"> <span
 						class="input-group-btn">
 						<button type="button" class="btn btn-default"
-							ng-click="openDatePicker($event, item, '$opened')">
+								ng-click="openDatePicker($event, item, '$opened')">
 							<i class="fa fa-calendar"></i>
 						</button>
 					</span>
@@ -413,7 +439,7 @@
 					<div ng-if="item.replyQty > 0 && item.replyQty < item.qty">
 						<div class="progress progress-sm">
 							<div class="progress-bar progress-bar-success"
-								ng-style="{'width': 100*item.replyQty/item.qty + '%'}">
+								 ng-style="{'width': 100*item.replyQty/item.qty + '%'}">
 								<span class="sr-only"></span>
 							</div>
 						</div>
@@ -422,13 +448,13 @@
 					</div>
 					<div ng-if="item.replyQty > 0" class="dropdown" ng-class="{'text-center': item.replyQty>=item.qty}">
 						<a href="javascript:void(0);" class="dropdown-toggle text-default"
-							ng-mouseover="getReply(item)">回复历史<i class="fa fa-fw fa-angle-down"></i></a>
+						   ng-mouseover="getReply(item)">回复历史<i class="fa fa-fw fa-angle-down"></i></a>
 						<div class="dropdown-menu pane" style="width: 270px;">
 							<div class="pane-body">
 								<ul class="list-unstyled list-menu">
 									<li ng-repeat="reply in ::item.replies">
 										<div class="row row-sm"
-											ng-class="{'text-inverse': $index==0}">
+											 ng-class="{'text-inverse': $index==0}">
 											<div class="col-xs-6">
 												<span ng-if="reply.qty < 0"> 撤销</span>
 												数量 {{::reply.qty}}
@@ -453,19 +479,11 @@
 				</div>
 				<div style="margin: 0 auto" ng-if="item.$editing">
 					<br><br><input type="text" ng-model="item.reply.remark"
-						class="form-control input-xs" placeholder="回复备注" />
+								   class="form-control input-xs" placeholder="回复备注" />
 				</div>
 			</td>
 			<td ng-bind="::order.enName"></td>
 		</tr>
-		<!-- <tr ng-if="!order.$collapsed && searchFilterXls.keyword" style="cursor: pointer;padding: 10px 0;">
-			<td colspan="6" class="text-center text-simple" ng-if="!order.$showAll" style="cursor: pointer;padding: 10px 0;" ng-click="order.$showAll = true">
-				展开所有明细(包括不含关键词的) <i class="fa fa-angle-down"></i>
-			</td>
-			<td colspan="6" class="text-center text-simple" ng-if="order.$showAll" style="cursor: pointer;padding: 10px 0;" ng-click="order.$showAll = false">
-				收起不含关键词的明细 <i class="fa fa-angle-up"></i>
-			</td>
-		</tr> -->
-	</tbody>
-</table>
+		</tbody>
+	</table>
 </div>

+ 128 - 137
src/main/webapp/resources/tpl/index/purc/order_detail.html

@@ -1,3 +1,30 @@
+<style>
+	.block .product div.text-over {
+		width: 340px;
+		white-space: nowrap;
+		text-overflow: ellipsis;
+		overflow: hidden;
+	}
+	.block .product div.text-flow b{
+		float: left;
+	}
+	.block .product div.text-flow span{
+		float: left;
+		display: inline-block;
+		width: 290px;
+		white-space: nowrap;
+		text-overflow: ellipsis;
+		overflow: hidden;
+	}
+	.block .product div.text-overflow span{
+		float: left;
+		display: inline-block;
+		width: 340px;
+		white-space: nowrap;
+		text-overflow: ellipsis;
+		overflow: hidden;
+	}
+</style>
 <div class="loading" ng-class="{'in': loading}">
 	<i></i>
 </div>
@@ -5,8 +32,6 @@
 	<div class="pub-com_head">
 		<span>采购单</span>
 		<div class="p-right">
-			<!-- <a ng-click="print(order)" class="pull-right text-simple"><i
-				class="fa fa-print fa-fw"></i>打印</a> -->
 		</div>
 	</div>
 	<div class="pane-body">
@@ -28,22 +53,10 @@
 			</div>
 		</div>
 		<div class="row row-sm item">
-			<!--<div class="col-xs-3">
-				<span class="title">采购类型</span>
-				<div class="content" ng-bind="::order.type"></div>
-			</div>-->
 			<div class="col-xs-3">
 				<span class="title">录单人</span>
 				<div class="content" ng-bind="::order.recorder"></div>
 			</div>
-			<!--<div class="col-xs-3">
-				<span class="title">审批人</span>
-				<div class="content" ng-bind="::order.auditor"></div>
-			</div>
-			<div class="col-xs-3">
-				<span class="title">采购员</span>
-				<div class="content" ng-bind="::order.user.userName"></div>
-			</div>-->
 		</div>
 		<div class="title-div" style="border-bottom: 1px dashed #327ebe;">
 			<span class="f14">交易信息</span>&nbsp;
@@ -93,140 +106,118 @@
 			</table>
 			<table class="block table table-default table-striped table-hover" ng-class="{'scoroll':order.orderItems.length>10}">
 				<tbody>
-					<tr ng-repeat="item in order.orderItems track by item.id">
-						<td class="text-center text-num f-16 text-success "  width="50">
-							<span ng-bind="::item.number"></span>
-						</td>
-						<td width="270">
-							<div class="text-num text-bold">
-								<span ng-bind="::item.product.code"></span>
-							</div>
-							<div>
-								<span ng-bind="::item.product.title"></span>
-							</div>
-							<div class="text-muted" ng-bind="::item.product.spec"></div>
-							<div class="text-muted text-bold" ng-if="item.vendspec"><span ng-bind="::item.vendspec"></span></div>
-							<div class="text-bold text-inverse" ng-if="item.factory">送货工厂:<span ng-bind="::item.factory"></span></div>
-							<div class="text-bold text-inverse" ng-if="item.remark">备注:<span ng-bind="::item.remark"></span></div>
-						</td>
-						<td class="text-center" width="110">
-							<div ng-if="!isUser" class="text-num" ng-bind="::item.price | number:6"></div>
-							<div class="text-muted">税率:{{::item.taxrate || 0}}%</div>
-						</td>
-						<td class="text-center"  width="100">
-							<div class="text-num" ng-bind="::item.qty"></div>
-							<div class="text-muted" ng-bind="::item.product.unit"></div>
-							<div style="margin: 0 auto" ng-if="item.$editing">
-								<input type="text" ng-model="item.reply.qty" min="0" max="{{item.qty}}"
-									ng-init="item.reply.qty=item.qty-item.replyQty"
-									class="form-control input-xs" placeholder="0~{{item.qty-item.replyQty}}">
-							</div>
-						</td>
-						<td class="text-center" width="120">
-							<div class="text-num"
-								ng-bind="::item.delivery | date:'yyyy-MM-dd'"></div> <br>
-							<div style="margin: 0 auto"
-								class="input-group input-group-xs input-trigger"
-								ng-if="item.$editing">
-								<input type="text" ng-model="item.reply.delivery"
-									ng-init="item.reply.delivery=parseDate(item.delivery)"
-									class="form-control" placeholder="回复交期"
-									datepicker-popup="yyyy-MM-dd" is-open="item.$opened"
-									min-date="order.date" ng-required="true" current-text="今天"
-									clear-text="清除" close-text="关闭"
-									datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
-									ng-focus="openDatePicker($event, item, '$opened')"> <span
-									class="input-group-btn">
+				<tr ng-repeat="item in order.orderItems track by item.id">
+					<td class="text-center text-num f-16 text-success "  width="50">
+						<span ng-bind="::item.number"></span>
+					</td>
+					<td width="270" class="product">
+						<div class="text-num text-bold text-overflow" title="{{::item.product.code}}">
+							<span ng-bind="::item.product.code"></span>
+						</div>
+						<div class="text-overflow" title="{{::item.product.title}}">
+							<span ng-bind="::item.product.title"></span>
+						</div>
+						<div class="text-muted text-over" ng-bind="::item.product.spec" title="{{::item.product.spec}}"></div>
+						<div class="text-muted text-bold text-overflow" ng-if="item.vendspec" title="{{item.vendspec}}"><span ng-bind="::item.vendspec"></span></div>
+						<div class="text-bold text-inverse text-flow" ng-if="item.factory" title="{{item.factory}}"><b>送货工厂:</b><span ng-bind="::item.factory"></span></div>
+						<div class="text-bold text-inverse text-flow" ng-if="item.remark" title="{{item.remark}}"><b>备注:</b><span ng-bind="::item.remark"></span></div>
+					</td>
+					<td class="text-center" width="110">
+						<div ng-if="!isUser" class="text-num" ng-bind="::item.price | number:6"></div>
+						<div class="text-muted">税率:{{::item.taxrate || 0}}%</div>
+					</td>
+					<td class="text-center"  width="100">
+						<div class="text-num" ng-bind="::item.qty"></div>
+						<div class="text-muted" ng-bind="::item.product.unit"></div>
+						<div style="margin: 0 auto" ng-if="item.$editing">
+							<input type="text" ng-model="item.reply.qty" min="0" max="{{item.qty}}"
+								   ng-init="item.reply.qty=item.qty-item.replyQty"
+								   class="form-control input-xs" placeholder="0~{{item.qty-item.replyQty}}">
+						</div>
+					</td>
+					<td class="text-center" width="120">
+						<div class="text-num"
+							 ng-bind="::item.delivery | date:'yyyy-MM-dd'"></div> <br>
+						<div style="margin: 0 auto"
+							 class="input-group input-group-xs input-trigger"
+							 ng-if="item.$editing">
+							<input type="text" ng-model="item.reply.delivery"
+								   ng-init="item.reply.delivery=parseDate(item.delivery)"
+								   class="form-control" placeholder="回复交期"
+								   datepicker-popup="yyyy-MM-dd" is-open="item.$opened"
+								   min-date="order.date" ng-required="true" current-text="今天"
+								   clear-text="清除" close-text="关闭"
+								   datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
+								   ng-focus="openDatePicker($event, item, '$opened')"> <span
+								class="input-group-btn">
 									<button type="button" class="btn btn-default"
-										ng-click="openDatePicker($event, item, '$opened')">
+											ng-click="openDatePicker($event, item, '$opened')">
 										<i class="fa fa-calendar"></i>
 									</button>
 								</span>
-							</div>
-						</td>
-						<td width="160">
-							<div ng-show="!item.$editing">
-								<div ng-if="!item.replyQty" class="text-muted text-center">未回复</div>
-								<div ng-if="item.replyQty > 0 && item.replyQty < item.qty">
-									<div class="progress progress-sm">
-										<div class="progress-bar progress-bar-success"
-											ng-style="{'width': 100*item.replyQty/item.qty + '%'}">
-											<span class="sr-only"></span>
-										</div>
+						</div>
+					</td>
+					<td width="160">
+						<div ng-show="!item.$editing">
+							<div ng-if="!item.replyQty" class="text-muted text-center">未回复</div>
+							<div ng-if="item.replyQty > 0 && item.replyQty < item.qty">
+								<div class="progress progress-sm">
+									<div class="progress-bar progress-bar-success"
+										 ng-style="{'width': 100*item.replyQty/item.qty + '%'}">
+										<span class="sr-only"></span>
 									</div>
-									已回复 <span class="text-default">{{::item.replyQty}}</span> / <span>{{::item.qty}}</span>
 								</div>
-								<div ng-if="item.replyQty > 0" class="dropdown"
-									ng-class="{'text-center': item.replyQty>=item.qty}">
-									<a href="javascript:void(0);"
-										class="dropdown-toggle text-default"
-										ng-mouseover="getReply(item)">回复历史<i
+								已回复 <span class="text-default">{{::item.replyQty}}</span> / <span>{{::item.qty}}</span>
+							</div>
+							<div ng-if="item.replyQty > 0" class="dropdown"
+								 ng-class="{'text-center': item.replyQty>=item.qty}">
+								<a href="javascript:void(0);"
+								   class="dropdown-toggle text-default"
+								   ng-mouseover="getReply(item)">回复历史<i
 										class="fa fa-fw fa-angle-down"></i></a>
-									<div class="dropdown-menu pane" style="width: 270px;">
-										<div class="pane-body">
-											<ul class="list-unstyled list-menu">
-												<li ng-repeat="reply in ::item.replies">
-													<div class="row row-sm"
-														ng-class="{'text-inverse': $index==0}">
-														<div class="col-xs-6">
-															<span ng-if="reply.qty < 0"> 撤销</span>
-															数量 {{::reply.qty}}
-														</div>
-														<div class="col-xs-6">交期{{::reply.delivery |
-															date:'yyyy-MM-dd'}}</div>
+								<div class="dropdown-menu pane" style="width: 270px;">
+									<div class="pane-body">
+										<ul class="list-unstyled list-menu">
+											<li ng-repeat="reply in ::item.replies">
+												<div class="row row-sm"
+													 ng-class="{'text-inverse': $index==0}">
+													<div class="col-xs-6">
+														<span ng-if="reply.qty < 0"> 撤销</span>
+														数量 {{::reply.qty}}
 													</div>
-													<div class="text-muted">{{::reply.recorder}}{{::reply.date
-														| date:'yyyy-MM-dd HH:mm:ss'}}回复</div>
-													<div class="text-muted" ng-if="reply.remark != null">备注:{{::reply.remark}}</div>
-												</li>
-											</ul>
-										</div>
+													<div class="col-xs-6">交期{{::reply.delivery |
+														date:'yyyy-MM-dd'}}</div>
+												</div>
+												<div class="text-muted">{{::reply.recorder}}{{::reply.date
+													| date:'yyyy-MM-dd HH:mm:ss'}}回复</div>
+												<div class="text-muted" ng-if="reply.remark != null">备注:{{::reply.remark}}</div>
+											</li>
+										</ul>
 									</div>
 								</div>
 							</div>
-							<div style="margin: 0 auto" ng-if="item.$editing">
-								<br> <br> <input type="text"
-									ng-model="item.reply.remark" class="form-control input-xs"
-									placeholder="回复备注" />
-							</div>
-							<div ng-if="item.acceptQty" class="text-success text-center text-bold f14">
-								已验收:{{::item.acceptQty}}{{::item.product.unit}}
-							</div>
-							<div ng-if="item.returnQty" class="text-error text-center text-bold f14">
-								已验退:{{::item.returnQty}}{{::item.product.unit}}
-							</div>
-						</td>
-						<td class="text-center" width="100">
-							<div ng-if="item.replyQty>=item.qty" class="block">
-								<span class="text-trans success">已回复</span>
-							</div>
-							<div ng-if="item.end" class="block">
-								<span class="text-trans warning">已结案</span>
-							</div>
-							<!-- <div
-								ng-if="(!item.replyQty || item.replyQty<=item.qty) && !item.end">
-								<br ng-if="item.replyQty>=item.qty">
-								<br ng-if="item.replyQty>=item.qty">
-								<div ng-show="!item.$editing">
-									<a ng-click="item.$editing=!item.$editing">回复</a>
-								</div>
-								<div ng-if="item.$editing">
-									<div>
-										<a ng-click="item.$editing=!item.$editing">取消</a>
-									</div>
-									<br>
-									<div class="text-left">
-										<a ng-click="onReplyClick(item)" class="text-inverse">
-											<i class="fa fa-arrow-up"></i> 确认回复
-										</a>
-										<br>
-										<a ng-click="onReplyClick(item, -1)" class="text-muted" title="减去已回复数量">
-											<i class="fa fa-arrow-down"></i> 撤销回复</a>
-									</div>
-								</div>
-							</div> -->
-						</td>
-					</tr>
+						</div>
+						<div style="margin: 0 auto" ng-if="item.$editing">
+							<br> <br> <input type="text"
+											 ng-model="item.reply.remark" class="form-control input-xs"
+											 placeholder="回复备注" />
+						</div>
+						<div ng-if="item.acceptQty" class="text-success text-center text-bold f14">
+							已验收:{{::item.acceptQty}}{{::item.product.unit}}
+						</div>
+						<div ng-if="item.returnQty" class="text-error text-center text-bold f14">
+							已验退:{{::item.returnQty}}{{::item.product.unit}}
+						</div>
+					</td>
+					<td class="text-center" width="100">
+						<div ng-if="item.replyQty>=item.qty" class="block">
+							<span class="text-trans success">已回复</span>
+						</div>
+						<div ng-if="item.end" class="block">
+							<span class="text-trans warning">已结案</span>
+						</div>
+					</td>
+				</tr>
 				</tbody>
 			</table>
 		</div>

+ 194 - 247
src/main/webapp/resources/tpl/index/sale/order.html

@@ -1,155 +1,180 @@
 <style>
-.condition .more.open {
-	margin-top: 10px;
-	height: 36px;
-	opacity: 1;
-}
+	.condition .more.open {
+		margin-top: 10px;
+		height: 36px;
+		opacity: 1;
+	}
 
-.condition .more .form-group {
-	/*margin-bottom: 10px;*/
-}
+	.condition .more .form-group {
+		/*margin-bottom: 10px;*/
+	}
 
-.order-table .header>th {
-	height: 38px;
-	text-align: center;
-	background: #f5f5f5;
-	border-top: 1px solid #e8e8e8;
-	border-bottom: 1px solid #e8e8e8;
-}
+	.order-table .header>th {
+		height: 38px;
+		text-align: center;
+		background: #f5f5f5;
+		border-top: 1px solid #e8e8e8;
+		border-bottom: 1px solid #e8e8e8;
+	}
 
-.order-table .sep-row {
-	height: 10px;
-}
+	.order-table .sep-row {
+		height: 10px;
+	}
 
-.order-table .selector {
-	vertical-align: middle;
-	margin: 0 0 2px 0;
-}
+	.order-table .selector {
+		vertical-align: middle;
+		margin: 0 0 2px 0;
+	}
 
-.toolbar label {
-	margin-right: 10px;
-	margin-bottom: 0;
-}
+	.toolbar label {
+		margin-right: 10px;
+		margin-bottom: 0;
+	}
 
-.toolbar .select_all {
-	margin: 0 6px 0 10px;
-	line-height: 20px;
-}
+	.toolbar .select_all {
+		margin: 0 6px 0 10px;
+		line-height: 20px;
+	}
 
-.toolbar .btn {
-	-moz-border-radius: 2px;
-	margin-right: 5px;
-	border: 1px solid #dcdcdc;
-	border-radius: 2px;
-	-webkit-border-radius: 2px;
-}
+	.toolbar .btn {
+		-moz-border-radius: 2px;
+		margin-right: 5px;
+		border: 1px solid #dcdcdc;
+		border-radius: 2px;
+		-webkit-border-radius: 2px;
+	}
 
-.order-table .order-hd {
-	background: #f5f5f5;
-	height: 40px;
-	line-height: 40px;
-}
+	.order-table .order-hd {
+		background: #f5f5f5;
+		height: 40px;
+		line-height: 40px;
+	}
 
-.order-table .order-hd td.first {
-	padding-left: 20px;
-}
+	.order-table .order-hd td.first {
+		padding-left: 20px;
+	}
 
-.order-table .order-hd .order-main span {
-	margin-right: 8px;
-}
+	.order-table .order-hd .order-main span {
+		margin-right: 8px;
+	}
 
-.order-table .order-hd .order-code {
-	font-style: normal;
-	font-family: verdana;
-}
+	.order-table .order-hd .order-code {
+		font-style: normal;
+		font-family: verdana;
+	}
 
-.order-table .order-hd .order-sum {
-	padding: 0 5px;
-}
+	.order-table .order-hd .order-sum {
+		padding: 0 5px;
+	}
 
-.order-table>tbody {
-	border: 1px solid transparent;
-}
+	.order-table>tbody {
+		border: 1px solid transparent;
+	}
 
-.order-table>tbody:hover {
-	border-color: #d32526;
-	border-width: 2px;
-}
+	.order-table>tbody:hover {
+		border-color: #d32526;
+		border-width: 2px;
+	}
 
-.order-table .operates {
-	display: none;
-}
+	.order-table .operates {
+		display: none;
+	}
 
-.order-table .operates i {
-	padding: 0 2px;
-}
+	.order-table .operates i {
+		padding: 0 2px;
+	}
 
-.order-table>tbody:hover .operates {
-	display: block;
-}
-.order-table>tbody:hover .operates-status {
-	display: none;
-}
+	.order-table>tbody:hover .operates {
+		display: block;
+	}
+	.order-table>tbody:hover .operates-status {
+		display: none;
+	}
 
 
-.order-table .order-bd {
-	border-bottom: 1px solid #e6e6e6;
-}
+	.order-table .order-bd {
+		border-bottom: 1px solid #e6e6e6;
+	}
 
-.order-table .order-bd>td {
-	padding: 10px 5px;
-	vertical-align: top;
-	position: relative;
-}
+	.order-table .order-bd>td {
+		padding: 10px 5px;
+		vertical-align: top;
+		position: relative;
+	}
 
-.order-table .order-bd .product {
-	padding-left: 20px;
-}
+	.order-table .order-bd .product {
+		padding-left: 20px;
+	}
 
-.order-table .order-bd .order-number {
-	position: absolute;
-	top: -1px;
-	left: -1px;
-	width: 20px;
-	height: 20px;
-	line-height: 20px;
-	text-align: center;
-	background: #f5f5f5;
-	font-weight: 500;
-	border: solid 1px #d5d5d5;
-	border-radius: 0 0 10px 0;
-}
+	.order-table .order-bd .order-number {
+		position: absolute;
+		top: -1px;
+		left: -1px;
+		width: 20px;
+		height: 20px;
+		line-height: 20px;
+		text-align: center;
+		background: #f5f5f5;
+		font-weight: 500;
+		border: solid 1px #d5d5d5;
+		border-radius: 0 0 10px 0;
+	}
 
-.order-table .order-bd .order-number.key {
-	background: #56a022;
-	color: #ffffff;
-}
+	.order-table .order-bd .order-number.key {
+		background: #56a022;
+		color: #ffffff;
+	}
 
-.unPrinted {
-	color: #56a022;
-}
+	.unPrinted {
+		color: #56a022;
+	}
 
-.info-container .info:hover {
-	color: #CC3333;
-}
-.order-table{
-	background: #fff;
-}
-.menu .new-dot{
-	width: 20px;
-	height: 20px;
-	line-height: 20px;
-	font-size: 12px;
-	color: #fff;
-	font-weight: inherit;
-	top: -2px;
-}
+	.info-container .info:hover {
+		color: #CC3333;
+	}
+	.order-table{
+		background: #fff;
+	}
+	.menu .new-dot{
+		width: 20px;
+		height: 20px;
+		line-height: 20px;
+		font-size: 12px;
+		color: #fff;
+		font-weight: inherit;
+		top: -2px;
+	}
+	.order-table .product div.text-over {
+		width: 340px;
+		white-space: nowrap;
+		text-overflow: ellipsis;
+		overflow: hidden;
+	}
+	.order-table .product div.text-flow b{
+		float: left;
+	}
+	.order-table .product div.text-flow span{
+		float: left;
+		display: inline-block;
+		width: 290px;
+		white-space: nowrap;
+		text-overflow: ellipsis;
+		overflow: hidden;
+	}
+	.order-table .product div.text-overflow span{
+		float: left;
+		display: inline-block;
+		width: 340px;
+		white-space: nowrap;
+		text-overflow: ellipsis;
+		overflow: hidden;
+	}
 </style>
 <link rel="stylesheet" href="static/css/public.css">
 <div class="block" id="public">
-<div class="loading in" ng-class="{'in': loading}">
-	<i></i>
-</div>
+	<div class="loading in" ng-class="{'in': loading}">
+		<i></i>
+	</div>
 	<div class="pub-com_head">
 		<span>客户采购订单</span>
 		<div class="p-right">
@@ -157,21 +182,21 @@
 			   target="_self" class="text-simple" title="导出Excel表格"><i class="fa fa-file-excel-o fa-fw"></i>导出</a>
 		</div>
 	</div>
-<div class="menu condition block">
+	<div class="menu condition block">
 		<div class="row">
 			<div class="col-xs-4">
 				<div class="btn-group btn-group-sm btn-group-justified">
 					<div class="btn-group btn-group-sm">
 						<button type="button" class="btn btn-default btn-line"
-							ng-class="{'btn-info':active=='all'}" ng-click="setActive('all')">全部<b class="new-dot" ng-if="unread.all > 0">{{unread.all>99?'99+':unread.all}}</b></button>
+								ng-class="{'btn-info':active=='all'}" ng-click="setActive('all')">全部<b class="new-dot" ng-if="unread.all > 0">{{unread.all>99?'99+':unread.all}}</b></button>
 					</div>
 					<div class="btn-group btn-group-sm">
 						<button type="button" class="btn btn-default btn-line"
-							ng-class="{'btn-info':active=='done'}" ng-click="setActive('done');setOrdersReadByState()">已回复<b class="new-dot" ng-if="unread.replied > 0">{{unread.replied>99?'99+':unread.replied}}</b></button>
+								ng-class="{'btn-info':active=='done'}" ng-click="setActive('done');setOrdersReadByState()">已回复<b class="new-dot" ng-if="unread.replied > 0">{{unread.replied>99?'99+':unread.replied}}</b></button>
 					</div>
 					<div class="btn-group btn-group-sm">
 						<button type="button" class="btn btn-default btn-line"
-							ng-class="{'btn-info':active=='todo'}" ng-click="setActive('todo')">待回复<b class="new-dot" ng-if="unread.notReply > 0">{{unread.notReply>99?'99+':unread.notReply}}</b></button>
+								ng-class="{'btn-info':active=='todo'}" ng-click="setActive('todo')">待回复<b class="new-dot" ng-if="unread.notReply > 0">{{unread.notReply>99?'99+':unread.notReply}}</b></button>
 					</div>
 					<div class="btn-group btn-group-sm">
 						<button type="button" class="btn btn-default btn-line"
@@ -179,67 +204,16 @@
 					</div>
 					<div class="btn-group btn-group-sm">
 						<button type="button" class="btn btn-default btn-line"
-							ng-class="{'btn-info':active=='waiting'}" ng-click="setActive('waiting')">待交货</button>
+								ng-class="{'btn-info':active=='waiting'}" ng-click="setActive('waiting')">待交货</button>
 					</div>
 					<div class="btn-group btn-group-sm">
 						<button type="button" class="btn btn-default btn-line"
-							ng-class="{'btn-info':active=='end'}" ng-click="setActive('end')">已结案</button>
+								ng-class="{'btn-info':active=='end'}" ng-click="setActive('end')">已结案</button>
 					</div>
 				</div>
 			</div>
-			<!--<div class="col-xs-5">
-				<div class="search">
-					<div class="form-group form-group-sm has-feedback" dropdown auto-close="outsideClick" on-toggle="searchAdvance=open">
-						<input type="search" class="form-control input-sm" ng-model="keyword" ng-search="onSearch()" placeholder="输入商品、客户名称或单据流水号搜索" />
-						<div class="search-advance text-link" ng-class="{'active': searchAdvance}" dropdown-toggle>高级搜索</div>
-						<div id="searchContainer" class="dropdown-menu">
-							&lt;!&ndash; <div class="block">
-								<form action="" class="form-horizontal">
-									<div class="form-group">
-										<label for="" class="col-xs-3 text-right control-label">关键词:</label>
-										<div class="col-xs-6"><input type="text" class="form-control" /></div>
-									</div>
-									<div class="form-group">
-										<label for="" class="col-xs-3 text-right control-label">交货日期:</label>
-										<div class="col-xs-6"><input type="text" class="form-control" /></div>
-									</div>
-									<div class="form-group">
-										<label for="orderDate" class="col-xs-3 text-right control-label">订单日期:</label>
-										<div class="col-xs-6"><input id="orderDate" type="text" class="form-control" /></div>
-									</div>
-									<div class="form-group">
-										<label for="" class="col-xs-3 text-right control-label">单价:</label>
-										<div class="col-xs-6"><input type="text" class="form-control" /></div>
-									</div>
-									<div class="form-group">
-										<label for="" class="col-xs-3 text-right control-label">
-											金额:
-										</label>
-										<div class="col-xs-6"><input type="text" class="form-control" /></div>
-									</div>
-									<div class="form-group">
-										<div for="" class="col-xs-12 text-right">
-											<button class="btn btn-info btn-xs">确定</button>
-										</div>
-									</div>
-								</form>
-							</div> &ndash;&gt;
-						</div>
-						<span class="form-control-feedback text-simple"><i class="fa fa-search"></i></span>
-					</div>
-				</div>
-			</div>
-			<div class="col-xs-1">
-				<div class="text-default f14 total">
-					共 <span ng-bind="tableParams.total()" class="text-num"></span>
-				</div>
-			</div>
-			<div class="col-xs-2 toggle">
-				<a ng-click="condition.$open=!condition.$open" class="text-simple"><span ng-bind="condition.$open ? '简化筛选条件' : '更多筛选条件'"></span><i class="fa fa-fw" ng-class="{'fa-angle-up': condition.$open, 'fa-angle-down': !condition.$open}"></i></a>
-			</div>-->
 		</div>
 	</div>
-<!--<div class="height10">&nbsp;</div>-->
 	<div class="condition block">
 		<div class="search-bg condition block" style="padding: 10px 15px;">
 			<div class="row">
@@ -306,8 +280,8 @@
 			</div>
 		</div>
 	</div>
-<table class="order-table block" ng-table="tableParams">
-	<thead>
+	<table class="order-table block" ng-table="tableParams">
+		<thead>
 		<tr class="header">
 			<th width="400">产品</th>
 			<th width="100">单价</th>
@@ -323,19 +297,8 @@
 			<td colspan="5">
 				<div>
 					<label><input type="checkbox" class="selector select_all"
-						ng-model="checkboxes.checked" ng-click="checkAll()">全选</label> <a ng-if="active=='todo'" href="javascript:void(0)"
-						class="btn btn-default btn-xs" ng-click="replyByBatch();setOrdersReadByBatch()" title="选中的单据按照客户需求的数量和交期默认回复">&nbsp;批量回复&nbsp;</a>
-						<!--<div class="btn-group dropdown">
-  							<button type="button" class="btn btn-default btn-xs dropdown-toggle" data-toggle="dropdown" aria-expanded="true">
-    							&nbsp;&nbsp;标记为&nbsp;&nbsp;<span class="caret"></span>&nbsp;
-  							</button>
-  							<ul class="dropdown-menu" role="menu">
-    							<li><a href="javascript:void(0)" ng-click="setDisplay('setRead')">已查看</a></li>
-    							<li><a href="javascript:void(0)" ng-click="setDisplay('setUnRead')">未查看</a></li>
-    							<li><a href="javascript:void(0)" ng-click="setDisplay('setTop')">置顶</a></li>
-  							</ul>
-						</div>-->
-						<span class="text-muted">
+								  ng-model="checkboxes.checked" ng-click="checkAll()">全选</label> <a ng-if="active=='todo'" href="javascript:void(0)"
+					<span class="text-muted">
 							&nbsp;&nbsp;<i class="fa fa-exclamation-triangle"></i> 批量回复是对选中的单据按照满足客户需求的数量和交期默认回复。
 						</span>
 				</div> <!-- 分页 -->
@@ -347,8 +310,8 @@
 		<tr class="sep-row">
 			<td colspan="6"></td>
 		</tr>
-	</thead>
-	<tbody ng-if="tableParams.total() == 0">
+		</thead>
+		<tbody ng-if="tableParams.total() == 0">
 		<tr>
 			<td colspan="6">
 				<div class="row text-muted info-container" style="padding: 50px 10px;">
@@ -365,15 +328,15 @@
 						<div class="f14">
 							<div class="info">
 								<p>1、您的客户还没有提交审核采购订单<br>
-								解决:与您的客户沟通确认单据是否已经审核(只有客户ERP中已经审核的单据才能接收到)</p>
+									解决:与您的客户沟通确认单据是否已经审核(只有客户ERP中已经审核的单据才能接收到)</p>
 							</div>
 							<div class="info">
 								<p>2、客户ERP中供应商信息有误<br>
-								解决:与您的客户沟通确认您的信息在客户的供应商资料中是否维护正确,尤其是企业UU号</p>
+									解决:与您的客户沟通确认您的信息在客户的供应商资料中是否维护正确,尤其是企业UU号</p>
 							</div>
 							<div class="info">
 								<p>3、您的客户正在使用旧版本的UAS商务平台<br>
-								解决:我们仍有部分用户在使用旧版本UAS商务平台系统,你可以用您的企业UU号和管理员个人UU号 <a href="http://www.usoftchina.com" class="text-bold text-link" title="http://www.usoftchina.com" target="_blank">登陆旧版本UAS商务平台</a></p>
+									解决:我们仍有部分用户在使用旧版本UAS商务平台系统,你可以用您的企业UU号和管理员个人UU号 <a href="http://www.usoftchina.com" class="text-bold text-link" title="http://www.usoftchina.com" target="_blank">登陆旧版本UAS商务平台</a></p>
 							</div>
 						</div>
 						<br>
@@ -382,13 +345,13 @@
 				</div>
 			</td>
 		</tr>
-	</tbody>
-	<tbody ng-repeat="order in $data track by order.id">
+		</tbody>
+		<tbody ng-repeat="order in $data track by order.id">
 		<tr class="order-hd" ng-dblclick="order.$collapsed=!order.$collapsed" ng-class="{'text-bold': order.display>0}">
 			<td class="first" colspan="4">
 				<div class="order-main">
 					<span> <input type="checkbox" class="selector"
-						ng-model="order.$selected" ng-click="checkOne(order)">
+								  ng-model="order.$selected" ng-click="checkOne(order)">
 					</span>
 					<a href="javascript:void(0)" ng-if="!order.display && !isUnread(order.id)" title="标记为未查看" ng-click="setDisplay('setUnRead', order.id)">
 						<i class="fa fa-circle-thin"></i>
@@ -400,14 +363,14 @@
 						<i class="fa fa-tags" style="color: #f40;"></i>
 					</a>
 					&nbsp;&nbsp;<span class="text-num text-bold"
-						ng-bind="::order.date | date:'yyyy-MM-dd'"></span>
+									  ng-bind="::order.date | date:'yyyy-MM-dd'"></span>
 					<span ng-bind="::order.enterprise.enName"></span>
 					<span>订单号:<a class="text-num order-detail" ng-bind="::order.code" ui-sref="sale.order_detail({id:order.id})" target="_self" title="查看详情" ng-click="setOrdersRead(order.id)"></a></span>
 				</div>
 			</td>
 			<td ng-if="!isUser" colspan="1" class="order-sum">{{::order.currency}}: <span
-				ng-bind="getOrderTotal(order.orderItems) | number : 2"
-				class="text-num text-bold"></span>
+					ng-bind="getOrderTotal(order.orderItems) | number : 2"
+					class="text-num text-bold"></span>
 			</td>
 			<td ng-if="isUser" colspan="1" class="order-sum"></td>
 			<td colspan="1" class="text-center">
@@ -415,7 +378,7 @@
 				<span ng-if="!order.print" class="label ng-scope operates-status" style="margin-right: 5px;background-color: #CA3955">未打印</span>
 				<div class="operates">
 					<a ng-click="print(order);" title="打印{{order.print? '(已打印)':'(未打印)'}}" ng-class="{'unPrinted' : !order.print, 'text-muted': order.print}"><i
-						class="fa fa-print fa-lg"></i></a> <a
+							class="fa fa-print fa-lg"></i></a> <a
 						ng-click="order.$collapsed=!order.$collapsed" class="text-muted"
 						title="收拢"><i class="fa fa-toggle-down fa-lg"></i></a>
 				</div>
@@ -425,17 +388,18 @@
 			ng-if="!order.$collapsed ">
 			<td class="product">
 				<div class="text-num order-number" ng-class="{'key': item.key&&order.$showAll}" title="第{{::item.number}}行">{{::item.number}}</div>
-				<div class="text-num text-bold">
+				<div class="text-num text-bold text-overflow" title="{{::item.product.code}}">
 					<span ng-bind="::item.product.code"></span>
 				</div>
-				<div>
+				<div class="text-overflow" title="{{::item.product.title}}">
 					<span ng-bind="::item.product.title"></span>
 				</div>
-				<div class="text-muted"
-					ng-bind="::item.product.spec"></div>
-				<div class="text-muted text-bold" ng-if="item.vendspec"><span ng-bind="::item.vendspec"></span></div>
-				<div class="text-bold text-inverse" ng-if="item.factory">送货工厂:<span ng-bind="::item.factory"></span></div>
-				<div class="text-bold text-inverse" ng-if="item.remark">备注:<span ng-bind="::item.remark"></span></div>
+				<div class="text-muted text-over"
+					 title="{{::item.product.spec}}"
+					 ng-bind="::item.product.spec"></div>
+				<div class="text-muted text-bold text-overflow" ng-if="item.vendspec" title="{{item.vendspec}}"><span ng-bind="::item.vendspec"></span></div>
+				<div class="text-bold text-inverse text-flow" ng-if="item.factory" title="{{item.factory}}"><b>送货工厂:</b><span ng-bind="::item.factory"></span></div>
+				<div class="text-bold text-inverse text-flow" ng-if="item.remark" title="{{item.remark}}"><b>备注:</b><span ng-bind="::item.remark"></span></div>
 			</td>
 			<td class="text-center">
 				<div ng-if="!isUser" class="text-num" ng-bind="::item.price | number:6"></div>
@@ -446,26 +410,26 @@
 				<div class="text-muted" ng-bind="::item.product.unit"></div>
 				<div style="margin: 0 auto" ng-if="item.$editing">
 					<input type="number" ng-model="item.reply.qty" min="0"
-						ng-init="item.reply.qty=item.qty-item.replyQty"
-						class="form-control input-xs" placeholder="0~{{item.qty-item.replyQty}}">
+						   ng-init="item.reply.qty=item.qty-item.replyQty"
+						   class="form-control input-xs" placeholder="0~{{item.qty-item.replyQty}}">
 				</div>
 			</td>
 			<td class="text-center br-l">
 				<div class="text-num" ng-bind="::item.delivery | date:'yyyy-MM-dd'"></div>
 				<br>
 				<div style="margin: 0 auto"
-					class="input-group input-group-xs input-trigger"
-					ng-if="item.$editing">
+					 class="input-group input-group-xs input-trigger"
+					 ng-if="item.$editing">
 					<input type="text" ng-model="item.reply.delivery" ng-init="item.reply.delivery= ''"
-						class="form-control" placeholder="回复交期" readonly
-						datepicker-popup="yyyy-MM-dd" is-open="item.$opened"
-						min-date="nowdate" ng-required="true" current-text="今天"
-						clear-text="清除" close-text="关闭"
-						datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
-						ng-click="openDatePicker($event, item, '$opened')"> <span
+						   class="form-control" placeholder="回复交期" readonly
+						   datepicker-popup="yyyy-MM-dd" is-open="item.$opened"
+						   min-date="nowdate" ng-required="true" current-text="今天"
+						   clear-text="清除" close-text="关闭"
+						   datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
+						   ng-click="openDatePicker($event, item, '$opened')"> <span
 						class="input-group-btn">
 						<button type="button" class="btn btn-default"
-							ng-click="openDatePicker($event, item, '$opened')">
+								ng-click="openDatePicker($event, item, '$opened')">
 							<i class="fa fa-calendar"></i>
 						</button>
 					</span>
@@ -475,27 +439,18 @@
 				<div ng-if="!item.$editing">
 					<div ng-if="!item.replyQty" class="text-muted text-center">未回复</div>
 					<div ng-if="item.replyQty > 0 && item.replyQty < item.qty">
-						<!--<div class="progress progress-sm">
-							<div class="progress-bar progress-bar-success"
-								ng-style="{'width': 100*item.replyQty/item.qty + '%'}">
-								<span class="sr-only"></span>
-							</div>
-						</div>
-						已回复 <span class="text-default">{{::item.replyQty}}</span> /
-						<span>{{::item.qty}}</span>-->
-
 						已回复 <span class="text-default">{{::item.latestReplyQty}}</span>
 
 					</div>
 					<div ng-if="item.replyQty > 0" class="dropdown" ng-class="{'text-center': item.replyQty>=item.qty}">
 						<a href="javascript:void(0);" class="dropdown-toggle text-default"
-							ng-mouseover="getReply(item)">回复历史<i class="fa fa-fw fa-angle-down"></i></a>
+						   ng-mouseover="getReply(item)">回复历史<i class="fa fa-fw fa-angle-down"></i></a>
 						<div class="dropdown-menu pane" style="width: 270px;">
 							<div class="pane-body">
 								<ul class="list-unstyled list-menu">
 									<li ng-repeat="reply in ::item.replies">
 										<div class="row row-sm"
-											ng-class="{'text-inverse': $index==0}">
+											 ng-class="{'text-inverse': $index==0}">
 											<div class="col-xs-6">
 												<span ng-if="reply.qty < 0"> 撤销</span>
 												数量 {{::reply.qty}}
@@ -520,7 +475,7 @@
 				</div>
 				<div style="margin: 0 auto" ng-if="item.$editing">
 					<br><br><input type="text" ng-model="item.reply.remark" ng-init="item.reply.remark = ''"
-						class="form-control input-xs" placeholder="回复备注" />
+								   class="form-control input-xs" placeholder="回复备注" />
 				</div>
 			</td>
 			<td class="text-center br-l">
@@ -553,14 +508,6 @@
 				</div>
 			</td>
 		</tr>
-		<!-- <tr ng-if="!order.$collapsed && searchFilterXls.keyword" style="cursor: pointer;padding: 10px 0;">
-			<td colspan="6" class="text-center text-simple" ng-if="!order.$showAll" style="cursor: pointer;padding: 10px 0;" ng-click="order.$showAll = true">
-				展开所有明细(包括不含关键词的) <i class="fa fa-angle-down"></i>
-			</td>
-			<td colspan="6" class="text-center text-simple" ng-if="order.$showAll" style="cursor: pointer;padding: 10px 0;" ng-click="order.$showAll = true">
-				收起不含关键词的明细 <i class="fa fa-angle-up"></i>
-			</td>
-		</tr> -->
-	</tbody>
-</table>
+		</tbody>
+	</table>
 </div>

+ 159 - 160
src/main/webapp/resources/tpl/index/sale/order_detail.html

@@ -1,3 +1,31 @@
+<style>
+	.order-bd .product .text-over{
+		display: inline-block;
+		width: 1200px;
+		white-space: nowrap;
+		text-overflow: ellipsis;
+		overflow: hidden;
+	}
+	.order-bd .product div.text-flow b{
+		float: left;
+	}
+	.order-bd .product div.text-flow span{
+		float: left;
+		display: inline-block;
+		width: 290px;
+		white-space: nowrap;
+		text-overflow: ellipsis;
+		overflow: hidden;
+	}
+	.order-bd .product div.text-overflow span{
+		float: left;
+		display: inline-block;
+		width: 340px;
+		white-space: nowrap;
+		text-overflow: ellipsis;
+		overflow: hidden;
+	}
+</style>
 <div class="loading" ng-class="{'in': loading}">
 	<i></i>
 </div>
@@ -6,7 +34,7 @@
 		<span>客户采购单</span>
 		<div class="p-right">
 			<a ng-click="print(order)" class="pull-right text-simple"><i class="fa fa-print fa-fw"></i>打印</a>
-            <a ng-click="fileDownload(order.id)" class="pull-right text-simple"><i class="fa fa-file fa-fw"></i>附件下载</a>
+			<a ng-click="fileDownload(order.id)" class="pull-right text-simple"><i class="fa fa-file fa-fw"></i>附件下载</a>
 		</div>
 	</div>
 	<div class="pane-body">
@@ -29,10 +57,6 @@
 			</div>
 		</div>
 		<div class="row row-sm item">
-			<!--<div class="col-xs-3">
-				<span class="title">采购类型:</span>
-				<div class="content" ng-bind="::order.type"></div>
-			</div>-->
 			<div class="col-xs-3">
 				<span class="title">录单人:</span>
 				<div class="content" ng-bind="::order.recorder"></div>
@@ -41,21 +65,7 @@
 				<span class="title">备注:</span>
 				<div class="content" ng-bind="::order.remark"></div>
 			</div>
-			<!-- <div class="col-xs-6">
-				<span class="title">审批人:</span>
-				<div class="content" ng-bind="::order.auditor"></div>
-			</div> -->
-			<!--<div class="col-xs-6">
-				<span class="title">采购员:</span>
-				<div class="content" ng-bind="::order.user.userName"></div>
-			</div>-->
 		</div>
-		<!--<div class="row row-sm item">
-			<div class="col-xs-12">
-				<span class="title">备注:</span>
-				<div class="content" ng-bind="::order.remark"></div>
-			</div>
-		</div>-->
 		<div class="title-div" style="border-bottom: 1px dashed #327ebe;">
 			<span class="f14">交易信息</span>&nbsp;
 		</div>
@@ -64,10 +74,6 @@
 				<span class="title">币别:</span>
 				<div ng-if="!isUser" class="content" ng-bind="::order.currency"></div>
 			</div>
-			<!--<div class="col-xs-3">
-				<span class="title">汇率:</span>
-				<div class="content" ng-bind="::order.rate"></div>
-			</div>-->
 			<div class="col-xs-3">
 				<span class="title">金额:</span>
 				<div ng-if="!isUser" class="content" ng-bind="::order.total | number:2"></div>
@@ -89,162 +95,155 @@
 		<div class="block">
 			<table class="block table table-default table-striped table-hover" style=" margin-bottom: 0">
 				<thead>
-					<tr class="header">
-						<th width="50">序号</th>
-						<th width="200">产品</th>
-						<th width="80">单价</th>
-						<th width="80">税率</th>
-						<th width="110">数量</th>
-						<th width="50">单位</th>
-						<th width="120">交货日期</th>
-						<th width="120">回复状态</th>
-						<th width="100">操作</th>
-					</tr>
+				<tr class="header">
+					<th width="50">序号</th>
+					<th width="200">产品</th>
+					<th width="80">单价</th>
+					<th width="80">税率</th>
+					<th width="110">数量</th>
+					<th width="50">单位</th>
+					<th width="120">交货日期</th>
+					<th width="120">回复状态</th>
+					<th width="100">操作</th>
+				</tr>
 				</thead>
 			</table>
 			<table class="block table table-default table-striped table-hover" ng-class="{'scoroll':order.orderItems.length>10}">
 				<tbody>
-					<tr ng-repeat="item in order.orderItems track by item.id">
-						<td class="text-center text-num" width="50">
-							<span ng-bind="::item.number"></span>
-						</td>
-						<td width="200">
-							<div class="text-num">
-								<span ng-bind="::item.product.code"></span>
-							</div>
-							<div>
-								<span ng-bind="::item.product.title"></span>
-							</div>
-							<div class="text-muted" ng-bind="::item.product.spec"></div>
-							<div class="text-muted text-bold" ng-if="item.vendspec"><span ng-bind="::item.vendspec"></span></div>
-							<div class="text-bold text-inverse" ng-if="item.factory">送货工厂:<span ng-bind="::item.factory"></span></div>
-							<div class="text-bold text-inverse" ng-if="item.remark">备注:<span ng-bind="::item.remark"></span></div>
-							<div ng-repeat="att in item.attachs" class="text-bold text-bold">
-								<a href="file/{{att.id}}">{{att.name}}</a>
-							</div>
-						</td>
-						<td class="text-center" width="80">
-							<div ng-if="!isUser" class="text-num" ng-bind="::item.price | number:6"></div>
-						</td>
-						<td class="text-center" width="80">
-							<div class="text-muted">{{::item.taxrate || 0}}%</div>
-						</td>
-						<td class="text-center" width="110">
-							<div class="text-num" ><span ng-bind="::item.qty"></span></div>
-							<div style="margin-top: 20px" ng-if="item.$editing">
-								<input type="text" ng-model="item.reply.qty" min="0"
-									ng-init="item.reply.qty=item.qty-item.replyQty"
-									class="form-control input-xs" placeholder="0~{{item.qty-item.replyQty}}">
-							</div>
-						</td>
-						<td class="text-center" width="50">
-							<div class="text-num" ><span ng-bind="::item.product.unit"></span></div>
-						</td>
-						<td class="text-center" width="120">
-							<div class="text-num"
-								ng-bind="::item.delivery | date:'yyyy-MM-dd'"></div>
-							<div style="margin-top: 20px"
-								class="input-group input-group-xs input-trigger"
-								ng-if="item.$editing">
-								<input type="text" ng-model="item.reply.delivery" ng-init="item.reply.delivery=parseDate(item.delivery)"
-									class="form-control" placeholder="回复交期" readonly
-									datepicker-popup="yyyy-MM-dd" is-open="item.$opened"
-									min-date="order.date" ng-required="true" current-text="今天"
-									clear-text="清除" close-text="关闭"
-									datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
-									ng-click="openDatePicker($event, item, '$opened')"> <span
-									class="input-group-btn">
+				<tr ng-repeat="item in order.orderItems track by item.id">
+					<td class="text-center text-num" width="50">
+						<span ng-bind="::item.number"></span>
+					</td>
+					<td width="200">
+						<div class="text-num text-overflow" title="{{::item.product.code}}">
+							<span ng-bind="::item.product.code"></span>
+						</div>
+						<div class="text-overflow" title="{{::item.product.title}}">
+							<span ng-bind="::item.product.title"></span>
+						</div>
+						<div class="text-muted text-over" ng-bind="::item.product.spec" title="{{::item.product.spec}}"></div>
+						<div class="text-muted text-bold text-overflow" ng-if="item.vendspec" title="item.vendspec"><span ng-bind="::item.vendspec"></span></div>
+						<div class="text-bold text-inverse text-flow" ng-if="item.factory" title="{{item.factory}}"><b>送货工厂:</b><span ng-bind="::item.factory"></span></div>
+						<div class="text-bold text-inverse text-flow" ng-if="item.remark" title="{{item.remark}}"><b>备注:</b><span ng-bind="::item.remark"></span></div>
+						<div ng-repeat="att in item.attachs" class="text-bold text-bold text-overflow">
+							<a href="file/{{att.id}}">{{att.name}}</a>
+						</div>
+					</td>
+					<td class="text-center" width="80">
+						<div ng-if="!isUser" class="text-num" ng-bind="::item.price | number:6"></div>
+					</td>
+					<td class="text-center" width="80">
+						<div class="text-muted">{{::item.taxrate || 0}}%</div>
+					</td>
+					<td class="text-center" width="110">
+						<div class="text-num" ><span ng-bind="::item.qty"></span></div>
+						<div style="margin-top: 20px" ng-if="item.$editing">
+							<input type="text" ng-model="item.reply.qty" min="0"
+								   ng-init="item.reply.qty=item.qty-item.replyQty"
+								   class="form-control input-xs" placeholder="0~{{item.qty-item.replyQty}}">
+						</div>
+					</td>
+					<td class="text-center" width="50">
+						<div class="text-num" ><span ng-bind="::item.product.unit"></span></div>
+					</td>
+					<td class="text-center" width="120">
+						<div class="text-num"
+							 ng-bind="::item.delivery | date:'yyyy-MM-dd'"></div>
+						<div style="margin-top: 20px"
+							 class="input-group input-group-xs input-trigger"
+							 ng-if="item.$editing">
+							<input type="text" ng-model="item.reply.delivery" ng-init="item.reply.delivery=parseDate(item.delivery)"
+								   class="form-control" placeholder="回复交期" readonly
+								   datepicker-popup="yyyy-MM-dd" is-open="item.$opened"
+								   min-date="order.date" ng-required="true" current-text="今天"
+								   clear-text="清除" close-text="关闭"
+								   datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
+								   ng-click="openDatePicker($event, item, '$opened')"> <span
+								class="input-group-btn">
 									<button type="button" class="btn btn-default"
-										ng-click="openDatePicker($event, item, '$opened')">
+											ng-click="openDatePicker($event, item, '$opened')">
 										<i class="fa fa-calendar"></i>
 									</button>
 								</span>
+						</div>
+					</td>
+					<td width="120">
+						<div ng-show="!item.$editing">
+							<div ng-if="!item.replyQty" class="text-muted text-center">未回复</div>
+							<div ng-if="item.replyQty > 0 && item.replyQty < item.qty">
+								已回复 <span class="text-default">{{::item.latestReplyQty}}</span>
 							</div>
-						</td>
-						<td width="120">
-							<div ng-show="!item.$editing">
-								<div ng-if="!item.replyQty" class="text-muted text-center">未回复</div>
-								<div ng-if="item.replyQty > 0 && item.replyQty < item.qty">
-									<!--<div class="progress progress-sm">
-										<div class="progress-bar progress-bar-success"
-											ng-style="{'width': 100*item.replyQty/item.qty + '%'}">
-											<span class="sr-only"></span>
-										</div>
-									</div>
-									已回复 <span class="text-default">{{::item.replyQty}}</span> / <span>{{::item.qty}}</span>-->
-									已回复 <span class="text-default">{{::item.latestReplyQty}}</span>
-								</div>
-								<div ng-if="item.replyQty > 0" class="dropdown"
-									ng-class="{'text-center': item.replyQty>=item.qty}">
-									<a href="javascript:void(0);"
-										class="dropdown-toggle text-default"
-										ng-mouseover="getReply(item)">回复历史<i
+							<div ng-if="item.replyQty > 0" class="dropdown"
+								 ng-class="{'text-center': item.replyQty>=item.qty}">
+								<a href="javascript:void(0);"
+								   class="dropdown-toggle text-default"
+								   ng-mouseover="getReply(item)">回复历史<i
 										class="fa fa-fw fa-angle-down"></i></a>
-									<div class="dropdown-menu pane" style="width: 270px;">
-										<div class="pane-body">
-											<ul class="list-unstyled list-menu">
-												<li ng-repeat="reply in ::item.replies">
-													<div class="row row-sm"
-														ng-class="{'text-inverse': $index==0}">
-														<div class="col-xs-6">
-															<span ng-if="reply.qty < 0"> 撤销</span>
-															数量 {{::reply.qty}}
-														</div>
-														<div class="col-xs-6">交期{{::reply.delivery |
-															date:'yyyy-MM-dd'}}</div>
+								<div class="dropdown-menu pane" style="width: 270px;">
+									<div class="pane-body">
+										<ul class="list-unstyled list-menu">
+											<li ng-repeat="reply in ::item.replies">
+												<div class="row row-sm"
+													 ng-class="{'text-inverse': $index==0}">
+													<div class="col-xs-6">
+														<span ng-if="reply.qty < 0"> 撤销</span>
+														数量 {{::reply.qty}}
 													</div>
-													<div class="text-muted">{{::reply.recorder}}{{::reply.date
-														| date:'yyyy-MM-dd HH:mm:ss'}}回复</div>
-													<div class="text-muted" ng-if="reply.remark != null">备注:{{::reply.remark}}</div>
-												</li>
-											</ul>
-										</div>
+													<div class="col-xs-6">交期{{::reply.delivery |
+														date:'yyyy-MM-dd'}}</div>
+												</div>
+												<div class="text-muted">{{::reply.recorder}}{{::reply.date
+													| date:'yyyy-MM-dd HH:mm:ss'}}回复</div>
+												<div class="text-muted" ng-if="reply.remark != null">备注:{{::reply.remark}}</div>
+											</li>
+										</ul>
 									</div>
 								</div>
 							</div>
-							<div ng-if="item.acceptQty" class="text-success text-center text-bold f14">
-								客户验收:{{::item.acceptQty}}{{::item.product.unit}}
-							</div>
-							<div ng-if="item.returnQty" class="text-error text-center text-bold f14">
-								客户验退:{{::item.returnQty}}{{::item.product.unit}}
-							</div>
-							<div style="margin: 0 auto" ng-if="item.$editing">
-								<input type="text"
-									   ng-model="item.reply.remark" class="form-control input-xs"  ng-init="item.reply.remark = ''"
-									   placeholder="回复备注" />
-							</div>
-						</td>
-						<td class="text-center" width="100">
-							<div ng-if="item.replyQty>=item.qty" class="block">
-								<span class="text-trans success">已回复</span>
-							</div>
-							<div ng-if="item.end" class="block">
-								<span class="text-trans warning">已结案</span>
-							</div>
-							<div
+						</div>
+						<div ng-if="item.acceptQty" class="text-success text-center text-bold f14">
+							客户验收:{{::item.acceptQty}}{{::item.product.unit}}
+						</div>
+						<div ng-if="item.returnQty" class="text-error text-center text-bold f14">
+							客户验退:{{::item.returnQty}}{{::item.product.unit}}
+						</div>
+						<div style="margin: 0 auto" ng-if="item.$editing">
+							<input type="text"
+								   ng-model="item.reply.remark" class="form-control input-xs"  ng-init="item.reply.remark = ''"
+								   placeholder="回复备注" />
+						</div>
+					</td>
+					<td class="text-center" width="100">
+						<div ng-if="item.replyQty>=item.qty" class="block">
+							<span class="text-trans success">已回复</span>
+						</div>
+						<div ng-if="item.end" class="block">
+							<span class="text-trans warning">已结案</span>
+						</div>
+						<div
 								ng-if="(!item.replyQty || item.replyQty<=item.qty) && !item.end">
-								<br ng-if="item.replyQty>=item.qty">
-								<br ng-if="item.replyQty>=item.qty">
-								<div ng-show="!item.$editing">
-									<a ng-click="item.$editing=!item.$editing" ng-if="item.acceptQty-item.returnQty < item.qty">回复</a>
+							<br ng-if="item.replyQty>=item.qty">
+							<br ng-if="item.replyQty>=item.qty">
+							<div ng-show="!item.$editing">
+								<a ng-click="item.$editing=!item.$editing" ng-if="item.acceptQty-item.returnQty < item.qty">回复</a>
+							</div>
+							<div ng-if="item.$editing">
+								<div>
+									<a ng-click="item.$editing=!item.$editing">取消</a>
 								</div>
-								<div ng-if="item.$editing">
-									<div>
-										<a ng-click="item.$editing=!item.$editing">取消</a>
-									</div>
+								<br>
+								<div class="text-left">
+									<a ng-click="onReplyClick(item)" class="text-inverse">
+										<i class="fa fa-arrow-up"></i> 确认回复
+									</a>
 									<br>
-									<div class="text-left">
-										<a ng-click="onReplyClick(item)" class="text-inverse">
-											<i class="fa fa-arrow-up"></i> 确认回复
-										</a>
-										<br>
-										<a ng-if="item.replyQty"  ng-click="onReplyClick(item, -1)" class="text-muted" title="减去已回复数量">
-											<i class="fa fa-arrow-down"></i> 撤销回复</a>
-									</div>
+									<a ng-if="item.replyQty"  ng-click="onReplyClick(item, -1)" class="text-muted" title="减去已回复数量">
+										<i class="fa fa-arrow-down"></i> 撤销回复</a>
 								</div>
 							</div>
-						</td>
-					</tr>
+						</div>
+					</td>
+				</tr>
 				</tbody>
 			</table>
 		</div>