|
|
@@ -1,7 +1,77 @@
|
|
|
package com.uas.platform.b2b.v2.service.impl;
|
|
|
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.util.CollectionUtils;
|
|
|
+
|
|
|
+import com.uas.account.entity.UserSpace;
|
|
|
+import com.uas.account.entity.UserSpaceDetail;
|
|
|
+import com.uas.platform.b2b.dao.EnterpriseDao;
|
|
|
+import com.uas.platform.b2b.dao.UserDao;
|
|
|
+import com.uas.platform.b2b.model.Enterprise;
|
|
|
+import com.uas.platform.b2b.model.User;
|
|
|
import com.uas.platform.b2b.v2.service.EnterpriseService;
|
|
|
+import com.uas.platform.core.model.Status;
|
|
|
|
|
|
+@Service("v2.EnterpriseService")
|
|
|
public class EnterpriseServiceImpl implements EnterpriseService {
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private EnterpriseDao enterpriseDao;
|
|
|
+ @Autowired
|
|
|
+ private UserDao userDao;
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public UserSpace save(UserSpace userSpace, UserSpaceDetail detail) {
|
|
|
+ Enterprise enterprise = getEnterprise(userSpace);
|
|
|
+ if (enterprise == null) {
|
|
|
+ enterprise = new Enterprise();
|
|
|
+ enterprise.setEnStatus((short) Status.ENABLED.value());
|
|
|
+ }
|
|
|
+
|
|
|
+ enterprise.setEnAddress(detail.getAddress());
|
|
|
+ enterprise.setEnAdminEmail(detail.getAdminEmail());
|
|
|
+ enterprise.setEnAdminName(detail.getAdminName());
|
|
|
+ enterprise.setEnAdminTel(detail.getAdminTel());
|
|
|
+ enterprise.setEnArea(detail.getArea());
|
|
|
+ enterprise.setEnBussinessCode(detail.getBusinessCode());
|
|
|
+ enterprise.setEnCorporation(detail.getCorporation());
|
|
|
+ enterprise.setEnDate(detail.getRegisterDate());
|
|
|
+ enterprise.setEnEmail(detail.getAdminEmail());
|
|
|
+ enterprise.setEnFax(detail.getFax());
|
|
|
+ enterprise.setEnIndustry(detail.getIndustry());
|
|
|
+ enterprise.setEnName(detail.getName());
|
|
|
+ enterprise.setEnShortname(detail.getShortName());
|
|
|
+ enterprise.setEnTel(detail.getAdminTel());
|
|
|
+ enterprise.setEnType(detail.getType());
|
|
|
+ enterprise.setEnUrl(detail.getUrl());
|
|
|
+
|
|
|
+ enterpriseDao.save(enterprise);
|
|
|
+ userSpace.setDialectUID(String.valueOf(enterprise.getUu()));
|
|
|
+
|
|
|
+ return userSpace;
|
|
|
+ }
|
|
|
+
|
|
|
+ private Enterprise getEnterprise(UserSpace userSpace) {
|
|
|
+ Enterprise enterprise = null;
|
|
|
+ if (userSpace.getDialectUID() != null)
|
|
|
+ enterprise = enterpriseDao.findEnterpriseByUu(Long.parseLong(userSpace.getDialectUID()));
|
|
|
+ else if (userSpace.getUid() != null)
|
|
|
+ enterprise = enterpriseDao.findEnterpriseByEnBussinessCode(userSpace.getUid());
|
|
|
+ return enterprise;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void delete(UserSpace userSpace) {
|
|
|
+ Enterprise enterprise = getEnterprise(userSpace);
|
|
|
+ if (enterprise != null) {
|
|
|
+ List<User> users = userDao.findByEnUU(enterprise.getUu());
|
|
|
+ if (CollectionUtils.isEmpty(users)) {
|
|
|
+ enterpriseDao.delete(enterprise);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|