Browse Source

1、调整应付对账页面
2、调整应收对账文案, 本期间金额改成 本期间总金额

shenjunjie 7 years ago
parent
commit
0f2bab280a

+ 8 - 0
src/main/webapp/resources/js/common/b2bServices.js

@@ -2791,6 +2791,14 @@ define([ 'angular', 'common/services', 'common/utils', 'big'], function(angular,
               url: b2bUrl + '/sale/apCheck/:id/info',
               method: 'GET'
             },
+          vendor: {
+              url:b2bUrl +  '/sale/arCheck/vendor',
+              method: 'GET'
+          },
+              getAllArCheckByKeywords: {
+                  url: b2bUrl + '/sale/arCheck/getAllByKeywords',
+                  method: 'GET',
+              },
             getAll: {
               url: b2bUrl + '/sale/apCheck/getAll',
               method: 'GET',

+ 2 - 2
src/main/webapp/resources/js/usercenter/app.js

@@ -1,7 +1,7 @@
 
-define([ 'angularAMD', 'ui.router', 'ui-bootstrap', 'ngLocal', 'ngTable', 'common/services', 'common/directives','common/query/kind', 'common/query/brand', 'common/query/component', 'common/query/order', 'common/query/cart', 'common/query/goods', 'common/query/return' ,'angular-toaster', 'common/query/urlencryption', 'ui-jquery', 'common/query/bankTransfer', 'common/query/bankInfo', 'common/query/change', 'common/query/rate', 'common/query/logistics', 'common/query/address' ,'angular-toaster','common/query/collection', 'common/query/proofing', 'common/query/bill', 'common/query/user','file-upload', 'file-upload-shim', 'common/query/bankInfo' , 'common/query/responseLogistics', 'common/query/payment', 'common/query/afterSale', 'common/query/messageBoard', 'common/query/importDeclaration', 'common/query/enterprise', 'common/query/invoice', 'common/query/refund', 'common/query/recommendation', 'common/query/logisticsPort', 'common/query/storeInfo', 'common/query/tradeMessageNotice', 'common/query/tradeBasicProperties', 'common/query/browsingHistory', 'common/query/internalMessage', 'common/module/chat_web_module', 'angular-filter', 'common/query/vendor','common/query/seekPurchase', 'common/query/search', 'angular-sanitize', 'common/query/authority', 'common/query/releaseProInfo', 'common/query/logisticsPort', 'common/b2bServices', 'common/services/File', 'common/query/material', 'common/query/productImport', 'common/query/product', 'common/query/storeCms', 'common/query/UASBatchPutOnProperty'], function(angularAMD) {
+define([ 'angularAMD', 'ui.router', 'ui-bootstrap', 'ngLocal', 'ngTable', 'common/services', 'common/directives','common/query/kind', 'common/query/brand', 'common/query/component', 'common/query/order', 'common/query/cart', 'common/query/goods', 'common/query/return' ,'angular-toaster', 'common/query/urlencryption', 'ui-jquery', 'common/query/bankTransfer', 'common/query/bankInfo', 'common/query/change', 'common/query/rate', 'common/query/logistics', 'common/query/address' ,'angular-toaster','common/query/collection', 'common/query/proofing', 'common/query/bill', 'common/query/user','file-upload', 'file-upload-shim', 'common/query/bankInfo' , 'common/query/responseLogistics', 'common/query/payment', 'common/query/afterSale', 'common/query/messageBoard', 'common/query/importDeclaration', 'common/query/enterprise', 'common/query/invoice', 'common/query/refund', 'common/query/recommendation', 'common/query/logisticsPort', 'common/query/storeInfo', 'common/query/tradeMessageNotice', 'common/query/tradeBasicProperties', 'common/query/browsingHistory', 'common/query/internalMessage', 'common/module/chat_web_module', 'angular-filter', 'common/query/vendor','common/query/seekPurchase', 'common/query/search', 'angular-sanitize', 'common/query/authority', 'common/query/releaseProInfo', 'common/query/logisticsPort', 'common/b2bServices', 'common/services/File', 'common/query/material', 'common/query/productImport', 'common/query/product', 'common/query/storeCms', 'common/query/UASBatchPutOnProperty', 'wui.date'], function(angularAMD) {
 	'use strict';
-	var app = angular.module('myApp', [ 'ui.router', 'ui.bootstrap', 'ng.local', 'ngTable', 'common.services', 'common.directives', 'tool.directives', 'common.query.kind', 'brandServices', 'componentServices', 'orderServices', 'cartServices', 'goodsServices', 'returnServices' , 'toaster', 'urlencryptionServices', 'ui.jquery', 'bankTransfer', 'bankInfo', 'changeServices','rateServices', 'logisticsServices', 'addressServices', 'toaster','collection','proofingServices', 'billServices', 'common.query.user', 'angularFileUpload', 'bankInfo', 'responseLogisticsService', 'PaymentService', 'afterSaleService', 'messageBoardServices', 'table.directives', 'importDeclaration', 'common.query.enterprise', 'invoiceServices', 'refundModule', 'recommendation','logisticsPortService', 'storeInfoServices', 'tradeMessageNoticeModule', 'tradeBasicPropertiesServices', 'BrowsingHistory', 'internalMessageServices', 'WebChatModule', 'angular.filter', 'vendorServices','seekPurchaseServices', 'searchService', 'ngSanitize', 'authorityServices', 'ReleaseProductByBatchService', 'logisticsPortService', 'common.b2bServices', 'FileService', 'materialServices', 'productImportModule', 'common.query.product', 'StoreCmsServices', 'UASBatchPutOnPropertyModule']);
+	var app = angular.module('myApp', [ 'ui.router', 'ui.bootstrap', 'ng.local', 'ngTable', 'common.services', 'common.directives', 'tool.directives', 'common.query.kind', 'brandServices', 'componentServices', 'orderServices', 'cartServices', 'goodsServices', 'returnServices' , 'toaster', 'urlencryptionServices', 'ui.jquery', 'bankTransfer', 'bankInfo', 'changeServices','rateServices', 'logisticsServices', 'addressServices', 'toaster','collection','proofingServices', 'billServices', 'common.query.user', 'angularFileUpload', 'bankInfo', 'responseLogisticsService', 'PaymentService', 'afterSaleService', 'messageBoardServices', 'table.directives', 'importDeclaration', 'common.query.enterprise', 'invoiceServices', 'refundModule', 'recommendation','logisticsPortService', 'storeInfoServices', 'tradeMessageNoticeModule', 'tradeBasicPropertiesServices', 'BrowsingHistory', 'internalMessageServices', 'WebChatModule', 'angular.filter', 'vendorServices','seekPurchaseServices', 'searchService', 'ngSanitize', 'authorityServices', 'ReleaseProductByBatchService', 'logisticsPortService', 'common.b2bServices', 'FileService', 'materialServices', 'productImportModule', 'common.query.product', 'StoreCmsServices', 'UASBatchPutOnPropertyModule', 'wui.date']);
 	app.init = function() {
 		angularAMD.bootstrap(app);
 	};

+ 1087 - 202
src/main/webapp/resources/js/usercenter/controllers/b2b/fa/arCheck.js

@@ -1,207 +1,1092 @@
-define(['app/app'], function(app) {
+// define(['app/app'], function(app) {
   /**
    * 应付对账单
    */
-  app.register.controller('SaleArCheckCtrl', ['$rootScope', '$scope', '$filter', 'B2bFaArCheck', 'ngTableParams', 'toaster', 'BaseService', 'Symbol', function ($rootScope, $scope, $filter, FaArCheck, ngTableParams, toaster, BaseService, Symbol) {
-    BaseService.scrollBackToTop();
-    $scope.active = 'all';
-    $scope.dateZoneText = '不限';
-    $scope.condition = {dateZone: 1};
-    $rootScope.active = 'buyer_pay_center'
-    /* 时间筛选初始化*/
-    var fromDate = new Date();
-    var toDate = new Date();
-    fromDate.setMonth(fromDate.getMonth() - 1);
-    fromDate.setHours(0, 0, 0, 0);
-    toDate.setHours(23, 59, 59, 999);
-    $scope.condition.dateFrom = fromDate;
-    $scope.condition.dateTo = toDate;
-
-    $scope.changeDateZone = function (zone) {
-      $scope.condition.dateZone = zone;
-      $scope.dateZoneText = zone == 1 ? '最近一个月' : (zone == 3 ? '最近三个月' : (zone == 6 ? '最近六个月' : '自定义'));
-      $scope.condition.$dateZoneOpen = false;
-      getDateCondition(zone, $scope.condition);
-      $scope.tableParams.page(1);
-      $scope.tableParams.reload();
-    };
-    $scope.currency = Symbol.currency;//将币别转化为对应的符号
-    $scope.setActive = function (state) {
-      if ($scope.active != state) {
-        $scope.active = state;
-        if ($scope.tableParams.page() == 1)
-          $scope.tableParams.reload();
-        else
-          $scope.tableParams.page(1);
-      }
-    };
-    var getService = function () {
-      return FaArCheck;
-    };
-
-    $scope.tableParams = new ngTableParams({
-      page: 1,
-      count: 20,
-      sorting: {
-        date: 'desc'
-      }
-    }, {
-      total: 0,
-      counts: [5, 10, 25, 50],
-      getData: function ($defer, params) {
-        $scope.loading = true;
-        var pageParams = params.url();
-        pageParams.searchFilter = {};
-        pageParams.searchFilter.keyword = $scope.keyword;
-        pageParams.searchFilter.fromDate = $scope.condition.dateFrom ? $scope.condition.dateFrom.getTime() : null;
-        pageParams.searchFilter.endDate = $scope.condition.dateTo ? $scope.condition.dateTo.getTime() : null;
-        getService()[getState($scope.active)].call(null, BaseService.parseParams(pageParams), function (page) {
-          $scope.loading = false;
-          if (page) {
-            params.total(page.totalElement);
-            $defer.resolve(page.content);
-            $scope.infoCommon = page
-            $scope.infoCommon.all = page.content.length
-            $scope.keywordXls = angular.copy($scope.keyword);//保存当前取值的关键词
-            $scope.fromDateXls = angular.copy($scope.condition.dateFrom ? $scope.condition.dateFrom.getTime() : null);//保存当前取值的起始日期
-            $scope.endDateXls = angular.copy($scope.condition.dateTo ? $scope.condition.dateTo.getTime() : null);//保存当前取值的截止日期
+  // app.register.controller('SaleArCheckCtrl', ['$rootScope', '$scope', '$filter', 'B2bFaArCheck', 'ngTableParams', 'toaster', 'BaseService', 'Symbol', function ($rootScope, $scope, $filter, FaArCheck, ngTableParams, toaster, BaseService, Symbol) {
+  //   BaseService.scrollBackToTop();
+  //   $scope.active = 'all';
+  //   $scope.dateZoneText = '不限';
+  //   $scope.condition = {dateZone: 1};
+  //   $rootScope.active = 'buyer_pay_center'
+  //   /* 时间筛选初始化*/
+  //   var fromDate = new Date();
+  //   var toDate = new Date();
+  //   fromDate.setMonth(fromDate.getMonth() - 1);
+  //   fromDate.setHours(0, 0, 0, 0);
+  //   toDate.setHours(23, 59, 59, 999);
+  //   $scope.condition.dateFrom = fromDate;
+  //   $scope.condition.dateTo = toDate;
+  //
+  //   $scope.changeDateZone = function (zone) {
+  //     $scope.condition.dateZone = zone;
+  //     $scope.dateZoneText = zone == 1 ? '最近一个月' : (zone == 3 ? '最近三个月' : (zone == 6 ? '最近六个月' : '自定义'));
+  //     $scope.condition.$dateZoneOpen = false;
+  //     getDateCondition(zone, $scope.condition);
+  //     $scope.tableParams.page(1);
+  //     $scope.tableParams.reload();
+  //   };
+  //   $scope.currency = Symbol.currency;//将币别转化为对应的符号
+  //   $scope.setActive = function (state) {
+  //     if ($scope.active != state) {
+  //       $scope.active = state;
+  //       if ($scope.tableParams.page() == 1)
+  //         $scope.tableParams.reload();
+  //       else
+  //         $scope.tableParams.page(1);
+  //     }
+  //   };
+  //   var getService = function () {
+  //     return FaArCheck;
+  //   };
+  //
+  //   $scope.tableParams = new ngTableParams({
+  //     page: 1,
+  //     count: 20,
+  //     sorting: {
+  //       date: 'desc'
+  //     }
+  //   }, {
+  //     total: 0,
+  //     counts: [5, 10, 25, 50],
+  //     getData: function ($defer, params) {
+  //       $scope.loading = true;
+  //       var pageParams = params.url();
+  //       pageParams.searchFilter = {};
+  //       pageParams.searchFilter.keyword = $scope.keyword;
+  //       pageParams.searchFilter.fromDate = $scope.condition.dateFrom ? $scope.condition.dateFrom.getTime() : null;
+  //       pageParams.searchFilter.endDate = $scope.condition.dateTo ? $scope.condition.dateTo.getTime() : null;
+  //       getService()[getState($scope.active)].call(null, BaseService.parseParams(pageParams), function (page) {
+  //         $scope.loading = false;
+  //         if (page) {
+  //           params.total(page.totalElement);
+  //           $defer.resolve(page.content);
+  //           $scope.infoCommon = page
+  //           $scope.infoCommon.all = page.content.length
+  //           $scope.keywordXls = angular.copy($scope.keyword);//保存当前取值的关键词
+  //           $scope.fromDateXls = angular.copy($scope.condition.dateFrom ? $scope.condition.dateFrom.getTime() : null);//保存当前取值的起始日期
+  //           $scope.endDateXls = angular.copy($scope.condition.dateTo ? $scope.condition.dateTo.getTime() : null);//保存当前取值的截止日期
+  //
+  //         }
+  //       }, function (response) {
+  //         $scope.loading = false;
+  //         toaster.pop('error', '数据加载失败', response.data);
+  //       });
+  //     }
+  //   });
+  //
+  //   $scope.openDatePicker = function ($event, item, openParam) {
+  //     $event.preventDefault();
+  //     $event.stopPropagation();
+  //     item[openParam] = !item[openParam];
+  //   };
+  //
+  //   $scope.openFilterDatePicker = function ($event, item, openParam) {
+  //     $event.preventDefault();
+  //     $event.stopPropagation();
+  //     item[openParam] = !item[openParam];
+  //     if ($scope.condition.dateFrom && $scope.condition.dateTo && !item[openParam]) {
+  //       $scope.tableParams.reload();
+  //     }
+  //   };
+  //
+  //   // 计算单据的商品总数
+  //   $scope.getTotalProd = function (check) {
+  //     var total = 0;
+  //     if (check.items) {
+  //       angular.forEach(check.items, function (value) {
+  //         total += value.qty;
+  //       });
+  //     }
+  //     return total;
+  //   };
+  //
+  //   // 搜索框回车
+  //   $scope.onSearch = function () {
+  //     $scope.tableParams.page(1);
+  //     $scope.tableParams.reload();
+  //   };
+  //
+  //   // 选择查找日期
+  //   $scope.onDateCondition = function () {
+  //     $scope.tableParams.page(1);
+  //     $scope.tableParams.reload();
+  //   };
+  //
+  //   /**
+  //    * 将日期转化为整数日期
+  //    */
+  //   var getDateTime = function (date) {
+  //     if (angular.isDate(date)) {
+  //       return date.getTime();
+  //     } else {
+  //       return null;
+  //     }
+  //   };
+  //
+  //   var getState = function (active) {
+  //     var fn = 'get';
+  //     switch (active) {
+  //       case 'done':
+  //         fn = 'getDone';
+  //         break;
+  //       case 'todo':
+  //         fn = 'getTodo';
+  //         break;
+  //       case 'end':
+  //         fn = 'getEnd';
+  //         break;
+  //       case 'waiting':
+  //         fn = 'getWaiting';
+  //         break;
+  //       case 'received':
+  //         fn = 'getReceived';
+  //         break;
+  //       case 'invalid':
+  //         fn = 'getInvalid';
+  //         break;
+  //         // 已采纳
+  //       case 'agreed':
+  //         fn = 'getAgreed';
+  //         break;
+  //         // 未采纳
+  //       case 'refused':
+  //         fn = 'getRefused';
+  //         break;
+  //         // 个人
+  //       case 'personal':
+  //         fn = 'getPersonal';
+  //         break;
+  //         // 集体
+  //       case 'teams':
+  //         fn = 'getTeams';
+  //         break;
+  //         // 非标准
+  //       case 'nonstandard':
+  //         fn = 'getNonstandard';
+  //         break;
+  //         // 标准
+  //       case 'standard':
+  //         fn = 'getStandard';
+  //         break;
+  //         // 变更单无需确认
+  //       case 'unread':
+  //         fn = 'getUnread';
+  //         break;
+  //     }
+  //     return fn;
+  //   };
+  //
+  //   var getDateCondition = function (zone, condition) {
+  //     var fromDate = new Date();
+  //     var toDate = new Date();
+  //     //去除时分秒限制,dateFrom设置成0时0分0秒,dateTo设置成23时59分59秒
+  //     fromDate.setHours(0, 0, 0, 0);
+  //     toDate.setHours(23, 59, 59, 999);
+  //     if (zone == -1) { // 自定义时间,什么都不做
+  //
+  //     } else if (zone == 1) {
+  //       fromDate.setMonth(fromDate.getMonth() - 1);
+  //       condition.dateFrom = fromDate;
+  //       condition.dateTo = toDate;
+  //     } else if (zone == 3) {
+  //       fromDate.setMonth(fromDate.getMonth() - 3);
+  //       condition.dateFrom = fromDate;
+  //       condition.dateTo = toDate;
+  //     } else if (zone == 6) {
+  //       fromDate.setMonth(fromDate.getMonth() - 6);
+  //       condition.dateFrom = fromDate;
+  //       condition.dateTo = toDate;
+  //     } else {
+  //       condition.dateFrom = null;
+  //       condition.dateTo = null;
+  //     }
+  //   };
+  //
+  // }]);
+  define(['app/app'], function (app) {
+
+      //应收对账单列表
+      app.register.controller('SaleArCheckCtrl', ['$rootScope', '$scope', 'B2bFaApCheck', 'BaseService', 'ngTableParams', 'toaster', 'B2bReportService', 'Symbol', 'B2bCurrentRole',  'B2bDecimalNumber', '$filter', '$state',function ($rootScope, $scope, FaApCheck, BaseService, ngTableParams, toaster, ReportService, Symbol, CurrentRole, DecimalNumber, $filter, $state) {
+          BaseService.scrollBackToTop();
+          // 获取当前用户是否为普通用户
+          $rootScope.active = 'buyer_pay_center';
+          CurrentRole.isUser({}, {}, function (data) {
+              $scope.isUser = data.isUser;
+          });
+          $scope.dateZoneText = '不限';
+          $scope.condition = {dateZone: 1};
+          $scope.currency = Symbol.currency;//将币别转化为对应的符号
+          $scope.active = 'all';
+
+
+
+          /* 时间筛选初始化*/
+          var fromDate = new Date();
+          var toDate = new Date();
+          fromDate.setMonth(fromDate.getMonth() - 1);
+          fromDate.setHours(0, 0, 0, 0);
+          toDate.setHours(23, 59, 59, 999);
+          $scope.condition.dateFrom = fromDate;
+          $scope.condition.dateTo = toDate;
+
+          //打印  对账单
+          $scope.print = function (check) {
+              var newPage = window.open("about:blank");
+              FaApCheck.printPermission({}, function () {
+                  FaApCheck.printCount({id: check.id}, {});//增加打印此次
+                  ReportService.print(check.custUu, 'PURCCHECK', 'where purc$apcheck.pa_id =' + check.id, newPage);
+              }, function (response) {
+                  newPage.close();
+                  toaster.pop('error', '打印失败', response.data);
+              });
+          };
+
+          //状态
+          $scope.setActive = function (state) {
+              if ($scope.active != state) {
+                  $scope.active = state;
+                  if ($scope.tableParams.page() == 1)
+                      $scope.tableParams.reload();
+                  else
+                      $scope.tableParams.page(1);
+                  $scope.showNotCheck = false
+              }
+              $scope.condition.$open = false
+              $scope.apCheckCondition.$open = false
+              if (state != 'active') {
+                  $scope.changeDateZone(1)
+              }
+          };
+          $scope.changeDateZone = function (zone) {
+              $scope.condition.dateZone = zone;
+              $scope.dateZoneText = zone == 1 ? '最近一个月' : (zone == 3 ? '最近三个月' : (zone == 6 ? '最近六个月' : '自定义'));
+              $scope.condition.$dateZoneOpen = false;
+              getDateCondition(zone, $scope.condition);
+              $scope.tableParams.page(1);
+              $scope.tableParams.reload();
+          };
+
+          //获取应收对账单全部
+          $scope.tableParams = new ngTableParams({
+              page: 1,
+              count: 20,
+              sorting: {
+                  recordDate: 'desc'
+              }
+          }, {
+              total: 0,
+              counts: [5, 10, 25, 50],
+              getData: function ($defer, params) {
+                  $scope.loading = true;
+                  var pageParams = params.url();
+
+                  pageParams.searchFilter = { // 筛选条件
+                      keyword: $scope.keyword,
+                      fromDate: getDateTime($scope.condition.dateFrom),
+                      endDate: getDateTime($scope.condition.dateTo)
+                  };
+                  if ($scope.active === 'all') {
+                      pageParams.keyword = $scope.keyword
+                      var _fromDate =  $scope.thisMouthOut + '-01 00:00:00'
+                      var _d = new Date(_fromDate)
+                      _d.setDate(1)
+                      _d.setMonth(_d.getMonth() + 1)
+                      _d.setDate(_d.getDate() - 1)
+                      var _endDate = _d.getFullYear() + '-' + (_d.getMonth() + 1) + '-' + _d.getDate() + ' 00:00:00'
+                      _endDate = new Date(_endDate).getTime()
+                      _fromDate = new Date(_fromDate).getTime()
+                      pageParams.searchFilter.fromDate =  _fromDate
+                      pageParams.searchFilter.endDate = _endDate
+
+                      FaApCheck.vendor(BaseService.parseParams(pageParams), function (page) {
+                          $scope.loading = false;
+                          page.content && page.content.forEach(function(list) {
+                              var _l = []
+                              list.thisMonthCount && list.thisMonthCount.forEach(function(count) {
+                                  if (count.amount > 0) {
+                                      _l.push(count)
+                                  }
+                              })
+                              list.thisMonthCount = _l
+                              var _k = []
+                              list.totalCount && list.totalCount.forEach(function(count) {
+                                  if (count.amount > 0) {
+                                      _k.push(count)
+                                  }
+                              })
+                              list.totalCount = _k
+                          })
+                          if (page) {
+                              params.total(page.totalElement);
+                              $defer.resolve(page.content);
+                          }
+                          $scope.ALLList = page.content
+                          $scope.infoCommon = page
+                          $scope.infoCommon.all = page.content.length
+                          $scope.totalCount = page.totalElement;
+                      }, function (response) {
+                          $scope.loading = false;
+                          toaster.pop('error', '数据加载失败', response.data);
+                      });
+                  } else {
+                      FaApCheck[getState($scope.active)](BaseService.parseParams(pageParams), function (page) {
+                          $scope.loading = false;
+                          if (page) {
+                              params.total(page.totalElement);
+                              $scope.data = $defer.resolve(page.content);
+                              $scope.infoCommon = page
+                              $scope.infoCommon.all = page.content.length
+                              $scope.searchFilterXls = angular.copy(pageParams.searchFilter);//保存当前取值的条件
+                          }
+                      }, function (response) {
+                          $scope.loading = false;
+                          toaster.pop('error', '数据加载失败', response.data);
+                      });
+                  }
+              }
+          });
+
+          //获得各分类未阅读数量
+          var getUnreadCount = function () {
+              FaApCheck.getUnreadCount(null, function(data){
+                  $scope.unread = data;
+              });
+          };
+          getUnreadCount();
+
+          //设置单据已读
+          $scope.setOrdersRead = function (id) {
+              // 如果单据本身已读,则不发送请求修改数据
+              if (!$scope.isUnread(id)){
+                  return;
+              }
+              var sourceId = [];
+              sourceId.push(id);
+              FaApCheck.setRead({}, sourceId, function (message) {
+                  getUnreadCount();
+              });
+          };
+
+          //获取未读单据id
+          var getUnreadIds = function (){
+              FaApCheck.getUnreadIds({}, "", function (message) {
+                  $scope.unreadCode = message.content;
+              });
+          };
+          getUnreadIds();
+          //判断单据是否未读
+          $scope.isUnread = function (id){
+              for (var i in $scope.unreadCode) {
+                  if (id == $scope.unreadCode[i]) {
+                      return true;
+                  }
+              }
+          };
+
+          $scope.openDatePicker = function ($event, item, openParam) {
+              $event.preventDefault();
+              $event.stopPropagation();
+              item[openParam] = !item[openParam];
+          };
+
+          $scope.openFilterDatePicker = function ($event, item, openParam) {
+              $event.preventDefault();
+              $event.stopPropagation();
+              item[openParam] = !item[openParam];
+              if ($scope.condition.dateFrom && $scope.condition.dateTo && !item[openParam]) {
+                  $scope.tableParams.reload();
+              }
+          };
+
+          // 计算单据的商品总数
+          $scope.getTotalProd = function (check) {
+              var total = 0;
+              if (check.items) {
+                  angular.forEach(check.items, function (value) {
+                      total += value.checkQty;
+                  });
+              }
+              return total;
+          };
+
+          // 搜索框回车
+          $scope.onSearch = function () {
+              $scope.tableParams.page(1);
+              $scope.tableParams.reload();
+          };
+
+          // 选择查找日期
+          $scope.onDateCondition = function () {
+              $scope.tableParams.page(1);
+              $scope.tableParams.reload();
+          };
+
+          // 导出
+          $scope.exportXls = function () {
+              FaApCheck.exportXls({}, {}, function (data) {
+                  if (data.success){
+                      window.location.href = 'sale/apCheck/xls/list?_state='+$scope.active+'&searchFilter='+encodeURIComponent(angular.toJson($scope.searchFilterXls));
+                  }
+              }, function (response) {
+                  toaster.pop('error', '数据加载失败', response.data);
+              });
+          }
+
+          $scope.data = [];// 列表数据
+
+          $scope.condition.$fromOpened = false
+
+          $scope.openDatePicker = function ($event, item, openParam) {
+              $event.preventDefault();
+              $event.stopPropagation();
+              item[openParam] = !item[openParam];
+          }
+
+          // 客户联想词
+          $scope.getSimilarCustomers = function (value) {
+              if (value) {
+                  return Vendor.getSimilarCustomers({keyword: value}).$promise.then(function (data) {
+                      return data.map(function (item) {
+                          return item;
+                      });
+                  });
+              }
+          };
+
+          $scope.onAssociateCustomerClick = function (vendor) {
+              if (vendor.apcheck == 0) {
+                  toaster.pop('info', '提示', '该客户暂未启用平台对账功能');
+                  $scope.suuorname = '';
+              } else {
+                  $scope.suuorname = vendor.custName;
+              }
+          }
+
+          //查找客户
+          $scope.searchCust = function (suuorname) {
+              var modalInstance = $modal.open({
+                  animation: true,
+                  templateUrl: 'static/tpl/index/fa/apcheck_customer.html',
+                  controller: 'SearchCustInfoCtrl',
+                  size: 'lg',
+                  resolve: {
+                      suuorname: function () {
+                          return suuorname;
+                      }
+                  }
+              });
+              modalInstance.result.then(function (customer) {
+                  $scope.suuorname = customer.myEnterprise.enName;
+                  $scope.customerUU = customer.myEnterprise.uu;
+              });
+
+          }
+
+          $scope.showNotCheck = false
+          $scope.goToMNs = function(item) {
+              $scope.chooseItem = item;
+              $scope.showNotCheck = true
+              // $scope.suuorname = item.myEnterprise.enName
+              // $scope.customerUU = item.myEnterprise.uu
+              $scope.vendorUU = item.vendorEnterprise.uu
+              this.searchOrder()
+          }
+
+          // 点击筛选根据条件选择数据
+          // 默认本月
+          $scope.sdateTo = new Date();
+          $scope.sdateFrom = new Date($scope.sdateTo.getFullYear(), $scope.sdateTo.getMonth(), 1);
+          $scope.thisMouth = $scope.sdateTo.getFullYear() +'-'+ ($scope.sdateTo.getMonth())
+          $scope.thisMouthOut = $scope.sdateTo.getFullYear() +'-'+ ($scope.sdateTo.getMonth())
+          $scope.condition.uuorname = '';
+          // $scope.condition.dateFrom = '';
+          // $scope.condition.dateTo = '';
+          $scope.condition.venduuorname = '';
+          $scope.condition.factory = '';
+          $scope.condition.prodtitle = '';
+          $scope.condition.prodspec = '';
+
+          $scope.searchOrder = function (check) {
+              $scope.data = [];
+              $scope.dataInfo = {
+                  totalCount: [],
+                  thisMonthCount: []
+              }
+              $scope.checkboxes.checked = false;
+              $scope.totalMoney = 0;
+              $scope.condition.uuorname = $scope.suuorname;
+              $scope.condition.factory = $scope.factory
+              $scope.condition.prodtitle = $scope.prodtitle;
+              $scope.condition.prodspec = $scope.prodspec;
+              // $scope.condition.dateFrom = ($scope.sdateFrom || 0);
+              $scope.thisdatato = ($scope.sdateTo || 0);
+              if ($scope.thisdatato != 0) {
+                  $scope.condition.dateTo = (new Date($scope.thisdatato.valueOf()) || 0);
+              } else {
+                  $scope.condition.dateTo = ($scope.sdateTo || 0);
+              }
+              $scope.condition.venduuorname = $scope.vuuorname;
+              if ($scope.condition.dateTo != null || $scope.keywordXls != null) {
+
+                  $scope.fromDate = $scope.apCheckCondition.dateFrom ? $scope.apCheckCondition.dateFrom.getTime() : null;
+                  $scope.endDate = $scope.apCheckCondition.dateTo ? $scope.apCheckCondition.dateTo.getTime() : null;
+                  $scope.searchKeyWord = {
+                      receiveName: $scope.receiveName,
+                      factory: $scope.factory,
+                      prodTitle: $scope.prodTitle,
+                      prodSpec: $scope.prodSpec,
+                      taxRate: $scope.taxRate,
+                      vendorUU: $scope.vendorUU
+                  }
+                  $scope.exportKeywords = encodeURIComponent($scope.searchKeyWord);
+                  // $scope.fromDateXls = angular.copy($scope.condition.dateFrom ? $scope.condition.dateFrom.getTime() : null);//保存当前取值的起始日期
+                  // $scope.endDateXls = angular.copy($scope.condition.dateTo ? $scope.condition.dateTo.getTime() : null);//保存当前取值的截止日期
+                  // if (!$scope.suuorname) {
+                  //     toaster.pop('warning', '提示', '请先选择客户');
+                  //     document.getElementById('suuorname').focus();//光标默认在客户
+                  // } else {
+                  $scope.loading = true;
+                  var _params = {}
+                  if ($scope.apCheckCondition.$open) {
+                      _params = {
+                          fromDate: $scope.fromDate,
+                          endDate: $scope.endDate,
+                          receiveName: $scope.receiveName,
+                          factory: $scope.factory,
+                          prodTitle: $scope.prodTitle,
+                          prodSpec: $scope.prodSpec,
+                          taxRate: $scope.taxRate,
+                          checkDate: $scope.thisMouth,
+                          // suuorname: $scope.suuorname,
+                          vendorUU: $scope.vendorUU,
+                      }
+                  } else {
+                      _params = {
+                          receiveName: $scope.receiveName,
+                          factory: $scope.factory,
+                          prodTitle: $scope.prodTitle,
+                          prodSpec: $scope.prodSpec,
+                          taxRate: $scope.taxRate,
+                          checkDate: $scope.thisMouth,
+                          // suuorname: $scope.suuorname,
+                          vendorUU: $scope.vendorUU,
+                      }
+                  }
+                  FaApCheck.getAllArCheckByKeywords(_params, function (data) {
+                      if (data.details.length > 0) {
+                          angular.forEach(data.details, function (item) {
+                              item.$selected = true;
+                          });
+                          var _mouthArr = []
+                          data.thisMonthCount.forEach(function(item) {
+                              if (item.amount > 0) {
+                                  _mouthArr.push(item)
+                              }
+                          })
+                          data.thisMonthCount = _mouthArr
+                          var _totalArr = []
+                          data.totalCount.forEach(function(item) {
+                              if (item.amount > 0) {
+                                  _totalArr.push(item)
+                              }
+                          })
+                          data.totalCount = _totalArr
+                          $scope.dataInfo = data
+                          $scope.data = data.details;
+                          $scope.checkboxes.checked = true;
+                          $scope.getTotalMoney();
+                      } else {
+                          toaster.pop('info', '提示', '当前没有需要对账记录');
+                      }
+                      $scope.suuorname = data.vendorName
+                      $scope.loading = false;
+                  }, function (response) {
+                      $scope.loading = false;
+                      toaster.pop('error', '提示', response.data);
+                  });
+                  // }
+              }
+
+          }
+
+          $scope.exportApcheckList = function() {
+              var url = 'sale/arCheck/xls?1=1';
+              if (null !== $scope.fromDate && null !== $scope.endDate) {
+                  url = url + '&fromDate=' + $scope.fromDate + '&endDate=' + $scope.endDate;
+              }
+              if (angular.isDefined($scope.thisMouth)) {
+                  url = url + '&checkDate=' + $scope.thisMouth;
+              }
+              if (angular.isDefined($scope.receiveName)) {
+                  url = url + '&receiveName=' + $scope.receiveName;
+              }
+              if (angular.isDefined($scope.factory)) {
+                  url = url + '&factory=' + $scope.factory;
+              }
+              if (angular.isDefined($scope.prodTitle)) {
+                  url = url + '&prodTitle=' + $scope.prodTitle;
+              }
+              if (angular.isDefined($scope.prodSpec)) {
+                  url = url + '&prodSpec=' + $scope.prodSpec;
+              }
+              if (angular.isDefined($scope.suuorname)) {
+                  url = url + '&suuorname=' + $scope.suuorname;
+              }
+              if (angular.isDefined($scope.vendorUU)) {
+                  url = url + '&vendorUU=' + $scope.vendorUU;
+              }
+              if (angular.isDefined($scope.taxRate)) {
+                  url = url + '&taxRate=' + $scope.taxRate;
+              }
+              window.location.href = url;
+          }
+
+          /**
+           * 点击勾选框,选中要转应收对账单的订单
+           * */
+          $scope.totalMoney = 0;
+          $scope.checkboxes = {
+              checked: false
+          };
+
+          // 点击勾选全部的复选框
+          $scope.checkAll = function () {
+              $scope.totalMoney = 0;
+              $scope.filteredData = $filter('filter')($scope.data, $scope.condition.prodtitle || $scope.condition.uuorname || $scope.condition.venduuorname || $scope.condition.prodspec || $scope.condition.factory);
+              // var dateFrom = $scope.condition.dateFrom;
+              // var dateTo = $scope.condition.dateTo;
+
+              angular.forEach($scope.filteredData, function (item) {
+                  // if ((item.pidate >= dateFrom || dateFrom == '') && (item.pidate < dateTo || dateTo == '')) {
+                  item.$selected = $scope.checkboxes.checked;
+                  // }
+              });
+              $scope.getTotalMoney();
+          };
+
+          //获取已选单据总金额
+          $scope.getTotalMoney = function () {
+              $scope.totalMoney = 0;
+              angular.forEach($scope.data, function (check) {
+                  if (check.$selected) {
+                      var price = DecimalNumber.accMul((check.thischeckqty || 0), (check.orderprice || 0));
+                      $scope.totalMoney += Math.round(price * 100) / 100;
+                  } else {
+                      $scope.totalMoney += 0;
+                  }
+              });
 
           }
-        }, function (response) {
-          $scope.loading = false;
-          toaster.pop('error', '数据加载失败', response.data);
-        });
-      }
-    });
-
-    $scope.openDatePicker = function ($event, item, openParam) {
-      $event.preventDefault();
-      $event.stopPropagation();
-      item[openParam] = !item[openParam];
-    };
-
-    $scope.openFilterDatePicker = function ($event, item, openParam) {
-      $event.preventDefault();
-      $event.stopPropagation();
-      item[openParam] = !item[openParam];
-      if ($scope.condition.dateFrom && $scope.condition.dateTo && !item[openParam]) {
-        $scope.tableParams.reload();
-      }
-    };
-
-    // 计算单据的商品总数
-    $scope.getTotalProd = function (check) {
-      var total = 0;
-      if (check.items) {
-        angular.forEach(check.items, function (value) {
-          total += value.qty;
-        });
-      }
-      return total;
-    };
-
-    // 搜索框回车
-    $scope.onSearch = function () {
-      $scope.tableParams.page(1);
-      $scope.tableParams.reload();
-    };
-
-    // 选择查找日期
-    $scope.onDateCondition = function () {
-      $scope.tableParams.page(1);
-      $scope.tableParams.reload();
-    };
-
-    /**
-     * 将日期转化为整数日期
-     */
-    var getDateTime = function (date) {
-      if (angular.isDate(date)) {
-        return date.getTime();
-      } else {
-        return null;
-      }
-    };
-
-    var getState = function (active) {
-      var fn = 'get';
-      switch (active) {
-        case 'done':
-          fn = 'getDone';
-          break;
-        case 'todo':
-          fn = 'getTodo';
-          break;
-        case 'end':
-          fn = 'getEnd';
-          break;
-        case 'waiting':
-          fn = 'getWaiting';
-          break;
-        case 'received':
-          fn = 'getReceived';
-          break;
-        case 'invalid':
-          fn = 'getInvalid';
-          break;
-          // 已采纳
-        case 'agreed':
-          fn = 'getAgreed';
-          break;
-          // 未采纳
-        case 'refused':
-          fn = 'getRefused';
-          break;
-          // 个人
-        case 'personal':
-          fn = 'getPersonal';
-          break;
-          // 集体
-        case 'teams':
-          fn = 'getTeams';
-          break;
-          // 非标准
-        case 'nonstandard':
-          fn = 'getNonstandard';
-          break;
-          // 标准
-        case 'standard':
-          fn = 'getStandard';
-          break;
-          // 变更单无需确认
-        case 'unread':
-          fn = 'getUnread';
-          break;
-      }
-      return fn;
-    };
-
-    var getDateCondition = function (zone, condition) {
-      var fromDate = new Date();
-      var toDate = new Date();
-      //去除时分秒限制,dateFrom设置成0时0分0秒,dateTo设置成23时59分59秒
-      fromDate.setHours(0, 0, 0, 0);
-      toDate.setHours(23, 59, 59, 999);
-      if (zone == -1) { // 自定义时间,什么都不做
-
-      } else if (zone == 1) {
-        fromDate.setMonth(fromDate.getMonth() - 1);
-        condition.dateFrom = fromDate;
-        condition.dateTo = toDate;
-      } else if (zone == 3) {
-        fromDate.setMonth(fromDate.getMonth() - 3);
-        condition.dateFrom = fromDate;
-        condition.dateTo = toDate;
-      } else if (zone == 6) {
-        fromDate.setMonth(fromDate.getMonth() - 6);
-        condition.dateFrom = fromDate;
-        condition.dateTo = toDate;
-      } else {
-        condition.dateFrom = null;
-        condition.dateTo = null;
-      }
-    };
-
-  }]);
-
-})
+
+          // 点击其中一个明细的复选框
+          $scope.checkOne = function (check) {
+              check.$selected = !check.$selected
+
+              $scope.Checkall()
+          };
+          $scope.stopPrevent = function(e) {
+              e = e || window.event
+              e.stopPropagation();
+              $scope.Checkall()
+              // event.preventDefault();
+              return false;
+          }
+          $scope.Checkall = function() {
+              var result = true;
+              angular.forEach($scope.data, function (item) {
+                  if (item.$selected != true) {
+                      result = false;
+                      return;
+                  }
+              });
+              $scope.checkboxes.checked = result;
+          }
+          $scope.haveSelected = false;
+
+          //生成应收对账单
+          $scope.createApCheck = function () {
+              //保存应收对账单主记录字段
+              $scope.apCheck = {
+                  custUu: '',
+                  custName: '',
+                  enUu: '',
+                  apDate: '',
+                  beginDate: '',
+                  endDate: '',
+                  checkStatus: '未对账',
+                  checkAmount: 0,
+                  currency: '',
+                  rate: '',
+                  items: [],
+                  taxrate: ''
+              };
+              //保存来源单据相关信息
+              var sourceInfos = [];
+
+
+              //所允许的本次对账最大最小数量
+              $scope.data.maxThisCheckQty = 0;
+              $scope.data.minThisCheckQty = 0;
+
+              $scope.sameCust = true;
+              $scope.validQty = true;
+              $scope.loading = true;
+
+              angular.forEach($scope.data, function (check) {
+                  //保存应收对账单明细行数据
+                  $scope.item = {
+                      inoutno: '',
+                      inoutnodetno: '',
+                      orderCode: '',
+                      orderClass: '',
+                      orderDetno: '',
+                      price: '',
+                      checkQty: '',
+                      amount: '',
+                      sourceId: '',
+                      sourceTable: '',
+                      oldYCheckQty: '',
+                      status: 0,
+                      receiveCode: '',
+                      receiveName: '',
+                      prodCode: '',
+                      prodTitle: '',
+                      prodUnit: '',
+                      prodSpec: '',
+                      taxrate: '',
+                      sendcode: '',
+                      whname: '',
+                      custUserUU: ''
+                  };
+
+                  //应收对账单明细行来源表信息
+                  $scope.sourceInfo = {
+                      sourceId: '',
+                      sourceTable: '',
+                      newYCheckQty: ''
+                  };
+
+                  //此次对账后新的已转数
+                  $scope.newYCheckQty = 0;
+                  if (check.$selected == true) {
+                      $scope.apCheck.custName = check.custname;
+                      $scope.apCheck.enUu = check.enuu;
+                      $scope.apCheck.checkAmount += (check.thischeckqty || 0) * (check.orderprice || 0);
+                      $scope.apCheck.apDate = check.pidate;
+                      $scope.apCheck.rate = check.rate;
+
+                      //必须是同一家客户才能生成对账单,否则提示错误
+                      if ($scope.apCheck.custUu == '') {
+                          $scope.apCheck.custUu = check.custuu;
+                      } else if ($scope.apCheck.custUu !== check.custuu) {
+                          $scope.sameCust = false;
+                          $scope.loading = false;
+                          toaster.pop('error', '请选择同一家客户');
+                      }
+
+                      //必须是相同币别才能生成对账单,否则提示错误
+                      if ($scope.apCheck.currency == '') {
+                          $scope.apCheck.currency = check.currency;
+                      } else if ($scope.apCheck.currency !== check.currency) {
+                          $scope.sameCust = false;
+                          $scope.loading = false;
+                          toaster.pop('error', '请选择同一种币别');
+                      }
+
+                      //必须是相同税率才能生成对账单,否则提示错误
+                      if (!angular.isNumber($scope.apCheck.taxrate)) {
+                          $scope.apCheck.taxrate = check.taxrate;
+                      } else if ($scope.apCheck.taxrate != check.taxrate) {
+                          $scope.sameCust = false;
+                          $scope.loading = false;
+                          toaster.pop('error', '请选择相同的税率');
+                      }
+
+                      //本次对账数量必须小于总对账数量
+                      if (check.qty > 0) {
+                          $scope.data.maxThisCheckQty = check.qty;
+                          $scope.data.minThisCheckQty = 0;
+                          if (check.qty - (check.ycheckqty || 0) < check.thischeckqty || check.thischeckqty < 0 || check.thischeckqty == 0) {
+                              $scope.validQty = false;
+                              $scope.loading = false;
+                              toaster.pop('error', '本次对账数量,填写有误!');
+                          }
+                      } else if (check.qty < 0) {
+                          $scope.data.maxThisCheckQty = 0;
+                          $scope.data.minThisCheckQty = check.qty;
+                          if (((-check.qty) - (-check.ycheckqty) < (-check.thischeckqty)) || check.thischeckqty > 0 || check.thischeckqty == 0) {
+                              $scope.validQty = false;
+                              $scope.loading = false;
+                              toaster.pop('error', '本次对账数量,填写有误!');
+                          }
+                      }
+
+                      //获取筛选时间的开始时间为对账的开始时间
+                      $scope.apCheck.beginDate = $scope.fromDate;
+
+                      //获取筛选的截止时间为对账的截止时间
+                      $scope.apCheck.endDate = $scope.endDate;
+
+                      //应收对账单明细行数据
+                      $scope.item.orderCode = check.ordercode;
+                      $scope.item.orderClass = check.piclass;
+                      $scope.item.orderDetno = check.orderdetno;
+                      $scope.item.price = check.orderprice;
+                      $scope.item.checkQty = check.thischeckqty;
+                      $scope.item.amount = (check.thischeckqty || 0) * (check.orderprice || 0);
+                      $scope.item.sourceId = check.sourceid;
+                      $scope.item.sourceTable = check.sourcetable;
+                      $scope.item.oldYCheckQty = check.ycheckqty;
+                      $scope.item.prodCode = check.prodcode;
+                      $scope.item.prodTitle = check.prodtitle;
+                      $scope.item.prodSpec = check.prodspec;
+                      $scope.item.prodUnit = check.produnit;
+                      $scope.item.inoutno = check.inoutno;
+                      $scope.item.inoutnodetno = check.detno;
+                      $scope.item.taxrate = check.taxrate;
+                      $scope.item.receiveCode = check.receivecode;
+                      $scope.item.receiveName = check.receivename;
+                      $scope.item.sendcode = check.sendcode;
+                      $scope.item.whname = check.whname;
+                      $scope.item.custUserUU = check.custuseruu;
+
+                      //来源表相关信息
+                      $scope.sourceInfo.sourceid = check.sourceid;
+                      $scope.sourceInfo.sourcetable = check.sourcetable;
+                      $scope.sourceInfo.newYCheckQty = ((check.ycheckqty || 0) + check.thischeckqty);
+
+                      sourceInfos.push($scope.sourceInfo);
+                      $scope.apCheck.items.push($scope.item);
+                      $scope.haveSelected = true;
+                  }
+              });
+
+              //保存生成的应收对账单
+              $scope.saveApCheck = function () {
+                  if ($scope.apCheck.items.length == 0) {
+                      $scope.loading = false;
+                      toaster.pop('error', '请先选择需要对账的数据');
+                  } else {
+                      FaApCheck.saveApCheck({}, $scope.apCheck, function (data) {
+                          $scope.loading = false;
+                          toaster.pop('success', '成功', '生成应收对账成功');
+                          $state.go('fa_apCheck_detail', {id: data.id}, {reload: true});
+                      }, function (response) {
+                          $scope.loading = false;
+                          toaster.pop('error', '生成对账单失败', response.data);
+                      })
+                  }
+              };
+
+              //如果是同一家客户,生成对账单的同时,关闭模态框
+              if ($scope.sameCust && $scope.validQty) {
+                  $scope.saveApCheck();
+              }
+          }
+
+          // 新增
+          $scope.MouthOutShow = true
+          $scope.MouthinShow = true
+          $scope.apCheckCondition = {
+              $open: false
+          }
+          $scope.apCheckopenFilterDatePicker = function ($event, item, openParam) {
+              $event.preventDefault();
+              $event.stopPropagation();
+              item[openParam] = !item[openParam];
+              if ($scope.apCheckCondition.dateFrom && $scope.apCheckCondition.dateTo && !item[openParam]) {
+                  $scope.searchOrder()
+              }
+          };
+          $scope.addMouth = function(val) {
+              var _sp = new Date()
+              var _time = new Date($scope.thisMouth)
+              _time.setMonth(_time.getMonth() + val)
+              _time.setDate(1)
+              _time.setMonth(_time.getMonth() + 1)
+              _time.setDate(_time.getDate() - 1)
+              if (_time.getTime() >= _sp.getTime()) {
+                  $scope.MouthinShow = false
+              } else {
+                  $scope.MouthinShow = true
+              }
+              $scope.thisMouth = _time.getFullYear() + '-' + (_time.getMonth() + 1)
+              $scope.apCheckCondition.$open = false
+              $scope.searchOrder()
+          }
+
+          $scope.addMouthOut = function(val) {
+              var _sp = new Date()
+              var _time = new Date($scope.thisMouthOut)
+              _time.setMonth(_time.getMonth() + val)
+              _time.setDate(1)
+              _time.setMonth(_time.getMonth() + 1)
+              _time.setDate(_time.getDate() - 1)
+              if (_time.getTime() >= _sp.getTime()) {
+                  $scope.MouthOutShow = false
+              } else {
+                  $scope.MouthOutShow = true
+              }
+              $scope.thisMouthOut = _time.getFullYear() + '-' + (_time.getMonth() + 1)
+              $scope.tableParams.page(1);
+              $scope.tableParams.reload();
+          }
+
+          $scope.hideshowNotCheck = function() {
+              $scope.showNotCheck = false
+          }
+
+          $scope.$watch('thisMouthOut', function(newVal, oldVal) {
+              var _fromDate = new Date()
+              var _d = new Date(_fromDate)
+              _d.setDate(1)
+              _d.setMonth(_d.getMonth() + 1)
+              _d.setDate(_d.getDate() - 1)
+
+              var _time2 = new Date(newVal)
+              if (_time2.getTime() > _d.getTime()) {
+                  toaster.pop('error', '提示', '所选对账日期不能超过当前时间');
+                  $scope.thisMouthOut = oldVal
+                  return
+              }
+              if (newVal !== oldVal) {
+                  var _d = new Date(newVal)
+                  _d.setDate(1)
+                  _d.setMonth(_d.getMonth() + 1)
+                  _d.setDate(_d.getDate() - 1)
+
+                  if (_d.getTime() >= _fromDate.getTime()) {
+                      $scope.MouthOutShow = false
+                  } else {
+                      $scope.MouthOutShow = true
+                  }
+                  $scope.tableParams.page(1);
+                  $scope.tableParams.reload();
+              }
+          })
+          $scope.$watch('thisMouth', function(newVal, oldVal) {
+              var _fromDate = new Date()
+              var _d = new Date(_fromDate)
+              _d.setDate(1)
+              _d.setMonth(_d.getMonth() + 1)
+              _d.setDate(_d.getDate() - 1)
+
+              var _time2 = new Date(newVal)
+              if (_time2.getTime() > _d.getTime()) {
+                  toaster.pop('error', '提示', '所选对账日期不能超过当前时间');
+                  $scope.thisMouth = oldVal
+                  return
+              }
+              if (newVal !== oldVal) {
+                  var _d = new Date(newVal)
+                  _d.setDate(1)
+                  _d.setMonth(_d.getMonth() + 1)
+                  _d.setDate(_d.getDate() - 1)
+
+                  if (_d.getTime() >= _fromDate.getTime()) {
+                      $scope.MouthinShow = false
+                  } else {
+                      $scope.MouthinShow = true
+                  }
+                  $scope.searchOrder()
+              }
+          })
+
+
+
+          /**
+           * 将日期转化为整数日期
+           */
+          var getDateTime = function (date) {
+              if (angular.isDate(date)) {
+                  return date.getTime();
+              } else {
+                  return null;
+              }
+          };
+
+          /**
+           * 页面状态按钮过滤
+           */
+          var getState = function (active) {
+              var fn = 'get';
+              switch (active) {
+                  case 'done':
+                      fn = 'getDone';
+                      break;
+                  case 'todo':
+                      fn = 'getTodo';
+                      break;
+                  case 'end':
+                      fn = 'getEnd';
+                      break;
+                  case 'waiting':
+                      fn = 'getWaiting';
+                      break;
+                  case 'received':
+                      fn = 'getReceived';
+                      break;
+                  case 'invalid':
+                      fn = 'getInvalid';
+                      break;
+                  // 已采纳
+                  case 'agreed':
+                      fn = 'getAgreed';
+                      break;
+                  // 未采纳
+                  case 'refused':
+                      fn = 'getRefused';
+                      break;
+                  // 个人
+                  case 'personal':
+                      fn = 'getPersonal';
+                      break;
+                  // 集体
+                  case 'teams':
+                      fn = 'getTeams';
+                      break;
+                  // 非标准
+                  case 'nonstandard':
+                      fn = 'getNonstandard';
+                      break;
+                  // 标准
+                  case 'standard':
+                      fn = 'getStandard';
+                      break;
+                  // 变更单无需确认
+                  case 'unread':
+                      fn = 'getUnread';
+                      break;
+              }
+              return fn;
+          };
+
+          var getDateCondition = function (zone, condition) {
+              var fromDate = new Date();
+              var toDate = new Date();
+              //去除时分秒限制,dateFrom设置成0时0分0秒,dateTo设置成23时59分59秒
+              fromDate.setHours(0, 0, 0, 0);
+              toDate.setHours(23, 59, 59, 999);
+              if (zone == -1) { // 自定义时间,什么都不做
+
+              } else if (zone == 1) {
+                  fromDate.setMonth(fromDate.getMonth() - 1);
+                  condition.dateFrom = fromDate;
+                  condition.dateTo = toDate;
+              } else if (zone == 3) {
+                  fromDate.setMonth(fromDate.getMonth() - 3);
+                  condition.dateFrom = fromDate;
+                  condition.dateTo = toDate;
+              } else if (zone == 6) {
+                  fromDate.setMonth(fromDate.getMonth() - 6);
+                  condition.dateFrom = fromDate;
+                  condition.dateTo = toDate;
+              } else {
+                  condition.dateFrom = null;
+                  condition.dateTo = null;
+              }
+          };
+      }]);
+
+  })
+// })

+ 4 - 2
src/main/webapp/resources/js/usercenter/main.js

@@ -28,7 +28,8 @@ require.config({
 		'big': 'lib/decimal/big.min',
 		'angular-filter' : 'lib/angular/angular-filter.min',
 		'clipboard': 'lib/clipboard.min',
-    'QRCode': 'lib/qrcode.min'
+    'QRCode': 'lib/qrcode.min',
+        'wui.date' : 'lib/wui/wui-date'
 	},
 	shim : {
 		'angular' : {
@@ -72,7 +73,8 @@ require.config({
     'QRCode': {
       'exports' : 'QRCode',
       'deps' : [ 'jquery' ]
-    }
+    },
+        'wui.date' : ['angular']
 	}
 });
 require([ 'app/app', 'common/controllers/commonCtrls', 'common/controllers/b2bCommonCtrls', 'common/controllers/GoodsPickUpCtrl' ], function(app) {

+ 3 - 3
src/main/webapp/resources/js/vendor/controllers/b2b/apCheck.js

@@ -117,7 +117,7 @@ define(['app/app'], function (app) {
                       }
                       $scope.ALLList = page.content
                       $scope.infoCommon = page
-                      $scope.infoCommon.all = page.content.length
+                      $scope.infoCommon.all = page.content && page.content.length
                       $scope.totalCount = page.totalElement;
                   }, function (response) {
                       $scope.loading = false;
@@ -130,7 +130,7 @@ define(['app/app'], function (app) {
                           params.total(page.totalElement);
                           $scope.data = $defer.resolve(page.content);
                           $scope.infoCommon = page
-                          $scope.infoCommon.all = page.content.length
+                          $scope.infoCommon.all = page.content && page.content.length
                           $scope.searchFilterXls = angular.copy(pageParams.searchFilter);//保存当前取值的条件
                       }
                   }, function (response) {
@@ -426,7 +426,7 @@ define(['app/app'], function (app) {
               url = url + '&suuorname=' + $scope.suuorname;
           }
           if (angular.isDefined($scope.taxRate)) {
-              url = url + '&receiveName=' + $scope.taxRate;
+              url = url + '&taxRate=' + $scope.taxRate;
           }
           window.location.href = url;
       }

+ 597 - 103
src/main/webapp/resources/view/usercenter/b2b/fa/arCheck.html

@@ -36,11 +36,11 @@
   }
   .order-table td .static p:first-child{
     border-left: none;
-    width: 180px;
+    width: auto;
     padding-left: 0;
   }
   .order-table td .static p:last-child{
-    margin-left: 22px;
+    /*margin-left: 22px;*/
   }
   .order-table td .static p:nth-of-type(3){
     margin-left: 20px;
@@ -111,8 +111,20 @@
     text-align: center;
   }
   .order-table .text-trans{
-    margin-top: -17px;
-    margin-right: 14px;
+    margin-top: -13px;
+    margin-right: 1px;
+  }
+  .menu .new-dot{
+    width: 20px;
+    height: 20px;
+    line-height: 20px;
+    font-size: 12px;
+    color: #fff;
+    font-weight: inherit;
+    top: -2px;
+  }
+  .block {
+    position: relative;
   }
 </style>
 <style>
@@ -476,9 +488,6 @@
     top: 0px;
     width: 40px;
   }
-  .order-table tbody {
-    border:1px solid #e8e8e8;
-  }
   .order-table tbody:hover {
     border: 2px solid #3c7cf5
   }
@@ -489,28 +498,50 @@
     background: #f5f5f5;
   }
 </style>
+<!--<link rel="stylesheet" href="static/css/public.css">-->
+<link rel="stylesheet" href="static/css/wui.min.css">
 <div class="user_right fr" style="position: relative">
+
   <div class="com_tab">
-    <ul class="fl" style="width: 100%">
-      <li class="active"><a href="javascript:void(0)">B2B</a></li>
+    <ul class="fl">
+      <li class="active"><a  href="javascript:void(0)">B2B</a></li>
       <li><a ui-sref="pay_center" href="javascript:void(0)">优软商城</a></li>
+      <li class="down-purchase" style="margin-right: 0;min-width: 80px"  ng-hide="active === 'all'">
+        <a href="#" style="min-width: 80px" ng-click="exportXls()" target="_self" title="导出Excel表格" class="blue f14"><i class="fa fa-file-text fa-fw"></i>导出</a>
+      </li>
+      <!--<li class="down-purchase" style="margin-right: 0;min-width: 80px" ng-hide="showNotCheck">-->
+      <!--<a class="text-simple append" style="min-width: 80px" ui-sref="fa_apCheckList" title="新增对账单">-->
+      <!--<i class="fa fa-plus-square fa-fw"></i>新增对账单-->
+      <!--</a>-->
+      <!--</li>-->
+
+    </ul>
+  </div>
+  <div class="com_tab tab_top" style="margin-bottom: 0px">
+    <ul>
+      <li ng-class="{'active': active=='all'}" ng-click="setActive('all')"><a> 未对账</a></li>
+      <!--<li ng-class="{'active': active=='todo'}" ng-click="setActive('todo')"><a>待确认(<em ng-class="{'color-black': !unread.replied }" ng-bind="unread.replied || 0"></em>)</a></li>-->
+      <li ng-class="{'active': active=='done'}" ng-click="setActive('done')"><a>已对账</a></li>
+      <!--(<em ng-class="{'color-black': !unread.cancelled }" ng-bind="unread.cancelled || 0"></em>)-->
+      <!--<li ng-class="{'active': active=='end'}" ng-click="setActive('end')"><a>已作废</a></li>-->
+      <li style="float: right;font-size: 14px;cursor: pointer;" ng-hide="!showNotCheck" ng-click="hideshowNotCheck()"><img src="/static/img/vendor/images/backIcon.png" width="20"/>返回</li>
     </ul>
   </div>
-  <div class="screen check-filter">
-    <div class="radio-block date-radio" style="width: 33%">
+  <div class="screen check-filter" ng-show="!showNotCheck">
+    <div class="radio-block date-radio" ng-show="active !== 'all'" style="width: 33%">
       时间:
       <label class="com-check-radio">
-        <input type="radio" id="oneMonth" name="date" ng-click="changeDateZone(1);condition.$open=false" checked>
+        <input type="radio" id="oneMonth" name="date" ng-click="changeDateZone(1);condition.$open=false" ng-checked="condition.dateZone == '1'" ng-model="condition.dateZone">
         <label for="oneMonth"></label>
         30天
       </label>
       <label class="com-check-radio">
-        <input type="radio" id="threeMonth" name="date" ng-click="changeDateZone(3);condition.$open=false">
+        <input type="radio" id="threeMonth" name="date" ng-click="changeDateZone(3);condition.$open=false" ng-checked="condition.dateZone == '3'" ng-model="condition.dateZone">
         <label for="threeMonth"></label>
         90天
       </label>
       <label class="com-check-radio">
-        <input type="radio" id="sixMonth" name="date" ng-click="changeDateZone(6);condition.$open=false">
+        <input type="radio" id="sixMonth" name="date" ng-click="changeDateZone(6);condition.$open=false" ng-checked="condition.dateZone == '6'" ng-model="condition.dateZone">
         <label for="sixMonth"></label>
         180天
       </label>
@@ -520,6 +551,37 @@
         自定义
       </label>
     </div>
+    <div class="fl" ng-show="active === 'all'" >
+      <label class="control-label">请选择月份:</label>
+      <span ng-click="addMouthOut(-1)" style="    display: inline-block;
+                width: 32px;
+                height: 32px;
+                border: 1px solid #ddd;
+                text-align: center;
+                line-height: 32px;
+                cursor: pointer;
+                vertical-align: middle;">
+                <img src="/static/img/vendor/images/arrow-left-d-l.png" width="24"/>
+            </span>
+      <span class="inputsIcon control-label" style="padding-right: 0px;display: inline-block">
+              <wui-date
+                      format="yyyy-mm"
+                      placeholder="请选择或输入日期"
+                      id="date3"
+                      btns="{'ok':'确定','now':'此刻'}"
+                      ng-model="thisMouthOut"
+              >
+              </wui-date>
+            </span>
+      <span  ng-click="addMouthOut(1)" ng-show="MouthOutShow" style="display: inline-block;
+                width: 32px;
+                height: 32px;
+                border: 1px solid #ddd;
+                text-align: center;
+                line-height: 32px;
+                cursor: pointer;
+                vertical-align: middle;"><img src="/static/img/vendor/images/arrow-right-d-l.png" width="24"/></span>
+    </div>
     <div class="sreach fr">
       <div ng-show="condition.$open" class="date fl">
         <div class="data-input">
@@ -550,103 +612,535 @@
         </div>
       </div>
       <div class="sreach-input fr">
-        <input type="search" placeholder="单据编号/客户名称/物料名称" class="form-control" ng-model="keyword" ng-search="onSearch(keyword)"/>
-        <a class="seek" href="javascript:void(0)" ng-click="onSearch(keyword)">搜索</a>
+          <span  ng-show="active !== 'all'">
+            <input type="search" placeholder="单据编号/应付供应商名称/物料名称" class="form-control" ng-model="keyword" ng-search="onSearch(keyword)"/>
+            <a class="seek" href="javascript:void(0)" ng-click="onSearch(keyword)" >搜索</a>
+          </span>
+        <span  ng-show="active === 'all' && !showNotCheck">
+            <input type="search" placeholder="应付供应商名称" class="form-control" ng-model="keyword" ng-search="onSearch(keyword)"/>
+            <a class="seek" href="javascript:void(0)" ng-click="onSearch(keyword)">搜索</a>
+          </span>
       </div>
     </div>
   </div>
+  <div ng-hide="showNotCheck">
+
+    <div >
+      <table class="order-table block" ng-class="{'order-table2': active === 'all'}" ng-table="tableParams" ng-table="tableParams" width="100%" style="table-layout:fixed">
+        <thead ng-show="active !== 'all'">
+        <tr class="header">
+          <th width="230">对账期间</th>
+          <th width="180">对账总额</th>
+          <th width="180">对账人</th>
+          <!--<th width="100">商品总数</th>-->
+          <!--<th width="100">对账结果</th>-->
+          <!--<th width="100">操作</th>-->
+        </tr>
+        </thead>
+        <tbody ng-show="active !== 'all'" ng-repeat="check in $data">
+        <tr class="order-bd order-hdt">
+          <td colspan="3" style="text-align: left">
+            <a href="javascript:void(0)" ng-if="!isUnread(check.id)" class="circle-icon">
+              已读
+            </a>
+            <a href="javascript:void(0)" ng-if="isUnread(check.id)" class="no-circle-icon">
+              未读
+            </a>
+            <span class="text-num text-bold;" style="font-weight:bold" title="录单时间">日期:{{::check.recordDate | date:'MM月dd日 HH:mm'}}</span>
+            &nbsp;&nbsp;&nbsp;
+            <span>
+            <!--<i class="fa fa-star" ng-class="{'text-default':check.status==201}"></i>-->
+            <img src="static/img/user/images/shop_home.png" style="margin-right: 5px">{{::check.custName}}</span>
+            <span style="margin-left: 100px;">单据编号:</span>
+            <span class="text-num"><a ui-sref="fa_arCheck_detail({id:check.id})" title="点击查看详情" ng-click="setOrdersRead(check.id)" style="color: #5078cb">{{::check.code}}</a></span>
+          </td>
+        </tr>
+        <tr class="order-bd" style="padding: 15px 0 ">
+          <td class="first info" colspan="1" style="text-align: left">
+            <div class="static">
+              <p><span class="f14 text-num">{{::check.beginDate | date:'yyyy/MM/dd'}} - {{::check.endDate | date:'yyyy/MM/dd'}}</span></p>
+            </div>
+          </td>
+          <td>
+            <p>
+              <strong class="text-num">{{::(isUser?'-':(check.checkAmount | number:2))}}</strong>
+              <span ng-if="!isUser" class="text-number">{{::check.currency}}</span>
+            </p>
+          </td>
+          <td style="text-align: center">
+            对账人:{{::check.recorder}}
+          </td>
+          <!--<td>-->
+          <!--<p>-->
+          <!--<strong class="text-num">{{::check.items.length}}</strong> 条<br>-->
+          <!--</p>-->
+          <!--</td>-->
+          <!--<td>-->
+          <!--<p>-->
+          <!--<strong class="text-num">{{getTotalProd(check) | number}}</strong> <i class="fa fa-cubes"></i>-->
+          <!--</p>-->
+          <!--</td>-->
+          <!--<td class="status">-->
+            <!--&lt;!&ndash;<div ng-if="check.checkStatus == '未对账'" class="text-center text-muted f14"><br>未对账!</div>&ndash;&gt;-->
+            <!--<div></div>-->
+            <!--<div ng-if="check.checkStatus == '已确认'" class="text-center text-muted f14">-->
+              <!--<br> <i class="fa fa-check-square-o"></i> 已确认-->
+            <!--</div>-->
+            <!--<div ng-if="check.checkStatus == '不同意'" class="text-center text-muted f14">-->
+              <!--<br> <i class="fa fa-check-square-o"></i> 不同意-->
+            <!--</div>-->
+            <!--<div ng-if="check.checkStatus == '已作废'" class="text-center text-muted f14">-->
+              <!--<br> <i class="fa fa-check-square-o"></i> 已作废-->
+            <!--</div>-->
+          <!--</td>-->
+          <!--<td>-->
+            <!--<div ng-hide="check.status" class="block">-->
+              <!--<span class="text-trans error">未提交</span>-->
+            <!--</div>-->
+            <!--<div ng-show="check.status" class="block">-->
+              <!--<span class="text-trans success">已提交</span>-->
+            <!--</div>-->
+            <!--<div class="" style="margin-top: 33px;margin-right: 20px;">-->
+              <!--<a ng-click="print(check)" class="pull-right" title="打印{{check.print? '(已打印)':'(未打印)'}}" ng-class="{'unPrinted' : !check.print, 'text-muted': check.print}"><i class="fa fa-print fa-lg"></i>&nbsp;打印</a>-->
+            <!--</div>-->
+            <!-- <a ui-sref="fa.apCheck_detail({id:check.id})" class="operate operate-undo text-center"
+               target="_blank">查看详情</a>	 -->
+          <!--</td>-->
+        </tr>
+        </tbody>
+
+        <thead ng-show="active === 'all'">
+        <tr class="header">
+          <th width="313">应付供应商名称</th>
+          <th width="250">本月应付</th>
+          <th width="250">应付总额</th>
+          <th width="160">操作</th>
+        </tr>
+        </thead>
+        <tbody ng-show="active === 'all'" ng-repeat="check in ALLList">
+        <tr >
+          <td style="color: #3f84f6">{{::check.vendorEnterprise.enName}}</td>
+          <td ng-if="check.thisMonthCount.length > 0">
+            <div ng-repeat="count in check.thisMonthCount">
+              <span>{{count.currency}}:{{count.amount | number:2}}</span>
+            </div>
+          </td>
+          <td ng-if="check.thisMonthCount.length === 0">-</td>
+          <td ng-if="check.totalCount.length > 0">
+            <div ng-repeat="count in check.totalCount">
+              <span ng-if="count.amount > 0">{{count.currency}}:{{count.amount | number:2}}</span>
+            </div>
+          </td>
+          <td ng-if="check.totalCount.length === 0">-</td>
+          <td style="color: #3f84f6;cursor: pointer" ng-click="goToMNs(check)">对账详情</td>
+        </tr>
+        </tbody>
 
-  <table class="order-table block" ng-table="tableParams">
-    <thead>
-    <tr class="header">
-      <th width="230">对账期间</th>
-      <th width="180">对账总额</th>
-      <th width="180">对账人</th>
-      <!--<th width="100">商品总数</th>-->
-      <!--<th width="100">对账结果</th>-->
-      <!--<th width="100">操作</th>-->
-    </tr>
-    </thead>
-
-
-    <tbody ng-if="$data.length === 0">
-    <tr>
-      <td colspan="3">
-        <div id="empty">
-          <div class="left_img">
-            <a><img src="static/img/all/empty-cart.png"></a>
-            <a>B2B 商务</a>
+        <tbody ng-if="active !== 'all' && tableParams.total() == 0">
+        <tr>
+          <td colspan="3">
+            <div id="empty">
+              <div class="left_img">
+                <a><img src="static/img/all/empty-cart.png"></a>
+                <a>B2B 商务</a>
+              </div>
+              <div class="right_link">
+                <p ng-if="active != 'all'">暂无对账信息!</p>
+                <!--<p ng-if="active == 'all'">您还未生成对账单,请立即新增对账!</p>-->
+                <!--<a ng-if="active == 'all'" ui-sref="fa_apCheckList"><i class="fa fa-plus-square fa-fw"></i> 新增对账单</a>-->
+              </div>
+            </div>
+          </td>
+        </tr>
+        </tbody>
+        <tbody ng-if="active === 'all' && (ALLList !== undefined || ALLList.length == 0)">
+        <tr>
+          <td colspan="4">
+            <div class="empty">
+              <div class="left_img">
+                <a><img src="static/img/all/empty-cart.png"></a>
+                <a>B2B 商务</a>
+              </div>
+              <div class="right_link">
+                <p ng-if="active != 'all'">暂无对账信息!</p>
+                <!--<p ng-if="active == 'all'">您还未生成对账单,请立即新增对账!</p>-->
+                <!--<a ng-if="active == 'all'" ui-sref="fa_apCheckList"><i class="fa fa-plus-square fa-fw"></i> 新增对账单</a>-->
+              </div>
+            </div>
+          </td>
+        </tr>
+        </tbody>
+      </table>
+    </div>
+  </div>
+  <div ng-hide="!showNotCheck" class="infoms add-apCheckList"  >
+    <form class="form-horizontal"
+          style="padding-top: 10px; padding-bottom: 20px;">
+      <div class="form-group form-group-sm form-group-inline">
+        <div  class="col-sm-7 control-label">
+          <div style="text-align: left">
+            <label>应付供应商:</label>
+            <label style="text-align:left">
+              {{suuorname}}
+            </label>
+          </div>
+          <div style="text-align: left;margin-top: 20px">
+            <label>本期间应付总额:</label>
+            <label style="text-align:left;vertical-align: top;">
+              <div ng-if="dataInfo.thisMonthCount.length > 0" ng-repeat="count in dataInfo.thisMonthCount">
+                <span>{{count.currency}}:{{count.amount | number:2}}</span>
+              </div>
+              <div ng-if="dataInfo.thisMonthCount.length === 0">
+                0
+              </div>
+            </label>
           </div>
-          <div class="right_link">
-            <p>暂无对应的对账单信息</p>
+          <div style="text-align: left;margin-top: 20px">
+            <label>应付总额:</label>
+            <label style="text-align:left;vertical-align: top;">
+              <div ng-if="dataInfo.totalCount.length > 0" ng-repeat="count in dataInfo.totalCount">
+                <span>{{count.currency}}:{{count.amount | number:2}}</span>
+              </div>
+              <div ng-if="dataInfo.totalCount.length === 0">
+                0
+              </div>
+            </label>
           </div>
         </div>
-      </td>
-    </tr>
-    </tbody>
-    <tbody ng-repeat="check in $data">
-    <tr class="order-bd order-hdt">
-      <td colspan="3" style="text-align: left">
-
-        <span class="text-num text-bold" title="录单时间">日期:{{::check.apDate | date:'MM月dd日 HH:mm'}}</span>&nbsp;&nbsp;&nbsp;
-        <span><img src="static/img/user/images/shop_home.png" style="margin-right: 5px">{{::check.vendorName}}</span>
-        <span  style="margin-left: 100px;">单据编号:</span>
-        <span class="text-num"><a  style="color: #5078cb" ui-sref="fa_arCheck_detail({id:check.id})" title="点击查看详情">{{::check.code}}</a></span>
-
-        <!--<span class="text-num text-bold" style="font-weight:bold" title="录单时间">日期:{{::check.apDate | date:'MM月dd日 HH:mm'}}</span>-->
-        <!--&nbsp;&nbsp;&nbsp;-->
-        <!--<span>-->
-          <!--&lt;!&ndash;<i class="fa fa-star" ng-class="{'text-default':check.status==201}"></i>&ndash;&gt;-->
-          <!--<img src="static/img/user/images/shop_home.png" style="margin-right: 5px">{{::check.vendor.enName}}</span>-->
-        <!--<span style="margin-left: 100px;">单据编号:</span>-->
-        <!--<span class="text-num"><a style="color: #5078cb" ui-sref="fa_arCheck_detail({id:check.id})" title="点击查看详情">{{::check.code}}</a></span>-->
-      </td>
-    </tr>
-    <tr style="line-height: 57px">
-      <td class="first info" colspan="1">
-        <p class="f14 text-num">{{::check.beginDate | date:'yyyy/MM/dd'}} - {{::check.endDate | date:'yyyy/MM/dd'}}</p>
-      </td>
-      <td class="first info" colspan="1">
-        <p>
-          <strong class="text-num">{{::check.checkAmount | number:6}}</strong>
-          <span class="text-number">{{::check.currency}}</span><br>
-        </p>
-      </td>
-      <td style="text-align: center">
-        {{::check.recorder}}
-      </td>
-      <!--<td class="first info" colspan="1">-->
-        <!--<p>-->
-          <!--<strong class="text-num">{{::check.items.length}}</strong> 条<br>-->
-        <!--</p>-->
-      <!--</td>-->
-      <!--<td class="first info" colspan="1">-->
-        <!--<p>-->
-          <!--<strong class="text-num">{{getTotalProd(check) | number}}</strong> <i class="fa fa-cubes"></i><br>-->
-        <!--</p>-->
-      <!--</td>-->
-      <!--<td class="status" colspan="2">-->
-        <!--<div ng-if="check.status == 200" class="text-center text-muted f14"><br>还未开始对账!</div>-->
-        <!--<div ng-if="check.status == 201 && check.items.length == check.agree" class="text-center text-muted f14">-->
-          <!--<br> <i class="fa fa-check-square-o"></i> 已全部确认-->
-        <!--</div>-->
-        <!--<div ng-if="check.status == 201 && check.items.length != check.agree" class="text-center text-muted f14">-->
-          <!--已开始对账,但未全部确认-->
+        <div  class="col-sm-5 control-label">
+          <div>
+            <label class="control-label">请选择月份:</label>
+            <span ng-click="addMouth(-1)" style="    display: inline-block;
+                width: 32px;
+                height: 32px;
+                border: 1px solid #ddd;
+                text-align: center;
+                line-height: 32px;
+                cursor: pointer;
+                vertical-align: middle;">
+                <img src="/static/img/vendor/images/arrow-left-d-l.png" width="24"/>
+            </span>
+            <span class="control-label" style="padding-right: 5px;display: inline-block;vertical-align: middle;    padding-top: 0;" ng-click="apCheckCondition.$open = false">
+              <wui-date
+                      format="yyyy-mm"
+                      placeholder="请选择或输入日期"
+                      id="date4"
+                      btns="{'ok':'确定','now':'此刻'}"
+                      ng-model="thisMouth"
+              >
+              </wui-date>
+            </span><span  ng-click="addMouth(1)" ng-show="MouthinShow" style="display: inline-block;
+                width: 32px;
+                height: 32px;
+                border: 1px solid #ddd;
+                text-align: center;
+                line-height: 32px;
+                cursor: pointer;
+                vertical-align: middle;"><img src="/static/img/vendor/images/arrow-right-d-l.png" width="24"/></span>
+            <label class="control-label com-check-radio" ng-click="apCheckCondition.$open = true">
+              <input type="radio" name="psa" ng-checked="apCheckCondition.$open === true"  ng-model="apCheckCondition.$open">
+              <label for="autoMonth"></label>
+              自定义
+            </label>
+          </div>
+          <div ng-hide="!apCheckCondition.$open" class="date fr apCheckCondition" style="margin-top: 14px;">
+            <div class="data-input">
+              <input type="text" ng-model="apCheckCondition.dateFrom"
+                     class="form-control select-adder" placeholder="起始时间"
+                     datepicker-popup="yyyy-MM-dd"
+                     is-open="apCheckCondition.$fromOpened"
+                     max-date="apCheckCondition.dateTo" current-text="今天" clear-text="清除" close-text="关闭"
+                     ng-focus="apCheckopenFilterDatePicker($event, apCheckCondition, '$fromOpened')"
+                     datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
+                     style="width: 130px;height: 32px"
+              />
+              <button class="open" ng-click="apCheckopenFilterDatePicker($event, apCheckCondition, '$fromOpened')"></button>
+            </div>
+
+            <em style="float:left;margin: 0 10px">–</em>
+            <div class="data-input">
+              <input type="text" ng-model="apCheckCondition.dateTo"
+                     class="form-control select-adder" placeholder="结束时间"
+                     datepicker-popup="yyyy-MM-dd"
+                     is-open="apCheckCondition.$toOpened"
+                     min-date="apCheckCondition.dateFrom" current-text="今天" clear-text="清除" close-text="关闭"
+                     ng-focus="apCheckopenFilterDatePicker($event, apCheckCondition, '$toOpened')"
+                     datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
+                     style="width: 130px;height: 32px"
+              />
+              <button class="open" ng-click="apCheckopenFilterDatePicker($event, apCheckCondition, '$toOpened')"></button>
+            </div>
+          </div>
+        </div>
+      </div>
+      <div class="form-group form-group-sm form-group-inline">
+        <div class="col-sm-12 text-right">
+          <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 class="btn-group btn-group-sm">
+            <a class="btn btn-default" ng-click="searchOrder()" title="筛选"><i class="fa fa-search fa-fw btn-icon-left"></i>筛选</a>
+            <!--<a class="btn btn-default" ng-click="createApCheck(check.$selected)" ng-disabled="!data || data.length==0"><i class="fa fa-check-circle-o fa-fw btn-icon-left"></i>对账</a>-->
+            <a class="btn btn-default" ng-click="exportApcheckList()" title="导出Excel" ng-disabled="!data || data.length==0"><i class="fa fa-file-text fa-fw btn-icon-left"></i>导出</a>
+          </div>
+        </div>
+      </div>
+      <div class="form-group form-group-sm form-group-inline"
+           ng-show="condition.$open">
+        <!--<label class="col-sm-2 control-label">应付供应商:</label>-->
+        <!--<div class="col-sm-4">-->
+        <!--<div class="form-group form-group-sm has-feedback">-->
+        <!--<input type="search" class="form-control input-sm"-->
+        <!--ng-model="receiveName" placeholder="可用应付供应商名称筛选" /><span-->
+        <!--class="form-control-feedback text-simple"><i-->
+        <!--class="fa fa-search"></i></span>-->
         <!--</div>-->
-        <!--<div ng-if="check.status == 201 && check.items.length != check.agree">-->
-          <!--<div class="text-success text-bold"><i class="fa fa-smile-o fa-lg fa-fw"></i>已确认: {{::check.agree}}</div>-->
-          <!--<div class="text-warning text-bold"><i class="fa fa-frown-o fa-lg fa-fw"></i>不同意: {{::check.disagree}}</div>-->
-          <!--<div class="text-muted text-bold"><i class="fa fa-meh-o fa-lg fa-fw"></i>未对账: {{check.items.length - check.agree - check.disagree}}</div>-->
         <!--</div>-->
-        <!-- <a ng-if="check.status == 200 || check.items.length != check.agree" class="operate operate-undo text-center"
-          ui-sref="fa.arCheck_detail({id:check.id})" target="_blank">立即开始对账</a>
-        <a ng-if="check.status == 201 && check.items.length == check.agree" class="operate operate-done text-center"
-          ui-sref="fa.arCheck_detail({id:check.id})" target="_blank">查看详情</a> -->
-      <!--</td>-->
-    </tr>
-    </tbody>
-  </table>
-  <div ng-if="infoCommon.totalElement > 0" class="text-mns text-right" ng-class="infoCommon.totalElement >= 20 ? '': 'Boom18'">
+        <!--ng-show="condition.$open">-->
+        <label class="col-sm-2 control-label">税率:</label>
+        <div class="col-sm-4">
+          <div class="form-group form-group-sm has-feedback">
+            <input type="search" class="form-control input-sm"
+                   ng-model="taxRate" placeholder="请输入税率" /><span
+                  class="form-control-feedback text-simple"><i
+                  class="fa fa-search"></i></span>
+          </div>
+        </div>
+        <label class="col-sm-2 control-label">送货工厂:</label>
+        <div class="col-sm-4">
+          <div class="form-group form-group-sm has-feedback">
+            <input type="search" class="form-control input-sm"
+                   ng-model="factory" placeholder="请输入送货工厂名称" /><span
+                  class="form-control-feedback text-simple"><i
+                  class="fa fa-search"></i></span>
+          </div>
+        </div>
+      </div>
+      <div class="form-group form-group-sm form-group-inline"
+           ng-show="condition.$open">
+        <label class="col-sm-2 control-label">物料名称:</label>
+        <div class="col-sm-4">
+          <div class="form-group form-group-sm has-feedback">
+            <input type="search" class="form-control input-sm"
+                   ng-model="prodTitle" placeholder="请输入物料名称" /><span
+                  class="form-control-feedback text-simple"><i
+                  class="fa fa-search"></i></span>
+          </div>
+        </div>
+        <label class="col-sm-2 control-label">规&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;格:</label>
+        <div class="col-sm-4">
+          <div class="form-group form-group-sm has-feedback">
+            <input type="search" class="form-control input-sm"
+                   ng-model="prodSpec" placeholder="请输入物料规格" /><span
+                  class="form-control-feedback text-simple"><i
+                  class="fa fa-search"></i></span>
+          </div>
+        </div>
+      </div>
+      <!--<div class="form-group form-group-sm form-group-inline"-->
+      <!---->
+      <!--</div>-->
+    </form>
+    <!-- 标签scroll-table用于表头滚动 -->
+    <div class="table-wrap" id="order-detail-list" scroll-table>
+      <div class="table-header-wrap">
+        <table class="table table-bordered">
+          <tr>
+            <!--<th width="36" style="vertical-align: middle;"><input type="checkbox" name="checkbox" ng-model="checkboxes.checked" ng-click="checkAll()"></th>-->
+            <!--<th width="70">客户<br>名称</th>-->
+            <th width="70">采购单</th>
+            <th width="70">物料名称</th>
+            <th width="70">规格型号</th>
+            <th width="60">发货单</th>
+            <th width="55">发货数量</th>
+            <th width="60">验收单</th>
+            <th width="100">验收数量</th>
+            <th width="40">单价</th>
+            <th width="40">税率</th>
+            <th width="70">小计</th>
+            <!--<th width="35">序号</th>-->
+            <!--<th width="60">类型</th>-->
+            <!--<th width="60">单据<br>日期</th>-->
+            <!--<th width="90">应付<br>供应商</th>-->
+            <!--<th width="65">客户<br>料号</th>-->
+            <!--<th width="65">送货<br>工厂</th>-->
+            <!--<th width="30">币别</th>-->
+            <!--<th width="60">金额</th>-->
+          </tr>
+        </table>
+      </div>
+      <div class="table-body-wrap">
+        <table class="table table-bordered">
+          <tr ng-repeat="check in data" ng-click="checkOne(check);getTotalMoney()" class="thAlign" style="height: 40px;">
+            <!--<td width="36" style="text-align: center;vertical-align: middle;">-->
+              <!--<input ng-model="check.$selected" name="checkbox" type="checkbox" ng-checked="check.$selected" ng-click="stopPrevent($event)"></td>-->
+            <td width="70">{{::check.ordercode}}</td>
+            <td width="70" title="{{check.prodtitle}}">
+              <div style="display: -webkit-box; text-overflow: ellipsis; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 3; -webkit-box-orient: vertical;">{{::check.prodtitle}}</div>
+            </td>
+            <td width="70" title="{{check.prodspec}}">
+              <div style="display: -webkit-box; text-overflow: ellipsis; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 3; -webkit-box-orient: vertical;">{{::check.prodspec}}</div></td>
+            <td width="60">{{::check.sendcode}}</td>
+            <td width="55">{{::check.qty}}</td>
+            <td width="60">{{::check.inoutno}}</td>
+            <td width="100">{{::check.thischeckqty}}</td>
+            <td width="40">{{::check.orderprice}}</td>
+            <td width="40" align="center">{{::check.taxrate}}</td>
+            <td width="70">{{::(check.orderprice || 0)*(check.thischeckqty || 0) | number:2}}</td>
+            <!--<td width="70" title="{{check.custname}}"><div-->
+            <!--style="display: -webkit-box; text-overflow: ellipsis; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 3; -webkit-box-orient: vertical;">{{::check.custname}}</div></td>-->
+            <!--<td width="35" align="center">{{::check.detno}}</td>-->
+            <!--<td width="60">{{::check.piclass}}</td>-->
+            <!--<td width="60">{{::check.pidate | date:'yyyy-MM-dd' }}</td>-->
+            <!--<td width="90" title="{{check.receivename}}">-->
+            <!--<div style="display: -webkit-box; text-overflow: ellipsis; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 3; -webkit-box-orient: vertical;">{{::check.receivename}}</div>-->
+            <!--</td>-->
+            <!--<td width="65">{{::check.prodcode}}</td>-->
+            <!--<td width="65">{{::check.factory}}</td>-->
+            <!--<td width="30">{{::check.currency}}</td>-->
+            <!--<td width="60">{{::(check.qty || 0)*(check.orderprice || 0) | number:2}}</td>-->
+
+          </tr>
+          <tr ng-if="!data || data.length==0">
+            <td colspan="10">
+              <div class="empty-block">
+                <i class="fa fa-exclamation-circle"></i>
+                <p class="text-muted">没有对账数据,请先筛选</p>
+              </div>
+            </td>
+          </tr>
+        </table>
+      </div>
+      <div style="padding: 10px 20px">本期间应付总额:{{totalMoney | number:2 || 0}}</div>
+    </div>
+  </div>
+  <div ng-if="infoCommon.totalElement > 0 && !showNotCheck" class="text-mns text-right" ng-class="infoCommon.totalElement > 20 ? '': 'Boom18'">
     显示&nbsp;{{(infoCommon .page - 1 ) * infoCommon.size + 1}}-{{infoCommon.all >= 20 ? infoCommon.page *  infoCommon.size: (infoCommon.page - 1 ) * infoCommon.size + infoCommon.all}}&nbsp;条,共&nbsp;{{infoCommon.totalElement}}&nbsp;条
   </div>
-</div>
+</div>
+<style>
+  .order-table2 tbody td {
+    text-align: center;
+    padding: 20px 0
+  }
+</style>
+<style>
+  .wui-date-picker.left {
+    margin-right : 0 !important;
+    right: 0;
+    left: auto
+  }
+  .wui-date-picker.left table tbody tr td {
+    border: 0
+  }
+  .add-apCheckList {
+    background: #fff
+  }
+
+  .add-apCheckList input[type="checkbox"] {
+    /*width: 16px;
+    height: 16px*/
+  }
+
+  .add-apCheckList .table-wrap {
+    overflow: hidden
+  }
+
+  .add-apCheckList .table-header-wrap {
+    background: #f9f9f9;
+    overflow-x: hidden;
+    overflow-y: scroll;
+  }
+
+  .add-apCheckList .table-header-wrap table,.add-apCheckList .table-body-wrap table
+  {
+    width: 100%;
+    table-layout: fixed;
+    border-collapse: collapse;
+    border-spacing: 0;
+    margin-bottom: 0
+  }
+
+  .add-apCheckList .table-header-wrap th {
+    text-align: center;
+  }
+
+  .add-apCheckList .table-body-wrap {
+    max-height: 600px;
+    overflow-x: auto;
+    overflow-y: scroll;
+  }
+
+  .add-apCheckList td {
+    word-break: break-all;
+    text-align: center;
+  }
+
+  .add-apCheckList tbody {
+    overflow: auto;
+  }
+
+  #order-detail-list .input-sm {
+    border: #ccc 1px solid;
+  }
+
+  .infoms .has-feedback input[type="search"] {
+    padding-right: 0 !important;
+  }
+  .infoms .table>tbody>tr>td{
+    vertical-align: middle;
+  }
+  .form-horizontal .form-group {
+    margin-right: 0px;
+    margin-left: 0px;
+  }
+  .infoms .form-horizontal .form-group-sm .control-label{
+    font-size: 14px;
+  }
+  .infoms .form-group .form-control{
+    font-size: 14px;
+  }
+  .wui-date.small .wui-date-picker {
+    width: 260px
+  }
+  .empty {
+    padding: 70px 0;
+    margin: 0 auto;
+    text-align: center;
+    background: #fff;
+  }
+  .empty .left_img {
+    display: inline-block;
+    color: #3f84f6;
+  }
+  .empty .left_img a {
+    font-size: 25px;
+    color: #3f84f6;
+  }
+  .empty .right_link p {
+    margin: 0;
+    font-size: 14px;
+    color: #666;
+  }
+
+  .inputsIcon .wui-date-editor .icon1{
+    top: 11px !important;
+  }
+  .wui-input {
+    border: 1px solid #3f84f6;
+    font-size: 14px;
+    color: #3f84f6;
+    font-weight: bold;
+  }
+  .wui-date-editor .iconfont {
+    color: #3f84f6
+  }
+  .apCheckCondition ul {
+    left: auto !important;
+    right: 0;
+  }
+  .wui-date.small .wui-date-picker .month_panel .wui-data-table td {
+    line-height: 20px;
+  }
+</style>

+ 652 - 0
src/main/webapp/resources/view/usercenter/b2b/fa/arCheck_old.html

@@ -0,0 +1,652 @@
+<style>
+  body{
+    font-family: "Microsoft YaHei", "微软雅黑" !important;
+  }
+  .text-num{
+
+  }
+  .append{
+    color: #5078cb;font-size:12px; margin-left: 10px
+  }
+  .order-table td {
+    padding-top: 10px;
+    margin-bottom: 20px;
+    border-bottom: solid 1px #ccc;
+    border-top: solid 1px #e8e8e8;
+  }
+
+  .order-table td.first {
+    padding-left: 20px;
+  }
+
+  .order-table td.last {
+    padding-right: 20px;
+  }
+
+  .order-table td .static p {
+    display: inline-block;
+    line-height: 30px;
+    padding-top: 5px;
+    padding-bottom: 0px;
+    width: 150px;
+    font-size: 14px;
+    color: #666;
+    padding-left: 15px;
+    border-left: solid 1px #e8e8e8;
+  }
+  .order-table td .static p:first-child{
+    border-left: none;
+    width: 180px;
+    padding-left: 0;
+  }
+  .order-table td .static p:last-child{
+    margin-left: 22px;
+  }
+  .order-table td .static p:nth-of-type(3){
+    margin-left: 20px;
+  }
+  .order-table td .main {
+    margin-top: 5px;
+    margin-bottom: 20px;
+    color: #333;
+  }
+  .static{
+    margin: 12px 0;
+  }
+  .order-table td .main strong {
+    font-size: 14px;
+  }
+
+  .order-table td .static p strong {
+    font-size: 14px;
+    font-weight: bold;
+    color: #888;
+  }
+
+  .order-table td.status {
+    position: relative;
+    border-left: solid 1px #e8e8e8;
+    padding: 10px;
+    vertical-align: top;
+  }
+
+  .order-table td.status .operate {
+    position: absolute;
+    display: block;
+    bottom: 0;
+    left: 0;
+    right: 0;
+    height: 0px;
+    color: #ffffff;
+    font-size: 14px;
+    font-weight: bold;
+    line-height: 40px;
+    opacity: 0.8;
+    transition: height ease-in-out 0.5s;
+    text-decoration: none;
+  }
+
+  .order-table td.status .operate-undo {
+    background: #428bca;
+  }
+
+  .order-table td.status .operate-done {
+    background: #cccccc;
+  }
+
+  .order-table td.status:hover  .operate {
+    height: 40px;
+  }
+
+  .unPrinted {
+    color: #56a022;
+  }
+  .order-table td .main strong{
+    font-weight: normal;
+  }
+  .order-table td{
+    font-size: 14px;
+  }
+  .order-table th{
+    text-align: center;
+  }
+  .order-table .text-trans{
+    margin-top: -17px;
+    margin-right: 14px;
+  }
+</style>
+<style>
+  .com_tab {
+    height: 40px;
+    margin-bottom: 10px;
+  }
+  .com_tab ul {
+    width: 100%;
+    margin: 0 auto;
+    height: 40px;
+    line-height: 40px;
+    background: #fff;
+  }
+  .com_tab ul li {
+    height: 40px;
+    text-align: center;
+    float: left;
+    position: relative;
+    min-width: 110px;
+  }
+  .com_tab:nth-of-type(1) ul li.active > a {
+    border-bottom: #fff;
+    background: #5078cb;
+    color: #fff !important;
+  }
+  .com_tab ul li a {
+    min-width: 110px;
+  }
+  .com_tab ul li > a {
+    font-size: 14px;
+    height: 40px;
+    padding: 0 20px;
+    display: inline-block;
+  }
+  .com_tab:nth-of-type(1) ul li::after {
+    background:url('static/img/vendor/images/downicon.png');
+    width: 11px;
+    height: 6px;
+    position: absolute;
+    bottom: 0px;
+    left: 50%;
+    content: ' ';
+    margin-left: -5px;
+    display: none;
+  }
+  .com_tab ul li::after {
+    background:url('static/img/vendor/images/downicon.png');
+    width: 11px;
+    height: 6px;
+    position: absolute;
+    bottom: 0px;
+    left: 50%;
+    content: ' ';
+    margin-left: -5px;
+    display: none;
+  }
+  .com_tab ul li.active:after {
+    display: block;
+  }
+  .oder01 ul li.active a{
+    border-bottom: 1px solid #fff;
+    color: #f15601;
+  }
+  .oder01 ul li.active a em {
+    color: #f15601;
+  }
+  .oder01 ul li a em {
+    color: #323232
+  }
+  .screen {
+    background: #fff;
+    padding-top: 10px;
+    padding-right: 11px;
+    line-height: 32px;
+    padding-left: 22px;
+    width: 100%;
+    height: 50px;
+    position: relative;
+  }
+  .screen .sreach input {
+    border: #5078cb 1px solid;
+    height: 32px;
+    width: 280px;
+    box-shadow: none;
+    padding-left: 10px;
+    background: #fff;
+    float: left;
+    vertical-align: middle;
+    font-size: 14px;
+  }
+  .screen .sreach a.seek {
+    width: 58px;
+    height: 32px;
+    background: #5078cb;
+    color: #fff;
+    line-height: 32px;
+    float: none;
+    border-radius: 2px;
+    vertical-align: unset;
+  }
+  .order-table {
+    background: #fff;
+    width: 100%;
+  }
+  .order-table .header > th {
+    height: 38px;
+    text-align: center;
+    background: #fff;
+    border-top: 1px solid #e8e8e8;
+    border-bottom: 1px solid #e8e8e8;
+    font-size: 14px;
+  }
+
+  .order-table .sep-row {
+    height: 10px;
+  }
+
+  .order-table .selector {
+    vertical-align: middle;
+    margin: 0 0 2px 0;
+  }
+
+  .toolbar label {
+    margin-right: 10px;
+    margin-bottom: 0;
+  }
+
+  .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;
+  }
+
+  .order-table .order-hd {
+    background: #f5f5f5;
+    height: 40px;
+    line-height: 40px;
+  }
+
+  .order-table .order-hd td.first {
+    padding-left: 20px;
+  }
+
+  .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-sum {
+    position: relative;
+    padding: 0 5px;
+  }
+
+  .order-table .order-hd .dropdown-toggle {
+    line-height: 40px;
+    display: block;
+    color: #5078cb;
+    /*padding: 0 10px;*/
+  }
+
+
+  .order-table .operates {
+    display: none;
+  }
+
+  .order-table > tbody:hover .operates {
+    display: block;
+  }
+
+  .order-table .order-bd {
+    border-bottom: 1px solid #e6e6e6;
+  }
+
+  .order-table .order-bd > td {
+    padding: 10px 5px;
+    text-align: center;
+  }
+
+  .order-table .order-bd .product {
+    padding-left: 20px;
+  }
+
+  .input-xs, .input-group-xs > .form-control, .input-group-xs > .input-group-addon, .input-group-xs > .input-group-btn > .btn {
+    height: 26px;
+    padding: 0 5px;
+    font-size: 12px;
+    line-height: 1.5;
+    border-radius: 3px;
+  }
+  .order-table .order-hd .dropdown-toggle:hover + .order-snapshot {
+    display: block;
+  }
+  .order-table .order-hd .order-snapshot{
+    padding: 10px 15px;
+    display: none;
+    width: 250px;
+    position: absolute;
+    top: 32px;
+    left: 39px;
+    border: 1px solid rgba(0,0,0,0.15);
+    -webkit-box-shadow: 0 0 5px rgba(0,0,0,0.3);
+    -moz-box-shadow: 0 0 5px rgba(0,0,0,0.3);
+    -o-box-shadow: 0 0 5px rgba(0,0,0,0.3);
+    box-shadow: 0 0 5px rgba(0,0,0,0.3);
+  }
+  .order-snapshot .title {
+    border-top: 1px dashed #ddd;
+  }
+
+  .order-snapshot .dl-horizontal dt {
+    width: 60px;
+    text-align: left;
+    font-weight: normal;
+    color: #999;
+    padding: 4px 0;
+  }
+
+  .order-snapshot .dl-horizontal dd {
+    margin-left: 80px;
+    padding: 4px 0;
+  }
+
+  /*arrow*/
+  .order-send {
+    position: relative;
+  }
+
+  .order-send.arrow-border:before, .arrow-border:after {
+    content: '';
+    position: absolute;
+    top: 20px;
+    width: 0;
+    height: 0;
+    border: 7px solid transparent;
+  }
+
+  .order-send.arrow-border.arrow-bottom-right:before {
+    content: '';
+    position: absolute;
+    left: -13px;
+    border-bottom-color: #fff;
+    border-right-color: #fff;
+    margin-top: -10px;
+  }
+
+  .menu .new-dot {
+    width: 20px;
+    height: 20px;
+    line-height: 20px;
+    font-size: 12px;
+    color: #fff;
+    font-weight: inherit;
+    top: -2px;
+  }
+  .f14{
+    font-size:14px;
+  }
+  .screen .sreach input {
+    width: 288px
+  }
+  .modal {
+    position: fixed;
+    top: 0;
+    right: 0;
+    bottom: 0;
+    left: 0;
+    z-index: 1050;
+    display: none;
+    overflow: hidden;
+    -webkit-overflow-scrolling: touch;
+    outline: 0;
+    margin: 0 !important;
+  }
+  .modal-open .modal {
+    overflow-x: hidden;
+    overflow-y: auto;
+  }
+  #empty {
+    padding: 70px 0;
+    margin: 0 auto;
+    text-align: center;
+  }
+  #empty .left_img {
+    display: inline-block;
+    color: #3f84f6;
+  }
+  #empty .left_img a {
+    font-size: 25px;
+    color: #3f84f6;
+  }
+  #empty .right_link p {
+    margin: 0;
+    font-size: 14px;
+    color: #666;
+  }
+  #empty_info .empty_title {
+    color: #3f84f6;
+    font-size: 18px;
+  }
+  #empty_info .empty_explain {
+    font-size: 16px;
+    color: #999;
+  }
+  #empty_info .empty_explain .info {
+    text-indent: -22px;
+  }
+  .f16 {
+    font-size: 16px !important;
+  }
+  .f14 {
+    font-size: 14px !important;
+  }
+  #empty_info {
+    padding-top:20px;
+    padding-left: 60px;
+    padding-bottom: 40px;
+  }
+  table tbody tr td {
+    border-bottom: #e8e8e8 1px solid;
+    border-right: #e8e8e8 1px solid;
+    font-size: 14px;
+    color: #666;
+  }
+  .ng-table-pager::after {
+    clear: both;
+    content: ' ';
+    zoom: 1;
+    display: block;
+    visibility: hidden;
+  }
+  .ng-table-pager {
+    padding-right: 20px;
+    padding-top: 50px;
+    margin-right: 0 !important;
+  }
+  .text-mns {
+    padding-right: 15px;
+    position: absolute;
+    bottom: 64px;
+    right: 20px;
+    font-size: 12px;
+  }
+  .Boom18 {
+    bottom: 18px;
+  }
+  .fixed {
+    position: absolute;
+    left: 0px;
+    top: 0px;
+    width: 40px;
+  }
+  .order-table tbody {
+    border:1px solid #e8e8e8;
+  }
+  .order-table tbody:hover {
+    border: 2px solid #3c7cf5
+  }
+  .order-table tbody:hover .order-bd:nth-last-of-type(1) {
+    background: #f8fafe
+  }
+  .order-table .order-hdt {
+    background: #f5f5f5;
+  }
+</style>
+<div class="user_right fr" style="position: relative">
+  <div class="com_tab">
+    <ul class="fl" style="width: 100%">
+      <li class="active"><a href="javascript:void(0)">B2B</a></li>
+      <li><a ui-sref="pay_center" href="javascript:void(0)">优软商城</a></li>
+    </ul>
+  </div>
+  <div class="screen check-filter">
+    <div class="radio-block date-radio" style="width: 33%">
+      时间:
+      <label class="com-check-radio">
+        <input type="radio" id="oneMonth" name="date" ng-click="changeDateZone(1);condition.$open=false" checked>
+        <label for="oneMonth"></label>
+        30天
+      </label>
+      <label class="com-check-radio">
+        <input type="radio" id="threeMonth" name="date" ng-click="changeDateZone(3);condition.$open=false">
+        <label for="threeMonth"></label>
+        90天
+      </label>
+      <label class="com-check-radio">
+        <input type="radio" id="sixMonth" name="date" ng-click="changeDateZone(6);condition.$open=false">
+        <label for="sixMonth"></label>
+        180天
+      </label>
+      <label class="com-check-radio">
+        <input type="radio" id="autoMonth" name="date" ng-click="condition.$open=!condition.$open;changeDateZone(-1)">
+        <label for="autoMonth"></label>
+        自定义
+      </label>
+    </div>
+    <div class="sreach fr">
+      <div ng-show="condition.$open" class="date fl">
+        <div class="data-input">
+          <input type="text" ng-model="condition.dateFrom"
+                 class="form-control select-adder" placeholder="起始时间"
+                 datepicker-popup="yyyy-MM-dd"
+                 is-open="condition.$fromOpened"
+                 max-date="condition.dateTo" current-text="今天" clear-text="清除" close-text="关闭"
+                 ng-focus="openFilterDatePicker($event, condition, '$fromOpened')"
+                 datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
+                 style="width: 130px"
+          />
+          <button class="open" ng-click="openFilterDatePicker($event, condition, '$fromOpened')"></button>
+        </div>
+
+        <em>–</em>
+        <div class="data-input">
+          <input type="text" ng-model="condition.dateTo"
+                 class="form-control select-adder" placeholder="结束时间"
+                 datepicker-popup="yyyy-MM-dd"
+                 is-open="condition.$toOpened"
+                 min-date="condition.dateFrom" current-text="今天" clear-text="清除" close-text="关闭"
+                 ng-focus="openFilterDatePicker($event, condition, '$toOpened')"
+                 datepicker-options="{formatDayTitle: 'yyyy年M月', formatMonth: 'M月', showWeeks: false}"
+                 style="width: 130px"
+          />
+          <button class="open" ng-click="openFilterDatePicker($event, condition, '$toOpened')"></button>
+        </div>
+      </div>
+      <div class="sreach-input fr">
+        <input type="search" placeholder="单据编号/客户名称/物料名称" class="form-control" ng-model="keyword" ng-search="onSearch(keyword)"/>
+        <a class="seek" href="javascript:void(0)" ng-click="onSearch(keyword)">搜索</a>
+      </div>
+    </div>
+  </div>
+
+  <table class="order-table block" ng-table="tableParams">
+    <thead>
+    <tr class="header">
+      <th width="230">对账期间</th>
+      <th width="180">对账总额</th>
+      <th width="180">对账人</th>
+      <!--<th width="100">商品总数</th>-->
+      <!--<th width="100">对账结果</th>-->
+      <!--<th width="100">操作</th>-->
+    </tr>
+    </thead>
+
+
+    <tbody ng-if="$data.length === 0">
+    <tr>
+      <td colspan="3">
+        <div id="empty">
+          <div class="left_img">
+            <a><img src="static/img/all/empty-cart.png"></a>
+            <a>B2B 商务</a>
+          </div>
+          <div class="right_link">
+            <p>暂无对应的对账单信息</p>
+          </div>
+        </div>
+      </td>
+    </tr>
+    </tbody>
+    <tbody ng-repeat="check in $data">
+    <tr class="order-bd order-hdt">
+      <td colspan="3" style="text-align: left">
+
+        <span class="text-num text-bold" title="录单时间">日期:{{::check.apDate | date:'MM月dd日 HH:mm'}}</span>&nbsp;&nbsp;&nbsp;
+        <span><img src="static/img/user/images/shop_home.png" style="margin-right: 5px">{{::check.vendorName}}</span>
+        <span  style="margin-left: 100px;">单据编号:</span>
+        <span class="text-num"><a  style="color: #5078cb" ui-sref="fa_arCheck_detail({id:check.id})" title="点击查看详情">{{::check.code}}</a></span>
+
+        <!--<span class="text-num text-bold" style="font-weight:bold" title="录单时间">日期:{{::check.apDate | date:'MM月dd日 HH:mm'}}</span>-->
+        <!--&nbsp;&nbsp;&nbsp;-->
+        <!--<span>-->
+          <!--&lt;!&ndash;<i class="fa fa-star" ng-class="{'text-default':check.status==201}"></i>&ndash;&gt;-->
+          <!--<img src="static/img/user/images/shop_home.png" style="margin-right: 5px">{{::check.vendor.enName}}</span>-->
+        <!--<span style="margin-left: 100px;">单据编号:</span>-->
+        <!--<span class="text-num"><a style="color: #5078cb" ui-sref="fa_arCheck_detail({id:check.id})" title="点击查看详情">{{::check.code}}</a></span>-->
+      </td>
+    </tr>
+    <tr style="line-height: 57px">
+      <td class="first info" colspan="1">
+        <p class="f14 text-num">{{::check.beginDate | date:'yyyy/MM/dd'}} - {{::check.endDate | date:'yyyy/MM/dd'}}</p>
+      </td>
+      <td class="first info" colspan="1">
+        <p>
+          <strong class="text-num">{{::check.checkAmount | number:6}}</strong>
+          <span class="text-number">{{::check.currency}}</span><br>
+        </p>
+      </td>
+      <td style="text-align: center">
+        {{::check.recorder}}
+      </td>
+      <!--<td class="first info" colspan="1">-->
+        <!--<p>-->
+          <!--<strong class="text-num">{{::check.items.length}}</strong> 条<br>-->
+        <!--</p>-->
+      <!--</td>-->
+      <!--<td class="first info" colspan="1">-->
+        <!--<p>-->
+          <!--<strong class="text-num">{{getTotalProd(check) | number}}</strong> <i class="fa fa-cubes"></i><br>-->
+        <!--</p>-->
+      <!--</td>-->
+      <!--<td class="status" colspan="2">-->
+        <!--<div ng-if="check.status == 200" class="text-center text-muted f14"><br>还未开始对账!</div>-->
+        <!--<div ng-if="check.status == 201 && check.items.length == check.agree" class="text-center text-muted f14">-->
+          <!--<br> <i class="fa fa-check-square-o"></i> 已全部确认-->
+        <!--</div>-->
+        <!--<div ng-if="check.status == 201 && check.items.length != check.agree" class="text-center text-muted f14">-->
+          <!--已开始对账,但未全部确认-->
+        <!--</div>-->
+        <!--<div ng-if="check.status == 201 && check.items.length != check.agree">-->
+          <!--<div class="text-success text-bold"><i class="fa fa-smile-o fa-lg fa-fw"></i>已确认: {{::check.agree}}</div>-->
+          <!--<div class="text-warning text-bold"><i class="fa fa-frown-o fa-lg fa-fw"></i>不同意: {{::check.disagree}}</div>-->
+          <!--<div class="text-muted text-bold"><i class="fa fa-meh-o fa-lg fa-fw"></i>未对账: {{check.items.length - check.agree - check.disagree}}</div>-->
+        <!--</div>-->
+        <!-- <a ng-if="check.status == 200 || check.items.length != check.agree" class="operate operate-undo text-center"
+          ui-sref="fa.arCheck_detail({id:check.id})" target="_blank">立即开始对账</a>
+        <a ng-if="check.status == 201 && check.items.length == check.agree" class="operate operate-done text-center"
+          ui-sref="fa.arCheck_detail({id:check.id})" target="_blank">查看详情</a> -->
+      <!--</td>-->
+    </tr>
+    </tbody>
+  </table>
+  <div ng-if="infoCommon.totalElement > 0" class="text-mns text-right" ng-class="infoCommon.totalElement >= 20 ? '': 'Boom18'">
+    显示&nbsp;{{(infoCommon .page - 1 ) * infoCommon.size + 1}}-{{infoCommon.all >= 20 ? infoCommon.page *  infoCommon.size: (infoCommon.page - 1 ) * infoCommon.size + infoCommon.all}}&nbsp;条,共&nbsp;{{infoCommon.totalElement}}&nbsp;条
+  </div>
+</div>

+ 2 - 2
src/main/webapp/resources/view/vendor/b2b/apCheck.html

@@ -785,7 +785,7 @@
             </label>
           </div>
         <div style="text-align: left;margin-top: 20px">
-            <label>本期间应收:</label>
+            <label>本期间应收总额:</label>
             <label style="text-align:left;vertical-align: top;">
                <div ng-if="dataInfo.thisMonthCount.length > 0" ng-repeat="count in dataInfo.thisMonthCount">
                    <span>{{count.currency}}:{{count.amount | number:2}}</span>
@@ -1012,7 +1012,7 @@
           </tr>
         </table>
       </div>
-      <div style="padding: 10px 20px">总合计:{{totalMoney | number:2 || 0}}</div>
+      <div style="padding: 10px 20px">本期间应收总额:{{totalMoney | number:2 || 0}}</div>
     </div>
   </div>
   <div ng-if="infoCommon.totalElement > 0 && !showNotCheck" class="text-mns text-right" ng-class="infoCommon.totalElement > 20 ? '': 'Boom18'">