|
|
@@ -1,28 +1,9 @@
|
|
|
package com.uas.platform.b2b.erp.controller;
|
|
|
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Objects;
|
|
|
-
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.transaction.annotation.Transactional;
|
|
|
-import org.springframework.ui.ModelMap;
|
|
|
-import org.springframework.web.bind.annotation.RequestBody;
|
|
|
-import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
-import org.springframework.web.bind.annotation.RequestMethod;
|
|
|
-import org.springframework.web.bind.annotation.ResponseBody;
|
|
|
-import org.springframework.web.bind.annotation.RestController;
|
|
|
-
|
|
|
import com.alibaba.dubbo.common.utils.CollectionUtils;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.uas.platform.b2b.erp.service.TenderService;
|
|
|
-import com.uas.platform.b2b.model.Attach;
|
|
|
-import com.uas.platform.b2b.model.EnterpriseBaseInfo;
|
|
|
-import com.uas.platform.b2b.model.FileUpload;
|
|
|
-import com.uas.platform.b2b.model.PurchaseTender;
|
|
|
-import com.uas.platform.b2b.model.SaleTenderErp;
|
|
|
-import com.uas.platform.b2b.model.SaleTenderItem;
|
|
|
-import com.uas.platform.b2b.model.SearchFilter;
|
|
|
+import com.uas.platform.b2b.model.*;
|
|
|
import com.uas.platform.b2b.search.SearchService;
|
|
|
import com.uas.platform.b2b.service.AttachService;
|
|
|
import com.uas.platform.b2b.service.UserService;
|
|
|
@@ -35,6 +16,15 @@ import com.uas.search.b2b.model.MultiValue;
|
|
|
import com.uas.search.b2b.model.SPage;
|
|
|
import com.uas.search.b2b.model.Sort;
|
|
|
import com.uas.search.b2b.util.SearchConstants;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
+import org.springframework.ui.ModelMap;
|
|
|
+import org.springframework.web.bind.annotation.*;
|
|
|
+
|
|
|
+import java.io.UnsupportedEncodingException;
|
|
|
+import java.net.URLDecoder;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
|
|
|
/**
|
|
|
* Created by dongbw
|
|
|
@@ -64,12 +54,14 @@ public class TenderController {
|
|
|
@RequestMapping(value = "/publish", method = RequestMethod.POST)
|
|
|
@ResponseBody
|
|
|
@Transactional
|
|
|
- public ModelMap publishTender(String tender, String vendorUUs) {
|
|
|
+ public ModelMap publishTender(String tender, String vendorUUs) throws UnsupportedEncodingException {
|
|
|
+ tender = URLDecoder.decode(tender, "UTF-8");
|
|
|
PurchaseTender purchaseTender = FlexJsonUtils.fromJson(tender, PurchaseTender.class);
|
|
|
if (purchaseTender.getIfOpen() == Constant.YES) {
|
|
|
return tenderService.publishOpen(purchaseTender);
|
|
|
} else {
|
|
|
if (null != vendorUUs) {
|
|
|
+ vendorUUs = URLDecoder.decode(vendorUUs, "UTF-8");
|
|
|
vendorUUs = "[".concat(vendorUUs);
|
|
|
vendorUUs = vendorUUs.concat("]");
|
|
|
List<Long> vendUUs = FlexJsonUtils.fromJsonArray(vendorUUs, Long.class);
|
|
|
@@ -90,14 +82,16 @@ public class TenderController {
|
|
|
@RequestMapping(value = "/save", method = RequestMethod.POST)
|
|
|
@ResponseBody
|
|
|
@Transactional
|
|
|
- public ModelMap saveTender(String tender, String vendorUUs) {
|
|
|
+ public ModelMap saveTender(String tender, String vendorUUs) throws UnsupportedEncodingException {
|
|
|
+ tender = URLDecoder.decode(tender, "UTF-8");
|
|
|
PurchaseTender purchaseTender = FlexJsonUtils.fromJson(tender, PurchaseTender.class);
|
|
|
if (purchaseTender.getIfOpen() == Constant.YES) {
|
|
|
return tenderService.saveOpen(purchaseTender);
|
|
|
} else {
|
|
|
if (null != vendorUUs) {
|
|
|
- vendorUUs = "[".concat(vendorUUs);
|
|
|
- vendorUUs = vendorUUs.concat("]");
|
|
|
+ vendorUUs = URLDecoder.decode(vendorUUs, "UTF-8");
|
|
|
+// vendorUUs = "[".concat(vendorUUs);
|
|
|
+// vendorUUs = vendorUUs.concat("]");
|
|
|
List<Long> vendUUs = FlexJsonUtils.fromJsonArray(vendorUUs, Long.class);
|
|
|
return tenderService.save(purchaseTender, vendUUs);
|
|
|
}
|
|
|
@@ -115,20 +109,42 @@ public class TenderController {
|
|
|
*/
|
|
|
@RequestMapping(value = "/reply", method = RequestMethod.POST)
|
|
|
@ResponseBody
|
|
|
- public ModelMap replyTender(String tenderItems, String enBaseInfo, String attaches) {
|
|
|
- tenderItems = "[".concat(tenderItems);
|
|
|
- tenderItems = tenderItems.concat("]");
|
|
|
- List<SaleTenderItem> saleTenderItems = FlexJsonUtils.fromJsonArray(tenderItems, SaleTenderItem.class);
|
|
|
- EnterpriseBaseInfo vendor = FlexJsonUtils.fromJson(enBaseInfo, EnterpriseBaseInfo.class);
|
|
|
- List<Attach> saleTenderAttaches = new ArrayList<>();
|
|
|
- if (attaches != null && !Objects.equals(attaches, "")) {
|
|
|
- attaches = "[".concat(attaches);
|
|
|
- attaches = attaches.concat("]");
|
|
|
- saleTenderAttaches = FlexJsonUtils.fromJsonArray(attaches, Attach.class);
|
|
|
+ public ModelMap replyTender(String tenderItems, String enBaseInfo, String attaches, String saleTenderId) throws UnsupportedEncodingException {
|
|
|
+ EnterpriseBaseInfo vendor = new EnterpriseBaseInfo();
|
|
|
+ List<SaleTenderItem> saleTenderItems = new ArrayList<>();
|
|
|
+ if (null != tenderItems && !"".equals(tenderItems)) {
|
|
|
+ tenderItems = URLDecoder.decode(tenderItems, "UTF-8");
|
|
|
+ tenderItems = "[".concat(tenderItems);
|
|
|
+ tenderItems = tenderItems.concat("]");
|
|
|
+ saleTenderItems = FlexJsonUtils.fromJsonArray(tenderItems, SaleTenderItem.class);
|
|
|
+ }
|
|
|
+ if (null != enBaseInfo && !"".equals(enBaseInfo)) {
|
|
|
+ enBaseInfo = URLDecoder.decode(enBaseInfo, "UTF-8");
|
|
|
+ vendor = FlexJsonUtils.fromJson(enBaseInfo, EnterpriseBaseInfo.class);
|
|
|
+ }
|
|
|
+ if (null != attaches && !"".equals(attaches)) {
|
|
|
+ attaches = URLDecoder.decode(attaches, "UTF-8");
|
|
|
+ List<Attach> saleTenderAttaches = FlexJsonUtils.fromJsonArray(attaches, Attach.class);
|
|
|
+ return tenderService.reply(saleTenderItems, vendor, saleTenderAttaches, Long.valueOf(saleTenderId));
|
|
|
}
|
|
|
- return tenderService.reply(saleTenderItems, vendor, saleTenderAttaches);
|
|
|
+ return tenderService.reply(saleTenderItems, vendor, Long.valueOf(saleTenderId));
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 获取平台供应商
|
|
|
+ * @param params
|
|
|
+ * @param keyword
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "/vendors", method = RequestMethod.GET)
|
|
|
+ public SPage<Enterprise> getVendors(PageParams params, String keyword) {
|
|
|
+ com.uas.search.b2b.model.PageParams pageParams = searchService.convertPageParams(params, null);
|
|
|
+ pageParams.getFilters().put("ve_myenuu", SystemSession.getUser().getEnterprise().getUu());
|
|
|
+ List<Sort> sortList = new ArrayList<>();
|
|
|
+ sortList.add(new Sort("ve_id", false, Sort.Type.LONG, 1L));
|
|
|
+ pageParams.getFilters().put(SearchConstants.SORT_KEY, sortList);
|
|
|
+ return searchService.searchVendorIds(keyword, pageParams);
|
|
|
+ }
|
|
|
|
|
|
/**
|
|
|
* 查看招标单详情
|
|
|
@@ -159,13 +175,14 @@ public class TenderController {
|
|
|
/**
|
|
|
* 招标方定标
|
|
|
*
|
|
|
- * @param tender 招标单json
|
|
|
+ * @param saleTenderItems 投标明细
|
|
|
*/
|
|
|
@RequestMapping(value = "/decide", method = RequestMethod.POST)
|
|
|
@ResponseBody
|
|
|
- public ModelMap decideTender(@RequestBody String tender) {
|
|
|
- PurchaseTender purchaseTender = FlexJsonUtils.fromJson(tender, PurchaseTender.class);
|
|
|
- return tenderService.decide(purchaseTender);
|
|
|
+ public ModelMap decideTender(String saleTenderItems) throws UnsupportedEncodingException {
|
|
|
+ saleTenderItems = URLDecoder.decode(saleTenderItems, "UTF-8");
|
|
|
+ List<SaleTenderItem> tenderItems = FlexJsonUtils.fromJsonArray(saleTenderItems, SaleTenderItem.class);
|
|
|
+ return tenderService.decide(tenderItems);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -330,7 +347,7 @@ public class TenderController {
|
|
|
|
|
|
|
|
|
/**
|
|
|
- * 作为采购方,查看发出的招标单
|
|
|
+ * 作为采购方,查看发出的招标单(全部)
|
|
|
*
|
|
|
* @param params
|
|
|
* @return
|
|
|
@@ -507,12 +524,14 @@ public class TenderController {
|
|
|
@RequestMapping(value = "/publishSaved", method = RequestMethod.POST)
|
|
|
@ResponseBody
|
|
|
@Transactional
|
|
|
- public ModelMap publishSavedTender(String tender, String vendorUUs) {
|
|
|
+ public ModelMap publishSavedTender(String tender, String vendorUUs) throws UnsupportedEncodingException {
|
|
|
+ tender = URLDecoder.decode(tender, "UTF-8");
|
|
|
PurchaseTender purchaseTender = FlexJsonUtils.fromJson(tender, PurchaseTender.class);
|
|
|
if (purchaseTender.getIfOpen() == Constant.YES) {
|
|
|
return tenderService.publishSavedOpen(purchaseTender);
|
|
|
} else {
|
|
|
if (null != vendorUUs) {
|
|
|
+ vendorUUs = URLDecoder.decode(vendorUUs, "UTF-8");
|
|
|
vendorUUs = "[".concat(vendorUUs);
|
|
|
vendorUUs = vendorUUs.concat("]");
|
|
|
List<Long> vendUUs = FlexJsonUtils.fromJsonArray(vendorUUs, Long.class);
|
|
|
@@ -533,12 +552,14 @@ public class TenderController {
|
|
|
@RequestMapping(value = "/updateSaved", method = RequestMethod.POST)
|
|
|
@ResponseBody
|
|
|
@Transactional
|
|
|
- public ModelMap updateSavedTender(String tender, String vendorUUs) {
|
|
|
+ public ModelMap updateSavedTender(String tender, String vendorUUs) throws UnsupportedEncodingException {
|
|
|
+ tender = URLDecoder.decode(tender, "UTF-8");
|
|
|
PurchaseTender purchaseTender = FlexJsonUtils.fromJson(tender, PurchaseTender.class);
|
|
|
if (purchaseTender.getIfOpen() == Constant.YES) { // 开放时进另外的方法
|
|
|
return tenderService.updateSavedOpen(purchaseTender);
|
|
|
} else {
|
|
|
if (null != vendorUUs) {
|
|
|
+ vendorUUs = URLDecoder.decode(vendorUUs, "UTF-8");
|
|
|
vendorUUs = "[".concat(vendorUUs);
|
|
|
vendorUUs = vendorUUs.concat("]");
|
|
|
List<Long> vendUUs = FlexJsonUtils.fromJsonArray(vendorUUs, Long.class);
|