Преглед изворни кода

代采定单传输数据容错处理,页面显示处理,增加统计金额的功能

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@10743 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d
hejq пре 8 година
родитељ
комит
86b96e1616

+ 10 - 0
src/main/java/com/uas/platform/b2b/controller/DeputyOrderController.java

@@ -616,4 +616,14 @@ public class DeputyOrderController {
 		pageInfo.filter("statuscode", Status.NOTAGREED.value());
 		return deputyOrderService.getOrders(pageInfo, filter);
 	}
+
+	/**
+	 * 获取所有已提交订单的总金额
+	 * 
+	 * @return
+	 */
+	@RequestMapping(value = "/odersAmount", method = RequestMethod.GET)
+	public ModelMap odersAmount() {
+		return deputyOrderService.odersAmount();
+	}
 }

+ 5 - 3
src/main/java/com/uas/platform/b2b/erp/controller/DeputyOrderDownController.java

@@ -84,9 +84,11 @@ public class DeputyOrderDownController {
 		for (String id : idStr) {
 			if (id != null) {
 				DeputyOrder deOrder = deputyOrderDao.findOne(Long.valueOf(id));
-				deOrder.setDownloadstatus("已下载");
-				deOrder.setErpdate(new Date());
-				deputyOrderDao.save(deOrder);
+				if (null != deOrder) {
+					deOrder.setDownloadstatus("已下载");
+					deOrder.setErpdate(new Date());
+					deputyOrderDao.save(deOrder);
+				}
 			}
 		}
 	}

+ 7 - 0
src/main/java/com/uas/platform/b2b/service/DeputyOrderService.java

@@ -174,4 +174,11 @@ public interface DeputyOrderService {
 	 * @return
 	 */
 	public SPage<DeputyOrder> getOrders(PageInfo pageInfo, SearchFilter searchFilter);
+
+	/**
+	 * 获取已提交、已下载订单总金额
+	 * 
+	 * @return
+	 */
+	public ModelMap odersAmount();
 }

+ 13 - 0
src/main/java/com/uas/platform/b2b/service/impl/DeputyOrderServiceImpl.java

@@ -22,6 +22,7 @@ import org.springframework.data.jpa.domain.Specification;
 import org.springframework.stereotype.Service;
 import org.springframework.ui.ModelMap;
 
+import com.uas.platform.b2b.dao.CommonDao;
 import com.uas.platform.b2b.dao.DeputyHisVendorsDao;
 import com.uas.platform.b2b.dao.DeputyLastOrderKeywordsDao;
 import com.uas.platform.b2b.dao.DeputyOrderDao;
@@ -88,6 +89,9 @@ public class DeputyOrderServiceImpl implements DeputyOrderService {
 	@Autowired
 	private PagingReleaseCountDao pagingReleaseCountDao;
 
+	@Autowired
+	private CommonDao commonDao;
+
 	@Override
 	public ModelMap releaseByWorkbook(Workbook workbook) {
 		ModelMap modelMap = new ModelMap();
@@ -536,4 +540,13 @@ public class DeputyOrderServiceImpl implements DeputyOrderService {
 		}, pageInfo);
 	}
 
+	@Override
+	public ModelMap odersAmount() {
+		DecimalFormat df = new java.text.DecimalFormat("#.00");
+		String sql = "select nvl(sum(deo_totalamount), 0) from purc$deputyorders where deo_enuu = "
+				+ SystemSession.getUser().getEnterprise().getUu()
+				+ " and deo_entrystatus = '已提交' and deo_downloadstatus = '已下载'";
+		return new ModelMap("amount", df.format(commonDao.queryForObject(sql, Double.class)));
+	}
+
 }

+ 25 - 7
src/main/webapp/resources/js/index/app.js

@@ -1,6 +1,6 @@
-define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives', 'service/Purc', 'service/Make', 'service/Fa', 'service/Account', 'service/Alert', 'service/CheckTel', 'ui.router', 'ui.bootstrap', 'file-upload', 'ngSanitize', 'service/BaseInfo', 'service/Cart', 'service/ApprovalFlow', 'service/DeputyOrder', 'service/Product'], function () {
+define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives', 'service/Purc', 'service/Make', 'service/Fa', 'service/Account', 'service/Alert', 'service/CheckTel', 'ui.router', 'ui.bootstrap', 'file-upload', 'ngSanitize', 'service/BaseInfo', 'service/Cart', 'service/ApprovalFlow', 'service/DeputyOrder', 'service/Product', 'service/Token'], function () {
     'use strict';
-    var app = angular.module('myApp', ['toaster', 'angularCharts', 'ngTable', 'ui.router', 'common.services', 'common.directives', 'PurcServices', 'MakeServices', 'FaServices', 'AccountServices', 'AlertServices', 'ui.bootstrap', 'angularFileUpload', 'ngSanitize', 'CheckTelModule', 'ProductServices', 'CartServices', 'ApprvoalFlowService', 'DeputyOrderService', 'ProductInfoServices']);
+    var app = angular.module('myApp', ['toaster', 'angularCharts', 'ngTable', 'ui.router', 'common.services', 'common.directives', 'PurcServices', 'MakeServices', 'FaServices', 'AccountServices', 'AlertServices', 'ui.bootstrap', 'angularFileUpload', 'ngSanitize', 'CheckTelModule', 'ProductServices', 'CartServices', 'ApprvoalFlowService', 'DeputyOrderService', 'ProductInfoServices', 'TokenService']);
     app.init = function () {
         angular.bootstrap(document, ['myApp']);
     };
@@ -2840,14 +2840,13 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
         };
     }]);
 
-    app.controller('SaleOrderCtrl', ['$scope', '$filter', 'PurcOrderItem', 'PurcOrder', 'ngTableParams', 'toaster', 'ReportService', 'BaseService', 'PurcOrderItemHis', 'PagingRelease', 'SnapshotService', 'PurcOrderItemInfo', function ($scope, $filter, PurcOrderItem, PurcOrder, ngTableParams, toaster, ReportService, BaseService, PurcOrderItemHis, PagingRelease, SnapshotService, PurcOrderItemInfo) {
+    app.controller('SaleOrderCtrl', ['$scope', '$filter', 'PurcOrderItem', 'PurcOrder', 'ngTableParams', 'toaster', 'ReportService', 'BaseService', 'PurcOrderItemHis', 'PagingRelease', 'SnapshotService', 'PurcOrderItemInfo', 'token', function ($scope, $filter, PurcOrderItem, PurcOrder, ngTableParams, toaster, ReportService, BaseService, PurcOrderItemHis, PagingRelease, SnapshotService, PurcOrderItemInfo, token) {
         BaseService.scrollBackToTop();
 
         $scope.active = 'todo';
         $scope.dateZoneText = '不限';
         $scope.deliveryZoneText = '不限';
         $scope.condition = {dateZone: 1, deliveryZone: -1};
-
         /* 时间筛选初始化*/
         var fromDate = new Date();
         var toDate = new Date();
@@ -2911,7 +2910,7 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
                 getService()[getState($scope.active)].call(null, BaseService.parseParams(pageParams), function (page) {
                     $scope.loading = false;
                     if (page) {
-
+                    	console.log(page);
                         //获取每个明细单最新回复数
                         angular.forEach(page.content, function(order){
                             angular.forEach(order.orderItems, function(item){
@@ -2920,7 +2919,6 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
                                 });
                             });
                         });
-
                         $defer.resolve(page.content);
                         params.total(page.totalElement);
                         $scope.searchFilterXls = angular.copy(pageParams.searchFilter);//保存当前取值的条件
@@ -3013,6 +3011,17 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
             return new Date();
         };
 
+        // 获取token信息
+        $scope.getToken = function() {
+        	if($scope.token == null) {
+        		token.info({userType: 'sale'}, {}, function(data) {
+        			$scope.token = data.token;
+        		}, function(response) {
+        			toaster.pop('error', '提示', response.data);
+        		});
+        	}
+        }
+        
         $scope.onReplyClick = function (item, inverse) {
             if (item.reply) {
                 if (!item.reply.qty || item.reply.qty < 0 || item.reply.qty > item.qty) {
@@ -3028,7 +3037,7 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
                 }
                 if (inverse && inverse == -1) reply.qty = -1 * reply.qty;// 取相反
                 $scope.loading = true;
-                PurcOrderItem.reply({orderItemId: item.id}, reply, function () {
+                PurcOrderItem.reply({orderItemId: item.id, token: $scope.token}, reply, function () {
                     $scope.loading = false;
                     toaster.pop('info', '提示', (inverse == -1 ? '撤销成功' : '回复成功'));
                     $scope.tableParams.reload();
@@ -15139,6 +15148,15 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
         }
         getSerivce();
         
+        // 获取订单总金额
+        var getOrdersAmount = function() {
+        	DeputyOrder.odersAmount({}, function(data) {
+        		$scope.odersAmount = data.amount;
+        	});
+        }
+        
+        getOrdersAmount();
+        
         $scope.tableParams = new ngTableParams({
             page: 1,
             count: 20,

+ 5 - 4
src/main/webapp/resources/tpl/index/purc/deputyOrder.html

@@ -196,6 +196,7 @@
         <div class="pub-com_head">
             <span>代采订单</span>
             <div class="p-right">
+            	<span style="color: #3a89d1">总金额: {{odersAmount}} </span><span></span>
                 <a ui-sref="purc.newdeputy" type="button" title="新增代采订单"><img src="static/img/icon/add.png">新增</a>
                 <a ui-sref="purc.deputylog" type="button" title="错误日志"><i class="fa fa-file-text"></i> 错误日志</a>
             </div>
@@ -322,13 +323,13 @@
                     <td colspan="4" class="text-left">
                         <div class="col-md-4">
                             <div>流水号:<a ng-bind="order.code" ui-sref="purc.deputydetail({id:order.id})"></a></div>
-                            <div>下单日期:<span ng-bind="order.entrydate| date: 'yyyy-MM-dd'"></span></div>
+                            <div>录入日期:<span ng-bind="order.entrydate| date: 'yyyy-MM-dd'"></span></div>
+                            <div>提交日期:<span ng-bind="order.date| date: 'yyyy-MM-dd'"></span></div>
                             <div>终端供应商:<span ng-bind="order.tervendor"></span></div>
                             <div>订单金额:<span ng-bind="order.totalamount"></span></div>
-                            <!--<div style="width:960px; position: absolute;" ng-if="order.remark != null && order.statuscode == 222">订单反馈:<span class="text-inverse" ng-bind="order.remark"></span></div>-->
                         </div>
                         <div class="col-md-3">
-                            <div>合同编号:<span ng-bind="order.salepocode" style="color: #327ebe"></span></div>
+                            <div>订单编号:<a ng-bind="order.salecode" ui-sref="purc.deputydetail({id:order.id})"></a></div>
                             <div>最新付款日期:<span ng-bind="order.paydate| date: 'yyyy-MM-dd'"></span></div>
                             <div>累计付款金额:<span ng-bind="order.totalamount"></span></div>
                         </div>
@@ -347,7 +348,7 @@
                             <div>
                                 <a ng-click="copyorder(order.id)" title="复制生成一张新的订单,除了采购单号和合同编号不同,其他信息基本相同">复制</a>
                             </div>
-                            <div ng-if="order.entrystatus == '保存' && order.statuscode == 311">
+                            <div ng-if="order.entrystatus == '保存'">
                                 <a ng-click="clear(order.id)" title="只有新增的在录入的单据可以删除">删除</a>
                             </div>
                         </div>

+ 1 - 1
src/main/webapp/resources/tpl/index/purc/deputyOrder_detail.html

@@ -564,7 +564,7 @@
                 	<span ng-if="deOrder.entrystatus == '保存'"><button ng-click="submit()" ng-disabled="isSubmit">提交</button></span>
                 	<span ng-if="deOrder.entrystatus == '保存'"><button ng-click="save()" ng-disabled="isSave">保存</button></span>
                 	<button ng-click="copyorder(deOrder.id)" title="复制生成一张新的订单,除了采购单号和合同编号不同,其他信息基本相同">复制订单</button>
-                	<span ng-if="deOrder.entrystatus == '保存' && deOrder.statuscode == 311"><button ng-click="clear(deOrder.id)">删除</button></span>
+                	<span ng-if="deOrder.entrystatus == '保存'"><button ng-click="clear(deOrder.id)">删除</button></span>
                 </div>
             </div>
         </form>