| 
					
				 | 
			
			
				@@ -1,7 +1,11 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 package com.ym.mec.web.controller; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.ym.mec.biz.dal.entity.MemberFeeSetting; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.ym.mec.biz.dal.entity.MemberRankOrganizationFeeMapper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.entity.MemberRankSetting; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.ym.mec.biz.dal.page.MemberRankFeeQueryInfo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.wrapper.MemberRankSettingWrapper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.ym.mec.biz.service.MemberRankOrganizationFeeMapperService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.service.MemberRankSettingService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.service.SysUserService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.common.controller.BaseController; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -9,13 +13,16 @@ import com.ym.mec.common.entity.HttpResponseResult; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yonge.log.model.AuditLogAnnotation; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import io.swagger.annotations.Api; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import io.swagger.annotations.ApiOperation; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.commons.collections.CollectionUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.commons.lang3.StringUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.springframework.beans.factory.annotation.Autowired; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.springframework.security.access.prepost.PreAuthorize; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.springframework.web.bind.annotation.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.Date; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import java.util.HashMap; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.List; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.Map; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.stream.Collectors; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @RequestMapping("${app-config.url.web:}/memberRankSetting") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @Api(tags = "会员等级服务") 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -27,6 +34,9 @@ public class MemberRankSettingController extends BaseController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private SysUserService sysUserService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private MemberRankOrganizationFeeMapperService memberRankOrganizationFeeMapperService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @ApiOperation(value = "新增") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @PostMapping("/add") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @PreAuthorize("@pcs.hasPermissions('memberRankSetting/add')") 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -83,8 +93,41 @@ public class MemberRankSettingController extends BaseController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @ApiOperation(value = "获取所有会员列表") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @PostMapping("/findByOrganIds") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @PreAuthorize("@pcs.hasPermissions('memberRankSetting/findByOrganIds')") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    public HttpResponseResult<List<MemberRankSetting>> findAll(@RequestBody List<Integer> organIds) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        return succeed(memberRankSettingService.findByOrganIds(organIds)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public HttpResponseResult<List<MemberRankSetting>> findAll(@RequestBody List<Integer> organIds, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                                               @RequestParam(required = false, defaultValue = "false") Boolean organFeeFlag) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 根据分部ID查询对应的会员等级 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<MemberRankSetting> memberRanks = memberRankSettingService.findByOrganIds(organIds); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 根据分部ID查询对应价格 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (Boolean.TRUE.equals(organFeeFlag)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            MemberRankFeeQueryInfo queryInfo = new MemberRankFeeQueryInfo(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            queryInfo.setRows(1000); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            queryInfo.setPage(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (CollectionUtils.isNotEmpty(organIds)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                queryInfo.setOrganId(StringUtils.join(organIds, ",")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            List<MemberRankOrganizationFeeMapper> rows = memberRankOrganizationFeeMapperService.queryPage(queryInfo).getRows(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (CollectionUtils.isNotEmpty(rows)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                Map<Integer, MemberFeeSetting> collect = rows.stream() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    .collect(Collectors.toMap(MemberRankOrganizationFeeMapper::getMemberRankSettingId, MemberRankOrganizationFeeMapper::getMemberFeeSetting, (o, n) -> n)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 已统一规定会员等级只有两级,暂不考虑多级 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                for (MemberRankSetting item : memberRanks) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (CollectionUtils.isEmpty(item.getChildren())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        continue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    // 设置价格 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    for (MemberRankSetting child : item.getChildren()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        child.setMemberFeeSetting(collect.get(child.getId())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return succeed(memberRanks); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @ApiOperation(value = "获取可用的会员树状列表") 
			 |