Преглед изворни кода

Merge remote-tracking branch 'origin/feature_release-tomysql' into feature_release-tomysql

suntg пре 8 година
родитељ
комит
f996cc5210

+ 2 - 2
src/main/java/com/uas/platform/b2c/logistics/dao/AddressTakeSelfDao.java

@@ -18,11 +18,11 @@ public interface AddressTakeSelfDao
 		extends JpaSpecificationExecutor<AddressTakeSelf>, JpaRepository<AddressTakeSelf, Long> {
 
 	/**
-	 * 根据企业enuu来获取自提点地址信息,按创建时间排序
+	 * 根据企业enuu和启用状态来获取自提点地址信息,按创建时间排序
 	 * @param enuu
 	 * @return
 	 */
-	List<AddressTakeSelf> findByEnuuOrderByCreatetimeDesc(Long enuu);
+	List<AddressTakeSelf> findByEnuuAndActiveOrderByCreatetimeDesc(Long enuu, Short active);
 
 	/**
 	 * 根据企业enuu获取所有的自提点地址名称

+ 2 - 1
src/main/java/com/uas/platform/b2c/logistics/service/impl/AddressTakeSelfServiceImpl.java

@@ -1,6 +1,7 @@
 package com.uas.platform.b2c.logistics.service.impl;
 
 import com.alibaba.fastjson.JSONObject;
+import com.uas.platform.b2c.core.constant.ShortConstant;
 import com.uas.platform.b2c.core.support.SystemSession;
 import com.uas.platform.b2c.logistics.dao.AddressTakeSelfDao;
 import com.uas.platform.b2c.logistics.model.AddressTakeSelf;
@@ -101,7 +102,7 @@ public class AddressTakeSelfServiceImpl implements AddressTakeSelfService {
 				throw new IllegalOperatorException("店铺信息丢失,请刷新后重试");
 			}
 			Long enuu = store.getEnUU();
-			List<AddressTakeSelf> list = addressTakeSelfDao.findByEnuuOrderByCreatetimeDesc(enuu);
+			List<AddressTakeSelf> list = addressTakeSelfDao.findByEnuuAndActiveOrderByCreatetimeDesc(enuu, ShortConstant.YES_SHORT);
 			map.put(object.getString("uuid"), list);
 		}
 		return map;

+ 11 - 1
src/main/java/com/uas/platform/b2c/prod/product/kind/service/impl/KindServiceImpl.java

@@ -771,7 +771,17 @@ public class KindServiceImpl implements KindService {
 		if (kindInfo == null) {
 			throw new IllegalOperatorException("类目不存在");
 		}
-		return kindInfoDao.findStructingKinds(id);
+		return findStructingKinds(id);
+	}
+
+	public List<KindInfo> findStructingKinds(Long id) {
+        List<Kind> kinds = getParentsByChildId(id);
+        List<KindInfo> kindInfos = new ArrayList<KindInfo>();
+        for (Kind kind : kinds) {
+            KindInfo kindInfo = new KindInfo(kind);
+            kindInfos.add(kindInfo);
+        }
+		return kindInfos;
 	}
 
 	@Override

+ 94 - 77
src/main/webapp/resources/js/usercenter/controllers/forstore/buyer_invoice_ctrl.js

@@ -48,93 +48,109 @@ define(['app/app'], function(app) {
         $scope.bill = {};
         $scope.bill.address = {};
 
-            //保存发票信息
-            $scope.saveBill = function(flag) {
-                var dataValidFlag = $scope.checkValidFrom();
-                if (!flag && dataValidFlag && $scope.bill.is_agree) {
-                    $scope.bill.kind = $scope.billType
-                    if (!$scope.isAdd) { //修改
-                        doSave('修改发票信息');
-                    } else { // 新增
-                        doSave('添加发票');
-                    }
-                } else if (flag || !dataValidFlag) {
-                    toaster.pop('error', '请填写正确的发票信息');
-                } else {
-                    toaster.pop('error', '请勾选并阅读《发票须知》');
-                }
-            };
-            var doSave = function (message) {
-                $scope.bill.area = $scope.bill.address.province + "," + $scope.bill.address.city + "," + $scope.bill.address.district;
-                var file = null;
-                if($scope.bill.billInfo&&$scope.bill.billInfo[0]) {
-                    file = $scope.bill.billInfo[0];
+        //保存发票信息
+        $scope.saveBill = function(flag) {
+            var dataValidFlag = $scope.checkValidFrom();
+            if (!flag && dataValidFlag && $scope.bill.is_agree) {
+                $scope.bill.kind = $scope.billType
+                if (!$scope.isAdd) { //修改
+                    doSave('修改发票信息');
+                } else { // 新增
+                    doSave('添加发票');
                 }
-                $upload.upload({
-                    url: 'trade/bill/save',
-                    file: file,
-                    method: 'POST',
-                    data: {
-                        bill: $scope.bill
-                    }
-                }).success(function(data){
-                    toaster.pop('success', message + '成功');
-                    $scope.changeBillStatusFlag = false
-                    $state.reload();
-                }).error(function(data){
-                    toaster.pop('error', message + '失败');
-                });
+            } else if (flag || !dataValidFlag) {
+                toaster.pop('error', '请填写正确的发票信息');
+            } else {
+                toaster.pop('error', '请勾选并阅读《发票须知》');
             }
-
-            $scope.isDoUpload = false;
-            //上传发票许可证
-            $scope.onUploadPermission = function () {
-                $scope.isDoUpload = true;
-                if (event.target.files[0].size < 3*1024*1024) {
-                    $scope.bill.attachUrl = event.target.files[0].name;
-                } else {
-                    $scope.bill.attachUrl = '';
-                }
+        };
+        var doSave = function (message) {
+            $scope.bill.area = $scope.bill.address.province + "," + $scope.bill.address.city + "," + $scope.bill.address.district;
+            var file = null;
+            if($scope.bill.billInfo&&$scope.bill.billInfo[0]) {
+                file = $scope.bill.billInfo[0];
             }
-
-            //判断中文字符串的长度
-            var getRealStringLen = function (str) {
-                var realLength = 0, len = str.length, charCode = -1;
-                for (var i = 0; i < len; i++) {
-                    charCode = str.charCodeAt(i);
-                    if (charCode >= 0 && charCode <= 128) realLength += 1;
-                    else realLength += 2;
+            $upload.upload({
+                url: 'trade/bill/save',
+                file: file,
+                method: 'POST',
+                data: {
+                    bill: $scope.bill
                 }
-                return realLength;
+            }).success(function(data){
+                toaster.pop('success', message + '成功');
+                $scope.changeBillStatusFlag = false
+                $state.reload();
+            }).error(function(data){
+                toaster.pop('error', message + '失败');
+            });
+        }
+
+        $scope.isDoUpload = false;
+        //上传发票许可证
+        $scope.onUploadPermission = function () {
+            $scope.isDoUpload = true;
+            if (event.target.files[0].size < 3*1024*1024) {
+                $scope.bill.attachUrl = event.target.files[0].name;
+            } else {
+                $scope.bill.attachUrl = '';
             }
+        }
 
-            $scope.validForm = {
-                validBillHead: true,
-                validBillName: true,
-                validBankName: true,
-                validDetailAddress: true,
-                validCompanyAddress: true
+        //判断中文字符串的长度
+        var getRealStringLen = function (str) {
+            var realLength = 0, len = str.length, charCode = -1;
+            for (var i = 0; i < len; i++) {
+                charCode = str.charCodeAt(i);
+                if (charCode >= 0 && charCode <= 128) realLength += 1;
+                else realLength += 2;
             }
+            return realLength;
+        }
 
-            $scope.checkValidFrom = function () {
-                var flag = true
-                angular.forEach($scope.validForm, function (item) {
-                    if (!item) {
-                        flag = false;
-                    }
-                })
-                return flag;
+        $scope.validForm = {
+            validBillHead: true,
+            validBillName: true,
+            validBankName: true,
+            validDetailAddress: true,
+            validCompanyAddress: true
+        }
+
+        $scope.initFormFlag = function () {
+            $scope.initFlag = {
+                initBillHead: true,
+                initBillName: true,
+                initBankName: true,
+                initDetailAddress: true,
+                initCompanyAddress: true,
+                initCompanyPhone: true,
+                initCompanyTaxNum: true,
+                initBankAccount: true,
+                initTelephone: true
             }
-        $scope.checkValidFrom();
-            //发票抬头check
-            $scope.checkBillHead = function () {
-                var len = getRealStringLen($scope.bill.head);
-                if (len > 100) {
-                    $scope.validForm.validBillHead = false;
-                } else {
-                    $scope.validForm.validBillHead = true;
+        }
+
+        $scope.initFormFlag();
+
+        $scope.checkValidFrom = function () {
+            var flag = true
+            angular.forEach($scope.validForm, function (item) {
+                if (!item) {
+                    flag = false;
                 }
+            })
+            return flag;
+        }
+        $scope.checkValidFrom();
+        //发票抬头check
+        $scope.checkBillHead = function () {
+            var len = getRealStringLen($scope.bill.head);
+            if (len > 100) {
+                $scope.validForm.validBillHead = false;
+            } else {
+                $scope.validForm.validBillHead = true;
             }
+        }
 
         //收票人check
         $scope.checkBillName = function () {
@@ -214,6 +230,7 @@ define(['app/app'], function(app) {
         }
         $scope.setBillType = function (type) {
             $scope.bill = {};
+            $scope.initFormFlag();
             $scope.billType = type;
             this.form.$setPristine();
             this.form.$setUntouched();
@@ -238,7 +255,7 @@ define(['app/app'], function(app) {
                     case 2:
                         $scope.bill.address.district = item;
                         break;
-            }
+                }
             });
         };
         //删除按钮点击

+ 1 - 1
src/main/webapp/resources/js/vendor/controllers/forstore/query_logistics_ctrl.js

@@ -58,7 +58,7 @@ define(['app/app', 'calendar'], function(app) {
                 str.indexOf("发出")!=-1||str.indexOf("收入")!=-1||str.indexOf("扫描")!=-1||str.indexOf("到达")!=-1){
                 $scope.status = "transit";
             }
-            if(str.indexOf("派送")!=-1){
+            if(str.indexOf("派送")!=-1 || str.indexOf("派件")!=-1){
                 $scope.status = "send";
             }
             if(str.indexOf("签收")!=-1){

+ 26 - 26
src/main/webapp/resources/view/admin/trade/trade_invoicefromorder.html

@@ -234,32 +234,32 @@ input[type="radio"]:checked+label:after, input[type="checkbox"]:checked+label:af
 								</a>
 							</td>
 							<td class="text-center" ng-show="active=='inbound'">
-								<a ng-show="active=='inbound'" ng-click="queryLogistics(invoice)">
-									<div class="btn-group">
-										<button type="button" class="btn btn-default btn-sm  dropdown-toggle" data-toggle="dropdown">查看物流</button>
-										<div class="dropdown-menu" role="menu">
-											<p style="text-align: center">物流信息</p>
-											<table class="table table-bordered">
-												<tr>
-													<th>订单号</th>
-													<th ng-bind="logisticsInfo.ddhm"></th>
-												</tr>
-												<tr>
-													<th>邮件号</th>
-													<th ng-bind="logisticsInfo.yjhm"></th>
-												</tr>
-												<tr>
-													<th>处理时间</th>
-													<th ng-bind="logisticsInfo.clsj"></th>
-												</tr>
-												<tr>
-													<th>物流信息</th>
-													<th ng-bind="logisticsInfo.wlxx"></th>
-												</tr>
-											</table>
-										</div>
-									</div>				
-								</a>
+								<!--<a ng-show="active=='inbound'" ng-click="queryLogistics(invoice)">-->
+									<!--<div class="btn-group">-->
+										<!--<button type="button" class="btn btn-default btn-sm  dropdown-toggle" data-toggle="dropdown">查看物流</button>-->
+										<!--<div class="dropdown-menu" role="menu">-->
+											<!--<p style="text-align: center">物流信息</p>-->
+											<!--<table class="table table-bordered">-->
+												<!--<tr>-->
+													<!--<th>订单号</th>-->
+													<!--<th ng-bind="logisticsInfo.ddhm"></th>-->
+												<!--</tr>-->
+												<!--<tr>-->
+													<!--<th>邮件号</th>-->
+													<!--<th ng-bind="logisticsInfo.yjhm"></th>-->
+												<!--</tr>-->
+												<!--<tr>-->
+													<!--<th>处理时间</th>-->
+													<!--<th ng-bind="logisticsInfo.clsj"></th>-->
+												<!--</tr>-->
+												<!--<tr>-->
+													<!--<th>物流信息</th>-->
+													<!--<th ng-bind="logisticsInfo.wlxx"></th>-->
+												<!--</tr>-->
+											<!--</table>-->
+										<!--</div>-->
+									<!--</div>-->
+								<!--</a>-->
 							</td>
 						</tr>
 					</tbody>

+ 13 - 10
src/main/webapp/resources/view/usercenter/forstore/buyer_invoice.html

@@ -432,6 +432,9 @@
         position: relative;
         top: 5px;
     }
+    .bg-fff8ee {
+        background: #fff8ee;
+    }
 </style>
 <!--右侧主体部分-->
 <div class="user_right fr u_c_invoice">
@@ -525,42 +528,42 @@
                     <div class="form-group">
                         <label class="col-md-2 control-label"><b class="text-inverse">*</b>发票抬头:</label>
                         <div class="form-input-line">
-                            <input type="text" class="form-control" ng-model="bill.head" ng-focus="form.billHead.$touched = false" ng-blur="form.billHead.$touched = true; checkBillHead()" name="billHead" required="required" placeholder="请输入发票抬头">
+                            <input type="text" class="form-control" ng-class="{'bg-fff8ee': !initFlag.initBillHead&&(form.billHead.$invalid || !validForm.validBillHead)}" ng-model="bill.head" ng-focus="form.billHead.$touched = false;" ng-blur="form.billHead.$touched = true;initFlag.initBillHead = false;checkBillHead()" name="billHead" required="required" placeholder="请输入发票抬头">
                         </div>
                         <div class="text-inverse error col-md-3" ng-show="form.billHead.$touched&&(form.billHead.$invalid || !validForm.validBillHead)" ng-bind="form.billHead.$error.required?'请填写发票抬头':'请勿超过50个字'"></div>
                     </div>
                     <div class="form-group" ng-if="billType == 1205">
                         <label class="col-md-2 control-label"><b class="text-inverse">*</b>单位地址:</label>
                         <div class="form-input-line">
-                            <input type="text" class="form-control" ng-model="bill.companyAddress" ng-focus="form.companyAddr.$touched = false" ng-blur="form.companyAddr.$touched = true; checkCompanyAddress()" name="companyAddr" required="required" placeholder="请输入单位地址">
+                            <input type="text" class="form-control" ng-class="{'bg-fff8ee': !initFlag.initCompanyAddress&&(form.companyAddr.$invalid || !validForm.validCompanyAddress)}" ng-model="bill.companyAddress" ng-focus="form.companyAddr.$touched = false;" ng-blur="form.companyAddr.$touched = true;initFlag.initCompanyAddress = false; checkCompanyAddress()" name="companyAddr" required="required" placeholder="请输入单位地址">
                         </div>
                         <div class="text-inverse error col-md-3" ng-show="form.companyAddr.$touched&&(form.companyAddr.$invalid || !validForm.validCompanyAddress)" ng-bind="form.companyAddr.$error.required?'请填写单位地址':'请勿超过50个字'"></div>
                     </div>
                     <div class="form-group"  ng-if="billType == 1205">
                         <label class="col-md-2 control-label"><b class="text-inverse">*</b>单位电话:</label>
                         <div class="form-input-line">
-                            <input type="text" class="form-control" ng-focus="form.companyPhone.$touched = false" ng-blur="form.companyPhone.$touched = true" placeholder="区号和号码使用 '-' 隔开" name="companyPhone" ng-model="bill.companyPhone" ng-pattern="/^0\d{2,3}-[1-9]\d{6,7}$/" ng-maxlength="20" required="required">
+                            <input type="text" class="form-control" ng-class="{'bg-fff8ee':!initFlag.initCompanyPhone&&form.companyPhone.$error.required}" ng-focus="form.companyPhone.$touched = false" ng-blur="form.companyPhone.$touched = true;initFlag.initCompanyPhone=false;" placeholder="区号和号码使用 '-' 隔开" name="companyPhone" ng-model="bill.companyPhone" ng-pattern="/^0\d{2,3}-[1-9]\d{6,7}$/" ng-maxlength="20" required="required">
                         </div>
                         <div class="text-inverse error col-md-3" ng-show="form.companyPhone.$touched&&form.companyPhone.$invalid" ng-bind="form.companyPhone.$error.required?'请填写单位电话':form.companyPhone.$error.maxlength?'请勿超过20个字符':'请填写正确的电话号码,用-隔开'"></div>
                     </div>
                     <div class="form-group"  ng-if="billType == 1205">
                         <label class="col-md-2 control-label"><b class="text-inverse">*</b>税务登记号:</label>
                         <div class="form-input-line">
-                            <input type="text" class="form-control" ng-model="bill.companyTaxNumber" ng-focus="form.companyTaxNum.$touched = false" ng-blur="form.companyTaxNum.$touched = true" name="companyTaxNum" required="true" ng-maxlength="20" ng-minlength="15" ng-pattern="/^[0-9a-zA-Z]+$/" placeholder="请输入税务登记号">
+                            <input type="text" class="form-control" ng-class="{'bg-fff8ee':!initFlag.initCompanyTaxNum&&form.companyTaxNum.$error.required}" ng-model="bill.companyTaxNumber" ng-focus="form.companyTaxNum.$touched = false" ng-blur="form.companyTaxNum.$touched = true; initFlag.initCompanyTaxNum = false;" name="companyTaxNum" required="true" ng-maxlength="20" ng-minlength="15" ng-pattern="/^[0-9a-zA-Z]+$/" placeholder="请输入税务登记号">
                         </div>
                         <div class="text-inverse error col-md-3" ng-show="form.companyTaxNum.$touched&&(form.companyTaxNum.$invalid)" ng-bind="form.companyTaxNum.$error.required?'请填写税务登记号':'请填写15-20位数字或字母'"></div>
                     </div>
                     <div class="form-group"  ng-if="billType == 1205">
                         <label class="col-md-2 control-label"><b class="text-inverse">*</b>开户银行:</label>
                         <div class="form-input-line">
-                            <input type="text" class="form-control" ng-model="bill.bankName" ng-focus="form.bankName.$touched = false" ng-blur="form.bankName.$touched = true; checkBankName()" name="bankName" required="required" placeholder="请输入开户银行">
+                            <input type="text" class="form-control" ng-class="{'bg-fff8ee': !initFlag.initBankName&&(form.bankName.$invalid || !validForm.validBankName)}" ng-model="bill.bankName" ng-focus="form.bankName.$touched = false;" ng-blur="form.bankName.$touched = true;initFlag.initBankName = false; checkBankName()" name="bankName" required="required" placeholder="请输入开户银行">
                         </div>
                         <div class="text-inverse error col-md-3" ng-show="form.bankName.$touched&&(form.bankName.$invalid || !validForm.validBankName)" ng-bind="form.bankName.$error.required?'请填写开户银行':'请勿超过30个字'"></div>
                     </div>
                     <div class="form-group"  ng-if="billType == 1205">
                         <label class="col-md-2 control-label"><b class="text-inverse">*</b>开户银行账户:</label>
                         <div class="form-input-line">
-                            <input type="text" class="form-control" ng-model="bill.bankAccount" name="account" ng-focus="form.account.$touched = false" ng-blur="form.account.$touched = true" ng-pattern="/^[0-9]*$/" required ng-maxlength="30" placeholder="请输入开户银行账号">
+                            <input type="text" class="form-control" ng-class="{'bg-fff8ee':!initFlag.initBankAccount&&form.account.$error.required}" ng-model="bill.bankAccount" name="account" ng-focus="form.account.$touched = false" ng-blur="form.account.$touched = true; initFlag.initBankAccount=false" ng-pattern="/^[0-9]*$/" required ng-maxlength="30" placeholder="请输入开户银行账号">
                         </div>
                         <div class="text-inverse error col-md-3" ng-show="form.account.$touched&&(form.account.$invalid)" ng-bind="form.account.$error.required?'请填写开户银行账号':'请填写30位以内的数字'"></div>
                     </div>
@@ -579,14 +582,14 @@
                     <div class="form-group">
                         <label class="col-md-2 control-label"><b class="text-inverse">*</b>收票人:</label>
                         <div class="form-input-line">
-                            <input id="mzbillname" type="text" class="form-control" ng-focus="form.billName.$touched = false" ng-blur="form.billName.$touched = true; checkBillName()" ng-model="bill.name" name="billName" required="required" placeholder="请输入收票人">
+                            <input id="mzbillname" ng-class="{'bg-fff8ee': !initFlag.initBillName&&(form.billName.$invalid || !validForm.validBillName)}" type="text" class="form-control" ng-focus="form.billName.$touched = false; " ng-blur="form.billName.$touched = true;initFlag.initBillName = false; checkBillName()" ng-model="bill.name" name="billName" required="required" placeholder="请输入收票人">
                         </div>
                         <div class="text-inverse error col-md-3" ng-show="form.billName.$touched&&(form.billName.$invalid || !validForm.validBillName)" ng-bind="form.billName.$error.required?'请填写收票人姓名':'请勿超过10个字'"></div>
                     </div>
                     <div class="form-group">
                         <label class="col-md-2 control-label"><b class="text-inverse">*</b>联系电话:</label>
                         <div class="form-input-line">
-                            <input type="text" class="form-control" ng-model="bill.telephone" ng-focus="form.billTel.$touched = false" ng-blur="form.billTel.$touched = true" name="billTel"
+                            <input type="text" class="form-control" ng-class="{'bg-fff8ee':!initFlag.initTelephone&&form.billTel.$error.required}" ng-model="bill.telephone" ng-focus="form.billTel.$touched = false" ng-blur="form.billTel.$touched = true; initFlag.initTelephone=false;" name="billTel"
                                    ng-pattern="/^[0-9]*$/" ng-maxlength="11" ng-minlength="8" required="required" placeholder="请输入联系电话">
                         </div>
                         <div class="text-inverse error col-md-3" ng-show="form.billTel.$touched&&form.billTel.$invalid" ng-bind="form.billTel.$error.required?'请填写联系电话':'请输入8-11位数字'"></div>
@@ -620,8 +623,8 @@
                     <div class="form-group">
                         <label class="col-md-2 control-label"><b class="text-inverse">*</b>详细地址:</label>
                         <div class="form-input-line" style="width: 502px">
-                            <input id="mzaddress" type="text" class="form-control" required="required" name="billDetail" ng-model="bill.detailAddress" title="建议您填写详细发件地址,如街道名,门牌号,楼层和房间号等信息"
-                            placeholder="建议您填写详细发件地址,如街道名,门牌号,楼层和房间号等信息" ng-focus="form.billDetail.$touched = false" ng-blur="form.billDetail.$touched = true; checkDetailAddress()" >
+                            <input id="mzaddress" type="text" class="form-control" ng-class="{'bg-fff8ee': !initFlag.initDetailAddress&&(form.billDetail.$invalid|| !validForm.validDetailAddress)}" required="required" name="billDetail" ng-model="bill.detailAddress" title="建议您填写详细发件地址,如街道名,门牌号,楼层和房间号等信息"
+                            placeholder="建议您填写详细发件地址,如街道名,门牌号,楼层和房间号等信息" ng-focus="form.billDetail.$touched = false; " ng-blur="form.billDetail.$touched = true;initFlag.initDetailAddress = false; checkDetailAddress()" >
                         </div>
                         <div class="text-inverse error col-md-3" ng-show="form.billDetail.$touched&&(form.billDetail.$invalid|| !validForm.validDetailAddress)" ng-bind="form.billDetail.$error.required?'请填写详细地址':'请勿超过30个字'"></div>
                     </div>

+ 1 - 1
src/main/webapp/resources/view/vendor/left_nav.html

@@ -29,7 +29,7 @@
 		<li ng-class="{'active' : active == 'vendor_brand_apply'}"><a href="javascript:void(0)" ui-sref="vendor_brand_apply">品牌申请</a></li>
 		<li ng-class="{'active' : active == 'vendor_component_apply'}"><a href="javascript:void(0)" ui-sref="vendor_component_apply">器件申请</a></li>
 	<!--	<li ng-class="{'active' : active == 'vendor_productOn'}"><a href="javascript:void(0)" ui-sref="vendor_productOn">产品导入</a></li>-->
-		<li ng-class="{'active' : active == 'vendor_productOn'}"><a href="javascript:void(0)" ui-sref="vendor_upload">产品导入</a></li>
+		<li ng-class="{'active' : active == 'vendor_upload'}"><a href="javascript:void(0)" ui-sref="vendor_upload">产品导入</a></li>
 		<!--<li ng-class="{'active' : active == 'vendor_repository'}"><a href="javascript:void(0)" ui-sref="vendor_repository">仓库管理</a></li>-->
 		<li ng-class="{'active' : active == 'vendor_material'}"><a href="javascript:void(0)" ui-sref="vendor_material">产品管理</a></li>
 		<!--<li ng-class="{'active' : active == 'vendor_after_sale'}" class="undo">-->