Bladeren bron

平台新增采购单时,获取供应商产品方法更新,录入字段修改,以前的字段存在歧义

hejq 8 jaren geleden
bovenliggende
commit
7ad2d361b5

+ 11 - 0
src/main/java/com/uas/platform/b2b/controller/BaseInfoController.java

@@ -19,6 +19,7 @@ import com.uas.platform.core.logging.BufferedLoggerManager;
 import com.uas.platform.core.model.Constant;
 import com.uas.platform.core.model.PageInfo;
 import com.uas.platform.core.model.PageParams;
+import com.uas.platform.core.model.Status;
 import com.uas.platform.core.util.serializer.FlexJsonUtils;
 import com.uas.platform.core.web.bind.RequestState;
 import com.uas.search.b2b.model.SPage;
@@ -399,6 +400,9 @@ public class BaseInfoController {
 	 * 
 	 * @param json
 	 * @return
+	 * @modify-author hejq
+	 * @modify-date 2018-01-11 14:41
+	 * @modify-desc 增加操作日志
 	 */
 	@RequestMapping(value = "/addtoCart", method = RequestMethod.POST)
 	public ResponseEntity<ModelMap> save(String token, @RequestBody String json) {
@@ -408,6 +412,13 @@ public class BaseInfoController {
 		if (flag) {
 			map = baseInfoService.addtoCart(neworder);
 			tokenService.delete(token);
+			if (neworder.getStatus().equals(Status.NOT_REPLY.value())) {
+				logger.log("采购订单", "新增提交采购订单", neworder.getCode());
+			} else if (neworder.getStatus().equals(Status.UNAUDIT.value())) {
+                logger.log("采购订单", "新增保存采购订单", neworder.getCode());
+			}
+		} else {
+			throw new IllegalOperatorException("页面数据加载异常,请刷新页面重试");
 		}
 		return new ResponseEntity<ModelMap>(map, HttpStatus.OK);
 	}

+ 28 - 1
src/main/java/com/uas/platform/b2b/controller/ProductController.java

@@ -51,7 +51,7 @@ public class ProductController {
 
 	/**
 	 * 供应商角度 - 获取所有客户的物料信息
-	 * 
+	 *
 	 * @return
 	 */
 	@RequestMapping(method = RequestMethod.GET)
@@ -73,6 +73,33 @@ public class ProductController {
 		}
 	}
 
+	/**
+	 * 客户角度,获取供应商的产品信息
+	 *
+	 * @param params 分页参数
+	 * @param vendUU 供应商UU
+	 * @param keyword 搜索词
+	 * @return
+	 */
+	@RequestMapping(value = "/vend", method = RequestMethod.GET)
+	@ResponseBody
+	public SPage<Product> getVendorProducts(PageParams params, Long vendUU, String keyword) {
+		com.uas.search.b2b.model.PageParams pageParams = searchService.convertPageParams(params, null);
+		if (vendUU != null && vendUU != 0) {
+			pageParams.getFilters().put("pr_enuu", vendUU);
+			pageParams.getFilters().put("pr_issale", Constant.YES);
+			HashMap<String, Object> map = new HashMap<>();
+			map.put("pr_b2benabled", Constant.YES);
+			pageParams.setNotEqualFilters(map);
+			List<Sort> sortList = new ArrayList<>();
+			sortList.add(new Sort("pr_id", false, Type.LONG, new Long(1)));
+			pageParams.getFilters().put(SearchConstants.SORT_KEY, sortList);
+			return searchService.searchProductsCheckIds(keyword, pageParams);
+		} else {
+			return null;
+		}
+	}
+
 	/**
 	 * 查看自己的所有物料资料
 	 */

+ 6 - 6
src/main/java/com/uas/platform/b2b/service/impl/BaseInfoServiceImpl.java

@@ -597,13 +597,13 @@ public class BaseInfoServiceImpl implements BaseInfoService {
 		if (userBaseInfo != null) {// 如果供应商联系人存在uu号,录入该uu号;如果不存在,录入企业管理员uu
 			order.setVendUserUU(userBaseInfo.getUserUU());
 		} else {
-			order.setVendUserUU(neworder.getCustUserUU());
+			order.setVendUserUU(neworder.getVendUserUU());
 		}
-		if (neworder.getCust() != null) {
-			order.setVendUU(neworder.getCust().getUu());
-			order.setEnName(neworder.getCust().getEnName());
-			order.setReceiveName(neworder.getCust().getEnName());
-			order.setReceiveCode(String.valueOf(neworder.getCust().getUu()));
+		if (neworder.getVend() != null) {
+			order.setVendUU(neworder.getVend().getUu());
+			order.setEnName(neworder.getVend().getEnName());
+			order.setReceiveName(neworder.getVend().getEnName());
+			order.setReceiveCode(String.valueOf(neworder.getVend().getUu()));
 		}
 		order.setCurrency(neworder.getCurrency());
 		order.setShipAddress(neworder.getShipaddress());

+ 9 - 0
src/main/java/com/uas/platform/b2b/temporary/model/Customers.java

@@ -24,22 +24,27 @@ public class Customers {
 	 * 简称
 	 */
 	private String enShortname;
+
 	/**
 	 * 公司类型
 	 */
 	private String enType;
+
 	/**
 	 * 企业注册地区
 	 */
 	private String enArea;
+
 	/**
 	 * 状态
 	 */
 	private Short enStatus;
+
 	/**
 	 * 传输到管理平台的状态
 	 */
 	private Short enSendStatus;
+
 	/**
 	 * 注册地址
 	 */
@@ -49,18 +54,22 @@ public class Customers {
 	 * 公司电话
 	 */
 	private String enTel;
+
 	/**
 	 * 传真
 	 */
 	private String enFax;
+
 	/**
 	 * 公司邮箱
 	 */
 	private String enEmail;
+
 	/**
 	 * 公司法人
 	 */
 	private String enCorporation;
+
 	/**
 	 * 商业登记证号
 	 */

+ 36 - 5
src/main/java/com/uas/platform/b2b/temporary/model/NewPurcOrder.java

@@ -15,6 +15,8 @@ public class NewPurcOrder {
 	private Date date;
 	private List<OrderItems> orderItems;
 	private Customers cust;
+	private VendorInfo vend;
+	private Long vendUserUU;
 	private Long custUserUU;
 	private String currency;
 	private String payments;
@@ -138,12 +140,41 @@ public class NewPurcOrder {
 		return status;
 	}
 
+    public VendorInfo getVend() {
+        return vend;
+    }
+
+    public void setVend(VendorInfo vend) {
+        this.vend = vend;
+    }
+
+    public Long getVendUserUU() {
+		return vendUserUU;
+	}
+
+	public void setVendUserUU(Long vendUserUU) {
+		this.vendUserUU = vendUserUU;
+	}
+
 	@Override
 	public String toString() {
-		return "NewPurcOrder [code=" + code + ", date=" + date + ", orderItems=" + orderItems + ", cust=" + cust
-				+ ", custUserUU=" + custUserUU + ", currency=" + currency + ", payments=" + payments + ", remark="
-				+ remark + ", shipaddress=" + shipaddress + ", venduser=" + venduser + ", vendusertel=" + vendusertel
-				+ ", id=" + id + ", rate=" + rate + ", status=" + status + "]";
+		return "NewPurcOrder{" +
+				"code='" + code + '\'' +
+				", date=" + date +
+				", orderItems=" + orderItems +
+				", cust=" + cust +
+				", vend=" + vend +
+				", vendUserUU=" + vendUserUU +
+				", custUserUU=" + custUserUU +
+				", currency='" + currency + '\'' +
+				", payments='" + payments + '\'' +
+				", remark='" + remark + '\'' +
+				", shipaddress='" + shipaddress + '\'' +
+				", venduser='" + venduser + '\'' +
+				", vendusertel='" + vendusertel + '\'' +
+				", id=" + id +
+				", rate=" + rate +
+				", status=" + status +
+				'}';
 	}
-
 }

+ 48 - 0
src/main/java/com/uas/platform/b2b/temporary/model/VendorInfo.java

@@ -0,0 +1,48 @@
+package com.uas.platform.b2b.temporary.model;
+
+/**
+ * 新增采购时关联的供应商信息
+ *
+ * Created by hejq on 2018-01-11.
+ */
+public class VendorInfo {
+
+    /**
+     * 企业uu
+     */
+    private Long uu;
+
+    /**
+     * 公司名称
+     */
+    private String enName;
+
+    /**
+     * 管理员UU号
+     */
+    private Long enAdminuu;
+
+    public Long getUu() {
+        return uu;
+    }
+
+    public void setUu(Long uu) {
+        this.uu = uu;
+    }
+
+    public String getEnName() {
+        return enName;
+    }
+
+    public void setEnName(String enName) {
+        this.enName = enName;
+    }
+
+    public Long getEnAdminuu() {
+        return enAdminuu;
+    }
+
+    public void setEnAdminuu(Long enAdminuu) {
+        this.enAdminuu = enAdminuu;
+    }
+}

+ 22 - 22
src/main/webapp/resources/js/index/app.js

@@ -14142,10 +14142,10 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
         
         $scope.order = {
             date: new Date(),
-            cust: {
+            vend: {
                 uu: '',
             },
-            custUser: {},
+            vendUser: {},
             code: $filter('date')(new Date(), 'yyMMddHHmmss_sss'),
             orderItems: {
                 product: {},
@@ -14171,12 +14171,12 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
         if ($rootScope.businessCode) {
             VendorInfo.getVendorInfo({businessCode: $rootScope.businessCode}, {}, function (data) {
                 $scope.id = data.id;
-                $scope.order.cust.enName = data.vendorEnterprise.enName;
-                $scope.order.cust.enAddress = data.vendorEnterprise.enAddress;
-                $scope.order.cust.uu = data.vendorEnterprise.uu;
+                $scope.order.vend.enName = data.vendorEnterprise.enName;
+                $scope.order.vend.enAddress = data.vendorEnterprise.enAddress;
+                $scope.order.vend.uu = data.vendorEnterprise.uu;
                 $scope.order.paymethods = data.paymethod;
                 $rootScope.venduu = data.vendorEnterprise.uu;
-                Vendor.contacts({venduu: $scope.order.cust.uu}, {}, function (data) {
+                Vendor.contacts({venduu: $scope.order.vend.uu}, {}, function (data) {
                     $scope.contacts = data;
                     $scope.order.vendor = $scope.contacts[0];
                 });
@@ -14202,9 +14202,9 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
             modalInstance.result.then(function (data) {
                 $rootScope.venduu = data.vendorEnterprise.uu;
                 $scope.id = data.id;
-                $scope.order.cust = data.vendorEnterprise;
-                $scope.order.cust.enName = data.vendorEnterprise.enName;
-                $scope.order.custUser = data.vendorUser;
+                $scope.order.vend = data.vendorEnterprise;
+                $scope.order.vend.enName = data.vendorEnterprise.enName;
+                $scope.order.vendUser = data.vendorUser;
                 $scope.order.payments = data.paymethod;
                 $scope.order.orderItems = [];
                 var item = {
@@ -14218,7 +14218,7 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
                     delivery: null,
                     taxrate: null
                 };
-                Vendor.contacts({venduu: $scope.order.cust.uu}, {}, function (data) {
+                Vendor.contacts({venduu: $scope.order.vend.uu}, {}, function (data) {
                     $scope.contacts = data;
                     $scope.order.vendor = $scope.contacts[0];
                 });
@@ -14241,11 +14241,11 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
         };
 
         $scope.onAssociateCmpClick = function (vendor, order) {
-            $scope.order.cust.uu = vendor.venduu;
+            $scope.order.vend.uu = vendor.venduu;
             $scope.id = vendor.id;
             $scope.order.payments = vendor.paymethod;
-            $rootScope.venduu = $scope.order.cust.uu;
-            Vendor.contacts({venduu: $scope.order.cust.uu}, {}, function (data) {
+            $rootScope.venduu = $scope.order.vend.uu;
+            Vendor.contacts({venduu: $scope.order.vend.uu}, {}, function (data) {
                 $scope.contacts = data;
                 $scope.order.vendor = $scope.contacts[0];
             });
@@ -14309,8 +14309,8 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
                 var pageParams = params.url();
                 pageParams.keyword = $scope.keyword;
                 $scope.tip = $scope.keyword;
-                pageParams.custUU = $scope.order.cust.uu;
-                Product.get.call(null, BaseService.parseParams(pageParams), function (page) {
+                pageParams.vendUU = $scope.order.vend.uu;
+                Product.vendPord.call(null, BaseService.parseParams(pageParams), function (page) {
                     $scope.loading = false;
                     if (page) {
                         params.total(page.totalElement);
@@ -14372,8 +14372,8 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
 
             });
         };
-        // 监听custuu发生变化,重新加载物料信息
-        $scope.$watch('order.cust.uu', function (n, o) {
+        // 监听venduu发生变化,重新加载物料信息
+        $scope.$watch('order.vend.uu', function (n, o) {
             if (n == o) {
                 return;
             } else {
@@ -14400,8 +14400,8 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
             $scope.order.vendusertel = order.vendor.tel;
             $scope.order.venduser = order.vendor.venduser;
             $scope.order.shipaddress = order.shipadd.address + order.shipadd.addressdet + '' + order.shipadd.receiver + '' + order.shipadd.usertel;
-            $scope.order.custUU = $scope.order.cust.uu;
-            $scope.order.custUserUU = $scope.order.custUser.userUU;
+            $scope.order.vendUU = $scope.order.vend.uu;
+            $scope.order.vendUserUU = $scope.order.vendUser.userUU;
             if ($scope.order.date instanceof Date) {
                 $scope.order.date = $scope.order.date.getTime();
             }
@@ -14431,8 +14431,8 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
             $scope.order.vendusertel = order.vendor.tel;
             $scope.order.venduser = order.vendor.venduser + '' + order.vendor.tel;
             $scope.order.shipaddress = order.shipadd.address + order.shipadd.addressdet + '' + order.shipadd.receiver + '' + order.shipadd.usertel;
-            $scope.order.custUU = $scope.order.cust.uu;
-            $scope.order.custUserUU = $scope.order.custUser.userUU;
+            $scope.order.vendUU = $scope.order.vend.uu;
+            $scope.order.vendUserUU = $scope.order.vendUser.userUU;
             if ($scope.order.date instanceof Date) {
                 $scope.order.date = $scope.order.date.getTime();
             }
@@ -14483,7 +14483,7 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
                 $scope.contact = data;
                 $scope.contact.venduu = uu;
                 Vendor.saveContact({}, $scope.contact, function (data) {
-                    Vendor.contacts({venduu: $scope.order.cust.uu}, {}, function (data) {
+                    Vendor.contacts({venduu: $scope.order.vend.uu}, {}, function (data) {
                         $scope.contacts = data;
                         $scope.order.vendor = $scope.contacts[0];
                     });

+ 5 - 1
src/main/webapp/resources/js/index/services/Purc.js

@@ -1297,7 +1297,11 @@ define([ 'ngResource'], function() {
             }
         });
 	}]).factory('Product', ['$resource', function($resource){
-		return $resource('product', {}, {});
+		return $resource('product', {}, {
+			vendPord: {
+                url: 'product/vend'
+			}
+		});
 	}]).factory('Vendor', ['$resource', function($resource){
 		return $resource('purc/vendor/:id', {}, {
 			getServe: {

+ 6 - 6
src/main/webapp/resources/tpl/index/purc/addOrder.html

@@ -81,9 +81,9 @@
 					<li>
 						<div class="fl">
 							<em>供应商:</em> <span><input type="text"
-								ng-model="order.cust.enName" placeholder="输入供应商名称" class="bor01"
+								ng-model="order.vend.enName" placeholder="输入供应商名称" class="bor01"
 								ng-required="true"
-								ng-change="getSimilarVendors(order.cust.enName)" name="enName"
+								ng-change="getSimilarVendors(order.vend.enName)" name="enName"
 								ng-focus="onFocus('enName')"
 								typeahead="order.vendName for order in getSimilarVendors($viewValue)"
 								autocomplete="off"
@@ -159,15 +159,15 @@
 					</li>
 				</ul>
 				<div class="com_title01"
-					ng-if="order.orderItems[0].code == null && !order.cust.uu">
+					ng-if="order.orderItems[0].code == null && !order.vend.uu">
 					<span>请先选择供应商</span>
 				</div>
 				<div class="com_title01"
-					ng-if="order.orderItems[0].code == null && order.cust.uu">
+					ng-if="order.orderItems[0].code == null && order.vend.uu">
 					<span>请先选择供应商产品</span> <a ng-click="uplodaByBatch()">批量导入</a>
 				</div>
 				<div class="com_title01"
-					ng-if="order.orderItems[0].code != null && order.cust.uu">
+					ng-if="order.orderItems[0].code != null && order.vend.uu">
 					<span>产品信息</span> <a ng-click="uplodaByBatch()">批量导入</a>
 				</div>
 				<!--产品信息-->
@@ -216,7 +216,7 @@
 			</form>
 			<!-- 搜索结果列表-->
 			<div class="pro-add-data02" style="min-height: 500px;"
-				ng-if="order.cust.uu">
+				ng-if="order.vend.uu">
 				<!--<div class="pro-search">
                  <div class="search-result fl"><img src="static/img/purc/search01.png"/>搜索“{{tip}}”,为您找到<em>{{total}}</em>个结果</div>
                  <div class="search fr">