Procházet zdrojové kódy

企业用户第一次标准上架管理自营转寄售时,提示寄售协议

huxz před 8 roky
rodič
revize
04a6dd6fbc

+ 0 - 9
src/main/java/com/uas/platform/b2c/prod/store/controller/ConsignmentAgreeRecordController.java

@@ -31,15 +31,6 @@ public class ConsignmentAgreeRecordController {
 		this.recordService = recordService;
 	}
 
-	/**
-	 * 用户自营转寄售时,获取寄售协议
-	 */
-	@RequestMapping(method = RequestMethod.GET, value = "/agreement")
-	public String obtainAConsignmentAgreement() {
-		logger.info("Obtain a consignment agreement when user switch self-support to consignment first");
-		return recordService.obtainAConsignmentAgreement();
-	}
-
 	/**
 	 * 用户自营转寄售时,查询用户同意寄售协议的记录
 	 */

+ 0 - 5
src/main/java/com/uas/platform/b2c/prod/store/service/ConsignmentAgreeRecordService.java

@@ -13,11 +13,6 @@ import org.springframework.data.domain.Page;
  */
 public interface ConsignmentAgreeRecordService {
 
-	/**
-	 * 用户自营转寄售时,获取寄售协议
-	 */
-	String obtainAConsignmentAgreement();
-
 	/**
 	 * 用户自营转寄售时,查询用户同意寄售协议的记录
 	 */

+ 0 - 7
src/main/java/com/uas/platform/b2c/prod/store/service/impl/ConsignmentAgreeRecordServiceImpl.java

@@ -17,7 +17,6 @@ import org.springframework.data.domain.Page;
 import org.springframework.data.jpa.domain.Specification;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
-import org.springframework.web.client.RestTemplate;
 
 import javax.persistence.criteria.CriteriaBuilder;
 import javax.persistence.criteria.CriteriaQuery;
@@ -48,12 +47,6 @@ public class ConsignmentAgreeRecordServiceImpl implements ConsignmentAgreeRecord
 		this.recordDao = recordDao;
 	}
 
-	@Override
-	public String obtainAConsignmentAgreement() {
-		RestTemplate restTemplate = new RestTemplate();
-		return restTemplate.getForObject("http://www.usoftmall.com/help#/issue/16", String.class);
-	}
-
 	@Override
 	public ConsignmentAgreeRecord findRecordOfUser() {
 		User user = SystemSession.getUser();

+ 39 - 1
src/main/webapp/resources/js/common/query/storeInfo.js

@@ -188,5 +188,43 @@ define([ 'ngResource' ], function() {
 				}
 			}
         });
-    }]);
+    }]).factory('ConsignmentAgreementRecord', ['$resource', 'BaseService', function ($resource, BaseService) {
+    	// 自营转寄售协议,同意操作记录
+		return $resource('auth/store/consignment/record', {}, {
+			/**
+			 * 用户自营转寄售时,获取寄售协议
+			 */
+			obtainAConsignmentAgreement: {
+				url: 'http://www.usoftmall.com/api/help-service/issues/16',
+				method: 'GET'
+			},
+			/**
+			 * 用户自营转寄售时,查询用户同意寄售协议的记录
+			 */
+			findRecordOfUser: {
+				url: 'auth/store/consignment/record/findByUser',
+				method: 'GET'
+			},
+			/**
+			 * 用户第一次同意自营转寄售时,保存用户的操作记录信息
+			 *
+			 * @param record 操作记录信息
+			 */
+			saveRecordWhenUserAgree: {
+				url: 'auth/store/consignment/record',
+				method: 'POST'
+			},
+			/**
+			 * 管理员在管理后台查看店铺信息时,按操作时间降序获取操作记录信息
+			 *
+			 * @param pageParams	分页参数
+			 * @param enUU			企业UU
+			 */
+			pageRecordWhenAdminQueryInfo: {
+				url: 'auth/store/consignment/record/pageByAdmin',
+				method: 'GET'
+			}
+		});
+
+	}]);
 });

+ 63 - 2
src/main/webapp/resources/js/vendor/controllers/forstore/vendor_standard_putOn_ctrl.js

@@ -4,7 +4,7 @@
  */
 define(['app/app'], function (app) {
     'use strict';
-    app.register.controller('vendor_standardPutOnCtrl', ['$scope', '$rootScope', 'StandardPutOnAdminService', 'ngTableParams', 'BaseService', 'toaster', 'Enterprise', '$q', 'Loading', '$modal', function ($scope, $rootScope, StandardPutOnAdminService, ngTableParams, BaseService, toaster, Enterprise, $q, Loading, $modal) {
+    app.register.controller('vendor_standardPutOnCtrl', ['$scope', '$rootScope', 'StandardPutOnAdminService', 'ngTableParams', 'BaseService', 'toaster', 'Enterprise', '$q', 'Loading', '$modal', 'ConsignmentAgreementRecord', function ($scope, $rootScope, StandardPutOnAdminService, ngTableParams, BaseService, toaster, Enterprise, $q, Loading, $modal, ConsignmentAgreementRecord) {
         $rootScope.active = 'vendor_goods';
         $scope.keyword = '';
         $scope.tab = 'vendor_standardPutOn';
@@ -350,6 +350,25 @@ define(['app/app'], function (app) {
          */
         $scope.changeSale = function (standard) {
             standard.editIsSelfSale = standard.editSelfSaleNum == 1;
+
+            if (!standard.editIsSelfSale) {
+				ConsignmentAgreementRecord.findRecordOfUser({}, {}, function (record) {
+				    if (!record.id) {
+				        // 弹出寄售协议弹窗
+						$modal.open({
+							templateUrl : 'static/view/vendor/modal/confirm_consignment_agreement.html',
+							controller : 'ConfirmConsignmentAgreement',
+                            size: 'lg'
+						}).result.then(function(){
+							toaster.pop('success', '操作成功');
+						}, function(){
+						});
+                    }
+				}, function (error) {
+                    console.log(error);
+                    toaster.pop('error', '系统异常,请联系管理员寻求帮助');
+				});
+            }
         };
 
         /**
@@ -713,4 +732,46 @@ define(['app/app'], function (app) {
             $modalInstance.close();
         }
     }]);
-});
+
+	/**
+     * 店铺寄售协议确认弹框
+	 */
+	app.register.controller('ConfirmConsignmentAgreement', ['$scope', '$modalInstance', 'ConsignmentAgreementRecord', 'toaster', function ($scope, $modalInstance, ConsignmentAgreementRecord, toaster) {
+
+	    $scope.agreement = false;
+	    $scope.article = '';
+
+	    ConsignmentAgreementRecord.obtainAConsignmentAgreement({}, {}, function (data) {
+	        if (data && data.article) {
+	            $scope.article = data.article;
+            }
+            console.log(data);
+		}, function (error) {
+            console.log(error);
+		});
+
+		/**
+         * 确认操作
+		 */
+		$scope.confirm = function () {
+			ConsignmentAgreementRecord.saveRecordWhenUserAgree({}, {agreement: $scope.agreement}, function (result) {
+                if (result.success) {
+					$modalInstance.close();
+                } else {
+					console.log(result.message);
+					toaster.pop('error', '用户信息异常,请联系管理员寻求帮助');
+                }
+			}, function (error) {
+                console.log(error);
+				toaster.pop('error', '系统异常,请联系管理员寻求帮助');
+			});
+		};
+
+		/**
+         * 取消操作
+		 */
+		$scope.cancel = function () {
+            $modalInstance.dismiss();
+		};
+	}]);
+});

+ 49 - 0
src/main/webapp/resources/view/vendor/modal/confirm_consignment_agreement.html

@@ -0,0 +1,49 @@
+<style type="text/css">
+	.modal-body {
+		width: 942px;
+		background-color: #E0E2E1;
+		padding-bottom: 1px;
+	}
+	.modal-body .agreement-content {
+		min-height: 300px;
+		height: 400px;
+		background-color: #FFFFFF;
+		overflow-y: auto;
+	}
+	.modal-body .content-read {
+		text-align: center;
+	}
+	.modal-body .content-read a {
+		color: #0000FF;
+	}
+
+	.modal-footer {
+		width: 942px;
+		background-color: #FFFFFF;
+	}
+	.modal-footer .action-tip {
+		text-align: left;
+	}
+	.modal-footer .action-tip em {
+		color: #FF0000;
+	}
+</style>
+<div class="modal-body">
+    <div class="agreement-content" ng-bind-html="article">
+		《优软商城买卖条例》
+	</div>
+	<div class="checkbox content-read">
+		<label>
+			<input type="checkbox" ng-model="agreement"> 我已阅读并同意,《<a href="http://www.usoftmall.com/help#/issue/16" target="_blank">优软商城买卖条例</a>》关于库存寄售的全部条款。
+		</label>
+	</div>
+</div>
+<div class="modal-footer">
+	<div class="action-tip">
+		<em>*</em>您在使用库存寄售的服务前,请认真阅读《优软商城买卖条例》;若您是误操作,请点击”取消“按钮进行返回操作。
+	</div>
+	<div class="action-operate">
+		<button class="btn btn-default" ng-click="cancel()" type="button">取消</button>
+		<button class="btn btn-success" ng-click="confirm()" type="button" ng-disabled="!agreement">确定</button>
+	</div>
+</div>