瀏覽代碼

所有单据查看和操作权限和链接调整(除了打印导出)
添加更新角色权限标准库的按钮,仅优软科技有限公司可用
默认角色排序
普通用户和管理员一样只能单角色
普通用户隐藏价格

wangmh 8 年之前
父節點
當前提交
8cb5eaaae3
共有 72 個文件被更改,包括 961 次插入445 次删除
  1. 8 0
      src/main/java/com/uas/platform/b2b/controller/AuthenticationController.java
  2. 26 31
      src/main/java/com/uas/platform/b2b/controller/BaseInfoController.java
  3. 12 12
      src/main/java/com/uas/platform/b2b/controller/DeputyOrderController.java
  4. 2 2
      src/main/java/com/uas/platform/b2b/controller/MakeOrderChangeController.java
  5. 8 8
      src/main/java/com/uas/platform/b2b/controller/PurcInquiryController.java
  6. 84 8
      src/main/java/com/uas/platform/b2b/controller/PurcProductController.java
  7. 15 15
      src/main/java/com/uas/platform/b2b/controller/PurchaseTenderController.java
  8. 31 0
      src/main/java/com/uas/platform/b2b/controller/RoleController.java
  9. 11 11
      src/main/java/com/uas/platform/b2b/controller/SaleNoticeController.java
  10. 8 8
      src/main/java/com/uas/platform/b2b/controller/SaleOrderChangeController.java
  11. 32 32
      src/main/java/com/uas/platform/b2b/controller/SaleOrderController.java
  12. 33 33
      src/main/java/com/uas/platform/b2b/controller/SaleQuotationController.java
  13. 8 8
      src/main/java/com/uas/platform/b2b/controller/SaleSampleController.java
  14. 9 7
      src/main/java/com/uas/platform/b2b/controller/UserController.java
  15. 5 8
      src/main/java/com/uas/platform/b2b/dao/RoleDao.java
  16. 2 0
      src/main/java/com/uas/platform/b2b/filter/SSOInterceptor.java
  17. 13 0
      src/main/java/com/uas/platform/b2b/model/Resource.java
  18. 27 0
      src/main/java/com/uas/platform/b2b/model/Role.java
  19. 6 0
      src/main/java/com/uas/platform/b2b/service/RoleService.java
  20. 28 0
      src/main/java/com/uas/platform/b2b/service/impl/RoleServiceImpl.java
  21. 2 1
      src/main/webapp/resources/js/common/services.js
  22. 338 90
      src/main/webapp/resources/js/index/app.js
  23. 12 3
      src/main/webapp/resources/js/index/services/Account.js
  24. 21 9
      src/main/webapp/resources/js/index/services/BaseInfo.js
  25. 2 2
      src/main/webapp/resources/js/index/services/DeputyOrder.js
  26. 9 2
      src/main/webapp/resources/js/index/services/Make.js
  27. 7 3
      src/main/webapp/resources/js/index/services/Product.js
  28. 56 34
      src/main/webapp/resources/js/index/services/Purc.js
  29. 3 3
      src/main/webapp/resources/tpl/index/approvalFlow/role.html
  30. 5 3
      src/main/webapp/resources/tpl/index/approvalFlow/role_detail.html
  31. 1 1
      src/main/webapp/resources/tpl/index/baseInfo/prodList.html
  32. 16 11
      src/main/webapp/resources/tpl/index/fa/apBill.html
  33. 6 6
      src/main/webapp/resources/tpl/index/fa/apBill_detail.html
  34. 2 2
      src/main/webapp/resources/tpl/index/fa/apCheck.html
  35. 3 3
      src/main/webapp/resources/tpl/index/fa/apCheck_detail.html
  36. 1 1
      src/main/webapp/resources/tpl/index/make/accept.html
  37. 3 3
      src/main/webapp/resources/tpl/index/make/change.html
  38. 2 2
      src/main/webapp/resources/tpl/index/make/change_detail.html
  39. 3 4
      src/main/webapp/resources/tpl/index/make/order.html
  40. 2 2
      src/main/webapp/resources/tpl/index/make/order_detail.html
  41. 1 1
      src/main/webapp/resources/tpl/index/make/outorder.html
  42. 2 2
      src/main/webapp/resources/tpl/index/make/outorder_detail.html
  43. 1 1
      src/main/webapp/resources/tpl/index/make/returns.html
  44. 4 4
      src/main/webapp/resources/tpl/index/purc/deputyOrder.html
  45. 8 8
      src/main/webapp/resources/tpl/index/purc/deputyOrder_detail.html
  46. 2 2
      src/main/webapp/resources/tpl/index/purc/inquiry.html
  47. 12 4
      src/main/webapp/resources/tpl/index/purc/inquiryInfo_detail.html
  48. 3 2
      src/main/webapp/resources/tpl/index/purc/order.html
  49. 2 2
      src/main/webapp/resources/tpl/index/purc/order_detail.html
  50. 4 2
      src/main/webapp/resources/tpl/index/purc/tender_evaluation.html
  51. 1 1
      src/main/webapp/resources/tpl/index/qc/badIn.html
  52. 3 2
      src/main/webapp/resources/tpl/index/qc/badOut.html
  53. 2 1
      src/main/webapp/resources/tpl/index/sale/accept.html
  54. 3 3
      src/main/webapp/resources/tpl/index/sale/accept_detail.html
  55. 4 2
      src/main/webapp/resources/tpl/index/sale/change.html
  56. 4 2
      src/main/webapp/resources/tpl/index/sale/change_detail.html
  57. 1 1
      src/main/webapp/resources/tpl/index/sale/customer.html
  58. 5 5
      src/main/webapp/resources/tpl/index/sale/inquiry.html
  59. 3 3
      src/main/webapp/resources/tpl/index/sale/inquiry_detail.html
  60. 2 2
      src/main/webapp/resources/tpl/index/sale/inquiry_mould.html
  61. 2 2
      src/main/webapp/resources/tpl/index/sale/inquiry_mould_detail.html
  62. 4 2
      src/main/webapp/resources/tpl/index/sale/notice.html
  63. 3 2
      src/main/webapp/resources/tpl/index/sale/order.html
  64. 3 3
      src/main/webapp/resources/tpl/index/sale/order_detail.html
  65. 4 3
      src/main/webapp/resources/tpl/index/sale/quotation_list.html
  66. 1 1
      src/main/webapp/resources/tpl/index/sale/quotation_new.html
  67. 3 3
      src/main/webapp/resources/tpl/index/sale/return_detail.html
  68. 1 1
      src/main/webapp/resources/tpl/index/sale/returns.html
  69. 3 3
      src/main/webapp/resources/tpl/index/sale/sample.html
  70. 3 2
      src/main/webapp/resources/tpl/index/sale/sample_detail.html
  71. 2 2
      src/main/webapp/resources/tpl/index/sale/send_detail.html
  72. 3 3
      src/main/webapp/resources/tpl/index/sale/tender.html

+ 8 - 0
src/main/java/com/uas/platform/b2b/controller/AuthenticationController.java

@@ -5,6 +5,9 @@ import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpSession;
 
 import org.springframework.http.HttpStatus;
+import org.springframework.security.access.ConfigAttribute;
+import org.springframework.security.core.GrantedAuthority;
+import org.springframework.ui.ModelMap;
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
@@ -19,6 +22,11 @@ import com.uas.platform.core.util.serializer.FlexJsonUtils;
 import com.uas.sso.SSOHelper;
 import com.uas.sso.SSOToken;
 
+import java.util.Collection;
+import java.util.Iterator;
+
+import static com.uas.platform.b2b.model.Token.UserType.user;
+
 @RestController
 @RequestMapping("/authentication")
 public class AuthenticationController {

+ 26 - 31
src/main/java/com/uas/platform/b2b/controller/BaseInfoController.java

@@ -45,6 +45,8 @@ import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 
+import static org.springframework.data.jpa.domain.AbstractPersistable_.id;
+
 /**
  * 基础资料设置<br>
  * 物料查看、物料资料上传
@@ -72,7 +74,7 @@ public class BaseInfoController {
 	/**
 	 * 查看自己的物料资料
 	 */
-	@RequestMapping(method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<Product> getAllProductInfo(PageParams params, String keyword) {
 		logger.log("查看产品", SystemSession.getUser().getUserName() + "查看了产品信息(全部)");
@@ -97,7 +99,7 @@ public class BaseInfoController {
 	 * @param keyword
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.STANDARD, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.STANDARD, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<Product> getStandardProductInfo(PageParams params, String keyword) {
 		logger.log("查看产品", SystemSession.getUser().getUserName() + "查看了产品信息(标准)");
@@ -132,7 +134,7 @@ public class BaseInfoController {
 	 * @param keyword
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.NONSTANDARD, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.NONSTANDARD, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<Product> getNonStandardProductInfo(PageParams params, String keyword) {
 		logger.log("查看产品", SystemSession.getUser().getUserName() + "查看了产品信息(非标准)");
@@ -162,7 +164,7 @@ public class BaseInfoController {
 	/**
 	 * 查看自己的物料资料--不查询(全部)
 	 */
-	@RequestMapping(value = "/info", method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<Product> getAllProduct(PageParams params, String keyword) {
 		logger.log("查看产品", SystemSession.getUser().getUserName() + "查看了产品信息(全部)");
@@ -174,7 +176,7 @@ public class BaseInfoController {
 	/**
 	 * 查看自己的物料资料--不查询(标准)
 	 */
-	@RequestMapping(value = "/info", params = RequestState.STANDARD, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.STANDARD, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<Product> getAllProductStandard(PageParams params, String keyword) {
 		logger.log("查看产品", SystemSession.getUser().getUserName() + "查看了产品信息(标准)");
@@ -187,7 +189,7 @@ public class BaseInfoController {
 	/**
 	 * 查看自己的物料资料--不查询(非标准)
 	 */
-	@RequestMapping(value = "/info", params = RequestState.NONSTANDARD, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.NONSTANDARD, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<Product> getAllProductNonStandard(PageParams params, String keyword) {
 		logger.log("查看产品", SystemSession.getUser().getUserName() + "查看了产品信息(非标准)");
@@ -197,28 +199,10 @@ public class BaseInfoController {
 		return productService.findB2bEnabledProductInfoByPageInfo(pageInfo, keyword);
 	}
 
-	/**
-	 * 通过id查看详情
-	 */
-	@RequestMapping(value = "/{id}", method = RequestMethod.GET)
-	@ResponseBody
-	public Product getProductInfoById(@PathVariable("id") Long id) {
-		return baseInfoService.findById(id);
-	}
-
-	/**
-	 * 通过id查看物料详情(由于权限问题将产品和物料接口分离)
-	 */
-	@RequestMapping(value = "purc/{id}/info", method = RequestMethod.GET)
-	@ResponseBody
-	public Product getPurcProductInfoById(@PathVariable("id") Long id) {
-		return baseInfoService.findById(id);
-	}
-
 	/**
 	 * 通过id查看产品详情(由于权限问题将产品和物料接口分离)
 	 */
-	@RequestMapping(value = "sale/{id}/info", method = RequestMethod.GET)
+	@RequestMapping(value = "/{id}/info", method = RequestMethod.GET)
 	@ResponseBody
 	public Product getSaleProductInfoById(@PathVariable("id") Long id) {
 		return baseInfoService.findById(id);
@@ -232,9 +216,9 @@ public class BaseInfoController {
 	 * @return
 	 * @throws Exception
 	 */
-	@RequestMapping(value = "/delete/{id}", method = RequestMethod.DELETE)
+	@RequestMapping(value = "/edit/delete", method = RequestMethod.POST)
 	@ResponseBody
-	public ModelMap deleteById(@PathVariable("id") Long id) throws Exception {
+	public ModelMap deleteById(Long id) throws Exception {
 		ModelMap map = new ModelMap();
 		try {
 			baseInfoService.deleteById(id);
@@ -263,7 +247,7 @@ public class BaseInfoController {
 	 * @param prodInfo
 	 * @return
 	 */
-	@RequestMapping(value = "/updateProdInfo", method = RequestMethod.POST)
+	@RequestMapping(value = "/edit/updateProdInfo", method = RequestMethod.POST)
 	@ResponseBody
 	public ModelMap updateProdInfo(String prodInfo, FileUpload uploadItem) {
 		Product productInfo = JSONObject.parseObject(prodInfo, Product.class);
@@ -278,7 +262,7 @@ public class BaseInfoController {
 	 * @param prodInfo
 	 * @return
 	 */
-	@RequestMapping(value = "/addNewProduct", method = RequestMethod.POST)
+	@RequestMapping(value = "/edit/addNewProduct", method = RequestMethod.POST)
 	@ResponseBody
 	public ModelMap addNewProduct(String prodInfo, FileUpload uploadItem) {
 		Product productInfo = JSONObject.parseObject(prodInfo, Product.class);
@@ -363,7 +347,7 @@ public class BaseInfoController {
 	 * @param uploadItem
 	 * @return
 	 */
-	@RequestMapping(value = "/release/excel", method = RequestMethod.POST)
+	@RequestMapping(value = "/edit/release/excel", method = RequestMethod.POST)
 	public ModelMap releaseByExcel(FileUpload uploadItem) {
 		ModelMap map = new ModelMap();
 		String fileName = uploadItem.getFile().getOriginalFilename();
@@ -491,12 +475,23 @@ public class BaseInfoController {
 	 * 
 	 * @param status
 	 */
-	@RequestMapping(value = "/toggle/{status}", method = RequestMethod.POST)
+	@RequestMapping(value = "/edit/toggle/{status}", method = RequestMethod.POST)
 	@ResponseBody
 	public void switchPorduct(@PathVariable("status") String status) {
 		baseInfoService.switchPorduct(status);
 	}
 
+	/**
+	 * 一键匹配物料信息
+	 *
+	 * @return
+	 */
+	@RequestMapping(value = "/edit/matchbytype/{type}", method = RequestMethod.POST)
+	@ResponseBody
+	private ModelMap matchall(@PathVariable String type) {
+		return productService.matchall(type);
+	}
+
 	/**
 	 * 设置单据已读
 	 * @author wangmh

+ 12 - 12
src/main/java/com/uas/platform/b2b/controller/DeputyOrderController.java

@@ -135,7 +135,7 @@ public class DeputyOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/getDeOrder", method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", method = RequestMethod.GET)
 	public SPage<DeputyOrder> getDeOrder(PageParams params, String searchFilter) {
 		logger.log("客户代采订单", "查看代采订单(全部)");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
@@ -167,7 +167,7 @@ public class DeputyOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/getDeOrder", params = RequestState.TODO, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.TODO, method = RequestMethod.GET)
 	public SPage<DeputyOrder> getDeOrderTodo(PageParams params, String searchFilter) {
 		logger.log("客户代采订单", "查看代采订单(待提交)");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
@@ -201,7 +201,7 @@ public class DeputyOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/getDeOrder", params = RequestState.DONE, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.DONE, method = RequestMethod.GET)
 	public SPage<DeputyOrder> getDeOrderDone(PageParams params, String searchFilter) {
 		logger.log("客户代采订单", "查看代采订单(已提交,待下载)");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
@@ -235,7 +235,7 @@ public class DeputyOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/getDeOrder", params = RequestState.END, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.END, method = RequestMethod.GET)
 	public SPage<DeputyOrder> getDeOrderEnd(PageParams params, String searchFilter) {
 		logger.log("客户代采订单", "查看代采订单(已提交,已下载)");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
@@ -269,7 +269,7 @@ public class DeputyOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/getDeOrder", params = RequestState.AGREED, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.AGREED, method = RequestMethod.GET)
 	public SPage<DeputyOrder> getDeOrderAgreed(PageParams params, String searchFilter) {
 		logger.log("客户代采订单", "查看代采订单(审核同意)");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
@@ -302,7 +302,7 @@ public class DeputyOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/getDeOrder", params = RequestState.REFUSED, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.REFUSED, method = RequestMethod.GET)
 	public SPage<DeputyOrder> getDeOrderRefused(PageParams params, String keyword) {
 		logger.log("客户代采订单", "查看代采订单(审核不同意)");
 		com.uas.search.b2b.model.PageParams pageParams = searchService.convertPageParams(params, null);
@@ -531,7 +531,7 @@ public class DeputyOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/orderInfo", method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", method = RequestMethod.GET)
 	public SPage<DeputyOrder> getDeOrders(PageParams params, String searchFilter) {
 		logger.log("代采订单", "查看代采订单(全部)");
 		PageInfo pageInfo = new PageInfo(params);
@@ -545,7 +545,7 @@ public class DeputyOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/orderInfo", params = RequestState.TODO, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.TODO, method = RequestMethod.GET)
 	public SPage<DeputyOrder> getDeOrdersTodo(PageParams params, String searchFilter) {
 		logger.log("代采订单", "查看代采订单(待提交)");
 		PageInfo pageInfo = new PageInfo(params);
@@ -561,7 +561,7 @@ public class DeputyOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/orderInfo", params = RequestState.DONE, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.DONE, method = RequestMethod.GET)
 	public SPage<DeputyOrder> getDeOrdersDone(PageParams params, String searchFilter) {
 		logger.log("代采订单", "查看代采订单(未下载)");
 		PageInfo pageInfo = new PageInfo(params);
@@ -577,7 +577,7 @@ public class DeputyOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/orderInfo", params = RequestState.END, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.END, method = RequestMethod.GET)
 	public SPage<DeputyOrder> getDeOrdersEnd(PageParams params, String searchFilter) {
 		logger.log("代采订单", "查看代采订单(已下载)");
 		PageInfo pageInfo = new PageInfo(params);
@@ -593,7 +593,7 @@ public class DeputyOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/orderInfo", params = RequestState.AGREED, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.AGREED, method = RequestMethod.GET)
 	public SPage<DeputyOrder> getDeOrdersAgreed(PageParams params, String searchFilter) {
 		logger.log("代采订单", "查看代采订单(已同意)");
 		PageInfo pageInfo = new PageInfo(params);
@@ -608,7 +608,7 @@ public class DeputyOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/orderInfo", params = RequestState.REFUSED, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.REFUSED, method = RequestMethod.GET)
 	public SPage<DeputyOrder> getDeOrdersRefused(PageParams params, String searchFilter) {
 		logger.log("代采订单", "查看代采订单(不同意)");
 		PageInfo pageInfo = new PageInfo(params);

+ 2 - 2
src/main/java/com/uas/platform/b2b/controller/MakeOrderChangeController.java

@@ -63,7 +63,7 @@ public class MakeOrderChangeController {
 	 * @param json
 	 * @return
 	 */
-	@RequestMapping(method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<MakeOrderChangeItem> getReceivedPurchaseOrderChanges(PageParams params, String searchFilter) {
 		logger.log("客户委外变更单", "查看收到的客户委外变更单列表(全部)");
@@ -112,7 +112,7 @@ public class MakeOrderChangeController {
 	 * @param id
 	 * @return
 	 */
-	@RequestMapping(value = "/{id}", method = RequestMethod.GET)
+	@RequestMapping(value = "/{id}/info", method = RequestMethod.GET)
 	@ResponseBody
 	public MakeOrderChangeItem getReceivedPurchaseOrderItemById(@PathVariable("id") Long id) {
 		return makeOrderChangeService.findById(id);

+ 8 - 8
src/main/java/com/uas/platform/b2b/controller/PurcInquiryController.java

@@ -154,7 +154,7 @@ public class PurcInquiryController {
 	 *
 	 * @return
 	 */
-	@RequestMapping(method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", method = RequestMethod.GET)
 	public SPage<PurchaseInquiryItem> getReceivedPurchaseInquiries(PageParams params, String searchFilter) {
 		logger.log("采购询价单", "查看发出的采购询价单列表(全部)");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
@@ -173,7 +173,7 @@ public class PurcInquiryController {
 	 *
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.TODO, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search",params = RequestState.TODO, method = RequestMethod.GET)
 	public SPage<PurchaseInquiryItem> getTodoInquiries(PageParams params, String searchFilter) {
 		logger.log("客户询价单", "查看收到的客户询价单列表(待回复)");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
@@ -194,7 +194,7 @@ public class PurcInquiryController {
 	 *
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.END, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search",params = RequestState.END, method = RequestMethod.GET)
 	public SPage<PurchaseInquiryItem> getEndInquiries(PageParams params, String searchFilter) {
 		logger.log("客户询价单", "查看收到的客户询价单列表(已失效)");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
@@ -214,7 +214,7 @@ public class PurcInquiryController {
 	 *
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.DONE, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search",params = RequestState.DONE, method = RequestMethod.GET)
 	public SPage<PurchaseInquiryItem> getDoneInquiries(PageParams params, String searchFilter) {
 		logger.log("客户询价单", "查看收到的客户询价单列表(已回复)");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
@@ -234,7 +234,7 @@ public class PurcInquiryController {
 	 *
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.AGREED, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search",params = RequestState.AGREED, method = RequestMethod.GET)
 	public SPage<PurchaseInquiryItem> getAgreedInquiries(PageParams params, String searchFilter) {
 		logger.log("客户询价单", "查看收到的客户询价单列表(已采纳)");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
@@ -254,7 +254,7 @@ public class PurcInquiryController {
 	 *
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.REFUSED, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search",params = RequestState.REFUSED, method = RequestMethod.GET)
 	public SPage<PurchaseInquiryItem> getRefusedInquiries(PageParams params, String searchFilter) {
 		logger.log("客户询价单", "查看收到的客户询价单列表(未采纳)");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
@@ -293,7 +293,7 @@ public class PurcInquiryController {
 	 *
 	 * @return
 	 */
-	@RequestMapping(value = "/unapply", method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = "_state=unapply", method = RequestMethod.GET)
 	private Page<PurcInquiry> getUnapply(PageParams params) {
 		return purcInquiryService.getUnapply(params);
 	}
@@ -323,7 +323,7 @@ public class PurcInquiryController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/submit", method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = "_state=submit", method = RequestMethod.GET)
 	private Page<PurcInquiry> getSubmit(PageParams params) {
 		return purcInquiryService.getSubmit(params);
 	}

+ 84 - 8
src/main/java/com/uas/platform/b2b/controller/PurcProductController.java

@@ -6,6 +6,8 @@ import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 
+import com.alibaba.fastjson.JSONObject;
+import com.uas.platform.b2b.service.BaseInfoService;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
@@ -34,6 +36,8 @@ import com.uas.search.b2b.model.Sort;
 import com.uas.search.b2b.model.Sort.Type;
 import com.uas.search.b2b.util.SearchConstants;
 
+import static org.springframework.data.jpa.domain.AbstractPersistable_.id;
+
 /**
  * 采购物料
  * 
@@ -55,6 +59,9 @@ public class PurcProductController {
 	@Autowired
 	private SearchService searchService;
 
+	@Autowired
+	private BaseInfoService baseInfoService;
+
 	/**
 	 * 获取批量上传物料的模板
 	 * 
@@ -93,7 +100,7 @@ public class PurcProductController {
 	 * @param uploadItem
 	 * @return
 	 */
-	@RequestMapping(value = "/release/excel", method = RequestMethod.POST)
+	@RequestMapping(value = "/edit/release/excel", method = RequestMethod.POST)
 	public ModelMap releaseByExcel(FileUpload uploadItem) {
 		ModelMap map = new ModelMap();
 		String fileName = uploadItem.getFile().getOriginalFilename();
@@ -120,7 +127,7 @@ public class PurcProductController {
 	/**
 	 * 查看自己的物料资料
 	 */
-	@RequestMapping(method = RequestMethod.GET)
+	@RequestMapping(value = "info/search", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<Product> getAllProductInfo(PageParams params, String keyword) {
 		logger.log("查看物料", SystemSession.getUser().getUserName() + "查看了物料信息(全部)");
@@ -145,7 +152,7 @@ public class PurcProductController {
 	 * @param keyword
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.STANDARD, method = RequestMethod.GET)
+	@RequestMapping(value = "info/search", params = RequestState.STANDARD, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<Product> getStandardProductInfo(PageParams params, String keyword) {
 		logger.log("查看物料", SystemSession.getUser().getUserName() + "查看了物料信息(标准)");
@@ -180,7 +187,7 @@ public class PurcProductController {
 	 * @param keyword
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.NONSTANDARD, method = RequestMethod.GET)
+	@RequestMapping(value = "info/search", params = RequestState.NONSTANDARD, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<Product> getNonStandardProductInfo(PageParams params, String keyword) {
 		logger.log("查看物料", SystemSession.getUser().getUserName() + "查看了物料信息(非标准)");
@@ -209,7 +216,7 @@ public class PurcProductController {
 	/**
 	 * 查看自己的物料资料--不查询(全部)
 	 */
-	@RequestMapping(value = "/info", method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<Product> getAllProduct(PageParams params, String keyword) {
 		logger.log("查看产品", SystemSession.getUser().getUserName() + "查看了物料信息(全部)");
@@ -221,7 +228,7 @@ public class PurcProductController {
 	/**
 	 * 查看自己的物料资料--不查询(标准)
 	 */
-	@RequestMapping(value = "/info", params = RequestState.STANDARD, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.STANDARD, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<Product> getAllProductStandard(PageParams params, String keyword) {
 		logger.log("查看产品", SystemSession.getUser().getUserName() + "查看了物料信息(标准)");
@@ -234,7 +241,7 @@ public class PurcProductController {
 	/**
 	 * 查看自己的物料资料--不查询(非标准)
 	 */
-	@RequestMapping(value = "/info", params = RequestState.NONSTANDARD, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.NONSTANDARD, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<Product> getAllProductNonStandard(PageParams params, String keyword) {
 		logger.log("查看产品", SystemSession.getUser().getUserName() + "查看了物料信息(非标准)");
@@ -244,12 +251,21 @@ public class PurcProductController {
 		return productService.findB2bEnabledProductInfoByPageInfo(pageInfo, keyword);
 	}
 
+	/**
+	 * 通过id查看物料详情(由于权限问题将产品和物料接口分离)
+	 */
+	@RequestMapping(value = "/{id}/info", method = RequestMethod.GET)
+	@ResponseBody
+	public Product getPurcProductInfoById(@PathVariable("id") Long id) {
+		return baseInfoService.findById(id);
+	}
+
 	/**
 	 * 开启关闭销售
 	 * 
 	 * @param status
 	 */
-	@RequestMapping(value = "/toggle/{status}", method = RequestMethod.POST)
+	@RequestMapping(value = "/edit/toggle/{status}", method = RequestMethod.POST)
 	@ResponseBody
 	public void switchPorduct(@PathVariable("status") String status) {
 		purcProductService.switchPorduct(status);
@@ -264,4 +280,64 @@ public class PurcProductController {
     public void setReadByOrder(@RequestBody Long... sourceId) {
         productService.setReadByOrder("purc", sourceId);
     }
+
+	/**
+	 * 更新物料信息
+	 *
+	 * @param prodInfo
+	 * @return
+	 */
+	@RequestMapping(value = "/edit/updateProdInfo", method = RequestMethod.POST)
+	@ResponseBody
+	public ModelMap updateProdInfo(String prodInfo, FileUpload uploadItem) {
+		Product productInfo = JSONObject.parseObject(prodInfo, Product.class);
+		logger.log("更新物料", "[" + SystemSession.getUser().getUserName() + "]更新了id为" + productInfo.getId() + "的["
+				+ productInfo.getTitle() + "]");
+		return baseInfoService.update(productInfo, uploadItem);
+	}
+
+	/**
+	 * 新增物料
+	 *
+	 * @param prodInfo
+	 * @return
+	 */
+	@RequestMapping(value = "/edit/addNewProduct", method = RequestMethod.POST)
+	@ResponseBody
+	public ModelMap addNewProduct(String prodInfo, FileUpload uploadItem) {
+		Product productInfo = JSONObject.parseObject(prodInfo, Product.class);
+		return baseInfoService.addNewProduct(productInfo, uploadItem);
+	}
+
+	/**
+	 * 通过id删除
+	 *
+	 * @param id
+	 * @return
+	 * @return
+	 * @throws Exception
+	 */
+	@RequestMapping(value = "/edit/delete", method = RequestMethod.POST)
+	@ResponseBody
+	public ModelMap deleteById(Long id) throws Exception {
+		ModelMap map = new ModelMap();
+		try {
+			baseInfoService.deleteById(id);
+			logger.log("删除物料", "[" + SystemSession.getUser().getUserName() + "]删除了id为 [" + id + "]的物料");
+		} catch (Exception e) {
+			map.put("error", "该物料可能已经被其他单据引用,无法删除");
+		}
+		return map;
+	}
+
+	/**
+	 * 一键匹配物料信息
+	 *
+	 * @return
+	 */
+	@RequestMapping(value = "/edit/matchbytype/{type}", method = RequestMethod.POST)
+	@ResponseBody
+	private ModelMap matchall(@PathVariable String type) {
+		return productService.matchall(type);
+	}
 }

+ 15 - 15
src/main/java/com/uas/platform/b2b/controller/PurchaseTenderController.java

@@ -210,7 +210,7 @@ public class PurchaseTenderController {
      * @param params 分页参数
      * @return Spage
      */
-    @RequestMapping(method = RequestMethod.GET)
+    @RequestMapping(value = "/sale/info/search", method = RequestMethod.GET)
     @ResponseBody
     public SPage<PurchaseTender> getAllTenders(PageParams params, String searchFilter) {
         if (logger != null) {
@@ -239,7 +239,7 @@ public class PurchaseTenderController {
      * @param params 分页参数
      * @return Sapge
      */
-    @RequestMapping(params = RequestState.END, method = RequestMethod.GET)
+    @RequestMapping(value = "/sale/info/search", params = RequestState.END, method = RequestMethod.GET)
     @ResponseBody
     public SPage<PurchaseTender> getEndTenders(PageParams params, String searchFilter) {
         if (logger != null) {
@@ -268,7 +268,7 @@ public class PurchaseTenderController {
      * @param params 分页参数
      * @return 招标单Spage
      */
-    @RequestMapping(params = RequestState.WAITING, method = RequestMethod.GET)
+    @RequestMapping(value = "/sale/info/search", params = RequestState.WAITING, method = RequestMethod.GET)
     @ResponseBody
     public SPage<PurchaseTender> getWaitingTenders(PageParams params, String searchFilter) {
         if (logger != null) {
@@ -299,7 +299,7 @@ public class PurchaseTenderController {
      * @param params 分页参数
      * @return 招标单Spage
      */
-    @RequestMapping(params = RequestState.DONE, method = RequestMethod.GET)
+    @RequestMapping(value = "/sale/info/search", params = RequestState.DONE, method = RequestMethod.GET)
     @ResponseBody
     public SPage<PurchaseTender> getDoneTenders(PageParams params, String searchFilter) {
         if (logger != null) {
@@ -330,7 +330,7 @@ public class PurchaseTenderController {
      * @param params 分页参数
      * @return 招标单Spage
      */
-    @RequestMapping(params = RequestState.TODO, method = RequestMethod.GET)
+    @RequestMapping(value = "/sale/info/search", params = RequestState.TODO, method = RequestMethod.GET)
     @ResponseBody
     public SPage<PurchaseTender> getTodoTenders(PageParams params, String searchFilter) {
         if (logger != null) {
@@ -362,7 +362,7 @@ public class PurchaseTenderController {
      * @param params 分页参数
      * @return 招标单Spage
      */
-    @RequestMapping(params = RequestState.INVALID, method = RequestMethod.GET)
+    @RequestMapping(value = "/sale/info/search", params = RequestState.INVALID, method = RequestMethod.GET)
     @ResponseBody
     public SPage<PurchaseTender> getInvalidTenders(PageParams params, String searchFilter) {
         if (logger != null) {
@@ -420,7 +420,7 @@ public class PurchaseTenderController {
      * @param params 分页参数
      * @return 招标单Spage
      */
-    @RequestMapping(value = "/info", params = RequestState.DONE, method = RequestMethod.GET)
+    @RequestMapping(value = "sale/info/nosearch", params = RequestState.DONE, method = RequestMethod.GET)
     @ResponseBody
     public SPage<PurchaseTender> getDoneTendersInfo(PageParams params, String searchFilter) {
         if (logger != null) {
@@ -451,7 +451,7 @@ public class PurchaseTenderController {
      * @param params 分页参数
      * @return 招标单Spage
      */
-    @RequestMapping(value = "/info", params = RequestState.TODO, method = RequestMethod.GET)
+    @RequestMapping(value = "sale/info/nosearch", params = RequestState.TODO, method = RequestMethod.GET)
     @ResponseBody
     public SPage<PurchaseTender> getTodoTendersInfo(PageParams params, String searchFilter) {
         if (logger != null) {
@@ -555,7 +555,7 @@ public class PurchaseTenderController {
      * @param params
      * @return
      */
-    @RequestMapping(value = "/purc", method = RequestMethod.GET)
+    @RequestMapping(value = "/purc/info/search", method = RequestMethod.GET)
     @ResponseBody
     public SPage<PurchaseTender> getMyAllTenders(PageParams params, String searchFilter) {
         if (logger != null) {
@@ -597,7 +597,7 @@ public class PurchaseTenderController {
      * @param params
      * @return
      */
-    @RequestMapping(value = "/purc", params = RequestState.DONE, method = RequestMethod.GET)
+    @RequestMapping(value = "/purc/info/search", params = RequestState.DONE, method = RequestMethod.GET)
     @ResponseBody
     public SPage<PurchaseTender> getMyDoneTenders(PageParams params, String searchFilter) {
         if (logger != null) {
@@ -629,7 +629,7 @@ public class PurchaseTenderController {
      * @param params 参数
      * @return 单据
      */
-    @RequestMapping(value = "/purc", params = RequestState.TODO, method = RequestMethod.GET)
+    @RequestMapping(value = "/purc/info/search", params = RequestState.TODO, method = RequestMethod.GET)
     @ResponseBody
     public SPage<PurchaseTender> getMyTodoTenders(PageParams params, String searchFilter) {
         if (logger != null) {
@@ -661,7 +661,7 @@ public class PurchaseTenderController {
      * @param searchFilter 搜索参数
      *
      */
-    @RequestMapping(value = "/purc", params = RequestState.WAITING, method = RequestMethod.GET)
+    @RequestMapping(value = "/purc/info/search", params = RequestState.WAITING, method = RequestMethod.GET)
     @ResponseBody
     public SPage<PurchaseTender> getWaitingPTenders(PageParams params, String searchFilter) {
         if (logger != null) {
@@ -692,7 +692,7 @@ public class PurchaseTenderController {
      * @param params 分页参数
      * @return Spage
      */
-    @RequestMapping(value = "/purc/info", method = RequestMethod.GET)
+    @RequestMapping(value = "/purc/info/nosearch", method = RequestMethod.GET)
     @ResponseBody
     public SPage<PurchaseTender> getMyAllTendersInfo(PageParams params, String searchFilter) {
         if (logger != null) {
@@ -712,7 +712,7 @@ public class PurchaseTenderController {
      * @param params 分页参数
      * @return 招标单Spage
      */
-    @RequestMapping(value = "/purc/info", params = RequestState.TODO, method = RequestMethod.GET)
+    @RequestMapping(value = "/purc/info/nosearch", params = RequestState.TODO, method = RequestMethod.GET)
     @ResponseBody
     public SPage<PurchaseTender> getMyTodoTendersInfo(PageParams params, String searchFilter) {
         if (logger != null) {
@@ -732,7 +732,7 @@ public class PurchaseTenderController {
      * @param params 分页参数
      * @return 招标单Spage
      */
-    @RequestMapping(value = "/purc/info", params = RequestState.WAITING, method = RequestMethod.GET)
+    @RequestMapping(value = "/purc/info/nosearch", params = RequestState.WAITING, method = RequestMethod.GET)
     @ResponseBody
     public SPage<PurchaseTender> getMyWaitingTendersInfo(PageParams params, String searchFilter) {
         if (logger != null) {

+ 31 - 0
src/main/java/com/uas/platform/b2b/controller/RoleController.java

@@ -1,18 +1,22 @@
 package com.uas.platform.b2b.controller;
 
+import com.uas.platform.b2b.model.ResourceItem;
 import com.uas.platform.b2b.model.Role;
 import com.uas.platform.b2b.service.RoleService;
+import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.b2b.support.UsageBufferedLogger;
 import com.uas.platform.core.logging.BufferedLoggerManager;
 import com.uas.platform.core.util.serializer.FlexJsonUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
+import org.springframework.security.access.AccessDeniedException;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.ModelMap;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.List;
+import java.util.Set;
 
 /**
  * 账户管理--角色
@@ -82,4 +86,31 @@ public class RoleController {
 	@RequestMapping(value = "/isManager", method =  RequestMethod.GET)
 	@ResponseBody
 	public ModelMap isManager(){return  roleService.isManager(); }
+
+	@RequestMapping(value = "/isUser", method =  RequestMethod.GET)
+	@ResponseBody
+	public ModelMap isUser(){return  roleService.isUser(); }
+
+	/**
+	 * 更新角色标准库权限,内部使用,仅优软科技有限公司可用
+	 *
+	 * @param desc
+	 * @param resourceItems
+	 * @return
+	 */
+	@RequestMapping(value = "/updateDefault", method =  RequestMethod.POST)
+	@ResponseBody
+	public ModelMap updateDefault(String desc, @RequestBody Set<ResourceItem> resourceItems) {
+		boolean canUpdate = true;
+		if (SystemSession.getUser().getEnterprise().getUu() != 10041166) {
+			throw new AccessDeniedException("您没有权限修改,此功能为内部使用");
+		}
+		if (SystemSession.getUser().getUserUU() != 1000010030) {
+			throw new AccessDeniedException("您没有权限修改,请联系管理者真烦");
+		}
+		if (!canUpdate) {
+			throw new AccessDeniedException("别试了,你不允许修改!!!");
+		}
+		return roleService.updateDefault(desc, resourceItems);
+	}
 }

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

@@ -82,7 +82,7 @@ public class SaleNoticeController {
 	 * @return
 	 * @throws UnsupportedEncodingException
 	 */
-	@RequestMapping(value = "list", method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseNotice> getReceivedPurchaseNotices(PageParams params, String keyword, Long fromDate,
 			Long endDate){
@@ -119,7 +119,7 @@ public class SaleNoticeController {
 	 * @return
 	 * @throws UnsupportedEncodingException
 	 */
-	@RequestMapping(value = "/info", params = RequestState.TODO, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.TODO, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseNotice> getTodoPurchaseNoticesInfo(PageParams params, String keyword, Long fromDate, Long endDate) {
 		SearchFilter filter = new SearchFilter();
@@ -148,7 +148,7 @@ public class SaleNoticeController {
 	 * @return
 	 * @throws UnsupportedEncodingException
 	 */
-	@RequestMapping(value = "/info", params = RequestState.DONE, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.DONE, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseNotice> getDonePurchaseNoticesInfo(PageParams params, String keyword, Long fromDate, Long endDate) {
 		logger.log("客户送货提醒", "查看收到的客户送货提醒列表(已发货)");
@@ -204,7 +204,7 @@ public class SaleNoticeController {
 	 * @return
 	 * @throws UnsupportedEncodingException
 	 */
-	@RequestMapping(value = "list", params = RequestState.TODO, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.TODO, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseNotice> getTodoPurchaseNotices(PageParams params, String keyword, Long fromDate, Long endDate) {
 		logger.log("客户送货提醒", "查看收到的客户送货提醒列表(待发货)");
@@ -243,7 +243,7 @@ public class SaleNoticeController {
 	 * @return
 	 * @throws UnsupportedEncodingException
 	 */
-	@RequestMapping(value = "list", params = RequestState.DONE, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.DONE, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseNotice> getDonePurchaseNotices(PageParams params, String keyword, Long fromDate, Long endDate) {
 		logger.log("客户送货提醒", "查看收到的客户送货提醒列表(已发货)");
@@ -282,7 +282,7 @@ public class SaleNoticeController {
 	 * @return
 	 * @throws UnsupportedEncodingException
 	 */
-	@RequestMapping(value = "list", params = RequestState.WAITING, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.WAITING, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseNotice> getWaitingPurchaseNotices(PageParams params, String keyword, Long fromDate,
 			Long endDate){
@@ -321,7 +321,7 @@ public class SaleNoticeController {
 	 * @return
 	 * @throws UnsupportedEncodingException
 	 */
-	@RequestMapping(value = "list", params = RequestState.END, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.END, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseNotice> getEndPurchaseNotices(PageParams params, String keyword, Long fromDate, Long endDate) {
 		logger.log("客户送货提醒", "查看收到的客户送货提醒列表(已结案)");
@@ -359,7 +359,7 @@ public class SaleNoticeController {
 	 * @param json
 	 * @return
 	 */
-	@RequestMapping(value = "/{noticeId}", method = RequestMethod.POST)
+	@RequestMapping(value = "/{noticeId}/sends", method = RequestMethod.POST)
 	@ResponseBody
 	public ResponseEntity<ModelMap> send(@PathVariable("noticeId") Long noticeId, String token,
 			@RequestBody String json) {
@@ -403,7 +403,7 @@ public class SaleNoticeController {
 	}
 
 	/**
-	 * 作为卖家,查看货单-全部
+	 * 作为卖家,查看货单-全部
 	 * 
 	 * @param params
 	 * @return
@@ -411,7 +411,7 @@ public class SaleNoticeController {
 	@RequestMapping(value = "/sends", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<SaleSendAll> getSaleSends(PageParams params, String keyword, Long fromDate, Long endDate) {
-		logger.log("发货单", "查看全部的货单");
+		logger.log("发货单", "查看全部的货单");
 		com.uas.search.b2b.model.PageParams pageParams = searchService.convertPageParams(params, null);
 		pageParams.getFilters().put("ss_enuu", SystemSession.getUser().getEnterprise().getUu());
 		SearchFilter filter = userService.distribute();
@@ -444,7 +444,7 @@ public class SaleNoticeController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/sends/{id}", method = RequestMethod.GET)
+	@RequestMapping(value = "/sends/{id}/info", method = RequestMethod.GET)
 	@ResponseBody
 	public SaleSendAll getSaleSendsById(PageParams params, @PathVariable("id") Long id) {
 		logger.log("发货单", "查看单个送货单", "根据Id查找", "", id);

+ 8 - 8
src/main/java/com/uas/platform/b2b/controller/SaleOrderChangeController.java

@@ -65,7 +65,7 @@ public class SaleOrderChangeController {
 	 * @param searchFilter
 	 * @return
 	 */
-	@RequestMapping(method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderChange> getReceivedPurchaseOrderChanges(PageParams params, String searchFilter) {
 		logger.log("客户采购变更单", "查看收到的客户采购变更单列表(全部)");
@@ -98,7 +98,7 @@ public class SaleOrderChangeController {
 	 * @param searchFilter
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.TODO, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.TODO, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderChange> getTodoPurchaseOrderChanges(PageParams params, String searchFilter) {
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
@@ -132,7 +132,7 @@ public class SaleOrderChangeController {
 	 * @param searchFilter
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.DONE, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.DONE, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderChange> getDonePurchaseOrderChanges(PageParams params, String searchFilter) {
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
@@ -166,7 +166,7 @@ public class SaleOrderChangeController {
      * @param searchFilter
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.UNREAD, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.UNREAD, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderChange> getUnReadPurchaseOrderChanges(PageParams params, String searchFilter) {
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
@@ -199,7 +199,7 @@ public class SaleOrderChangeController {
      * @param searchFilter
 	 * @return
 	 */
-	@RequestMapping(value = "/info", method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderChange> getAllOrderChanges(PageParams params, String searchFilter) {
 		SPage<PurchaseOrderChange> orders = new SPage<PurchaseOrderChange>();
@@ -230,7 +230,7 @@ public class SaleOrderChangeController {
      * @param searchFilter
 	 * @return
 	 */
-	@RequestMapping(value = "/info", params = RequestState.TODO, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.TODO, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderChange> getTodoOrderChanges(PageParams params, String searchFilter) {
 		SPage<PurchaseOrderChange> orders = new SPage<PurchaseOrderChange>();
@@ -263,7 +263,7 @@ public class SaleOrderChangeController {
      * @param searchFilter
 	 * @return
 	 */
-	@RequestMapping(value = "/info", params = RequestState.DONE, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.DONE, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderChange> getDoneOrderChanges(PageParams params, String searchFilter) {
 		SPage<PurchaseOrderChange> orders = new SPage<PurchaseOrderChange>();
@@ -296,7 +296,7 @@ public class SaleOrderChangeController {
      * @param searchFilter
 	 * @return
 	 */
-	@RequestMapping(value = "/info", params = RequestState.UNREAD, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.UNREAD, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderChange> getUnReadOrderChanges(PageParams params, String searchFilter) {
 		SPage<PurchaseOrderChange> orders = new SPage<PurchaseOrderChange>();

+ 32 - 32
src/main/java/com/uas/platform/b2b/controller/SaleOrderController.java

@@ -80,7 +80,7 @@ public class SaleOrderController {
 	private final static UsageBufferedLogger logger = BufferedLoggerManager.getLogger(UsageBufferedLogger.class);
 
 	/**
-	 * 作为卖家,收到的采购订单
+	 * 作为卖家,收到的采购订单 - 弃用
 	 * 
 	 * @param json
 	 * @return
@@ -155,12 +155,12 @@ public class SaleOrderController {
 	}
 
 	/**
-	 * 作为卖家,收到的采购订单(含明细)
+	 * 作为卖家,收到的采购订单(含明细) - 搜索
 	 * 
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items", method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderAll> getPurchaseOrderItems(PageParams params, String searchFilter) {
 		logger.log("客户采购单", "查看收到的客户采购订单列表(包括采购明细)(全部)");
@@ -189,12 +189,12 @@ public class SaleOrderController {
 	}
 
 	/**
-	 * 作为卖家,收到的采购订单(含明细)(待回复)
+	 * 作为卖家,收到的采购订单(含明细)(待回复) - 搜索
 	 *
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items", params = RequestState.TODO, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.TODO, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderTodo> getTodoPurchaseOrderItems(PageParams params, String searchFilter) {
 		logger.log("客户采购单", "查看收到的客户采购订单列表(包括采购明细)(待回复)");
@@ -222,12 +222,12 @@ public class SaleOrderController {
 	}
 
 	/**
-	 * 作为卖家,收到的采购订单(含明细)(已回复)
+	 * 作为卖家,收到的采购订单(含明细)(已回复) - 搜索
 	 *
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items", params = RequestState.DONE, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.DONE, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderDone> getDonePurchaseOrderItems(PageParams params, String searchFilter) {
 		logger.log("客户采购单", "查看收到的客户采购订单列表(包括采购明细)(已回复)");
@@ -258,12 +258,12 @@ public class SaleOrderController {
 	}
 
 	/**
-	 * 作为卖家,收到的采购订单(含明细)(已结案)
+	 * 作为卖家,收到的采购订单(含明细)(已结案) - 搜索
 	 *
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items", params = RequestState.END, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.END, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderEnd> getEndPurchaseOrderItems(PageParams params, String searchFilter) {
 		logger.log("客户采购单", "查看收到的客户采购订单列表(包括采购明细)(已结案)");
@@ -293,9 +293,9 @@ public class SaleOrderController {
 	/**
 	 * @param params
 	 * @param searchFilter
-	 * @author wangmh 获取已收货的订单
+	 * @author wangmh 获取已收货的订单 - 搜索
 	 */
-	@RequestMapping(value = "/items", params = RequestState.RECEIVED, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.RECEIVED, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderReceived> getReceivedPurchaseOrderItems(PageParams params, String searchFilter) {
 		logger.log("客户采购单", "查看收到的客户采购订单列表(包括采购明细)(已收货)");
@@ -325,9 +325,9 @@ public class SaleOrderController {
 	/**
 	 * @param params
 	 * @param searchFilter
-	 * @author yujia 获取待发货的订单
+	 * @author yujia 获取待发货的订单 - 搜索
 	 */
-	@RequestMapping(value = "/items", params = RequestState.WAITING, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.WAITING, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderWaiting> getWaitingPurchaseOrderItems(PageParams params, String searchFilter) {
 		logger.log("客户采购单", "查看收到的客户采购订单列表(包括采购明细)(待交货)");
@@ -366,7 +366,7 @@ public class SaleOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items/info", method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderAll> getSaleOrders(PageParams params, String searchFilter) {
 		logger.log("客户采购单", "查看收到的客户采购订单列表(包括采购明细)(全部)");
@@ -391,7 +391,7 @@ public class SaleOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items/info", params = RequestState.TODO, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.TODO, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderTodo> getTodoSaleOrders(PageParams params, String searchFilter) {
 		logger.log("客户采购单", "查看收到的客户采购单列表(待回复)");
@@ -417,7 +417,7 @@ public class SaleOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items/info", params = RequestState.DONE, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.DONE, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderDone> getDoneSaleOrders(PageParams params, String searchFilter) {
 		logger.log("客户采购单", "查看收到的客户采购单列表(已回复)");
@@ -443,7 +443,7 @@ public class SaleOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items/info", params = RequestState.END, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.END, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderEnd> getEndSaleOrders(PageParams params, String searchFilter) {
 		logger.log("客户采购单", "查看收到的客户采购单列表(已结案)");
@@ -467,7 +467,7 @@ public class SaleOrderController {
 	 * @param searchFilter
 	 * @author wangmh 获取已发货的订单
 	 */
-	@RequestMapping(value = "/items/info", params = RequestState.RECEIVED, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.RECEIVED, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderReceived> getReceivedOrders(PageParams params, String searchFilter) {
 		logger.log("客户采购单", "查看收到的客户采购订单列表(包括采购明细)(待交货)");
@@ -492,7 +492,7 @@ public class SaleOrderController {
 	 * @param searchFilter
 	 * @author yujia 获取待发货的订单
 	 */
-	@RequestMapping(value = "/items/info", params = RequestState.WAITING, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.WAITING, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderWaiting> getWaitingOrders(PageParams params, String searchFilter) {
 		logger.log("客户采购单", "查看收到的客户采购订单列表(包括采购明细)(待交货)");
@@ -544,7 +544,7 @@ public class SaleOrderController {
 	 *            订单明细行ID
 	 * @return
 	 */
-	@RequestMapping(value = "/items/{orderItemId}/reply", method = RequestMethod.GET)
+	@RequestMapping(value = "/items/{orderItemId}/reply/all", method = RequestMethod.GET)
 	@ResponseBody
 	public List<PurchaseOrderReply> getPurchaseReply(@PathVariable("orderItemId") Long orderItemId) {
 		return purchaseOrderService.findReplyByOrderItem(orderItemId);
@@ -552,13 +552,13 @@ public class SaleOrderController {
 
 
 	/**
-	 * 作为卖家,查看我的回复
+	 * 作为卖家,查看最后一次回复
 	 *
 	 * @param orderItemId
 	 *            订单明细行ID
 	 * @return
 	 */
-	@RequestMapping(value = "/items/{orderItemId}/latestReplyQty", method = RequestMethod.GET)
+	@RequestMapping(value = "/items/{orderItemId}/replay/last", method = RequestMethod.GET)
 	@ResponseBody
 	public ModelMap getLatestReplyQty(@PathVariable("orderItemId") Long orderItemId) {
 		ModelMap map = new ModelMap();
@@ -769,7 +769,7 @@ public class SaleOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items/purc/info", method = RequestMethod.GET)
+	@RequestMapping(value = "/purc/info/nosearch", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderAll> getAllPurcOrders(PageParams params, String searchFilter) {
 		logger.log("采购单", "查看采购订单列表(包括采购明细)(全部)");
@@ -788,7 +788,7 @@ public class SaleOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items/purc/info", params = RequestState.TODO, method = RequestMethod.GET)
+	@RequestMapping(value = "/purc/info/nosearch", params = RequestState.TODO, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderTodo> getTodoPurcOrders(PageParams params, String searchFilter) {
 		logger.log("采购单", "查看采购订单列表(包括采购明细)(待回复)");
@@ -808,7 +808,7 @@ public class SaleOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items/purc/info", params = RequestState.DONE, method = RequestMethod.GET)
+	@RequestMapping(value = "/purc/info/nosearch", params = RequestState.DONE, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderDone> getDonePurcOrders(PageParams params, String searchFilter) {
 		logger.log("采购单", "查看采购订单列表(包括采购明细)(已回复)");
@@ -827,7 +827,7 @@ public class SaleOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items/purc/info", params = RequestState.END, method = RequestMethod.GET)
+	@RequestMapping(value = "/purc/info/nosearch", params = RequestState.END, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderEnd> getEndPurcOrders(PageParams params, String searchFilter) {
 		logger.log("采购单", "查看采购订单列表(包括采购明细)(已结案)");
@@ -845,7 +845,7 @@ public class SaleOrderController {
 	 * @param searchFilter
 	 *            获取待发货的订单
 	 */
-	@RequestMapping(value = "/items/purc/info", params = RequestState.WAITING, method = RequestMethod.GET)
+	@RequestMapping(value = "/purc/info/nosearch", params = RequestState.WAITING, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderWaiting> getWaitingPurcOrders(PageParams params, String searchFilter) {
 		logger.log("采购单", "查看采购订单列表(包括采购明细)(待交货)");
@@ -864,7 +864,7 @@ public class SaleOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items/purc", method = RequestMethod.GET)
+	@RequestMapping(value = "/purc/info/search", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderAll> getAllPurcOrderItems(PageParams params, String searchFilter) {
 		logger.log("采购单", "查看收到的采购订单列表(包括采购明细)(全部)");
@@ -887,7 +887,7 @@ public class SaleOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items/purc", params = RequestState.TODO, method = RequestMethod.GET)
+	@RequestMapping(value = "/purc/info/search", params = RequestState.TODO, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderTodo> getTodoPurcOrderItems(PageParams params, String searchFilter) {
 		logger.log("采购单", "查看发出的采购订单列表(包括采购明细)(待回复)");
@@ -908,7 +908,7 @@ public class SaleOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items/purc", params = RequestState.DONE, method = RequestMethod.GET)
+	@RequestMapping(value = "/purc/info/search", params = RequestState.DONE, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderDone> getDonePurcOrderItems(PageParams params, String searchFilter) {
 		logger.log("采购单", "查看收到的采购订单列表(包括采购明细)(已回复)");
@@ -929,7 +929,7 @@ public class SaleOrderController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/items/purc", params = RequestState.END, method = RequestMethod.GET)
+	@RequestMapping(value = "/purc/info/search", params = RequestState.END, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderEnd> getEndPurcOrderItems(PageParams params, String searchFilter) {
 		logger.log("采购单", "查看收到的采购订单列表(包括采购明细)(已结案)");
@@ -949,7 +949,7 @@ public class SaleOrderController {
 	 * @param searchFilter
 	 *            获取待发货的订单
 	 */
-	@RequestMapping(value = "/items/purc", params = RequestState.WAITING, method = RequestMethod.GET)
+	@RequestMapping(value = "/purc/info/search", params = RequestState.WAITING, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseOrderWaiting> getWaitingPurcOrderItems(PageParams params, String searchFilter) {
 		logger.log("采购单", "查看收到的采购订单列表(包括采购明细)(待交货)");

+ 33 - 33
src/main/java/com/uas/platform/b2b/controller/SaleQuotationController.java

@@ -61,15 +61,15 @@ public class SaleQuotationController {
 	private final static UsageBufferedLogger logger = BufferedLoggerManager.getLogger(UsageBufferedLogger.class);
 
 	/**
-	 * 作为卖家,查看自己的主动报价单(全部)
+	 * 作为卖家,查看自己的主动报价单(全部)- 搜索
 	 * 
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<SaleQuotationAll> getSalQuotationItems(PageParams params, String searchFilter) {
-		logger.log("主动报价单", "查看主动报价单-全部");
+		logger.log("主动报价单", "查看主动报价单(全部)- 搜索");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
 		String keyword = jsonObject.getString("keyword");
 		com.uas.search.b2b.model.PageParams pageParams = searchService.convertPageParams(params, searchFilter);
@@ -93,15 +93,15 @@ public class SaleQuotationController {
 	}
 
 	/**
-	 * 作为卖家,查看自己的主动报价(已报价)
+	 * 作为卖家,查看自己的主动报价(已报价)- 搜索
 	 * 
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.DONE, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.DONE, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<SaleQuotationDone> getSubmitedQuotationItems(PageParams params, String searchFilter) {
-		logger.log("主动报价单", "查看主动报价单-已报价");
+		logger.log("主动报价单", "查看主动报价单(已报价)- 搜索");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
 		String keyword = jsonObject.getString("keyword");
 		com.uas.search.b2b.model.PageParams pageParams = searchService.convertPageParams(params, searchFilter);
@@ -131,15 +131,15 @@ public class SaleQuotationController {
 	}
 
 	/**
-	 * 作为卖家,查看自己的主动报价(已同意)
+	 * 作为卖家,查看自己的主动报价(已采纳)- 搜索
 	 * 
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.AGREED, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.AGREED, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<SaleQuotationAll> getAgreedQuotationItems(PageParams params, String searchFilter) {
-		logger.log("主动报价单", "查看主动报价单-已同意");
+		logger.log("主动报价单", "查看主动报价单(已采纳)- 搜索");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
 		String keyword = jsonObject.getString("keyword");
 		com.uas.search.b2b.model.PageParams pageParams = searchService.convertPageParams(params, searchFilter);
@@ -165,15 +165,15 @@ public class SaleQuotationController {
 	}
 
 	/**
-	 * 作为卖家,查看自己的主动报价(不同意)
+	 * 作为卖家,查看自己的主动报价(未采纳)- 搜索
 	 * 
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.REFUSED, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.REFUSED, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<SaleQuotationAll> getRefusedQuotationItems(PageParams params, String searchFilter) {
-		logger.log("主动报价单", "查看主动报价单-不同意");
+		logger.log("主动报价单", "查看主动报价单(未采纳)- 搜索");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
 		String keyword = jsonObject.getString("keyword");
 		com.uas.search.b2b.model.PageParams pageParams = searchService.convertPageParams(params, searchFilter);
@@ -199,15 +199,15 @@ public class SaleQuotationController {
 	}
 
 	/**
-	 * 作为卖家,查看自己的主动报价(未提交)
+	 * 作为卖家,查看自己的主动报价(未提交)- 搜索
 	 * 
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.TODO, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.TODO, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<SaleQuotationAll> getUnSubmitedQuotationItems(PageParams params, String searchFilter) {
-		logger.log("主动报价单", "查看主动报价单-未提交");
+		logger.log("主动报价单", "查看主动报价单(未提交)- 搜索");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
 		String keyword = jsonObject.getString("keyword");
 		com.uas.search.b2b.model.PageParams pageParams = searchService.convertPageParams(params, searchFilter);
@@ -231,15 +231,15 @@ public class SaleQuotationController {
 
 
 	/**
-	 * 作为卖家,查看自己的主动报价(已失效)
+	 * 作为卖家,查看自己的主动报价(已失效)- 搜索
 	 *
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(params = RequestState.INVALID, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", params = RequestState.INVALID, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<SaleQuotationAll> getInvalidQuotationItems(PageParams params, String searchFilter) {
-		logger.log("主动报价单", "查看主动报价单-已失效");
+		logger.log("主动报价单", "查看主动报价单(已失效)- 搜索");
 		JSONObject jsonObject = JSON.parseObject(searchFilter);
 		String keyword = jsonObject.getString("keyword");
 		// 未过期、已作废参数
@@ -264,15 +264,15 @@ public class SaleQuotationController {
 	}
 
 	/**
-	 * 作为卖家,查看自己的主动报价单(提交)
+	 * 作为卖家,查看自己的主动报价单(提交)
 	 * 
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/info", params = RequestState.TODO, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.TODO, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<SaleQuotationAll> getSalQuotationInfoTodo(PageParams params, String searchFilter) {
-		logger.log("主动报价单", "查看主动报价单-未提交");
+		logger.log("主动报价单", "查看主动报价单(未提交)");
 		// 当前登录企业作为供应商
 		SearchFilter filter = JSONObject.parseObject(searchFilter, SearchFilter.class);
 		SearchFilter disfilter = userService.distribute();
@@ -296,10 +296,10 @@ public class SaleQuotationController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/info", params = RequestState.DONE, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.DONE, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<SaleQuotationDone> getSalQuotationInfoDone(PageParams params, String searchFilter) {
-		logger.log("主动报价单", "查看主动报价单-已报价");
+		logger.log("主动报价单", "查看主动报价单(已报价)");
 		// 当前登录企业作为供应商
 		SearchFilter filter = JSONObject.parseObject(searchFilter, SearchFilter.class);
 		SearchFilter disfilter = userService.distribute();
@@ -318,15 +318,15 @@ public class SaleQuotationController {
 	}
 
 	/**
-	 * 作为卖家,查看自己的主动报价单(已同意
+	 * 作为卖家,查看自己的主动报价单(已采纳
 	 * 
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/info", params = RequestState.AGREED, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.AGREED, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<SaleQuotationAll> getSalQuotationInfoAgreed(PageParams params, String searchFilter) {
-		logger.log("主动报价单", "查看主动报价单-已同意");
+		logger.log("主动报价单", "查看主动报价单(已采纳)");
 		// 当前登录企业作为供应商
 		SearchFilter filter = JSONObject.parseObject(searchFilter, SearchFilter.class);
 		SearchFilter disfilter = userService.distribute();
@@ -346,15 +346,15 @@ public class SaleQuotationController {
 	}
 
 	/**
-	 * 作为卖家,查看自己的主动报价单(不同意
+	 * 作为卖家,查看自己的主动报价单(未采纳
 	 * 
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/info", params = RequestState.REFUSED, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.REFUSED, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<SaleQuotationAll> getSalQuotationInfoRefused(PageParams params, String searchFilter) {
-		logger.log("主动报价单", "查看主动报价单-已同意");
+		logger.log("主动报价单", "查看主动报价单(未采纳)");
 		// 当前登录企业作为供应商
 		SearchFilter filter = JSONObject.parseObject(searchFilter, SearchFilter.class);
 		SearchFilter disfilter = userService.distribute();
@@ -379,10 +379,10 @@ public class SaleQuotationController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/info", params = RequestState.INVALID, method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", params = RequestState.INVALID, method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<SaleQuotationAll> getSalQuotationInfoInvalid(PageParams params, String searchFilter) {
-		logger.log("主动报价单", "查看主动报价单-已失效");
+		logger.log("主动报价单", "查看主动报价单(已失效)");
 		// 当前登录企业作为供应商
 		SearchFilter filter = JSONObject.parseObject(searchFilter, SearchFilter.class);
 		SearchFilter disfilter = userService.distribute();
@@ -408,10 +408,10 @@ public class SaleQuotationController {
 	 * @param params
 	 * @return
 	 */
-	@RequestMapping(value = "/info", method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<SaleQuotationAll> getSalQuotationInfo(PageParams params, String searchFilter) {
-		logger.log("主动报价单", "查看主动报价单-全部");
+		logger.log("主动报价单", "查看主动报价单(全部)");
 		// 当前登录企业作为供应商
 		SearchFilter filter = JSONObject.parseObject(searchFilter, SearchFilter.class);
 		SearchFilter disfilter = userService.distribute();

+ 8 - 8
src/main/java/com/uas/platform/b2b/controller/SaleSampleController.java

@@ -75,7 +75,7 @@ public class SaleSampleController {
 	 * @param json
 	 * @return
 	 */
-	@RequestMapping(method = RequestMethod.GET)
+	@RequestMapping(value = "/info/search", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseProofingItem> getProofingItems(PageParams params, String searchFilter) {
 		logger.log("客户打样申请", "查看所有客户打样申请");
@@ -108,7 +108,7 @@ public class SaleSampleController {
 	 * @param json
 	 * @return
 	 */
-	@RequestMapping(method = RequestMethod.GET, params = RequestState.TODO)
+	@RequestMapping(value = "/info/search", method = RequestMethod.GET, params = RequestState.TODO)
 	@ResponseBody
 	public SPage<PurchaseProofingItem> getTodoProofingItems(PageParams params, String searchFilter) {
 		// 我作为卖家,把我的企业ID作为供应商ID传入
@@ -142,7 +142,7 @@ public class SaleSampleController {
 	 * @param json
 	 * @return
 	 */
-	@RequestMapping(method = RequestMethod.GET, params = RequestState.DONE)
+	@RequestMapping(value = "/info/search", method = RequestMethod.GET, params = RequestState.DONE)
 	@ResponseBody
 	public SPage<PurchaseProofingItem> getDoneProofingItems(PageParams params, String searchFilter) {
 		// 我作为卖家,把我的企业ID作为供应商ID传入
@@ -176,7 +176,7 @@ public class SaleSampleController {
 	 * @param json
 	 * @return
 	 */
-	@RequestMapping(method = RequestMethod.GET, params = RequestState.INVALID)
+	@RequestMapping(value = "/info/search", method = RequestMethod.GET, params = RequestState.INVALID)
 	@ResponseBody
 	public SPage<PurchaseProofingItem> getInvalidProofingItems(PageParams params, String searchFilter) {
 		// 我作为卖家,把我的企业ID作为供应商ID传入
@@ -210,7 +210,7 @@ public class SaleSampleController {
 	 * @param json
 	 * @return
 	 */
-	@RequestMapping(value = "/info", method = RequestMethod.GET)
+	@RequestMapping(value = "/info/nosearch", method = RequestMethod.GET)
 	@ResponseBody
 	public SPage<PurchaseProofingItem> getAllProofingItems(PageParams params, String searchFilter) {
 		logger.log("客户打样申请", "查看所有客户打样申请");
@@ -237,7 +237,7 @@ public class SaleSampleController {
 	 * @param json
 	 * @return
 	 */
-	@RequestMapping(value = "/info", method = RequestMethod.GET, params = RequestState.TODO)
+	@RequestMapping(value = "/info/nosearch", method = RequestMethod.GET, params = RequestState.TODO)
 	@ResponseBody
 	public SPage<PurchaseProofingItem> getTodoItems(PageParams params, String searchFilter) {
 		// 我作为卖家,把我的企业ID作为供应商ID传入
@@ -266,7 +266,7 @@ public class SaleSampleController {
 	 * @param json
 	 * @return
 	 */
-	@RequestMapping(value = "/info", method = RequestMethod.GET, params = RequestState.DONE)
+	@RequestMapping(value = "/info/nosearch", method = RequestMethod.GET, params = RequestState.DONE)
 	@ResponseBody
 	public SPage<PurchaseProofingItem> getDoneItems(PageParams params, String searchFilter) {
 		// 我作为卖家,把我的企业ID作为供应商ID传入
@@ -295,7 +295,7 @@ public class SaleSampleController {
 	 * @param json
 	 * @return
 	 */
-	@RequestMapping(value = "/info", method = RequestMethod.GET, params = RequestState.INVALID)
+	@RequestMapping(value = "/info/nosearch", method = RequestMethod.GET, params = RequestState.INVALID)
 	@ResponseBody
 	public SPage<PurchaseProofingItem> getInvalidItems(PageParams params, String searchFilter) {
 		// 我作为卖家,把我的企业ID作为供应商ID传入

+ 9 - 7
src/main/java/com/uas/platform/b2b/controller/UserController.java

@@ -34,6 +34,8 @@ import com.uas.platform.core.util.mq.AuthCodeSoap;
 import com.uas.platform.core.util.mq.MessageLog;
 import com.uas.platform.core.util.serializer.FlexJsonUtils;
 
+import static com.uas.platform.b2b.model.Token.UserType.user;
+
 /**
  * 企业请求
  * 
@@ -198,13 +200,13 @@ public class UserController {
 	 * 
 	 * @return
 	 */
-			@RequestMapping(method = RequestMethod.PUT)
-			public ResponseEntity<String> saveUser(@RequestBody String json, HttpServletRequest request) {
-				User user = FlexJsonUtils.fromJson(json, User.class);
-				user = userService.updateUserInfo(user);
-				if (user != null) {
-					logger.log("用户信息", "修改用户信息,UU:" + user.getUserUU());
-					if (SystemSession.getUser().getUserUU().equals(user.getUserUU()))
+	@RequestMapping(method = RequestMethod.PUT)
+	public ResponseEntity<String> saveUser(@RequestBody String json, HttpServletRequest request) {
+		User user = FlexJsonUtils.fromJson(json, User.class);
+		user = userService.updateUserInfo(user);
+		if (user != null) {
+			logger.log("用户信息", "修改用户信息,UU:" + user.getUserUU());
+			if (SystemSession.getUser().getUserUU().equals(user.getUserUU()))
 				request.getSession().setAttribute("user", user);
 		}
 		return new ResponseEntity<String>(HttpStatus.OK);

+ 5 - 8
src/main/java/com/uas/platform/b2b/dao/RoleDao.java

@@ -21,7 +21,7 @@ public interface RoleDao extends JpaRepository<Role, Long> {
 	 * @param desc
 	 * @return
 	 */
-	public List<Role> findByEnUUAndDesc(long enUU, String desc);
+	public List<Role> findByEnUUAndDesc(Long enUU, String desc);
 
 	/**
 	 * 角色个数
@@ -56,13 +56,10 @@ public interface RoleDao extends JpaRepository<Role, Long> {
     @Query(value = "select count(1) from sec$roles r left join sec$userrole u on r.role_id = u.role_id where r.role_enuu = :enuu and u.user_uu = :useruu and (r.role_name = 'ROLE_ADMIN' or r.role_name = 'ROLE_SALEMANAGER')",nativeQuery = true)
     Double findByEnuuAndUseruu(@Param("enuu") Long enuu, @Param("useruu") Long useruu);
 
-	/**
-	 * 是否是当前企业的管理员(只有管理员才能设置权限)
-	 *
-	 * @param enuu
-	 * @param useruu
-	 * @return
-	 */
 	@Query(value = "select count(1) from sec$roles r left join sec$userrole u on r.role_id = u.role_id where r.role_enuu = :enuu and u.user_uu = :useruu and r.role_name = 'ROLE_ADMIN'",nativeQuery = true)
 	Double findByEnuuAndUserUU(@Param("enuu") Long enuu, @Param("useruu") Long useruu);
+
+	@Query(value = "select count(1) from sec$roles r left join sec$userrole u on r.role_id = u.role_id where r.role_enuu = :enuu and u.user_uu = :useruu and r.role_name = 'ROLE_USER'",nativeQuery = true)
+	Double findByEnuuAndUserUu(@Param("enuu") Long enuu, @Param("useruu") Long useruu);
+
 }

+ 2 - 0
src/main/java/com/uas/platform/b2b/filter/SSOInterceptor.java

@@ -39,6 +39,8 @@ import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.util.*;
 
+import static com.uas.platform.b2b.model.Token.UserType.user;
+
 @SuppressWarnings("deprecation")
 public class SSOInterceptor extends AbstractSSOInterceptor {
 

+ 13 - 0
src/main/java/com/uas/platform/b2b/model/Resource.java

@@ -64,6 +64,12 @@ public class Resource implements Serializable{
 	@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
 	private Set<ResourceItem> items;
 
+	/**
+	 * 权限显示排序下标
+	 */
+	@Column(name = "res_index")
+	private Long index;
+
 	public Long getId() {
 		return id;
 	}
@@ -96,4 +102,11 @@ public class Resource implements Serializable{
 		this.items = items;
 	}
 
+	public Long getIndex() {
+		return index;
+	}
+
+	public void setIndex(Long index) {
+		this.index = index;
+	}
 }

+ 27 - 0
src/main/java/com/uas/platform/b2b/model/Role.java

@@ -89,6 +89,12 @@ public class Role implements Serializable {
 	@Column(name = "role_duty")
 	private String duty;
 
+	/**
+	 * 下标,用于排序
+	 */
+	@Column(name = "role_index")
+	private Long index;
+
 	public Long getId() {
 		return id;
 	}
@@ -159,6 +165,14 @@ public class Role implements Serializable {
 		this.duty = duty;
 	}
 
+	public Long getIndex() {
+		return index;
+	}
+
+	public void setIndex(Long index) {
+		this.index = index;
+	}
+
 	@Override
 	public int hashCode() {
 		final int prime = 31;
@@ -184,4 +198,17 @@ public class Role implements Serializable {
 		return true;
 	}
 
+	@Override
+	public String toString() {
+		return "Role{" +
+				"id=" + id +
+				", name='" + name + '\'' +
+				", issys=" + issys +
+				", isdefault=" + isdefault +
+				", desc='" + desc + '\'' +
+				", resourceItems=" + resourceItems +
+				", enUU=" + enUU +
+				", duty='" + duty + '\'' +
+				'}';
+	}
 }

+ 6 - 0
src/main/java/com/uas/platform/b2b/service/RoleService.java

@@ -1,9 +1,11 @@
 package com.uas.platform.b2b.service;
 
+import com.uas.platform.b2b.model.ResourceItem;
 import com.uas.platform.b2b.model.Role;
 import org.springframework.ui.ModelMap;
 
 import java.util.List;
+import java.util.Set;
 
 public interface RoleService {
 
@@ -64,4 +66,8 @@ public interface RoleService {
 	 * @return
 	 */
 	ModelMap isManager();
+
+	ModelMap isUser();
+
+    ModelMap updateDefault(String desc, Set<ResourceItem> resourceItems);
 }

+ 28 - 0
src/main/java/com/uas/platform/b2b/service/impl/RoleServiceImpl.java

@@ -3,6 +3,7 @@ package com.uas.platform.b2b.service.impl;
 import com.uas.platform.b2b.dao.EnterpriseDao;
 import com.uas.platform.b2b.dao.RoleDao;
 import com.uas.platform.b2b.dao.UserDao;
+import com.uas.platform.b2b.model.ResourceItem;
 import com.uas.platform.b2b.model.Role;
 import com.uas.platform.b2b.model.User;
 import com.uas.platform.b2b.service.RoleService;
@@ -16,6 +17,7 @@ import org.springframework.util.Assert;
 import org.springframework.util.CollectionUtils;
 
 import java.util.List;
+import java.util.Set;
 
 @Service
 public class RoleServiceImpl implements RoleService {
@@ -97,4 +99,30 @@ public class RoleServiceImpl implements RoleService {
 		return new ModelMap("isManager", roleDao.findByEnuuAndUserUU(SystemSession.getUser().getEnterprise().getUu(),SystemSession.getUser().getUserUU()) > 0 ? true : false);
 	}
 
+	@Override
+	public ModelMap isUser() {
+		return new ModelMap("isUser", roleDao.findByEnuuAndUserUu(SystemSession.getUser().getEnterprise().getUu(),SystemSession.getUser().getUserUU()) > 0 ? true : false);
+	}
+
+    @Override
+    public ModelMap updateDefault(String desc, Set<ResourceItem> resourceItems) {
+		List<Role> roles = roleDao.findByEnUUAndDesc(null, desc);
+		System.out.println(roles);
+		if (roles == null || roles.size() == 0) {
+			throw new RuntimeException("没有找到默认角色");
+		} else if (roles.size() > 1) {
+			throw new RuntimeException("有多个角色企业UU为空,请查看");
+		} else {
+			Role role = roles.get(0);
+			if (role.getId() > 9101 && role.getId() < 9201){
+				role.getResourceItems().clear();
+				role.getResourceItems().addAll(resourceItems);
+				roleDao.save(role);
+				return new ModelMap("success", true);
+			} else {
+				throw new RuntimeException("怒!谁把我的默认角色id改了,站出来!!!");
+			}
+		}
+    }
+
 }

+ 2 - 1
src/main/webapp/resources/js/common/services.js

@@ -267,7 +267,8 @@ define(['angular', 'toaster', 'big'], function(angular, big) {
             customer: $resource('vendor/customer/:id', {}),
             vendor: $resource('vendor/:id', {}),
             userInfo: $resource('vendor/userInfo/:uu', {}),
-            user: $resource('vendor/user', {})
+            user: $resource('vendor/user', {}),
+            exportXls: $resource('vendor/customer/xls', {})
         };
     }]).factory('AccountUser', ['$resource', function($resource) {
         return $resource('account/user/:uu', {}, {

文件差異過大導致無法顯示
+ 338 - 90
src/main/webapp/resources/js/index/app.js


+ 12 - 3
src/main/webapp/resources/js/index/services/Account.js

@@ -25,7 +25,12 @@ define([ 'ngResource' ], function() {
 	}]).factory('AccountResource', ['$resource', function($resource) {
 		return $resource('account/resource', {});
 	}]).factory('AccountRole', ['$resource', function($resource) {
-		return $resource('account/role/:id');
+		return $resource('account/role/:id', {}, {
+			updateDefault: {
+				url: 'account/role/updateDefault',
+				method: 'POST'
+			}
+		});
 	}]).factory('FuzzySearch', ['$resource', function($resource){
 		return $resource('account/user', {}, {
 			//绑定界面的用户搜索
@@ -48,8 +53,12 @@ define([ 'ngResource' ], function() {
             },
 			isManager: {
             	url: 'account/role/isManager',
-				mehtod: 'GET'
-			}
+				method: 'GET'
+			},
+            isUser: {
+                url: 'account/role/isUser',
+                method: 'GET'
+            }
         })
     }]);
 });

+ 21 - 9
src/main/webapp/resources/js/index/services/BaseInfo.js

@@ -1,12 +1,12 @@
 define(['ngResource'], function() {
 	angular.module('ProductServices', [ 'ngResource']).factory('GetProductInfo', ['$resource', function($resource) {
-		return $resource('product/baseInfo', {}, {
+		return $resource('product/baseInfo/info/search', {}, {
 			getSaleProduct: {
-				url: 'product/baseInfo/sale/:id/info',
+				url: 'product/baseInfo/:id/info',
 				method: 'GET'
 			},
 			getPurcProduct: {
-				url: 'product/baseInfo/purc/:id/info',
+				url: 'purcProduct/:id/info',
 				method: 'GET'
 			},
 			getOne : {
@@ -31,16 +31,20 @@ define(['ngResource'], function() {
 				method : 'GET',
 			},
 			addNewProd : {
-				url: "product/baseInfo/addNewProduct",
+				url: "product/baseInfo/edit/addNewProduct",
 				method : 'POST'			
 			},
 			update : {
-				url: "product/baseInfo/updateProdInfo",
+				url: "product/baseInfo/edit/updateProdInfo",
 				method : 'POST'
 			},
 			deleteById : {
-				url: "product/baseInfo/delete/:id",
-				method : 'DELETE'
+				url: "product/baseInfo/edit/delete",
+				method : 'POST'
+			},
+			deletePurcById : {
+				url: "purcProduct/edit/delete",
+				method : 'POST'
 			},
 			getAllPartners : {
 				url : "product/baseInfo/getAllPartners",
@@ -75,7 +79,7 @@ define(['ngResource'], function() {
 				method: 'GET',
 			},
 			toggle: {
-				url: 'product/baseInfo/toggle/:status',
+				url: 'product/baseInfo/edit/toggle/:status',
 				method: 'POST'
 			},
 			setRead:{
@@ -89,10 +93,18 @@ define(['ngResource'], function() {
 			getUnreadCount:{
 				url: 'product/baseInfo/unread',
 				method: 'GET'
+			},
+			exportXls: {
+				url: 'product/baseInfo/xls',
+				method: 'GET'
+			},
+			matchbytype: {
+				url: '/product/baseInfo/edit/matchbytype/:type',
+				method: 'POST'
 			}
 		})
 	}]).factory('GetProductInfoNewest', ['$resource', function($resource) {
-		return $resource('product/baseInfo/info', {}, {
+		return $resource('product/baseInfo/info/nosearch', {}, {
 			getAll : {
 				isArray : false
 			},

+ 2 - 2
src/main/webapp/resources/js/index/services/DeputyOrder.js

@@ -90,7 +90,7 @@ define(['ngResource'], function() {
             }
 		})
 	}]).factory('getDeOrder', ['$resource', function($resource) {
-		return $resource('deputyOrder/getDeOrder', {}, {
+		return $resource('deputyOrder/info/search', {}, {
 			getAll: {
 				isArray: false
 			},
@@ -121,7 +121,7 @@ define(['ngResource'], function() {
             }
 		})
 	}]).factory('getOrderInfo', ['$resource', function($resource) {
-		return $resource('deputyOrder/orderInfo', {}, {
+		return $resource('deputyOrder/info/nosearch', {}, {
 			getAll: {
 				isArray: false
 			},

+ 9 - 2
src/main/webapp/resources/js/index/services/Make.js

@@ -61,7 +61,7 @@ define([ 'ngResource'], function() {
 			}
 		});
 	}]).factory('MakeChange', ['$resource', function($resource) {
-		return $resource('make/changes/:id', {}, {
+		return $resource('make/changes/info/search', {}, {
 			reply: {
 				url: 'make/changes/:itemId/reply',
 				method: 'POST',
@@ -69,7 +69,14 @@ define([ 'ngResource'], function() {
 					itemId: 'itemId'
 				}
 			},
-			getAll: {}
+			getAll: {
+				url: 'make/changes/info/search',
+				method: 'GET',
+			},
+			getItem: {
+				url: 'make/changes/:id/info',
+				method: 'GET',
+			}
 		});
 	}]).factory('MakeAccept',['$resource',function($resource){
 		return $resource('make/accept/:id',{},{

+ 7 - 3
src/main/webapp/resources/js/index/services/Product.js

@@ -23,7 +23,7 @@ define([ 'ngResource'], function() {
 				method: 'POST',
 			},
 			toggle: {
-				url: 'purcProduct/toggle/:status',
+				url: 'purcProduct/edit/toggle/:status',
 				method: 'POST'
 			},
 			updateByBatch: {
@@ -135,7 +135,7 @@ define([ 'ngResource'], function() {
 			},
 		});
 	}]).factory('PurcProduct', ['$resource', function($resource) {
-		return $resource('purcProduct', {}, {
+		return $resource('purcProduct/info/search', {}, {
 			getAll : {
 				isArray : false
 			},
@@ -152,10 +152,14 @@ define([ 'ngResource'], function() {
 			setRead:{
 				url: 'purcProduct/setRead',
 				method: 'POST'
+			},
+			matchbytype: {
+				url: '/purcProduct/edit/matchbytype/:type',
+				method: 'POST'
 			}
 		})
 	}]).factory('PurcProductNewest', ['$resource', function($resource) {
-		return $resource('purcProduct/info', {}, {
+		return $resource('purcProduct/info/nosearch', {}, {
 			getAll : {
 				isArray : false
 			},

+ 56 - 34
src/main/webapp/resources/js/index/services/Purc.js

@@ -33,7 +33,7 @@ define([ 'ngResource'], function() {
             }
 		});
 	}]).factory('PurcOrderItem', ['$resource', function($resource) {
-		return $resource('sale/orders/items', {}, {
+		return $resource('sale/orders/info/search', {}, {
 			getTodo: {
 				params: {
 					_state: 'todo'
@@ -74,7 +74,7 @@ define([ 'ngResource'], function() {
 				}
 			},
 			getReply: {
-				url: 'sale/orders/items/:orderItemId/reply',
+				url: 'sale/orders/items/:orderItemId/reply/all',
 				method: 'GET',
 				isArray: true,
 				params: {
@@ -82,7 +82,7 @@ define([ 'ngResource'], function() {
 				}
 			},
 			getLatestReplyQty: {
-				url: 'sale/orders/items/:orderItemId/latestReplyQty',
+				url: 'sale/orders/items/:orderItemId/reply/last',
 				method: 'GET',
 				params: {
 				orderItemId: 'orderItemId'
@@ -102,7 +102,7 @@ define([ 'ngResource'], function() {
 			}
 		});
 	}]).factory('PurcOrderItemInfo', ['$resource', function($resource) {
-		return $resource('sale/orders/items/info', {}, {
+		return $resource('sale/orders/info/nosearch', {}, {
 			getTodo: {
 				params: {
 					_state: 'todo'
@@ -142,7 +142,7 @@ define([ 'ngResource'], function() {
 			}
 		});
 	}]).factory('PurcOrdersInfo', ['$resource', function($resource) {
-		return $resource('sale/orders/items/purc/info', {}, {
+		return $resource('sale/orders/purc/info/nosearch', {}, {
 			getAll: {
 				url: 'sale/orders/purc/:id/info',
 				method: 'GET'
@@ -174,7 +174,7 @@ define([ 'ngResource'], function() {
 			}
 		});
 	}]).factory('PurcOrders', ['$resource', function($resource) {
-		return $resource('sale/orders/items/purc', {}, {
+		return $resource('sale/orders/purc/info/search', {}, {
 			getTodo: {
 				params: {
 					_state: 'todo'
@@ -214,7 +214,11 @@ define([ 'ngResource'], function() {
 			}
 		});
 	}]).factory('PurcChange', ['$resource', function($resource) {
-		return $resource('sale/changes/:id/info', {}, {
+		return $resource('sale/changes/info/search', {}, {
+            getItem: {
+                url: 'sale/changes/:id/info',
+                method: 'GET'
+            },
 			getTodo: {
 				params: {
 					_state: 'todo'
@@ -258,7 +262,7 @@ define([ 'ngResource'], function() {
 			}
 		});
 	}]).factory('PurcChanges', ['$resource', function($resource) {
-		return $resource('sale/changes/info', {}, {
+		return $resource('sale/changes/info/nosearch', {}, {
 			getTodo: {
 				params: {
 					_state: 'todo'
@@ -353,6 +357,10 @@ define([ 'ngResource'], function() {
 			setRead:{
 				url: 'sale/inquiry/setRead',
 				method: 'POST'
+			},
+			exportXls: {
+				url: 'sale/inquiry/xls',
+				method: 'GET'
 			}
         });
         // 数据库直接获取
@@ -394,24 +402,24 @@ define([ 'ngResource'], function() {
         });
         // 数据库直接获取
     }]).factory('PurcTenderInfo', ['$resource', function($resource) {
-        return $resource('tender', {}, {
+        return $resource('tender/sale/info/search', {}, {
             getMyAll: {
-                url: 'tender/purc/info'
+                url: 'tender/purc/info/nosearch'
             },
             getMyDone: {
-                url: 'tender/purc',
+                url: 'tender/purc/info/search',
                 params: {
                     _state: 'done'
                 }
             },
             getMyTodo: {
-                url: 'tender/purc/info',
+                url: 'tender/purc/info/nosearch',
                 params: {
                     _state: 'todo'
                 }
             },
             getMyWaiting: {
-                url: 'tender/purc/info',
+                url: 'tender/purc/info/nosearch',
                 params: {
                     _state: 'waiting'
                 }
@@ -432,13 +440,13 @@ define([ 'ngResource'], function() {
                 }
             },
             getDone: {
-                url: 'tender/info',
+                url: 'tender/sale/info/nosearch',
                 params: {
                     _state: 'done'
                 }
             },
             getTodo: {
-                url: 'tender/info',
+                url: 'tender/sale/info/nosearch',
                 params: {
                     _state: 'todo'
                 }
@@ -450,24 +458,24 @@ define([ 'ngResource'], function() {
             }
         });
     }]).factory('PurcTender', ['$resource', function($resource) {
-    	return $resource('tender', {}, {
+    	return $resource('tender/sale/info/search', {}, {
             getMyAll: {
-                url: 'tender/purc'
+                url: 'tender/purc/info/search'
             },
             getMyDone: {
-                url: 'tender/purc',
+                url: 'tender/purc/info/search',
                 params: {
                     _state: 'done'
                 }
             },
             getMyTodo: {
-                url: 'tender/purc',
+                url: 'tender/purc/info/search',
                 params: {
                     _state: 'todo'
                 }
             },
             getMyWaiting: {
-                url: 'tender/purc',
+                url: 'tender/purc/info/search',
                 params: {
                     _state: 'waiting'
                 }
@@ -731,7 +739,7 @@ define([ 'ngResource'], function() {
             }
         });
 	}]).factory('PurcNotice', ['$resource', function($resource) {
-		return $resource('sale/notice/list', {}, {
+		return $resource('sale/notice/info/search', {}, {
 			getTodo: {
 				params: {
 					_state: 'todo'
@@ -752,6 +760,10 @@ define([ 'ngResource'], function() {
 					_state: 'waiting'
 				}
 			},
+			save: {
+				url: 'sale/notice/:id/sends',
+				method: 'POST'
+			},
 			getSends: {
 				url: 'sale/notice/:id/sendItems',
 				method: 'GET',
@@ -775,15 +787,15 @@ define([ 'ngResource'], function() {
 			}
 		});
     }]).factory('PurcNoticeInfo', ['$resource', function($resource) {
-        return $resource('sale/notice/list', {}, {
+        return $resource('sale/notice/info/search', {}, {
             getTodo: {
-                url: 'sale/notice/info',
+                url: 'sale/notice/info/nosearch',
                 params: {
                     _state: 'todo'
                 }
             },
             getDone: {
-                url: 'sale/notice/info',
+                url: 'sale/notice/info/nosearch',
                 params: {
                     _state: 'done'
                 }
@@ -801,6 +813,10 @@ define([ 'ngResource'], function() {
         });
 	}]).factory('SaleSend', ['$resource', function($resource) {
 		return $resource('sale/notice/sends/:id', {}, {
+			getItem: {
+				url: 'sale/notice/sends/:id/info',
+				method: 'GET'
+			},
 			getTodo: {
 				params: {
 					_state: 'todo'
@@ -875,7 +891,7 @@ define([ 'ngResource'], function() {
 		return $resource('sale/MRB/:id', {}, {
 		});
 	}]).factory('PurcSample', ['$resource', function($resource) {
-		return $resource('sale/sample/:id', {}, {
+		return $resource('sale/sample/info/search', {}, {
 			getItem: {
 				url: 'sale/sample/:id/info',
 				method: 'GET'
@@ -921,7 +937,7 @@ define([ 'ngResource'], function() {
 			}
 		});
 	}]).factory('PurcSampleInfo', ['$resource', function($resource) {
-		return $resource('sale/sample/info', {}, {
+		return $resource('sale/sample/info/nosearch', {}, {
 			getTodo: {
 				params: {
 					_state: 'todo'
@@ -1204,7 +1220,7 @@ define([ 'ngResource'], function() {
 			}
 		});
 	}]).factory('Quotation', ['$resource', function($resource){
-		return $resource('sale/quotation', {}, {
+		return $resource('sale/quotation/info/search', {}, {
 			getTodo: {
 				params: {
 					_state: 'todo'
@@ -1256,7 +1272,7 @@ define([ 'ngResource'], function() {
 			}
 		});
 	}]).factory('QuotationInfo', ['$resource', function($resource){
-		return $resource('sale/quotation/info', {}, {
+		return $resource('sale/quotation/info/nosearch', {}, {
 			getTodo: {
 				params: {
 					_state: 'todo'
@@ -1407,7 +1423,7 @@ define([ 'ngResource'], function() {
             }
         });
     }]).factory('PurchaseInquiry', ['$resource', function($resource){
-		return $resource('purc/inquiry', {}, {
+		return $resource('purc/inquiry/info/search', {}, {
 			getTodo: {
                 params: {
                     _state: 'todo'
@@ -1440,13 +1456,19 @@ define([ 'ngResource'], function() {
 				method: 'GET'
 			},
 			getUnapply: {
-               url: 'purc/inquiry/unapply',
-               method: 'GET'
+               	url: 'purc/inquiry/info/nosearch',
+               	method: 'GET',
+				params: {
+					_state: 'unapply'
+				}
 			},
 			getSubmit: {
-	               url: 'purc/inquiry/submit',
-	               method: 'GET'
-				},
+				url: 'purc/inquiry/info/nosearch',
+	               method: 'GET',
+				params: {
+					_state: 'submit'
+				}
+			},
 			deleteById: {
 				url: 'purc/inquiry/deleteById/:id',
 				method: 'DELETE'

+ 3 - 3
src/main/webapp/resources/tpl/index/approvalFlow/role.html

@@ -36,12 +36,12 @@
 <div class="block role-container">
 	<h1 class="page-header">默认角色</h1>
 	<div class="role-list-bg01 role-list">
-		<div class="item" ng-repeat="role in roles.defaults track by role.id">
-			<a class="icon" ng-click="editRole(role)">
+		<div class="item" ng-repeat="role in roles.defaults | orderBy:'index' track by role.id">
+			<a ng-if="role.name != 'ROLE_PURCMANAGER'" class="icon" ng-click="editRole(role)">
 				<i class="fa fa-user"
 					ng-class="{'fa-user-md': role.name=='ROLE_ADMIN','fa-male': role.name=='ROLE_SALE','fa-street-view': role.name=='ROLE_USER'}"></i>
 			</a>
-			<div class="desc">
+			<div ng-if="role.name != 'ROLE_PURCMANAGER'" class="desc">
 				<h3><a ng-click="editRole(role)" ng-bind="role.desc" class="none"></a></h3>
 				<div class="text-muted" ng-bind="role.duty"></div>
 			</div>

+ 5 - 3
src/main/webapp/resources/tpl/index/approvalFlow/role_detail.html

@@ -37,11 +37,11 @@
 				<div class="choose-inline">
 					<div class="item">
 						<ul class="list-unstyled">
-							<li ng-repeat="resource in resources"
+							<li ng-repeat="resource in resources | orderBy:'index' track by resource.id"
 								ng-class="{active: resource.$active}"
-								ng-click="onItemClick(resource)"><input id="check_{{resource.id}}" type="checkbox"
+								ng-click="onItemClick(resource)"><input ng-if="resource.items.length > 0" id="check_{{resource.id}}" type="checkbox"
 								ng-model="resource.$checked"
-								ng-change="onResourceChange(resource)"/><a>{{::resource.name}}<span
+								ng-change="onResourceChange(resource)"/><a ng-if="resource.items.length > 0">{{::resource.name}}<span
 									class="caret"></span></a></li>
 						</ul>
 					</div>
@@ -59,6 +59,8 @@
 		<p class="pull-left text-muted" ng-show="role.isdefault == 1">
 			<i class="fa fa-fw fa-warning"></i>默认角色不允许删除,只能修改权限分配
 		</p>
+		<!--仅优软科技有限公司可用-->
+		<button ng-if="role.enUU == 10041166" class="btn btn-primary" type="button" ng-click="updateDefault()">更新默认权限标准库</button>
 		<button class="btn btn-primary" type="submit"
 			ng-disabled="roleForm.$invalid || !isChanged(role)">确认</button>
 		<button class="btn btn-default" type="button"

+ 1 - 1
src/main/webapp/resources/tpl/index/baseInfo/prodList.html

@@ -213,7 +213,7 @@ width: 80px;
     <div class="pub-com_head">
         <span>产品库</span>
         <div class="p-right">
-            <a href="product/baseInfo/xls?_state={{active}}&keyword={{keywordXls}}" target="_self" class="text-simple" title="导出Excel表格">导出</a>
+            <a ng-click="exportXls()" target="_self" class="text-simple" title="导出Excel表格">导出</a>
             <a ui-sref="sale.newProdInfo">新增</a>
             <a ui-sref="sale.uploadByBatch" title="批量导入">批量导入</a>
             <a ng-click="toggle('off')" ng-if="saleStatus != 0">一键关闭</a>

+ 16 - 11
src/main/webapp/resources/tpl/index/fa/apBill.html

@@ -211,7 +211,7 @@
 			<td colspan="3"><span title="客户名称"
 				ng-bind="::bill.enterprise.enName"></span></td>
 			<td colspan="1" class="order-sum text-num">
-				<span title="票据总额">
+				<span ng-if="isUser" title="票据总额">
 					<span ng-bind="::bill.currency"></span>
 					<span ng-bind="::bill.apAmount"></span>
 				</span>
@@ -237,8 +237,9 @@
 			</td>
 			<td class="text-center">
 				<div class="text-num" title="{{::item.price}}">
-					<span ng-bind="::bill.currency"></span>
-					<span ng-bind="::item.price"></span>
+					<span ng-if="!isUser" ng-bind="::bill.currency"></span>
+					<span ng-if="!isUser" ng-bind="::item.price"></span>
+					<span ng-if="isUser" ng-bind="'-'"></span>
 				</div>
 				<div>&nbsp;</div>
 				<div class="text-muted"
@@ -252,14 +253,16 @@
 			</td>
 			<td class="text-center br-l">
 				<div class="text-num text-bold">
-					<span ng-bind="::bill.currency"></span>
-					<span ng-bind="::item.apAmount"></span>
+					<span ng-if="!isUser" ng-bind="::bill.currency"></span>
+					<span ng-if="!isUser" ng-bind="::item.apAmount"></span>
+					<span ng-if="isUser" class="text-num" ng-bind="::'-'"></span>
 				</div>
 				<div>&nbsp;</div>
 				<div class="text-muted">
 					税金:
-					<span class="text-num" ng-bind="::bill.currency"></span>
-					<span class="text-num" ng-bind="::item.taxAmount"></span>
+					<span ng-if="!isUser" class="text-num" ng-bind="::bill.currency"></span>
+					<span ng-if="!isUser" class="text-num" ng-bind="::item.taxAmount"></span>
+					<span ng-if="isUser" class="text-num" ng-bind="::'-'"></span>
 				</div>
 			</td>
 			<td class="br-l" colspan="2" ng-if="item.orderCode">
@@ -270,8 +273,9 @@
 				</span><span class="text-muted" ng-bind="::item.product.unit"></span>
 				</div>
 				<div class="text-muted">单据金额:
-					<span class="text-num" ng-bind="::bill.currency"></span>
-					<span class="text-num" ng-bind="::item.amount"></span>
+					<span ng-if="!isUser" class="text-num" ng-bind="::bill.currency"></span>
+					<span ng-if="!isUser" class="text-num" ng-bind="::item.amount"></span>
+					<span ng-if="isUser" class="text-num" ng-bind="::'-'"></span>
 				</div>
 			</td>
 			<td class="br-l" colspan="2" ng-if="!item.orderCode">
@@ -280,8 +284,9 @@
 				</span><span class="text-muted" ng-bind="::item.product.unit"></span>
 				</div>
 				<div class="text-muted">单据金额:
-					<span class="text-num" ng-bind="::bill.currency"></span>
-					<span class="text-num" ng-bind="::item.amount"></span>
+					<span ng-if="!isUser" class="text-num" ng-bind="::bill.currency"></span>
+					<span ng-if="!isUser" class="text-num" ng-bind="::item.amount"></span>
+					<span ng-if="isUser" class="text-num" ng-bind="::'-'"></span>
 				</div>
 			</td>
 		</tr>

+ 6 - 6
src/main/webapp/resources/tpl/index/fa/apBill_detail.html

@@ -97,15 +97,15 @@
 			</div>
 			<div class="col-xs-3">
 				<span class="title">应付总额</span>
-				<div class="content text-num" ng-bind="::bill.apAmount | number:2 || 0"></div>
+				<div class="content text-num" ng-bind="::isUser?'-':(bill.apAmount | number:2 || 0)"></div>
 			</div>
 			<div class="col-xs-3">
 				<span class="title">付款金额</span>
-				<div class="content" ng-bind="bill.payAmount || 0"></div>
+				<div class="content" ng-bind="isUser?'-':(bill.payAmount || 0)"></div>
 			</div>
 			<div class="col-xs-3">
 				<span class="title">税金合计</span>
-				<div class="content" ng-bind="bill.taxSum || 0"></div>
+				<div class="content" ng-bind="isUser?'-':(bill.taxSum || 0)"></div>
 			</div>
 		</div>
 		<div class="row row-sm item">
@@ -151,11 +151,11 @@
 						<td ng-bind="item.orderCode"></td>
 						<td ng-bind="item.pdinoutNo"></td>
 						<td ng-bind="item.thisvoQty"></td>
-						<td ng-bind="item.price"></td>
+						<td ng-bind="isUser?'-':item.price"></td>
 						<td ng-bind="item.taxrate"></td>
-						<td ng-bind="item.amount"></td>
+						<td ng-bind="isUser?'-':item.amount"></td>
 						<td ng-bind="item.qty"></td>
-						<td ng-bind="item.apAmount"></td>
+						<td ng-bind="isUser?'-':item.apAmount"></td>
 						<td ng-bind="item.invoQty"></td>
 						<td ng-bind="item.yQty"></td>
 						<td ng-if="item.remark" ng-bind="item.remark"></td>

+ 2 - 2
src/main/webapp/resources/tpl/index/fa/apCheck.html

@@ -266,8 +266,8 @@
 					<div class="static">
 						<p><span class="f14 text-num">{{::check.beginDate | date:'yyyy/MM/dd'}} - {{::check.endDate | date:'yyyy/MM/dd'}}</span></p>
 						<p>
-							<strong class="text-num">{{::check.checkAmount | number:2}}</strong>
-							<span class="text-number">{{::check.currency}}</span>
+							<strong class="text-num">{{::(isUser?'-':(check.checkAmount | number:2))}}</strong>
+							<span ng-if="!isUser" class="text-number">{{::check.currency}}</span>
 						</p>
 						<p>
 							<strong class="text-num">{{::check.items.length}}</strong> 条<br>

+ 3 - 3
src/main/webapp/resources/tpl/index/fa/apCheck_detail.html

@@ -97,7 +97,7 @@
 		<div class="row row-sm item">
 			<div class="col-xs-3">
 				<span class="title">对账总额</span>
-				<div class="content text-num" ng-bind="::data.checkAmount | number:2"></div>
+				<div class="content text-num" ng-bind="::(isUser?'-':(data.checkAmount | number:2))"></div>
 			</div>
 			<div class="col-xs-3">
 				<span class="title">币别</span>
@@ -140,10 +140,10 @@
 						<td ng-bind="item.inoutno"></td>
 						<td ng-bind="item.orderClass"></td>
 						<td ng-bind="item.inoutnodetno"></td>
-						<td ng-bind="item.price"></td>
+						<td ng-bind="isUser?'-':item.price"></td>
 						<td ng-bind="item.taxrate"></td>
 						<td ng-bind="item.checkQty"></td>
-						<td ng-bind="item.amount | number:2"></td>
+						<td ng-bind="isUser?'-':(item.amount | number:2)"></td>
 						<td ng-bind="item.orderCode"></td>
 						<td ng-bind="item.orderDetno"></td>
 						<td ng-bind="item.receiveName"></td>

+ 1 - 1
src/main/webapp/resources/tpl/index/make/accept.html

@@ -255,7 +255,7 @@
 					</div>
 				</td>
 				<td>
-					<div class="text-num" title="{{item.orderPrice}}">
+					<div ng-if="!isUser" class="text-num" title="{{item.orderPrice}}">
 						<span ng-bind="::currency(accept.currency)"></span><span
 							ng-bind="item.orderPrice || 0 | number : 6"></span>
 					</div>

+ 3 - 3
src/main/webapp/resources/tpl/index/make/change.html

@@ -225,18 +225,18 @@
 			<td class="product">
 				<div>
 					<span class="text-num text-bold" ng-bind="::change.product.code"></span>
-					<span class="text-light">
+					<span class="text-light"></span>
 				</div>
 				<div ng-bind="::change.product.title"></div>
 				<div class="text-muted" ng-bind="::change.product.spec"></div>
 				<div class="" ng-if="::change.reason">变更原因:<span ng-bind="::change.reason"></span></div>
 			</td>
 			<td class="text-center">
-				<div class="text-num"
+				<div class="text-num" ng-if="!isUser"
 					ng-class="{'text-inverse': change.newPrice != change.oldPrice}"
 					title="{{change.newPrice}}" ng-bind="::change.newPrice | number:6"></div>
 				<div ng-show="change.newPrice != change.oldPrice">
-					<s class="text-num text-muted" ng-bind="::change.oldPrice | number:6"></s>
+					<s ng-if="!isUser" class="text-num text-muted" ng-bind="::change.oldPrice | number:6"></s>
 				</div>
 				税率 <span class="text-num" ng-class="{'text-inverse': change.newtaxrate != change.taxrate}">
 									{{::change.newtaxrate || 0}}%

+ 2 - 2
src/main/webapp/resources/tpl/index/make/change_detail.html

@@ -115,11 +115,11 @@
 							<div class="text-muted" ng-bind="::change.product.spec"></div>
 						</td>
 						<td class="text-center" width="100">
-							<div class="text-num"
+							<div class="text-num" ng-if="!isUser"
 								ng-class="{'text-inverse': change.newPrice != change.oldPrice}"
 								title="{{change.newPrice}}" ng-bind="::change.newPrice | number:6"></div>
 							<div ng-show="change.newPrice != change.oldPrice">
-								<s class="text-num text-muted" ng-bind="::change.oldPrice | number:6"></s>
+								<s ng-if="!isUser" class="text-num text-muted" ng-bind="::change.oldPrice | number:6"></s>
 							</div>
 							<div class="text-muted">
 								税率 <span class="text-num" ng-class="{'text-inverse': change.newtaxrate != change.taxrate}">

+ 3 - 4
src/main/webapp/resources/tpl/index/make/order.html

@@ -261,10 +261,9 @@
 						 ng-click="setOrdersRead(order.id)" title="查看详情"></a></span>
 				</div>
 			</td>
-			<td colspan="1" class="order-sum">{{::order.currency}} <span
-				ng-bind="::order.qty * order.price| number : 2"
+			<td colspan="1" class="order-sum">{{::(isUser?'':order.currency+':')}} <span
+				ng-bind="::(isUser?'-':(order.qty * order.price| number : 2))"
 				class="text-num text-bold"></span>
-			</td>
 			<td colspan="1" class="text-center">
 				<div class="operates">
 					<a ng-click="print(order)" title="打印{{order.print? '(已打印)':'(未打印)'}}" ng-class="{'unPrinted' : !order.print, 'text-muted': order.print}"><i
@@ -295,7 +294,7 @@
 				<div class="text-bold text-inverse" ng-if="order.factory">送货工厂:<span ng-bind="::order.factory"></span></div>
 			</td>
 			<td>
-				<div class="text-num" ng-bind="::order.price | number:6"></div>
+				<div class="text-num" ng-bind="::(isUser?'':(order.price | number:6))"></div>
 				<div class="text-muted">税率:{{::order.taxrate || 0}}%</div>
 			</td>
 			<td class="text-center">

+ 2 - 2
src/main/webapp/resources/tpl/index/make/order_detail.html

@@ -57,7 +57,7 @@
 			</div>
 			<div class="col-xs-4">
 				<span class="title">金额</span>
-				<div class="content" ng-bind="::order.total"></div>
+				<div class="content" ng-bind="::(isUser?'-':order.total)"></div>
 			</div>
 			<div class="col-xs-5">
 				<span class="title">付款方式</span>
@@ -104,7 +104,7 @@
 							<div class="text-muted" ng-bind="::order.product.spec"></div>
 						</td>
 						<td class="text-center" width="80">
-							<div class="text-num" ng-bind="::order.price | number:6"></div>
+							<div ng-if="!isUser" class="text-num" ng-bind="::order.price | number:6"></div>
 							<div class="text-muted">税率:{{order.taxrate || 0}}%</div>
 						</td>
 						<td class="text-center" width="100">

+ 1 - 1
src/main/webapp/resources/tpl/index/make/outorder.html

@@ -254,7 +254,7 @@
 					</div>
 				</td>
 				<td class="text-center">
-					<div class="text-num" ng-bind="::order.price | number:6"></div>
+					<div ng-if="!isUser" class="text-num" ng-bind="::order.price | number:6"></div>
 					<div class="text-muted">税率:{{::order.taxrate || 0}}%</div>
 				</td>
 				<td class="text-center">

+ 2 - 2
src/main/webapp/resources/tpl/index/make/outorder_detail.html

@@ -65,7 +65,7 @@
 		<div class="row row-sm item">
 			<div class="col-xs-3">
 				<span class="title">金额</span>
-				<div class="content" ng-bind="::order.total"></div>
+				<div ng-if="!isUser" class="content" ng-bind="::order.total"></div><div ng-if="isUser">-</div>
 			</div>
 			<div class="col-xs-9">
 				<span class="title">交货地址</span>
@@ -104,7 +104,7 @@
 							<div class="text-muted" ng-bind="::order.product.spec"></div>
 						</td>
 						<td class="text-center">
-							<div class="text-num" ng-bind="::order.price | number:6"></div>
+							<div ng-if="!isUser" class="text-num" ng-bind="::order.price | number:6"></div>
 							<div class="text-muted">税率:{{order.taxrate || 0}}%</div>
 						</td>
 						<td class="text-center">

+ 1 - 1
src/main/webapp/resources/tpl/index/make/returns.html

@@ -238,7 +238,7 @@
 					<div class="text-bold text-inverse" ng-if="item.order.factory">送货工厂:<span ng-bind="::item.order.factory"></span></div>
 				</td>
 				<td>
-					<div class="text-num" title="{{::item.order.price}}">
+					<div ng-if="!isUser" class="text-num" title="{{::item.order.price}}">
 						<span ng-bind="::currency(returns.currency)"></span><span
 							ng-bind="::item.order.price | number:6"></span>
 					</div>

+ 4 - 4
src/main/webapp/resources/tpl/index/purc/deputyOrder.html

@@ -196,7 +196,7 @@
         <div class="pub-com_head">
             <span>代采订单</span>
             <div class="p-right">
-            	<span style="color: #3a89d1">总金额: {{odersAmount| number}} </span><span></span>
+            	<span ng-if="!isUser" style="color: #3a89d1">总金额: {{odersAmount| number}} </span><span></span>
                 <a ui-sref="purc.newdeputy" type="button" title="新增代采订单"><img src="static/img/icon/add.png">新增</a>
                 <a ui-sref="purc.deputylog" type="button" title="错误日志"><i class="fa fa-file-text"></i> 错误日志</a>
             </div>
@@ -326,16 +326,16 @@
                             <div>录入日期:<span ng-bind="order.entrydate| date: 'yyyy-MM-dd'"></span></div>
                             <div>提交日期:<span ng-bind="order.date| date: 'yyyy-MM-dd'"></span></div>
                             <div>终端供应商:<span ng-bind="order.tervendor"></span></div>
-                            <div>订单金额:<span ng-bind="order.totalamount | number"></span></div>
+                            <div>订单金额:<span ng-if="!isUser" ng-bind="order.totalamount | number"></span><span ng-if="isUser">-</span></div>
                         </div>
                         <div class="col-md-3">
                             <div>订单编号:<a ng-bind="order.salecode" ui-sref="purc.deputydetail({id:order.id})"></a></div>
                             <div>最新付款日期:<span ng-bind="order.paydate| date: 'yyyy-MM-dd'"></span></div>
-                            <div>累计付款金额:<span ng-bind="order.totalamount | number"></span></div>
+                            <div>累计付款金额:<span ng-if="!isUser" ng-bind="order.totalamount | number"></span><span ng-if="isUser">-</span></div>
                         </div>
                         <div class="col-md-3">
                             <div>最新付款日期:<span ng-bind="order.deliverydate| date: 'yyyy-MM-dd'"></span></div>
-                            <div>累计付款金额:<span ng-bind="order.usdpayment | number"></span></div>
+                            <div>累计付款金额:<span ng-if="!isUser" ng-bind="order.usdpayment | number"></span><span ng-if="isUser">-</span></div>
                         </div>
                         <div class="col-md-2 text-center">
                             <span ng-if="order.print" class="label ng-scope operates-status" style="margin-right: 5px;background-color: #5D6C79">已打印</span>

+ 8 - 8
src/main/webapp/resources/tpl/index/purc/deputyOrder_detail.html

@@ -327,9 +327,9 @@
                             <span><input type="text" class="text-center" ng-model="item.prodspec" ng-required="true"></span>
                             <span><input type="text" class="text-center" ng-model="item.prodbrand" ng-required="true"></span>
                             <span><input type="text" class="text-center" ng-model="item.amount" ng-required="true"></span>
-                            <span><input type="text" class="text-center" ng-model="item.unitprice" ng-required="true"></span>
-                            <span><input type="text" class="text-center" ng-model="item.purcprice" ng-required="true"></span>
-                            <span>{{item.unitprice * item.amount | number}}</span>
+                            <span><input type="text" class="text-center" ng-model="isUser?'-':item.unitprice" ng-required="true"></span>
+                            <span><input type="text" class="text-center" ng-model="isUser?'-':item.purcprice" ng-required="true"></span>
+                            <span ng-if="!isUser">{{item.unitprice * item.amount | number}}</span><span ng-if="isUser">-</span>
                             <span><input type="text" class="text-center" ng-model="item.remark"></span>
                             <span><button ng-click="add($index)" style="color: #1f4fb2" ng-disabled="!deOrder.$editing">添加</button>
                             	  <button ng-click="del($index, item.id)" style="color: #d32526" ng-if="item.id != null" ng-disabled="!deOrder.$editing"> 删除</button>
@@ -352,11 +352,11 @@
                         <li>
                             <div class="fl">
                                 <em>总价款({{deOrder.currency}}):</em>
-                                <span >{{deOrder.totalamount| number}}</span>
+                                <span ng-if="!isUser">{{deOrder.totalamount| number}}</span><span ng-if="isUser">-</span>
                             </div>
                             <div class="fr">
                             	 <em>订单总价款({{deOrder.currency}}):</em>
-                                <span >{{deOrder.orderamount| number}}</span>
+                                <span ng-if="!isUser">{{deOrder.orderamount| number}}</span><span ng-if="isUser">-</span>
                             </div>
                         </li>
                         <li>
@@ -385,7 +385,7 @@
                         <li>
                             <div class="fl">
                                 <em>我方付款金额({{deOrder.currency}}):</em>
-                                <span >{{deOrder.totalpayament| number}}</span>
+                                <span ng-if="!isUser">{{deOrder.totalpayament| number}}</span><span ng-if="isUser">-</span>
                             </div>
                             <div class="fr">
                                 <em>我方付款日期:</em>
@@ -446,11 +446,11 @@
                         <li>
                             <div class="fl">
                                 <em>付款金额({{deOrder.currency}}):</em>
-                                <span>{{deOrder.usdpayment| number}}</span>
+                                <span ng-if="!isUser">{{deOrder.usdpayment| number}}</span><span ng-if="isUser">-</span>
                             </div>
                             <div class="fr">
                                 <em>实际付款金额({{deOrder.currency}}):</em>
-                                <span ng-bind="deOrder.actusdpayment | number"></span>
+                                <span ng-if="!isUser" ng-bind="deOrder.actusdpayment | number"></span><span ng-if="isUser">-</span>
                             </div>
                         </li>
                         <li>

+ 2 - 2
src/main/webapp/resources/tpl/index/purc/inquiry.html

@@ -565,8 +565,8 @@ margin-left: 55px;
 			<td class="text-center br-l">
 				<div>
 					<div ng-repeat="reply in inquiryItem.replies">
-						<span ng-bind="reply.price | number:6"></span> <span
-							ng-show="reply.price == null" class="text-muted">-</span>
+						<span ng-if="!isUser" ng-bind="reply.price | number:6"></span> <span
+							ng-show="reply.price == null || isUser" class="text-muted">-</span>
 					</div>
 					<!-- <div class="dropdown">
 						<a href="javascript:void(0);" class="dropdown-toggle text-default"

+ 12 - 4
src/main/webapp/resources/tpl/index/purc/inquiryInfo_detail.html

@@ -323,10 +323,18 @@
 }
 
 .tender-list02 .comment-oder-list dl dd span a {
+    margin-top: 15px;
 	margin-left: 15px;
 	font-size: 12px;
-}
+    width: 104px;
+    height: 25px;
+    line-height: 25px;
+    float: left;
 
+}
+.dropdown:hover>.dropdown-menu{
+    margin-top: 51px;
+}
 .tender-list02 .comment-oder-list dl dd:hover {
 	border-bottom: #ccc 1px dotted;
 	border-top: none;
@@ -517,7 +525,7 @@ i, em {
 																<div class="row row-sm"
 																	ng-repeat="reply in ::inquiryItem.replies">
 																	<div class="col-xs-5">≥{{reply.lapQty}}</div>
-																	<div class="col-xs-5">价格{{reply.price | number:6}}</div>
+																	<div class="col-xs-5">价格{{isUser?'-':(reply.price | number:6)}}</div>
 																</div>
 															</div>
 													</ul>
@@ -530,7 +538,7 @@ i, em {
 											<div class="row row-sm"
 												ng-repeat="reply in ::inquiryItem.replies">
 												<div class="col-xs-5">≥{{reply.lapQty}}</div>
-												<div class="col-xs-5">{{reply.price | number:6}}</div>
+												<div class="col-xs-5">{{isUser?'-':(reply.price | number:6)}}</div>
 											</div>
 										</div>
 										<div  ng-if="::inquiryItem.replies.length == 0">暂无报价信息</div>
@@ -543,7 +551,7 @@ i, em {
                                         <em>{{inquiryItem.vendToDate|date: 'yyyy-MM-dd'}}</em>
                                     </span>
                                     <span ng-if="inquiryItem.status == 200" class="text-trans info">暂未报价</span>
-                                    <span ng-if="inquiryItem.status == 201 && inquiryItem.agreed == null && inquiryItem.vendToDate > nowDate""><a ng-click="accept(inquiryItem.id)">采纳</a><a ng-click="refuse(inquiryItem.id)">拒绝</a></span>
+                                    <span ng-if="inquiryItem.status == 201 && inquiryItem.agreed == null && inquiryItem.vendToDate > nowDate"><a ng-click="accept(inquiryItem.id)">采纳</a><a ng-click="refuse(inquiryItem.id)">拒绝</a></span>
 									<span ng-if="inquiryItem.status == 201 && inquiryItem.agreed == 1" class="text-trans success">报价已采纳</span>
 									<span ng-if="inquiryItem.status == 201 && inquiryItem.agreed == 0" class="text-trans error">报价未采纳</span>
 									<span ng-if="inquiryItem.status == 201 && inquiryItem.agreed == null && inquiryItem.vendToDate < nowDate" class="text-trans text-light">已失效</span>

+ 3 - 2
src/main/webapp/resources/tpl/index/purc/order.html

@@ -342,10 +342,11 @@
 						ng-click="setOrdersRead(order.id)"></a></span>
 				</div>
 			</td>
-			<td class="order-sum">{{::order.currency}}: <span
+			<td ng-if="!isUser" class="order-sum">{{::order.currency}}: <span
 				ng-bind="getOrderTotal(order.orderItems) | number : 2"
 				class="text-num text-bold"></span>
 			</td>
+			<td ng-if="isUser" class="order-sum"></td>
 			<td class="text-center">
 				<span ng-if="order.custPrint" class="label ng-scope operates-status" style="margin-right: 5px;background-color: #5D6C79">已打印</span>
 				<span ng-if="!order.custPrint" class="label ng-scope operates-status" style="margin-right: 5px;background-color: #CA3955">未打印</span>
@@ -373,7 +374,7 @@
 				<div class="text-bold text-inverse" ng-if="item.remark">备注:<span ng-bind="::item.remark"></span></div>
 			</td>
 			<td class="text-center">
-				<div class="text-num" ng-bind="::item.price | number:6"></div>
+				<div ng-if="!isUser" class="text-num" ng-bind="::item.price | number:6"></div>
 			</td>
 			<td class="text-center"><div class="text-muted">{{::item.taxrate || 0}}</div></td>
 			<td class="text-center">

+ 2 - 2
src/main/webapp/resources/tpl/index/purc/order_detail.html

@@ -55,7 +55,7 @@
 			</div>
 			<div class="col-xs-3">
 				<span class="title">金额</span>
-				<div class="content" ng-bind="::order.total | number:2"></div>
+				<div ng-if="!isUser" class="content" ng-bind="::order.total | number:2"></div>
 			</div>
 			<div class="col-xs-6">
 				<span class="title">付款方式</span>
@@ -110,7 +110,7 @@
 							<div class="text-bold text-inverse" ng-if="item.remark">备注:<span ng-bind="::item.remark"></span></div>
 						</td>
 						<td class="text-center" width="110">
-							<div class="text-num" ng-bind="::item.price | number:6"></div>
+							<div ng-if="!isUser" class="text-num" ng-bind="::item.price | number:6"></div>
 							<div class="text-muted">税率:{{::item.taxrate || 0}}%</div>
 						</td>
 						<td class="text-center"  width="100">

+ 4 - 2
src/main/webapp/resources/tpl/index/purc/tender_evaluation.html

@@ -326,8 +326,10 @@
                                     </span>
                                     <!-- start过了投标截止日期,且审批状态不是已提交的 -->
                                     <span class="prod-number" ng-show="tender.overdue == 1" title="{{saleTenderItem.taxrate}}">{{saleTenderItem.saleTender.auditStatus != 0 ? saleTenderItem.taxrate || 0: 0}}</span>
-                                    <span class="prod-number" ng-show="tender.overdue == 1" title="{{saleTenderItem.price}}">{{saleTenderItem.saleTender.auditStatus != 0 ? (saleTenderItem.price || 0 | number: 6) : 0}}</span>
-                                    <span class="prod-number" ng-show="tender.overdue == 1" title="{{saleTenderItem.price * tenderProd.qty  || 0 | number: 2}}">{{saleTenderItem.saleTender.auditStatus != 0 ? (saleTenderItem.price * tenderProd.qty  || 0 | number: 2) : 0}}</span>
+                                    <span class="prod-number" ng-show="tender.overdue == 1 && !isUser" title="{{saleTenderItem.price}}">{{saleTenderItem.saleTender.auditStatus != 0 ? (saleTenderItem.price || 0 | number: 6) : 0}}</span>
+                                    <span class="prod-number" ng-show="isUser">-</span>
+                                    <span class="prod-number" ng-show="tender.overdue == 1 && !isUser" title="{{saleTenderItem.price * tenderProd.qty  || 0 | number: 2}}">{{saleTenderItem.saleTender.auditStatus != 0 ? (saleTenderItem.price * tenderProd.qty  || 0 | number: 2) : 0}}</span>
+                                    <span class="prod-number" ng-show="isUser">-</span>
                                     <span class="prod-number" ng-show="tender.overdue == 1">{{saleTenderItem.saleTender.auditStatus != 0 ? saleTenderItem.cycle || 0 : 0}}</span>
                                     <!-- end过了投标截止日期,且审批状态不是已提交的 -->
                                     <!-- start未过投标截止日期或者审批状态是已提交的 -->

+ 1 - 1
src/main/webapp/resources/tpl/index/qc/badIn.html

@@ -235,7 +235,7 @@
 					ng-bind="::item.orderItem.product.spec"></div>
 			</td>
 			<td>
-				<div class="text-num" title="{{item.orderPrice}}">
+				<div ng-if="!isUser" class="text-num" title="{{item.orderPrice}}">
 					<span ng-bind="::badIn.currency"></span>
 					<span ng-bind="::item.orderPrice"></span>
 				</div>

+ 3 - 2
src/main/webapp/resources/tpl/index/qc/badOut.html

@@ -236,8 +236,9 @@
 			</td>
 			<td>
 				<div class="text-num" title="{{::item.orderPrice}}">
-					<span ng-bind="::badOut.currency"></span>
-					<span ng-bind="::item.orderPrice"></span>
+					<span ng-if="!isUser" ng-bind="::badOut.currency"></span>
+					<span ng-if="!isUser" ng-bind="::item.orderPrice"></span>
+					<span ng-if="isUser">-</span>
 				</div>
 				<div class="text-muted"
 					title="{{item.orderItem.taxrate}}%">

+ 2 - 1
src/main/webapp/resources/tpl/index/sale/accept.html

@@ -249,10 +249,11 @@
 					</div>
 				</td>
 				<td>
-					<div class="text-num" title="{{item.orderPrice}}">
+					<div ng-if="!isUser" class="text-num" title="{{item.orderPrice}}">
 						<span ng-bind="::currency(accept.currency)"></span><span
 							ng-bind="item.orderPrice | number : 6"></span>
 					</div>
+					<div  ng-if="isUser" class="text-num"></div>
 					<div class="text-muted" title="{{item.orderItem.taxrate}}%">
 						<br> 税率:<span ng-bind="::item.orderItem.taxrate + '%'"
 							class="text-num" ng-if="item.orderItem.taxrate!=null"></span> <span

+ 3 - 3
src/main/webapp/resources/tpl/index/sale/accept_detail.html

@@ -65,7 +65,7 @@
 			</div>
 			<div class="col-xs-6">
 				<div class="title">金额:</div>
-				<div class="unchanged-info">{{totalPrice| number: 6}}</div>
+				<div ng-if="!isUser" class="unchanged-info">{{totalPrice| number: 6}}</div>
 			</div>
 		</div>
 		<div class="row row-sm item">
@@ -118,12 +118,12 @@
 							<div ng-bind="::acceptitem.orderItem.product.unit"></div>
 						</td>
 						<td class="text-center" width="60">
-							<div ng-bind="::acceptitem.orderPrice"></div>
+							<div ng-if="!isUser" ng-bind="::acceptitem.orderPrice"></div>
 						<td class="text-center" width="80">
 							<div ng-bind="::acceptitem.qty"></div>
 						</td>
 						<td class="text-center" width="80">
-							<div>{{acceptitem.qty * acceptitem.orderPrice | number: 6}}</div>
+							<div ng-if="!isUser">{{acceptitem.qty * acceptitem.orderPrice | number: 6}}</div>
 						</td>
 						<td class="text-center" width="120">
 							<div ng-bind="::acceptitem.batchCode"></div>

+ 4 - 2
src/main/webapp/resources/tpl/index/sale/change.html

@@ -341,11 +341,13 @@
 				<div><s class="text-muted" ng-show="item.oldProduct.spec != item.newProduct.spec" ng-bind="::item.oldProduct.spec"></s></div>
 			</td>
 			<td class="text-center">
-				<div class="text-num"
+				<div class="text-num" ng-if="!isUser"
 					ng-class="{'text-inverse': item.newPrice != item.oldPrice}"
 					title="{{item.newPrice}}" ng-bind="::item.newPrice | number:6"></div>
+				<div ng-if="isUser" ng-class="{'text-inverse': item.newPrice != item.oldPrice}">-</div>
 				<div ng-show="item.newPrice != item.oldPrice">
-					<s class="text-num text-muted" ng-bind="::item.oldPrice | number:6"></s>
+					<s ng-if="!isUser" class="text-num text-muted" ng-bind="::item.oldPrice | number:6"></s>
+					<s ng-if="isUser" class="text-num text-muted" >-</s>
 				</div>
 				<div class="text-muted">
 					税率 <span class="text-num" ng-class="{'text-inverse': item.newTaxrate != item.oldTaxrate}">

+ 4 - 2
src/main/webapp/resources/tpl/index/sale/change_detail.html

@@ -179,11 +179,13 @@
 							<div><s class="text-muted" ng-show="item.oldProduct.spec != item.newProduct.spec" ng-bind="::item.oldProduct.spec"></s></div>
 						</td>
 						<td class="text-center" width="100">
-							<div class="text-num"
+							<div class="text-num" ng-if="!isUser"
 								ng-class="{'text-inverse': item.newPrice != item.oldPrice}"
 								title="{{item.newPrice}}" ng-bind="::item.newPrice | number:6"></div>
+							<div ng-if="isUser" ng-class="{'text-inverse': item.newPrice != item.oldPrice}">-</div>
 							<div ng-show="item.newPrice != item.oldPrice">
-								<s class="text-num text-muted" ng-bind="::item.oldPrice | number:6"></s>
+								<s ng-if="!isUser" class="text-num text-muted" ng-bind="::item.oldPrice | number:6"></s>
+								<s ng-if="isUser" class="text-num text-muted" >-</s>
 							</div>
 							<div class="text-muted">
 								税率 <span class="text-num" ng-class="{'text-inverse': item.newTaxrate != item.oldTaxrate}">

+ 1 - 1
src/main/webapp/resources/tpl/index/sale/customer.html

@@ -100,7 +100,7 @@
 	<div class="pub-com_head">
 		<span>客户资料</span>
 		<div class="p-right">
-			<a href="vendor/customer/xls?keyword={{keywordXls}}" target="_self" class="text-simple bule"><i class="fa fa-file-excel-o fa-fw"></i>导出</a>
+			<a ng-click="exportXls()" target="_self" class="text-simple bule"><i class="fa fa-file-excel-o fa-fw"></i>导出</a>
 		</div>
 	</div>
 	<form class="form-horizontal">

+ 5 - 5
src/main/webapp/resources/tpl/index/sale/inquiry.html

@@ -143,7 +143,7 @@
 	<div class="pub-com_head">
 		<span>客户采购询价</span>
 		<div class="p-right">
-			<a href="sale/inquiry/xls?_state={{active}}&searchFilter={{searchFilterXls}}" target="_self" class="text-simple" title="导出Excel表格"><i class="fa fa-file-excel-o fa-fw"></i>导出</a>
+			<a ng-click="exportXls()" target="_self" class="text-simple" title="导出Excel表格"><i class="fa fa-file-excel-o fa-fw"></i>导出</a>
 		</div>
 	</div>
 	<div class="menu condition block">
@@ -319,7 +319,7 @@
 				</div>
 			</td>
 			<td>
-				币别:<span ng-bind="::inquiryItem.currency"></span>
+				币别:<span ng-bind="::(isUser?'-':inquiryItem.currency)"></span>
 			</td>
 			<td>
 				税率:<input  type="text" ng-pattern="/^\+?[1-9]\d*$/" ng-model="inquiryItem.taxrate" style="width: 25px" ng-readonly="!inquiryItem.$editing">%
@@ -415,8 +415,8 @@
 			<td class="text-center br-l">
 				<div ng-show="!inquiryItem.$editing">
 					<div ng-repeat="reply in inquiryItem.replies">
-						<span ng-bind="reply.price | number:6"></span> <span
-							ng-show="reply.price == null" class="text-muted">-</span>
+						<span ng-bind="isUser?'':(reply.price | number:6)"></span> <span
+							ng-show="reply.price == null || isUser" class="text-muted">-</span>
 					</div>
 					<div class="dropdown">
 						<a href="javascript:void(0);" class="dropdown-toggle text-default"
@@ -448,7 +448,7 @@
 					<div ng-repeat="reply in inquiryItem.replies">
 						<div class="form-group">
 							<input type="text" class="form-control input-xs " ng-class="{'input-error': !replyPrices[$index]}" ng-model="reply.price"
-								   ng-change="verify(reply.price,$index)" placeholder="单价(必填)"  />
+								   ng-change="verify(reply.price,$index)" placeholder="单价(必填)" ng-init="reply.price = isUser?'-':reply.price"/>
 							<div class="text-bold text-inverse" style="margin-bottom:-15px" ng-show="!replyPrices[$index]">请填数字!</div>
 						</div>
 					</div>

+ 3 - 3
src/main/webapp/resources/tpl/index/sale/inquiry_detail.html

@@ -188,8 +188,8 @@
 					<td class="text-center br-l">
 						<div ng-show="!inquiryItem.$editing">
 							<div ng-repeat="reply in inquiryItem.replies">
-								<span ng-bind="reply.price | number:6"></span> <span
-									ng-show="reply.price == null" class="text-muted">-</span>
+								<span ng-if="!isUser" ng-bind="reply.price | number:6"></span> <span
+									ng-show="reply.price == null || isUser" class="text-muted">-</span>
 							</div>
 							<div class="dropdown">
 								<a href="javascript:void(0);" class="dropdown-toggle text-default"
@@ -221,7 +221,7 @@
 							<div ng-repeat="reply in inquiryItem.replies">
 								<div class="form-group">
 									<input type="text" class="form-control input-xs " ng-class="{'input-error': !replyPrices[$index]}" ng-model="reply.price"
-										   ng-change="verify(reply.price,$index)" placeholder="单价(必填)"  />
+										   ng-change="verify(reply.price,$index)" placeholder="单价(必填)" ng-init="reply.price = isUser?'-':reply.price"  />
 									<div class="text-bold text-inverse" style="margin-bottom:-15px" ng-show="!replyPrices[$index]">请填数字!</div>
 								</div>
 							</div>

+ 2 - 2
src/main/webapp/resources/tpl/index/sale/inquiry_mould.html

@@ -471,11 +471,11 @@ tbody td div.text-mould {
 				<td class="text-center">
 					<div ng-repeat="items in inquiryMould.inquiryMouldItems">
 						<input type="text" class="text-right input-price input-xs" ng-model="items.price" placeholder="单价(请填数字)" ng-blur="blurPrice(items.price)"
-							ng-change="verifyItems(items.price,items.reply);notZero(inquiryMould)" ng-disabled="!inquiryMould.$editing"/>
+							ng-change="verifyItems(items.price,items.reply);notZero(inquiryMould)" ng-disabled="!inquiryMould.$editing" ng-init="items.price = isUser?'-':items.price"/>
 						<span ng-if="inquiryMould.$editing" class="text-inverse">*</span>
 						<div ng-repeat="prod in items.inquiryMouldDetails">
 							<input type="text" class="text-right input-price input-xs" ng-model="prod.price" placeholder="单价(请填数字)" ng-blur="blurPrice(prod.price)"
-								ng-change="verifyProds(prod.price,prod.reply);notZero(inquiryMould)" ng-disabled="!inquiryMould.$editing"/>
+								ng-change="verifyProds(prod.price,prod.reply);notZero(inquiryMould)" ng-disabled="!inquiryMould.$editing" ng-init="prod.price = isUser?'-':prod.price"/>
 							<span ng-if="inquiryMould.$editing" class="text-inverse">*</span>
 						</div>
 					</div>

+ 2 - 2
src/main/webapp/resources/tpl/index/sale/inquiry_mould_detail.html

@@ -150,11 +150,11 @@ a:hover{
 					<td class="text-center" width="300">
 						<div ng-repeat="items in inquiryMould.inquiryMouldItems">
 							<input type="text" class="text-right input-price input-xs" ng-model="items.price" placeholder="单价(请填数字)" ng-blur="blurPrice(items.price)"
-								   ng-change="verifyItems(items.price,$index);notZero(inquiryMould)" ng-disabled="!inquiryMould.$editing"/>
+								   ng-change="verifyItems(items.price,$index);notZero(inquiryMould)" ng-disabled="!inquiryMould.$editing" ng-init="items.price = isUser?'-':items.price"/>
 							<!-- <span ng-show="canSave">{{inquiryMould_copy.inquiryMouldItems[$index].price}}</span> -->
 							<div ng-repeat="prod in items.inquiryMouldDetails">
 								<input type="text" class="text-right input-price input-xs" ng-model="prod.price" placeholder="单价(请填数字)" ng-blur="blurPrice(prod.price)"
-									   ng-change="verifyProds(prod.price,$index,$parent.$index);notZero(inquiryMould)" ng-disabled="!inquiryMould.$editing"/>
+									   ng-change="verifyProds(prod.price,$index,$parent.$index);notZero(inquiryMould)" ng-disabled="!inquiryMould.$editing" ng-init="prod.price = isUser?'-':prod.price"/>
 								<!-- <span ng-show="canSave">{{inquiryMould_copy.inquiryMouldItems[$parent.$index].inquiryMouldDetails[$index].price}}</span> -->
 							</div>
 						</div>

+ 4 - 2
src/main/webapp/resources/tpl/index/sale/notice.html

@@ -412,7 +412,7 @@
                     <div class="dropdown-menu order-send arrow-border arrow-bottom-right" style="padding: 10px 15px">
                         <span ng-if="notice.endQty ==0" class="text-muted">还未发货</span>
                         <span ng-show="notice.getSendsing" class="text-muted">加载中...</span>
-                        <span ng-show="notice.getSendsError" class="text-muted">加载失败</span>
+                        <span ng-show="notice.getSendsError" class="text-muted">{{notice.getErrorMessage}}</span>
                         <ul class="list-unstyled list-menu" ng-if="notice.sends">
                             <li ng-repeat="send in notice.sends">
                                 <div ng-class="{'text-inverse': $index==0}">
@@ -475,9 +475,11 @@
                     </div>
                 </div>
             </td>
-            <td class="text-center br-l text-num">
+            <td class="text-center br-l text-num" ng-if="!isUser">
                 {{::currency(notice.orderItem.order.currency)}}{{::notice.orderItem.price | number:6}}
             </td>
+            <td class="text-center br-l text-num" ng-if="isUser">
+            </td>
             <td class="text-center br-l">
                 <div><span ng-bind="::notice.delivery | date : 'yyyy-MM-dd'"></span></div>
                 <div style="margin-top: 10px;" ng-if="notice.waiting" class="text-inverse">

+ 3 - 2
src/main/webapp/resources/tpl/index/sale/order.html

@@ -405,10 +405,11 @@
 					<span>订单号:<a class="text-num order-detail" ng-bind="::order.code" ui-sref="sale.order_detail({id:order.id})" target="_self" title="查看详情" ng-click="setOrdersRead(order.id)"></a></span>
 				</div>
 			</td>
-			<td colspan="1" class="order-sum">{{::order.currency}}: <span
+			<td ng-if="!isUser" colspan="1" class="order-sum">{{::order.currency}}: <span
 				ng-bind="getOrderTotal(order.orderItems) | number : 2"
 				class="text-num text-bold"></span>
 			</td>
+			<td ng-if="isUser" colspan="1" class="order-sum"></td>
 			<td colspan="1" class="text-center">
 				<span ng-if="order.print" class="label ng-scope operates-status" style="margin-right: 5px;background-color: #5D6C79">已打印</span>
 				<span ng-if="!order.print" class="label ng-scope operates-status" style="margin-right: 5px;background-color: #CA3955">未打印</span>
@@ -437,7 +438,7 @@
 				<div class="text-bold text-inverse" ng-if="item.remark">备注:<span ng-bind="::item.remark"></span></div>
 			</td>
 			<td class="text-center">
-				<div class="text-num" ng-bind="::item.price | number:6"></div>
+				<div ng-if="!isUser" class="text-num" ng-bind="::item.price | number:6"></div>
 				<div class="text-muted">税率:{{::item.taxrate || 0}}%</div>
 			</td>
 			<td class="text-center">

+ 3 - 3
src/main/webapp/resources/tpl/index/sale/order_detail.html

@@ -61,7 +61,7 @@
 		<div class="row row-sm item">
 			<div class="col-xs-3">
 				<span class="title">币别:</span>
-				<div class="content" ng-bind="::order.currency"></div>
+				<div ng-if="!isUser" class="content" ng-bind="::order.currency"></div>
 			</div>
 			<!--<div class="col-xs-3">
 				<span class="title">汇率:</span>
@@ -69,7 +69,7 @@
 			</div>-->
 			<div class="col-xs-3">
 				<span class="title">金额:</span>
-				<div class="content" ng-bind="::order.total | number:2"></div>
+				<div ng-if="!isUser" class="content" ng-bind="::order.total | number:2"></div>
 			</div>
 			<div class="col-xs-6">
 				<span class="title">付款方式:</span>
@@ -120,7 +120,7 @@
 							<div class="text-bold text-inverse" ng-if="item.remark">备注:<span ng-bind="::item.remark"></span></div>
 						</td>
 						<td class="text-center" width="80">
-							<div class="text-num" ng-bind="::item.price | number:6"></div>
+							<div ng-if="!isUser" class="text-num" ng-bind="::item.price | number:6"></div>
 						</td>
 						<td class="text-center" width="80">
 							<div class="text-muted">{{::item.taxrate || 0}}%</div>

+ 4 - 3
src/main/webapp/resources/tpl/index/sale/quotation_list.html

@@ -170,9 +170,10 @@
 					<span>流水号:<a class="text-num order-detail" ng-bind="::quotationItem.code" ui-sref="sale.quotation.item({id:quotationItem.id})" title="查看详情" target="_self"></a></span>
 				</div>
 			</td>
-			<td>
+			<td ng-if="!isUser">
 				币别:<span ng-bind="::quotationItem.currency"></span>
 			</td>
+			<td ng-if="isUser"></td>
 			<td>
 				税率:<span ng-bind="::quotationItem.taxrate || 0"></span>%
 			</td>
@@ -214,8 +215,8 @@
 				<div ng-show="!quotationItem.$editing">
 					<div ng-repeat="price in quotationItem.quotationItems">
 						<div ng-repeat="pricedetail in price.prices">
-							<span ng-bind="pricedetail.price | number:6"></span> <span
-								ng-show="pricedetail.price == null" class="text-muted">-</span>
+							<span ng-if="!isUser" ng-bind="pricedetail.price | number:6"></span> <span
+								ng-show="pricedetail.price == null || isUser" class="text-muted">-</span>
 						</div>
 					</div>
 					<div class="dropdown">

+ 1 - 1
src/main/webapp/resources/tpl/index/sale/quotation_new.html

@@ -302,7 +302,7 @@
 			</div>
 			<label for="price{{$index + 1}}" class="num-ctrl col-sm-1 control-label" style="text-align: right;">单价</label>
 			<div class="col-sm-2">
-				<input ng-model="price.price" type="text" class="form-control" id="price{{$index + 1}}" placeholder="单价"
+				<input ng-model="isUser?'-':price.price" type="text" class="form-control" id="price{{$index + 1}}" placeholder="单价"
 					   ng-pattern="/^[1-9]\d*\.{0,1}\d*|0\.\d*[1-9]\d*$/" ng-readonly="!item.$editing" ng-required="true"
 					   ng-disabled="isDisabled()">
 				<span class="text-inverse text-bold">* </span>

+ 3 - 3
src/main/webapp/resources/tpl/index/sale/return_detail.html

@@ -65,7 +65,7 @@
             </div>
             <div class="col-xs-6">
                 <div class="title">金额:</div>
-                <div class="unchanged-info" ng-bind="::totalPrice| number: 6"></div>
+                <div ng-if="!isUser" class="unchanged-info" ng-bind="::totalPrice| number: 6"></div>
             </div>
         </div>
         <div class="row row-sm item">
@@ -107,9 +107,9 @@
                     <td width="180" class="text-center"><span ng-bind="::returnitem.product.title"></span></td>
                     <td width="100" class="text-center"><span ng-bind="::returnitem.product.brand"></span></td>
                     <td width="50" class="text-center"><span ng-bind="::returnitem.product.unit"></span></td>
-                    <td width="60" class="text-center"><span ng-bind="::returnitem.orderPrice"></span></td>
+                    <td width="60" class="text-center"><span ng-if="!isUser" ng-bind="::returnitem.orderPrice"></span></td>
                     <td width="80" class="text-center"><span ng-bind="::returnitem.qty"></span></td>
-                    <td width="80" class="text-center">{{returnitem.qty * returnitem.orderPrice| number: 6}}</td>
+                    <td width="80" class="text-center"><span ng-if="!isUser" ng-bind="::returnitem.qty * returnitem.orderPrice| number: 6"></span></td>
                     <td width="120" class="text-center"><span ng-bind="::returnitem.batchCode"></span></td>
                 </tr>
                 </tbody>

+ 1 - 1
src/main/webapp/resources/tpl/index/sale/returns.html

@@ -242,7 +242,7 @@
 					</div>
 				</td>
 				<td>
-					<div class="text-num" title="{{::item.orderPrice}}">
+					<div ng-if="!isUser" class="text-num" title="{{::item.orderPrice}}">
 						<span ng-bind="::currency(returns.currency)"></span><span
 							ng-bind="::item.orderPrice | number:6"></span>
 					</div>

+ 3 - 3
src/main/webapp/resources/tpl/index/sale/sample.html

@@ -278,7 +278,7 @@
 				</div>
 			</td>
 			<td class="text-center">
-				<div ng-show="sample.proofing.isCharge == '是'">
+				<div ng-show="sample.proofing.isCharge == '是' && !isUser">
 					总额:<span class="text-num" ng-bind="sample.amount | currency: currency(sample.currency)" style="font-weight: bold;"></span>RMB
 				</div>
 			</td>
@@ -322,7 +322,7 @@
 				<div ng-show="sample.proofing.isCharge != '是'">否</div>
 			</td>
 			<td class="text-center">
-				<div ng-show="sample.proofing.isCharge == '是'" class="text-num">
+				<div ng-show="sample.proofing.isCharge == '是' && !isUser" class="text-num">
 					<span ng-bind="sample.currency"></span>
 					<span ng-bind="::sample.price | number:6"></span>
 				</div>
@@ -353,7 +353,7 @@
 									<div>
 										送样数量:<span class="text-num text-inverse" ng-bind="send.sendQty"></span>
 									</div>
-									<div ng-if="send.puprice">
+									<div ng-if="send.puprice && !isUser">
 										采购单价:<span class="text-num text-inverse" ng-bind="send.puprice | number:6"></span>
 									</div>
 									<div class="row row-sm">

+ 3 - 2
src/main/webapp/resources/tpl/index/sale/sample_detail.html

@@ -54,7 +54,7 @@
 				<span class="title" ng-hide="sample.proofing.isCharge != '是'">单价</span>
 				<span class="title" ng-show="sample.proofing.isCharge != '是'">是否收费</span>
 				<div ng-show="sample.proofing.isCharge != '是'">否</div>
-				<div ng-show="sample.proofing.isCharge == '是'" class="text-num">
+				<div ng-show="sample.proofing.isCharge == '是' && !isUser" class="text-num">
 					<span ng-bind="sample.currency"></span> <span
 						ng-bind="sample.price | number:6"></span>
 				</div>
@@ -131,7 +131,7 @@
 						<td class="text-center">
 							<span class="text-num">{{send.date | date: 'yyyy-MM-dd HH:mm'}}</span>
 						</td>
-						<td class="text-center">
+						<td class="text-center" ng-if="!isUser">
 							<div>
 								<span class="text-num">{{send.puprice}}</span>
 							</div>
@@ -139,6 +139,7 @@
 								<span class="text-num">{{send.currency}}</span>
 							</div>
 						</td>
+						<td class="text-center" ng-if="isUser" ></td>
 						<td class="text-center">
 							<span class="text-num">{{send.sendQty}}</span>
 						</td>

+ 2 - 2
src/main/webapp/resources/tpl/index/sale/send_detail.html

@@ -88,7 +88,7 @@
 		<div class="row row-sm item">
 			<div class="col-xs-3">
 				<span class="title">金额</span>
-				<div class="content" ng-bind="::order.total | number:6"></div>
+				<div ng-if="!isUser" class="content" ng-bind="::order.total | number:6"></div>
 			</div>
 			<div class="col-xs-9">
 				<span class="title">交货地址</span>
@@ -134,7 +134,7 @@
 							<div class="text-bold text-inverse" ng-if="item.orderItem.factory">送货工厂:<span ng-bind="::item.orderItem.factory"></span></div>
 						</td>
 						<td class="text-center" width="80">
-							<div class="text-num f14" ng-bind="::item.orderItem.price | number:6"></div>
+							<div ng-if="!isUser" class="text-num f14" ng-bind="::item.orderItem.price | number:6"></div>
 							<div class="text-muted">税率:{{::item.orderItem.taxrate || 0}}%</div>
 						</td>
 						<td class="text-center"  width="140">

+ 3 - 3
src/main/webapp/resources/tpl/index/sale/tender.html

@@ -402,7 +402,7 @@
                                                  ng-blur="validateProds(saleTender);" placeholder="请输入税率"/></span>
                                     <span><input type="text" class="editAble" ng-model="item.price" ng-pattern="/^(0|[0-9][0-9]{0,9})(\.[0-9]{1,6})?$/"
                                                  ng-change="validateProds(saleTender);" ng-blur="validateProds(saleTender);validateThis(item.price, 'price')"
-                                                 ng-focus="validateProds(saleTender);" placeholder="请输入单价"/></span>
+                                                 ng-focus="validateProds(saleTender);" placeholder="请输入单价" ng-init="item.price = isUser?'-':item.price"/></span>
                                     <span ng-bind="item.price * item.tenderProd.qty || '' | number:2"></span>
                                 </dd>
                             </dl>
@@ -431,8 +431,8 @@
                                     <span class="result" ng-bind="item.tenderProd.qty"></span>
                                     <span class="result" ng-bind="item.cycle"></span>
                                     <span class="result" ng-bind="item.taxrate"></span>
-                                    <span class="result" ng-bind="item.price"></span>
-                                    <span class="result" ng-bind="item.price * item.tenderProd.qty || '' | number:2"></span>
+                                    <span class="result" ng-bind="isUser?'-':item.price"></span>
+                                    <span class="result" ng-bind="isUser?'-':(item.price * item.tenderProd.qty || '' | number:2)"></span>
                                     <span class="result" ng-bind="tender.auditStatus != 0 ? (item.applyStatus == 1 ? '中标' : '未中标') : '未中标';"></span>
                                     <span class="result" ng-bind="tender.auditStatus != 0 ? item.description: '';"></span>
                                 </dd>

部分文件因文件數量過多而無法顯示