组织架构列表

This commit is contained in:
liuliang 2025-08-15 14:56:44 +08:00
parent 97941c6c71
commit e2d4ffa223
3 changed files with 76 additions and 16 deletions

View File

@ -134,5 +134,33 @@ public class ChangeOrganzationController extends BaseCommonController {
AbstractWeaTable weaTable = organaztionService.queryOrganzationTableData(this.getCurrentUser(),params);
return WeaResult.success(weaTable);
}
/**
* 启用/停用部门
* @return
*/
@WeaPermission(publicPermission = true)
@PostMapping("/updateDepartmentStatus")
@ResponseBody
public WeaResult updateDepartmentStatus(@RequestParam Map<String, Object> params){
Gson gson = new Gson();
log.error("*********queryTableData********");
log.error(gson.toJson(params));
organaztionService.updateDepartmentStatus(params);
return WeaResult.success(Maps.newHashMap());
}
/**
* 获取同步部门token
* @return
*/
@WeaPermission(publicPermission = true)
@PostMapping("/getDepartmentChangeToken")
@ResponseBody
public WeaResult getDepartmentChangeToken(@RequestParam Map<String, Object> params){
Gson gson = new Gson();
log.error("*********queryTableData********");
log.error(gson.toJson(params));
Map<String,Object> resultMap = organaztionService.getDepartmentChangeToken(params);
return WeaResult.success(resultMap);
}
}

View File

@ -23,4 +23,7 @@ public interface OrganaztionService {
AbstractWeaTable queryOrganzationTableData(SimpleEmployee simpleEmployee, Map<String, Object> params);
void updateDepartmentStatus(Map<String, Object> params);
Map<String,Object> getDepartmentChangeToken(Map<String, Object> params);
}

View File

@ -5,26 +5,19 @@ import com.google.gson.Gson;
import com.weaver.common.component.table.AbstractWeaTable;
import com.weaver.common.component.table.WeaTable;
import com.weaver.common.form.service.IdGeneratorService;
import com.weaver.ebuilder.form.client.entity.data.EBDataReqDetailDto;
import com.weaver.seconddev.jcl.common.service.CommonService;
import com.weaver.seconddev.jcl.common.service.impl.CommonServiceImpl;
import com.weaver.seconddev.jcl.organization.entity.Department;
import com.weaver.seconddev.jcl.organization.exception.EmployeeJclRunTimeException;
import com.weaver.seconddev.jcl.organization.service.OrganaztionService;
import com.weaver.seconddev.jcl.organization.util.CommonUtils;
import com.weaver.seconddev.jcl.organization.util.DatabaseUtils;
import com.weaver.seconddev.jcl.organization.util.DateUtil;
import com.weaver.seconddev.jcl.organization.util.SyncDataUtils;
import com.weaver.teams.domain.user.SimpleEmployee;
import org.apache.commons.beanutils.BeanUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanWrapper;
import org.springframework.beans.BeanWrapperImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.beans.PropertyDescriptor;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@ -38,6 +31,8 @@ public class OrganaztionSeviceImpl implements OrganaztionService {
@Autowired
private DatabaseUtils databaseUtils;
private static final Logger log = LoggerFactory.getLogger(OrganaztionSeviceImpl.class);
@Autowired
private SyncDataUtils syncDataUtils;
@Override
@ -92,7 +87,6 @@ public class OrganaztionSeviceImpl implements OrganaztionService {
log.error("mergeOrganaztionDepartment update sql :"+sql);
databaseUtils.execute(sql);
addOrganaztionDepartment( department, employee);
}
@Override
@ -124,7 +118,6 @@ public class OrganaztionSeviceImpl implements OrganaztionService {
.sscb(sscb).fgld(fgldId).sjzzmc(sjzzName).bmsqcj(data.get("bmsqcj").toString()).bmfzr(bmfzr).zzmc(data.get("zzmc").toString()).sjzz(sjzz).sjzzbh(data.get("sjzzbh").toString()).build();
addOrganaztionDepartment(department,employee);
}
sql = "update uf_organization_bghzzsj set delete_type='3',is_delete='1' where bh=?";
databaseUtils.execute(sql,CommonUtils.getParamList(splitDepartmentCode));
@ -147,11 +140,18 @@ public class OrganaztionSeviceImpl implements OrganaztionService {
String sql = "select * from eteams.department where id in(select distinct cid from eteams.depart_link dl where pid in (?) and delete_type='0') and delete_type='0'";
List<Map<String, Object>> allSonDepartmentList = databaseUtils.getSqlList(sql,CommonUtils.getParamList(orgId));
sql = "select id,name from eteams.department";
List<Map<String, Object>> departmentList = databaseUtils.getSqlList(sql);
Map<String, String> departmentMap = departmentList.stream().collect(Collectors.toMap(e->e.get("id").toString(),e->e.get("name").toString()));
for (Map<String, Object> map:allSonDepartmentList){
map.put("parentName",departmentMap.get(map.get("parent")));
map.put("subcompanyName",departmentMap.get(map.get("subcompanyid")));
}
Map<String,List<Map<String, Object>>> allSonDepartmentGroup = allSonDepartmentList.stream().collect(Collectors.groupingBy(e->e.get("parent").toString()));
for (Map.Entry<String,List<Map<String, Object>>> entry :allSonDepartmentGroup.entrySet()){
String parentId = entry.getKey();
@ -177,18 +177,47 @@ public class OrganaztionSeviceImpl implements OrganaztionService {
}
dataList = dataList.subList(startindex,endindex);
}
for (Map<String, Object> map:dataList){
map.put("parentName",departmentMap.get(map.get("parent")));
map.put("subcompanyName",departmentMap.get(map.get("subcompanyid")));
}
weaTable.setTotal(total);
weaTable.setPageSize(pageSize);
weaTable.setCurrent(current);
weaTable.setData(dataList);
return weaTable;
}
@Override
public void updateDepartmentStatus(Map<String, Object> params) {
String checkValue = CommonUtils.null2String(params.get("checkValue"));
String departmentId = CommonUtils.null2String(params.get("id"));
String sql = "update eteams.department set status=? where id=?";
String status = "1";
if (checkValue.equals("true")){
status="1";
}else {
status="0";
}
databaseUtils.execute(sql,CommonUtils.getParamList(status,departmentId));
}
@Override
public Map<String, Object> getDepartmentChangeToken(Map<String, Object> params) {
String tokenMark = CommonUtils.null2String(params.get("tokenMark"));
String sql = "select ipdz,app_key,app_sec,corpid from uf_jcl_kfptjkpzb where jkbs=?";
List<Map<String, Object>> dataList = databaseUtils.getSqlList(sql,CommonUtils.getParamList(tokenMark));
Map<String, Object> resultMap = Maps.newHashMap();
if (dataList.size() >0){
Map<String, Object> apiInfo = Maps.newHashMap();
apiInfo.put("ipdz",dataList.get(0).get("ipdz"));
apiInfo.put("app_key",dataList.get(0).get("app_key"));
apiInfo.put("app_sec",dataList.get(0).get("app_sec"));
apiInfo.put("corpid",dataList.get(0).get("corpid"));
String accessToken = syncDataUtils.getToken(apiInfo);
resultMap.put("accessToken",accessToken);
}
return resultMap;
}
}