|
@@ -0,0 +1,73 @@
|
|
|
+package cn.iselab.mooctest.site.service.impl;
|
|
|
+
|
|
|
+import cn.iselab.mooctest.site.dao.SalesPackageDao;
|
|
|
+import cn.iselab.mooctest.site.dao.SalesServiceDao;
|
|
|
+import cn.iselab.mooctest.site.dao.User2SalesPackageDao;
|
|
|
+import cn.iselab.mooctest.site.models.SalesPackage;
|
|
|
+import cn.iselab.mooctest.site.models.User2SalesPackage;
|
|
|
+import cn.iselab.mooctest.site.service.UserPackageService;
|
|
|
+import cn.iselab.mooctest.site.web.data.PermissionVO;
|
|
|
+import cn.iselab.mooctest.site.web.data.SalesServiceVO;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import java.util.Arrays;
|
|
|
+import java.util.Collections;
|
|
|
+import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+
|
|
|
+/**
|
|
|
+ * Created by tangshanshan on 2018/1/4.
|
|
|
+ */
|
|
|
+@Service
|
|
|
+public class UserPackageServiceImpl implements UserPackageService {
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private User2SalesPackageDao user2SalesPackageDao;
|
|
|
+ @Autowired
|
|
|
+ private SalesServiceDao salesServiceDao;
|
|
|
+ @Autowired
|
|
|
+ private SalesPackageDao salesPackageDao;
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<User2SalesPackage> getUserSalesPackage(Long userId) {
|
|
|
+ return user2SalesPackageDao.findByUserId(userId);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void saveUserSalesPackage(Long userId, SalesServiceVO salesService) {
|
|
|
+ User2SalesPackage saveU2p;
|
|
|
+ User2SalesPackage u2p = user2SalesPackageDao.findByUserIdAndSalesServiceId(userId,salesService.getServiceId());
|
|
|
+ if(u2p==null){
|
|
|
+ saveU2p = new User2SalesPackage();
|
|
|
+ saveU2p.setUserId(userId);
|
|
|
+ saveU2p.setSalesPackageId(salesService.getPackageId());
|
|
|
+ saveU2p.setSalesServiceId(salesService.getServiceId());
|
|
|
+ }else{
|
|
|
+ saveU2p = u2p;
|
|
|
+ saveU2p.setSalesPackageId(salesService.getPackageId());
|
|
|
+ }
|
|
|
+ user2SalesPackageDao.save(saveU2p);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void deleteUserSalesPackage(Long userId, SalesServiceVO salesService) {
|
|
|
+ User2SalesPackage u2p = user2SalesPackageDao.findByUserIdAndSalesServiceId(userId,salesService.getServiceId());
|
|
|
+ if(u2p!=null)
|
|
|
+ user2SalesPackageDao.delete(u2p);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<PermissionVO> getSalesPackagePermission(User2SalesPackage user2SalesPackage) {
|
|
|
+ String type = salesServiceDao.findOne(user2SalesPackage.getSalesServiceId()).getName();
|
|
|
+ SalesPackage salesPackage = salesPackageDao.findOne(user2SalesPackage.getSalesPackageId());
|
|
|
+ if(salesPackage.getPermission()==null||salesPackage.getPermission().trim().equals("")){
|
|
|
+ return Collections.emptyList();
|
|
|
+ }else{
|
|
|
+ return Arrays.stream(salesPackage.getPermission().split(";")).map(permissionStr->{
|
|
|
+ String[] permission = permissionStr.split(":");
|
|
|
+ return new PermissionVO(type, permission[0], permission[1]);
|
|
|
+ }).collect(Collectors.toList());
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|