| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- package com.steerinfo.dil.service.impl;
- import com.alibaba.fastjson.JSON;
- import com.steerinfo.dil.feign.AmsFeign;
- import com.steerinfo.dil.mapper.DilRoleOrgcodeTableMapper;
- import com.steerinfo.dil.mapper.DilTableColumnRoleMapper;
- import com.steerinfo.dil.mapper.UniversalMapper;
- import com.steerinfo.dil.model.DilRoleOrgcodeTable;
- import com.steerinfo.dil.service.UniversalService;
- import com.steerinfo.dil.util.DataChange;
- import com.steerinfo.dil.util.HTTPRequestUtils;
- import org.apache.commons.codec.digest.DigestUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.scheduling.annotation.EnableAsync;
- import org.springframework.scheduling.annotation.EnableScheduling;
- import org.springframework.stereotype.Service;
- import javax.annotation.Resource;
- import java.io.IOException;
- import java.math.BigDecimal;
- import java.util.*;
- /**
- * @ author :TXF
- * @ time :2021/10/19 18:05
- */
- @Service
- @EnableScheduling
- @EnableAsync
- public class UniversalServiceImpl implements UniversalService {
- @Resource
- private UniversalMapper universalMapper;
- @Resource
- private DilRoleOrgcodeTableMapper dilRoleOrgcodeTableMapper;
- @Resource
- private DilTableColumnRoleMapper dilTableColumnRoleMapper;
- @Autowired
- private AmsFeign amsFeign;
- @Override
- public Map<String, Object> getColumnShowHidden(Map<String, Object> map) {
- Map<String, Object> responseMap = new HashMap<>();
- List<Map<String, Object>> columnShowData = universalMapper.getColumnShowData(map);
- List<Map<String, Object>> columnAllData = universalMapper.getColumnAllData(map);
- List<String> columnHiddenData = universalMapper.getColumnHiddenData(map);
- responseMap.put("columnShowData", columnShowData);
- responseMap.put("columnAllData", columnAllData);
- responseMap.put("columnHiddenData", columnHiddenData);
- return responseMap;
- }
- @Override
- public synchronized int updateColumnShowHidden(Map<String, Object> map) {
- int i = 0;
- //首先删除原来的列
- if ("默认方案".equals(map.get("schemeName"))) {
- dilRoleOrgcodeTableMapper.updateEnableStatus(map);
- return 0;
- }
- i += dilRoleOrgcodeTableMapper.deleteSchmenLColumnData(map);
- List<String> columnHiddenData = (List<String>) map.get("columnHiddenData");
- List<DilRoleOrgcodeTable> mapList = new ArrayList<>();
- for (String s : columnHiddenData) {
- DilRoleOrgcodeTable dilRoleOrgcodeTable = new DilRoleOrgcodeTable();
- BigDecimal columnId = dilTableColumnRoleMapper.selectColumnId(s, map.get("tableName").toString());
- dilRoleOrgcodeTable.setColumnId(columnId);
- dilRoleOrgcodeTable.setUserName(map.get("userName").toString());
- dilRoleOrgcodeTable.setOrgCode(map.get("orgCode").toString());
- dilRoleOrgcodeTable.setEnableStatus(new BigDecimal(1));
- dilRoleOrgcodeTable.setPrimaryName(map.get("schemeName").toString());
- dilRoleOrgcodeTable.setPrimaryId(dilRoleOrgcodeTableMapper.getPrimaryId());
- mapList.add(dilRoleOrgcodeTable);
- }
- //将该用户的所有方案都变成未启用状
- dilRoleOrgcodeTableMapper.updateEnableStatus(map);
- if (mapList.size() > 0) {
- //然后再批量新增进去
- i += dilRoleOrgcodeTableMapper.batchInsert(mapList);
- }
- return i;
- }
- @Override
- public Map<String, Object> getColumShowHideScheme(Map<String, Object> map) {
- Map<String, Object> responseMap = new HashMap<>();
- List<Map<String, Object>> schemeList = new ArrayList<>();
- //每一个map;
- Map<String, Object> schemeMap = new HashMap<>();
- //作为传值用的map
- Map<String, Object> attrMap = new HashMap<>();
- //当前启用状态的值
- String activeName = "默认方案";
- //以下是方案的标题和名字
- schemeMap.put("title", "默认方案");
- schemeMap.put("name", "默认方案");
- //以下是方案的显示数据和隐藏数据
- List<Map<String, Object>> columnAllData = universalMapper.getColumnAllData(map);
- schemeMap.put("columnAllData", columnAllData);
- responseMap.put("columnAllData", columnAllData);
- attrMap.put("tableName", map.get("tableName"));
- map.put("schemeName", activeName);
- List<String> columnHiddenData = universalMapper.getColumnHiddenData(map);
- schemeMap.put("columnHiddenData", columnHiddenData);
- schemeList.add(schemeMap);
- responseMap.put("activeName", activeName);
- responseMap.put("columnHiddenData", columnHiddenData);
- //然后根据用户名和报表名称,去查询方案名称和启用状态
- List<Map<String, Object>> schemeMapAnotherData = universalMapper.getColumnAllScheme(map);
- for (Map<String, Object> schemeMapAnotherDataMap : schemeMapAnotherData) {
- Map<String, Object> itemMap = new HashMap<>();
- itemMap.put("title", schemeMapAnotherDataMap.get("schemeName"));
- itemMap.put("name", schemeMapAnotherDataMap.get("schemeName"));
- itemMap.put("columnAllData", columnAllData);
- List<String> itemColumnHiddenData = universalMapper.getColumnHiddenData(schemeMapAnotherDataMap);
- itemMap.put("columnHiddenData", itemColumnHiddenData);
- schemeList.add(itemMap);
- if (DataChange.dataToBigDecimal(schemeMapAnotherDataMap.get("enableStatus")).compareTo(new BigDecimal(1)) == 0) {
- responseMap.put("activeName", schemeMapAnotherDataMap.get("schemeName"));
- responseMap.put("columnHiddenData", itemColumnHiddenData);
- }
- }
- responseMap.put("schemeList", schemeList);
- return responseMap;
- }
- }
|