|
|
@@ -1,6 +1,7 @@
|
|
|
package com.uas.platform.b2b.controller;
|
|
|
|
|
|
import java.io.UnsupportedEncodingException;
|
|
|
+import java.net.URLDecoder;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
@@ -8,9 +9,7 @@ import java.util.Map;
|
|
|
import java.util.Set;
|
|
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.http.HttpHeaders;
|
|
|
import org.springframework.http.HttpStatus;
|
|
|
-import org.springframework.http.ResponseEntity;
|
|
|
import org.springframework.stereotype.Controller;
|
|
|
import org.springframework.ui.ModelMap;
|
|
|
import org.springframework.util.CollectionUtils;
|
|
|
@@ -24,9 +23,7 @@ import org.springframework.web.bind.annotation.ResponseBody;
|
|
|
import org.springframework.web.bind.annotation.ResponseStatus;
|
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
-import com.uas.platform.b2b.model.Attach;
|
|
|
import com.uas.platform.b2b.model.Enterprise;
|
|
|
-import com.uas.platform.b2b.model.FileUpload;
|
|
|
import com.uas.platform.b2b.model.QueriableMember;
|
|
|
import com.uas.platform.b2b.model.QueriableUser;
|
|
|
import com.uas.platform.b2b.model.User;
|
|
|
@@ -34,6 +31,7 @@ import com.uas.platform.b2b.service.AttachService;
|
|
|
import com.uas.platform.b2b.service.EnterpriseService;
|
|
|
import com.uas.platform.b2b.service.MonthProdioService;
|
|
|
import com.uas.platform.b2b.service.UserService;
|
|
|
+import com.uas.platform.core.util.StringUtil;
|
|
|
import com.uas.platform.core.util.serializer.FlexJsonUtils;
|
|
|
|
|
|
/**
|
|
|
@@ -70,7 +68,8 @@ public class PublicQueryController {
|
|
|
@RequestMapping(value = "/members", method = RequestMethod.GET)
|
|
|
@ResponseBody
|
|
|
@ResponseStatus(value = HttpStatus.OK)
|
|
|
- public ModelMap queryEnterprise(String name, String shortName, Long uu) throws UnsupportedEncodingException {
|
|
|
+ public ModelMap queryEnterprise(String name, String shortName, Long uu)
|
|
|
+ throws UnsupportedEncodingException {
|
|
|
ModelMap returnMap = new ModelMap();
|
|
|
if (!StringUtils.isEmpty(name)) {
|
|
|
List<Enterprise> enterprises = enterpriseService.findByName(name);
|
|
|
@@ -78,9 +77,11 @@ public class PublicQueryController {
|
|
|
returnMap.put("name", QueriableMember.getMembers(enterprises));
|
|
|
}
|
|
|
if (!StringUtils.isEmpty(shortName)) {
|
|
|
- Set<Enterprise> enterprises = enterpriseService.findByShortName(shortName);
|
|
|
+ Set<Enterprise> enterprises = enterpriseService
|
|
|
+ .findByShortName(shortName);
|
|
|
if (!CollectionUtils.isEmpty(enterprises))
|
|
|
- returnMap.put("shortName", QueriableMember.getMembers(enterprises));
|
|
|
+ returnMap.put("shortName",
|
|
|
+ QueriableMember.getMembers(enterprises));
|
|
|
}
|
|
|
if (uu != null) {
|
|
|
Enterprise enterprise = enterpriseService.findById(uu);
|
|
|
@@ -91,16 +92,19 @@ public class PublicQueryController {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 按企业名称企业UU号,全名匹配
|
|
|
+ * 按企业名称查企业UU号,全名匹配
|
|
|
*
|
|
|
* @return
|
|
|
* @throws UnsupportedEncodingException
|
|
|
*/
|
|
|
@RequestMapping(value = "/batch/members", method = RequestMethod.GET)
|
|
|
@ResponseBody
|
|
|
- public Map<String, Object> queryEnterprises(@RequestParam("data") String data) throws UnsupportedEncodingException {
|
|
|
+ public Map<String, Object> queryEnterprises(
|
|
|
+ @RequestParam("data") String data)
|
|
|
+ throws UnsupportedEncodingException {
|
|
|
if (!StringUtils.isEmpty(data)) {
|
|
|
List<String> accounts = null;
|
|
|
+ // data = URLDecoder.decode(data, "UTF-8");
|
|
|
// 多个
|
|
|
if (data.startsWith("[")) {
|
|
|
accounts = FlexJsonUtils.fromJsonArray(data, String.class);
|
|
|
@@ -109,7 +113,6 @@ public class PublicQueryController {
|
|
|
accounts.add(FlexJsonUtils.fromJson(data, String.class));
|
|
|
}
|
|
|
List<Object[]> backInfo = enterpriseService.findByEnNames(accounts);
|
|
|
- System.out.println(FlexJsonUtils.toJson(backInfo));
|
|
|
Map<String, Object> infos = new HashMap<String, Object>();
|
|
|
for (Object[] objs : backInfo) {
|
|
|
infos.put(objs[1].toString(), objs[0]);
|
|
|
@@ -142,13 +145,74 @@ public class PublicQueryController {
|
|
|
@RequestMapping(value = "/members/{enUU}/users/{userUU}", method = RequestMethod.GET)
|
|
|
@ResponseBody
|
|
|
@ResponseStatus(value = HttpStatus.OK)
|
|
|
- public QueriableUser getUser(@PathVariable("enUU") Long enUU, @PathVariable("userUU") Long userUU) {
|
|
|
+ public QueriableUser getUser(@PathVariable("enUU") Long enUU,
|
|
|
+ @PathVariable("userUU") Long userUU) {
|
|
|
User user = userService.findUserByEnUUAndUserUU(enUU, userUU);
|
|
|
if (user != null)
|
|
|
return new QueriableUser(user);
|
|
|
return null;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 按企业UU、个人UU去匹配查找用户密码,是否与ERP中设置的密码一致
|
|
|
+ *
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "/members/UserEnterprise", method = RequestMethod.GET)
|
|
|
+ @ResponseBody
|
|
|
+ @ResponseStatus(value = HttpStatus.OK)
|
|
|
+ public Map<String, Object> getUserEnterprise(String enName,
|
|
|
+ String enBusinesscode, String emMobile, String emPassword)
|
|
|
+ throws UnsupportedEncodingException {
|
|
|
+ // ModelMap returnMap = new ModelMap();
|
|
|
+ Map<String, Object> infos = new HashMap<String, Object>();
|
|
|
+ boolean ok = false;
|
|
|
+ String error = null;
|
|
|
+ // 首先查找营业执照号与企业名称是否存在
|
|
|
+ if (!StringUtils.isEmpty(enName)
|
|
|
+ && !StringUtils.isEmpty(enBusinesscode)) {
|
|
|
+ List<Enterprise> enterprises = enterpriseService.findByName(enName);
|
|
|
+ if (!CollectionUtils.isEmpty(enterprises)) {
|
|
|
+ for (Enterprise os : enterprises) {
|
|
|
+ if (os.getEnBussinessCode().equals(enBusinesscode)) {
|
|
|
+ List<User> users = userService.findUsersByEnUU(os
|
|
|
+ .getUu());
|
|
|
+ for (User user : users) {
|
|
|
+ if (user.getUserTel().equals(emMobile)) {
|
|
|
+ ok = true;
|
|
|
+ infos.put("enuu", os.getUu());
|
|
|
+ infos.put("emuu", user.getUserUU());
|
|
|
+ infos.put("enSecret", os.getAccessSecret());
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (ok == false) {
|
|
|
+ error = "企业名称与营业执照号不符!";
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ try {
|
|
|
+ Enterprise enterprise = enterpriseService
|
|
|
+ .findByenBussinessCode(enBusinesscode);
|
|
|
+ if (enterprise != null) {
|
|
|
+ error = "企业名称与营业执照号不符!";
|
|
|
+ infos.put("enName", enterprise.getEnName());
|
|
|
+ } else {
|
|
|
+ error = "企业信息未注册,请先注册!";
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
+ error = "企业信息未注册,请先注册!";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ error = "企业名称与企业营业执照号不能为空!";
|
|
|
+ }
|
|
|
+ infos.put("ok", ok);
|
|
|
+ infos.put("error", error);
|
|
|
+ return infos;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 取企业UU序列值
|
|
|
*
|
|
|
@@ -163,8 +227,10 @@ public class PublicQueryController {
|
|
|
|
|
|
@RequestMapping(value = "/search", method = RequestMethod.GET)
|
|
|
@ResponseBody
|
|
|
- public JSONObject getMonthProdio(Long month, String brand, String vendor, String date) {
|
|
|
- JSONObject json = monthProdIoService.getMonthProdio(month, brand, vendor, date);
|
|
|
+ public JSONObject getMonthProdio(Long month, String brand, String vendor,
|
|
|
+ String date) {
|
|
|
+ JSONObject json = monthProdIoService.getMonthProdio(month, brand,
|
|
|
+ vendor, date);
|
|
|
return json;
|
|
|
}
|
|
|
|
|
|
@@ -177,33 +243,86 @@ public class PublicQueryController {
|
|
|
Enterprise enter = FlexJsonUtils.fromJson(enterprise, Enterprise.class);// 需要把字符串转成Object
|
|
|
ModelMap map = new ModelMap();
|
|
|
map.put("tel", userService.isTelUseable(enter.getEnAdminTel()));
|
|
|
- map.put("email", userService.isEmailUseable(enter.getEnAdminEmail()));
|
|
|
- map.put("bussinessCode", enterpriseService.bussinessCodeEnable(enter.getEnBussinessCode()));
|
|
|
+ // map.put("email",
|
|
|
+ // userService.isEmailUseable(enter.getEnAdminEmail()));
|
|
|
+ map.put("bussinessCode", enterpriseService.bussinessCodeEnable(enter
|
|
|
+ .getEnBussinessCode()));
|
|
|
return map;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 注册新企业用户
|
|
|
+ *
|
|
|
+ * @throws UnsupportedEncodingException
|
|
|
*/
|
|
|
@RequestMapping(value = "/erpRegister", method = RequestMethod.POST)
|
|
|
- public @ResponseBody ResponseEntity<ModelMap> register(String enterprise, FileUpload uploadItem, Boolean isSaas) {
|
|
|
- HttpHeaders headers = new HttpHeaders();
|
|
|
- headers.add("Content-Type", "application/json; charset=utf-8");
|
|
|
- ModelMap map = new ModelMap();
|
|
|
- Enterprise newEnterprise = FlexJsonUtils.fromJson(enterprise, Enterprise.class);// 需要把字符串转成Object
|
|
|
- Attach attach = attachService.upload(uploadItem, "bussinessCodeImg", "客户营业执照复印件或照片");// 先保存上传到文件
|
|
|
- if (attach == null) {// 文件过大
|
|
|
- map.put("error", "文件过大");
|
|
|
- return new ResponseEntity<ModelMap>(map, headers, HttpStatus.FORBIDDEN);
|
|
|
- } else {// 上传成功
|
|
|
- newEnterprise.setEnBussinessCodeAttach(attach);
|
|
|
- Enterprise regEnterprise = enterpriseService.registerEnterprise(newEnterprise, isSaas);
|
|
|
+ @ResponseBody
|
|
|
+ public Map<String, Object> register(String data)
|
|
|
+ throws UnsupportedEncodingException {
|
|
|
+ String jsonStr = URLDecoder.decode(data, "UTF-8");
|
|
|
+ Map<String, Object> infos = new HashMap<String, Object>();
|
|
|
+ Enterprise newEnterprise = FlexJsonUtils.fromJson(jsonStr,
|
|
|
+ Enterprise.class);// 需要把字符串转成Object
|
|
|
+ boolean ok = false;
|
|
|
+ String error = null;
|
|
|
+ Map<String, Object> checkinfos = checkRegister(newEnterprise);
|
|
|
+ if (checkinfos != null && checkinfos.get("ok").equals(true)) {
|
|
|
+ if (checkinfos.get("enName").equals(newEnterprise.getEnName())) {
|
|
|
+ error = "注册失败!企业名称" + checkinfos.get("enName")
|
|
|
+ + "已注册,注册的营业执照号为" + checkinfos.get("enBussinessCode")
|
|
|
+ + "注册人:" + checkinfos.get("emName");
|
|
|
+ } else {
|
|
|
+ error = "注册失败!营业执照号" + checkinfos.get("enBussinessCode")
|
|
|
+ + "已注册,注册的企业名称为" + checkinfos.get("enName") + "注册人:"
|
|
|
+ + checkinfos.get("emName");
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ Enterprise regEnterprise = enterpriseService
|
|
|
+ .registerERPEnterprise(newEnterprise);
|
|
|
if (regEnterprise == null) {// 营业执照码验证
|
|
|
- map.put("error", "操作失败");
|
|
|
- return new ResponseEntity<ModelMap>(map, headers, HttpStatus.EXPECTATION_FAILED);
|
|
|
+ error = "注册失败!";
|
|
|
+ } else {
|
|
|
+ ok = true;
|
|
|
+ String secret = StringUtil.uuid();
|
|
|
+ regEnterprise.setAccessSecret(secret);
|
|
|
+ enterpriseService.save(regEnterprise);
|
|
|
+ infos.put("enSecret", secret);
|
|
|
+ infos.put("enUU", regEnterprise.getUu());
|
|
|
+ infos.put("emUU", regEnterprise.getEnAdminuu());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ infos.put("ok", ok);
|
|
|
+ infos.put("error", error);
|
|
|
+ return infos;
|
|
|
+ }
|
|
|
+
|
|
|
+ public Map<String, Object> checkRegister(Enterprise enterprise) {
|
|
|
+ Map<String, Object> checkinfos = new HashMap<String, Object>();
|
|
|
+ List<Enterprise> enterprises = enterpriseService.findByName(enterprise
|
|
|
+ .getEnName());
|
|
|
+ boolean ok = false;
|
|
|
+ if (!CollectionUtils.isEmpty(enterprises)) {
|
|
|
+ ok = true;
|
|
|
+ checkinfos.put("enName", enterprise.getEnName());
|
|
|
+ checkinfos.put("enBussinessCode", enterprises.get(0)
|
|
|
+ .getEnBussinessCode());
|
|
|
+ checkinfos.put("emName", enterprises.get(0).getEnAdminName());
|
|
|
+ } else {
|
|
|
+ try {
|
|
|
+ Enterprise newenterprise = enterpriseService
|
|
|
+ .findByenBussinessCode(enterprise.getEnBussinessCode());
|
|
|
+ if (newenterprise != null) {
|
|
|
+ ok = true;
|
|
|
+ checkinfos.put("enName", newenterprise.getEnName());
|
|
|
+ checkinfos.put("enBussinessCode",
|
|
|
+ newenterprise.getEnBussinessCode());
|
|
|
+ checkinfos.put("emName", newenterprise.getEnAdminName());
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
+
|
|
|
}
|
|
|
- map.put("uu", regEnterprise.getUu());
|
|
|
- return new ResponseEntity<ModelMap>(map, headers, HttpStatus.OK);
|
|
|
}
|
|
|
+ checkinfos.put("ok", ok);
|
|
|
+ return checkinfos;
|
|
|
}
|
|
|
}
|