Browse Source

代采订单提交时增加采购单号验证,没有通过不能提交;

hejq 9 years ago
parent
commit
a233b75eee

+ 3 - 4
src/main/java/com/uas/platform/b2b/dao/DeputyOrderDao.java

@@ -1,12 +1,11 @@
 package com.uas.platform.b2b.dao;
 
-import java.util.List;
-
+import com.uas.platform.b2b.model.DeputyOrder;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
 import org.springframework.stereotype.Repository;
 
-import com.uas.platform.b2b.model.DeputyOrder;
+import java.util.List;
 
 @Repository
 public interface DeputyOrderDao extends JpaRepository<DeputyOrder, Long>, JpaSpecificationExecutor<DeputyOrder> {
@@ -29,7 +28,7 @@ public interface DeputyOrderDao extends JpaRepository<DeputyOrder, Long>, JpaSpe
 	 * @param deputyuu
 	 * @return
 	 */
-	List<DeputyOrder> findBySalecodeAndDeputyuu(String salecode, Long deputyuu);
+	List<DeputyOrder> findBySalecodeAndDeputyuuAndDownloadstatus(String salecode, Long deputyuu, String status);
 
 	/**
 	 * 通过单据流水号、下载状态(存在重复单号的问题)查询代采订单信息

+ 23 - 43
src/main/java/com/uas/platform/b2b/service/impl/DeputyOrderServiceImpl.java

@@ -1,48 +1,8 @@
 package com.uas.platform.b2b.service.impl;
 
-import java.text.DecimalFormat;
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-import javax.persistence.criteria.CriteriaBuilder;
-import javax.persistence.criteria.CriteriaQuery;
-import javax.persistence.criteria.Predicate;
-import javax.persistence.criteria.Root;
-
-import org.apache.commons.collections.CollectionUtils;
-import org.apache.poi.ss.usermodel.Cell;
-import org.apache.poi.ss.usermodel.Row;
-import org.apache.poi.ss.usermodel.Sheet;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.domain.Page;
-import org.springframework.data.jpa.domain.Specification;
-import org.springframework.stereotype.Service;
-import org.springframework.ui.ModelMap;
-
-import com.uas.platform.b2b.dao.CommonDao;
-import com.uas.platform.b2b.dao.DeputyHisVendorsDao;
-import com.uas.platform.b2b.dao.DeputyLastOrderKeywordsDao;
-import com.uas.platform.b2b.dao.DeputyOrderDao;
-import com.uas.platform.b2b.dao.DeputyOrderItemDao;
-import com.uas.platform.b2b.dao.DeputyOrderKeywordsDao;
-import com.uas.platform.b2b.dao.DeputyOrdersLogDao;
-import com.uas.platform.b2b.dao.DeputyPaymentCompanyDao;
-import com.uas.platform.b2b.dao.PagingReleaseCountDao;
-import com.uas.platform.b2b.dao.VendorDao;
+import com.uas.platform.b2b.dao.*;
 import com.uas.platform.b2b.mobile.dao.DeputyEnterpriseDao;
-import com.uas.platform.b2b.model.DeputyEnterprise;
-import com.uas.platform.b2b.model.DeputyHisVendors;
-import com.uas.platform.b2b.model.DeputyLastOrderKeywords;
-import com.uas.platform.b2b.model.DeputyOrder;
-import com.uas.platform.b2b.model.DeputyOrderItem;
-import com.uas.platform.b2b.model.DeputyOrderKeywords;
-import com.uas.platform.b2b.model.DeputyOrdersLog;
-import com.uas.platform.b2b.model.DeputyPaymentCompany;
-import com.uas.platform.b2b.model.SearchFilter;
-import com.uas.platform.b2b.model.Vendor;
+import com.uas.platform.b2b.model.*;
 import com.uas.platform.b2b.service.DeputyOrderService;
 import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.b2b.support.UsageBufferedLogger;
@@ -53,6 +13,26 @@ import com.uas.platform.core.model.PageParams;
 import com.uas.platform.core.model.Status;
 import com.uas.platform.core.persistence.criteria.PredicateUtils;
 import com.uas.search.b2b.model.SPage;
+import org.apache.commons.collections.CollectionUtils;
+import org.apache.poi.ss.usermodel.Cell;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.data.jpa.domain.Specification;
+import org.springframework.stereotype.Service;
+import org.springframework.ui.ModelMap;
+
+import javax.persistence.criteria.CriteriaBuilder;
+import javax.persistence.criteria.CriteriaQuery;
+import javax.persistence.criteria.Predicate;
+import javax.persistence.criteria.Root;
+import java.text.DecimalFormat;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
 
 @Service
 public class DeputyOrderServiceImpl implements DeputyOrderService {
@@ -451,7 +431,7 @@ public class DeputyOrderServiceImpl implements DeputyOrderService {
 	@Override
 	public ModelMap checkOrders(String salecode, Long deputyuu) {
 		ModelMap map = new ModelMap();
-		List<DeputyOrder> orders = deputyOrderDao.findBySalecodeAndDeputyuu(salecode, deputyuu);
+		List<DeputyOrder> orders = deputyOrderDao.findBySalecodeAndDeputyuuAndDownloadstatus(salecode, deputyuu, "已下载");
 		if (orders.size() > 0) {
 			map.put("info", "采购单号已存在");
 		}

+ 11 - 3
src/main/webapp/resources/js/index/app.js

@@ -2929,7 +2929,7 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
                     $scope.tableParams.page(1);
             }
         };
-        
+
         $scope.searchMethod = false;
         // 切换数据来源(正常数据 or 历史数据)
         var getService = function () {
@@ -15859,8 +15859,10 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
         // 检验订单编号是否存在
         $scope.checkOrder = function (salecode, deputyuu) {
             DeputyOrder.checkOrders({salecode: salecode, deputyuu: deputyuu}, {}, function (data) {
+                $scope.orderCodeEnable = true;
                 if (data.info) {
                     toaster.pop('error', '提示', data.info);
+                    $scope.orderCodeEnable = false;
                 }
             }, function (response) {
                 toaster.pop('error', '提示', response.data);
@@ -15968,7 +15970,9 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
                 toaster.pop('info', '提示', '货款支付方式未填写');
             } else if ($scope.deOrder.deliverydate == null) {
                 toaster.pop('info', '提示', '交货时间未选择');
-            } else {
+            }  else if (!$scope.orderCodeEnable) {
+                toaster.pop('info', '提示', '采购单号重复');
+            }else {
                 angular.forEach($scope.deOrder.deputyOrderItems, function (orderitem, index) {
                     if (orderitem.prodname == null) {
                         toaster.pop('info', '提示', '订单明细第' + (index + 1) + '行产品名称未填写');
@@ -16338,8 +16342,10 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
         // 检验订单编号是否存在
         $scope.checkOrder = function (salecode, deputyuu) {
             DeputyOrder.checkOrders({salecode: salecode, deputyuu: deputyuu}, {}, function (data) {
+                $scope.orderCodeEnable = true;
                 if (data.info) {
                     toaster.pop('error', '提示', data.info);
+                    $scope.orderCodeEnable = false;
                 }
             }, function (response) {
                 toaster.pop('error', '提示', response.data);
@@ -16447,7 +16453,9 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
                 toaster.pop('info', '提示', '货款支付方式未填写');
             } else if ($scope.deOrder.deliverydate == null) {
                 toaster.pop('info', '提示', '交货时间未选择');
-            } else {
+            } else if (!$scope.orderCodeEnable) {
+                toaster.pop('info', '提示', '采购单号重复');
+            }else {
                 angular.forEach($scope.deOrder.deputyOrderItems, function (orderitem, index) {
                     if (orderitem.prodname == null) {
                         toaster.pop('info', '提示', '订单明细第' + (index + 1) + '行产品名称未填写');