|
|
@@ -189,19 +189,15 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
url : "/tender",
|
|
|
templateUrl : "static/tpl/index/sale/tenderlist.html",
|
|
|
controller : 'SaleTenderCtrl'
|
|
|
- // /* 平台公开招标列表 */
|
|
|
- // }).state('sale.opentenderlist', {
|
|
|
- // url : "/opentender",
|
|
|
- // templateUrl : "static/tpl/index/sale/opentenderlist.html",
|
|
|
- // controller : 'SaleOpenTenderCtrl'
|
|
|
- // }).state('sale.todo.opentenderlist', {
|
|
|
- // url : "/opentender",
|
|
|
- // templateUrl : "static/tpl/index/sale/opentenderlist.html",
|
|
|
- // controller : 'SaleOpenTenderCtrl'
|
|
|
- /* 公开招标单转投标单 */
|
|
|
- }).state('sale.opentender', {
|
|
|
- url : "/opentender/:id",
|
|
|
- templateUrl : "static/tpl/index/sale/tender.html",
|
|
|
+ /* 平台公开招标列表 */
|
|
|
+ }).state('baseInfo.openTenderList', {
|
|
|
+ url : "/openTenderList",
|
|
|
+ templateUrl : "static/tpl/index/sale/open_tender_list.html",
|
|
|
+ controller: 'SaleOpenTenderCtrl'
|
|
|
+ /* 查看公开招标详情 */
|
|
|
+ }).state('baseInfo.open_tender_detail', {
|
|
|
+ url : "/openTenderDetail/:id",
|
|
|
+ templateUrl : "static/tpl/index/sale/open_tender_detail.html",
|
|
|
controller : 'OpenSaleTenderDetailCtrl'
|
|
|
/* 投标 */
|
|
|
}).state('sale.tender', {
|
|
|
@@ -419,10 +415,6 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
url : "/enterpriseList",
|
|
|
templateUrl : "static/tpl/index/baseInfo/enterpriseList.html",
|
|
|
controller: 'EnterpriseListCtrl'
|
|
|
- }).state('baseInfo.openTenderList', {
|
|
|
- url : "/openTenderList",
|
|
|
- templateUrl : "static/tpl/index/baseInfo/open_tender.html",
|
|
|
- controller: 'SaleOpenTenderCtrl'
|
|
|
}).state('baseInfo.home', {
|
|
|
url : "/enterpriseList",
|
|
|
templateUrl : "static/tpl/index/baseInfo/enterpriseList.html",
|
|
|
@@ -8317,7 +8309,6 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
|
|
|
//提交
|
|
|
$scope.submit = function(prodInfo){
|
|
|
- console.log(prodInfo);
|
|
|
var file = $scope.myFiles, file = file && file.length > 0 ? file[0] : null;// 可以不传附件
|
|
|
$upload.upload({
|
|
|
url: 'product/baseInfo/addNewProduct',
|
|
|
@@ -8744,25 +8735,7 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
});
|
|
|
};
|
|
|
|
|
|
- // 联想词 start
|
|
|
- // 获取供应商
|
|
|
- $scope.getSimilarVendors = function(value) {
|
|
|
- console.log(value);
|
|
|
- if (value) {
|
|
|
- return Vendor.getSimilarVendors({keyword : value}).$promise.then(function(data) {
|
|
|
- return data.map(function(item) {
|
|
|
- return item;
|
|
|
- });
|
|
|
- });
|
|
|
- }
|
|
|
- };
|
|
|
-
|
|
|
- $scope.onAssociateCmpClick = function(vendor, order) {
|
|
|
- $scope.order.cust.uu = vendor.venduu;
|
|
|
- $rootScope.venduu = $scope.order.cust.uu;
|
|
|
- }
|
|
|
- // 联想词 end
|
|
|
-
|
|
|
+
|
|
|
// $scope.order.orderItems.push(item);
|
|
|
if($rootScope.prodId) {
|
|
|
VendorInfo.getProdInfo({id: $rootScope.prodId}, {}, function(data) {
|
|
|
@@ -9026,6 +8999,7 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
|
|
|
$scope.ensure = false;
|
|
|
$scope.check = function(vendor) { // 需要进行判断的选择
|
|
|
+ console.log(vendor);
|
|
|
$scope.vendorInfo = vendor;
|
|
|
$scope.ensure = true;
|
|
|
};
|
|
|
@@ -10502,12 +10476,11 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
|
|
|
|
|
|
$scope.loading = false;
|
|
|
-
|
|
|
- $scope.tender = {};
|
|
|
+
|
|
|
// 获取收货地址列表
|
|
|
ShipAddress.shipAddList({}, function(data) {
|
|
|
$scope.ships = data;
|
|
|
- $scope.tender.shipAdd = $scope.ships[0];
|
|
|
+ $scope.tender.shipadd = $scope.ships[0];
|
|
|
});
|
|
|
|
|
|
// 获取地址信息
|
|
|
@@ -10515,7 +10488,7 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
}).then(function(response) {
|
|
|
$scope.provinces = response.data;
|
|
|
});
|
|
|
-
|
|
|
+
|
|
|
// 新增收货地址保存
|
|
|
$scope.saveShipAddress = function(ship) {
|
|
|
ship.address = ship.province + ship.city + ship.district;
|
|
|
@@ -10523,8 +10496,8 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
if(data.success) {
|
|
|
// 获取收货地址列表
|
|
|
ShipAddress.shipAddList({}, function(data) {
|
|
|
- $scope.ships = data;
|
|
|
- $scope.tender.shipAdd = $scope.ships[0];
|
|
|
+ $scope.ships = data;
|
|
|
+ $scope.tender.shipadd = $scope.ships[0];
|
|
|
});
|
|
|
toaster.pop('success', '提示', data.success);
|
|
|
}
|
|
|
@@ -10999,7 +10972,7 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
$scope.tender.purchaseTenderProds[i].index = i + 1;
|
|
|
}
|
|
|
$scope.tender.tenderAttaches = $scope.attaches;
|
|
|
- $scope.tender.shipAddress = $scope.tender.shipAdd.address + $scope.tender.shipAdd.addressdet + ' ' + $scope.tender.shipAdd.receiver + ' ' + $scope.tender.shipAdd.usertel;
|
|
|
+ $scope.tender.shipAddress = $scope.tender.shipadd.address + $scope.tender.shipadd.addressdet + ' ' + $scope.tender.shipadd.receiver + ' ' + $scope.tender.shipadd.usertel;
|
|
|
console.log($scope.tender.shipAddress);
|
|
|
var vendorUUs = [];
|
|
|
angular.forEach($scope.tenderProd.enterpriseBaseInfo, function(enterpriseBaseInfo){
|
|
|
@@ -11066,7 +11039,7 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
$scope.tender.purchaseTenderProds[i].index = i + 1;
|
|
|
}
|
|
|
$scope.tender.tenderAttaches = $scope.attaches;
|
|
|
- $scope.tender.shipAddress = $scope.tender.shipAdd.address + $scope.tender.shipAdd.addressdet + ' ' + $scope.tender.shipAdd.receiver + ' ' + $scope.tender.shipAdd.usertel;
|
|
|
+ $scope.tender.shipAddress = $scope.tender.shipadd.address + $scope.tender.shipadd.addressdet + ' ' + $scope.tender.shipadd.receiver + ' ' + $scope.tender.shipadd.usertel;
|
|
|
var vendorUUs = [];
|
|
|
angular.forEach($scope.tenderProd.enterpriseBaseInfo, function(enterpriseBaseInfo){
|
|
|
vendorUUs.push(enterpriseBaseInfo.uu);
|
|
|
@@ -11135,7 +11108,7 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
// var minDate = angular.copy($scope.tender.endDate);
|
|
|
// minDate = minDate.setDate(minDate.getDate() + 1);
|
|
|
if ($scope.tender.endDate instanceof Date) {
|
|
|
- var minDate = $scope.tender.endDate.getTime() + 24*60*60*1000 + 1; // 不能选相同一天
|
|
|
+ var minDate = new Date($scope.tender.endDate.getTime() + 24*60*60*1000 + 1); // 不能选相同一天
|
|
|
}
|
|
|
return $scope.tender.endDate ? $filter('date')(minDate, 'yyyy-MM-dd'):$filter('date')(new Date(), 'yyyy-MM-dd');
|
|
|
};
|
|
|
@@ -11144,7 +11117,7 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
// var maxDate = angular.copy($scope.tender.publishDate);
|
|
|
// maxDate = maxDate.setDate(maxDate.getDate() - 1);
|
|
|
if ($scope.tender.publishDate instanceof Date) {
|
|
|
- var maxDate = $scope.tender.publishDate.getTime() - 1; // 不能选同一天
|
|
|
+ var maxDate = new Date($scope.tender.publishDate.getTime() - 1); // 不能选同一天
|
|
|
}
|
|
|
return $scope.tender.publishDate ? $filter('date')(maxDate, 'yyyy-MM-dd'):"";
|
|
|
};
|
|
|
@@ -11584,24 +11557,28 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
}
|
|
|
});
|
|
|
|
|
|
- var stautsItem = [];
|
|
|
- $scope.getTenderStatus = function (tender) {
|
|
|
- angular.forEach(tender.purchaseTenderItems, function(thisItem){
|
|
|
- if ($scope.currentEn.uu == thisItem.enterpriseBaseInfo.uu) {
|
|
|
- stautsItem = thisItem;
|
|
|
- }
|
|
|
- });
|
|
|
- if (!stautsItem.price) {
|
|
|
- return "daitoubiao";
|
|
|
- } else if (!stautsItem.applystatus) {
|
|
|
- return "yitoubiao";
|
|
|
- } else if (stautsItem.applystatus == 1) {
|
|
|
- return "zhongbiao";
|
|
|
- } else if (stautsItem.applystatus == 0) {
|
|
|
- return "weizhongbiao";
|
|
|
- }
|
|
|
+ $scope.toDetail = function(id) {
|
|
|
+ window.location.hash = '#/sale/openTenderDetail/' + id;
|
|
|
};
|
|
|
|
|
|
+ // var stautsItem = [];
|
|
|
+ // $scope.getTenderStatus = function (tender) {
|
|
|
+ // angular.forEach(tender.purchaseTenderItems, function(thisItem){
|
|
|
+ // if ($scope.currentEn.uu == thisItem.enterpriseBaseInfo.uu) {
|
|
|
+ // stautsItem = thisItem;
|
|
|
+ // }
|
|
|
+ // });
|
|
|
+ // if (!stautsItem.price) {
|
|
|
+ // return "daitoubiao";
|
|
|
+ // } else if (!stautsItem.applystatus) {
|
|
|
+ // return "yitoubiao";
|
|
|
+ // } else if (stautsItem.applystatus == 1) {
|
|
|
+ // return "zhongbiao";
|
|
|
+ // } else if (stautsItem.applystatus == 0) {
|
|
|
+ // return "weizhongbiao";
|
|
|
+ // }
|
|
|
+ // };
|
|
|
+
|
|
|
|
|
|
// 搜索框回车
|
|
|
$scope.onSearch = function() {
|
|
|
@@ -11703,11 +11680,11 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
});
|
|
|
};
|
|
|
|
|
|
- $scope.removeAttach = function(id, index) {
|
|
|
+ $scope.removeAttach = function(attachId, index) {
|
|
|
$scope.attaches.splice(index, 1);
|
|
|
- PurcTender.removeAttach({attachId:id}, function() {
|
|
|
-
|
|
|
- });
|
|
|
+ // PurcTender.removeAttach({attachId : id}, {}, function() {
|
|
|
+ //
|
|
|
+ // });
|
|
|
};
|
|
|
|
|
|
var taxrateYes = false;
|
|
|
@@ -11767,7 +11744,7 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
// /^(0|[0-9][0-9]{0,9})(\.[0-9]{1,6})?$/;
|
|
|
// 判断填写过的有为0或不符合正则式的,设置不能保存
|
|
|
console.log(tenderProd.currentItem.cycle);
|
|
|
- if (tenderProd.currentItem.cycle && (!cycleRegex.test(tenderProd.currentItem.cycle)) || (tenderProd.currentItem.taxrate && !taxrateRegex.test(tenderProd.currentItem.taxrate)) || (tenderProd.currentItem.price && (!priceRegex.test(tenderProd.currentItem.price) && tenderProd.currentItem.price !== 0))) {
|
|
|
+ if (tenderProd.currentItem.cycle !== null && (!cycleRegex.test(tenderProd.currentItem.cycle)) || (tenderProd.currentItem.taxrate !== null && !taxrateRegex.test(tenderProd.currentItem.taxrate)) || (tenderProd.currentItem.price !== null && (!priceRegex.test(tenderProd.currentItem.price) && tenderProd.currentItem.price !== 0))) {
|
|
|
$scope.canSave = false;
|
|
|
} else {
|
|
|
$scope.canSave = true;
|
|
|
@@ -11790,14 +11767,12 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
}
|
|
|
});
|
|
|
} else {
|
|
|
- console.log(tender);
|
|
|
angular.forEach(tender.purchaseTenderProds, function(tenderProd) {
|
|
|
if (tenderProd.currentItem) {
|
|
|
saleTenderItems.push(tenderProd.currentItem);
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
- console.log(saleTenderItems);
|
|
|
PurcTender.reply({tenderItems: saleTenderItems, enBaseInfo: currentEnBaseInfo, attaches:$scope.attaches}, {}, function(data){
|
|
|
$scope.loading = false;
|
|
|
toaster.pop('info', '成功', '投标成功');
|
|
|
@@ -11844,38 +11819,71 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
$scope.currentEn = data;
|
|
|
});
|
|
|
|
|
|
- PurcTender.addItems({id: $stateParams.id}, function(data){
|
|
|
- $scope.bid = data;
|
|
|
- angular.forEach(data.purchaseTenderProds, function(tenderProd) {
|
|
|
- angular.forEach(tenderProd.saleTenderItems, function(saleTenderItem) {
|
|
|
- if (!$scope.currentEn) {
|
|
|
- AccountEnterprise.get({}, function(data){
|
|
|
- $scope.currentEn = data;
|
|
|
- });
|
|
|
- }
|
|
|
- if (saleTenderItem.saleTender.vendUU === $scope.currentEn.uu) {
|
|
|
- tenderProd.currentItem = saleTenderItem;
|
|
|
- $scope.saleTender = saleTenderItem.saleTender;
|
|
|
- $scope.attaches = saleTenderItem.saleTender.bidAttaches;
|
|
|
- $scope.currentEnBaseInfo = saleTenderItem.saleTender.enterpriseBaseInfo;
|
|
|
+ if( ! angular.isUndefined($stateParams.id)) { // 获取招标单详情
|
|
|
+ $scope.loading = true;
|
|
|
+ PurcTender.getOne({id: $stateParams.id}, function(data){
|
|
|
+ data.$editing = false;
|
|
|
+ $scope.tender = data;
|
|
|
+ $scope.tenderProd = data.purchaseTenderProds;
|
|
|
+ // parseCertificate($scope.tender.certificate);
|
|
|
+ // $scope.firstProd = data.purchaseTenderProds[0];
|
|
|
+
|
|
|
+ $scope.currentHasBid = false; // 默认当前企业未转投标单
|
|
|
+ angular.forEach(data.purchaseTenderProds[0].saleTenderItems, function(item) {
|
|
|
+ if ($scope.currentEn.uu === item.saleTender.vendUU) { // 存在当前企业为供应商的投标单,判断已转
|
|
|
+ $scope.currentHasBid = true;
|
|
|
}
|
|
|
});
|
|
|
+ // $rootScope.tenderVendor = $scope.tenderProd.enterpriseBaseInfo;
|
|
|
+ // console.log($scope.tenderProd.enterpriseBaseInfo);
|
|
|
+ $scope.loading = false;
|
|
|
+
|
|
|
+ $scope.attaches = $scope.tender.tenderAttaches;
|
|
|
+ }, function(response){
|
|
|
+ $scope.loading = false;
|
|
|
+ toaster.pop('error', '数据加载失败', response.data);
|
|
|
});
|
|
|
- }, function(response){
|
|
|
- toaster.pop('error', '数据加载失败', response.data);
|
|
|
- });
|
|
|
+ }
|
|
|
|
|
|
- $scope.upload = function(myFile) { // 上传附件
|
|
|
- var file = $scope.myFile, file = file && file.length > 0 ? file : null;
|
|
|
- $upload.upload({
|
|
|
- url: 'tender/addTenderItemAttach',
|
|
|
- file: file,
|
|
|
- method: 'POST'
|
|
|
- }).success(function (attach) {
|
|
|
- $scope.attaches.push(attach);
|
|
|
+ $scope.iWantToBid = function(id) {
|
|
|
+ PurcTender.addItems({id: id}, function(data){ // 添加明细
|
|
|
+ // $scope.tender = data;
|
|
|
+ // angular.forEach(data.purchaseTenderProds, function(tenderProd) {
|
|
|
+ // angular.forEach(tenderProd.saleTenderItems, function(saleTenderItem) {
|
|
|
+ // if (!$scope.currentEn) {
|
|
|
+ // AccountEnterprise.get({}, function(data){
|
|
|
+ // $scope.currentEn = data;
|
|
|
+ // });
|
|
|
+ // }
|
|
|
+ // if (saleTenderItem.saleTender.vendUU === $scope.currentEn.uu) {
|
|
|
+ // tenderProd.currentItem = saleTenderItem;
|
|
|
+ // $scope.saleTender = saleTenderItem.saleTender;
|
|
|
+ // $scope.attaches = saleTenderItem.saleTender.bidAttaches;
|
|
|
+ // $scope.currentEnBaseInfo = saleTenderItem.saleTender.enterpriseBaseInfo;
|
|
|
+ // }
|
|
|
+ // });
|
|
|
+ // });
|
|
|
+ if (data.success) {
|
|
|
+ toaster.pop('success', '成功', '转投标单成功');
|
|
|
+ window.location.hash = '#/sale/tender';
|
|
|
+ }
|
|
|
+ }, function(response){
|
|
|
+ toaster.pop('error', '操作失败', response.data);
|
|
|
});
|
|
|
+
|
|
|
+ $scope.upload = function(myFile) { // 上传附件
|
|
|
+ var file = $scope.myFile, file = file && file.length > 0 ? file : null;
|
|
|
+ $upload.upload({
|
|
|
+ url: 'tender/addTenderItemAttach',
|
|
|
+ file: file,
|
|
|
+ method: 'POST'
|
|
|
+ }).success(function (attach) {
|
|
|
+ $scope.attaches.push(attach);
|
|
|
+ });
|
|
|
+ };
|
|
|
};
|
|
|
|
|
|
+
|
|
|
$scope.removeAttach = function(id, index) {
|
|
|
$scope.attaches.splice(index, 1);
|
|
|
PurcTender.removeAttach({attachId:id}, function() {
|
|
|
@@ -11910,7 +11918,7 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
if (regex.test(value) && value !== 0) {
|
|
|
priceYes = true;
|
|
|
} else {
|
|
|
- if (!(value instanceof Number)) {
|
|
|
+ if (!(value instanceof Number) || value) {
|
|
|
toaster.pop('warning', '警告', '单价不合法,请重新填写');
|
|
|
}
|
|
|
}
|
|
|
@@ -11936,7 +11944,7 @@ define([ 'toaster', 'charts', 'ngTable', 'common/services', 'service/Purc', 'ser
|
|
|
// /^(0|[0-9][0-9]{0,9})(\.[0-9]{1,6})?$/;
|
|
|
// 判断填写过的有为0或不符合正则式的,设置不能保存
|
|
|
console.log(tenderProd.currentItem.cycle);
|
|
|
- if (tenderProd.currentItem.cycle && (!cycleRegex.test(tenderProd.currentItem.cycle)) || (tenderProd.currentItem.taxrate && !taxrateRegex.test(tenderProd.currentItem.taxrate)) || (tenderProd.currentItem.price && (!priceRegex.test(tenderProd.currentItem.price) && tenderProd.currentItem.price !== 0))) {
|
|
|
+ if (tenderProd.currentItem.cycle !== null && (!cycleRegex.test(tenderProd.currentItem.cycle)) || (tenderProd.currentItem.taxrate !== null && !taxrateRegex.test(tenderProd.currentItem.taxrate)) || (tenderProd.currentItem.price !==null && (!priceRegex.test(tenderProd.currentItem.price) && tenderProd.currentItem.price !== 0))) {
|
|
|
$scope.canSave = false;
|
|
|
} else {
|
|
|
$scope.canSave = true;
|