diff --git a/jcl-hrmorganization/secondev-jcl-hrmorganization/src/main/java/com/weaver/seconddev/jcl/organization/controller/ChangeOrganzationController.java b/jcl-hrmorganization/secondev-jcl-hrmorganization/src/main/java/com/weaver/seconddev/jcl/organization/controller/ChangeOrganzationController.java index a887b7d..3c01572 100644 --- a/jcl-hrmorganization/secondev-jcl-hrmorganization/src/main/java/com/weaver/seconddev/jcl/organization/controller/ChangeOrganzationController.java +++ b/jcl-hrmorganization/secondev-jcl-hrmorganization/src/main/java/com/weaver/seconddev/jcl/organization/controller/ChangeOrganzationController.java @@ -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 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 params){ + Gson gson = new Gson(); + log.error("*********queryTableData********"); + log.error(gson.toJson(params)); + Map resultMap = organaztionService.getDepartmentChangeToken(params); + return WeaResult.success(resultMap); + } } diff --git a/jcl-hrmorganization/secondev-jcl-hrmorganization/src/main/java/com/weaver/seconddev/jcl/organization/service/OrganaztionService.java b/jcl-hrmorganization/secondev-jcl-hrmorganization/src/main/java/com/weaver/seconddev/jcl/organization/service/OrganaztionService.java index 3a28a75..285c7ad 100644 --- a/jcl-hrmorganization/secondev-jcl-hrmorganization/src/main/java/com/weaver/seconddev/jcl/organization/service/OrganaztionService.java +++ b/jcl-hrmorganization/secondev-jcl-hrmorganization/src/main/java/com/weaver/seconddev/jcl/organization/service/OrganaztionService.java @@ -23,4 +23,7 @@ public interface OrganaztionService { AbstractWeaTable queryOrganzationTableData(SimpleEmployee simpleEmployee, Map params); + void updateDepartmentStatus(Map params); + + Map getDepartmentChangeToken(Map params); } diff --git a/jcl-hrmorganization/secondev-jcl-hrmorganization/src/main/java/com/weaver/seconddev/jcl/organization/service/impl/OrganaztionSeviceImpl.java b/jcl-hrmorganization/secondev-jcl-hrmorganization/src/main/java/com/weaver/seconddev/jcl/organization/service/impl/OrganaztionSeviceImpl.java index c61b3e8..366e0d5 100644 --- a/jcl-hrmorganization/secondev-jcl-hrmorganization/src/main/java/com/weaver/seconddev/jcl/organization/service/impl/OrganaztionSeviceImpl.java +++ b/jcl-hrmorganization/secondev-jcl-hrmorganization/src/main/java/com/weaver/seconddev/jcl/organization/service/impl/OrganaztionSeviceImpl.java @@ -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> allSonDepartmentList = databaseUtils.getSqlList(sql,CommonUtils.getParamList(orgId)); + sql = "select id,name from eteams.department"; List> departmentList = databaseUtils.getSqlList(sql); Map departmentMap = departmentList.stream().collect(Collectors.toMap(e->e.get("id").toString(),e->e.get("name").toString())); + for (Map map:allSonDepartmentList){ + map.put("parentName",departmentMap.get(map.get("parent"))); + map.put("subcompanyName",departmentMap.get(map.get("subcompanyid"))); + } + + Map>> allSonDepartmentGroup = allSonDepartmentList.stream().collect(Collectors.groupingBy(e->e.get("parent").toString())); for (Map.Entry>> entry :allSonDepartmentGroup.entrySet()){ String parentId = entry.getKey(); @@ -177,18 +177,47 @@ public class OrganaztionSeviceImpl implements OrganaztionService { } dataList = dataList.subList(startindex,endindex); } - for (Map 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 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 getDepartmentChangeToken(Map params) { + String tokenMark = CommonUtils.null2String(params.get("tokenMark")); + String sql = "select ipdz,app_key,app_sec,corpid from uf_jcl_kfptjkpzb where jkbs=?"; + List> dataList = databaseUtils.getSqlList(sql,CommonUtils.getParamList(tokenMark)); + Map resultMap = Maps.newHashMap(); + if (dataList.size() >0){ + Map 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; + } }