From 99f928a971a5d2c58d5fafb38728471a39b5a759 Mon Sep 17 00:00:00 2001 From: CZT <czt18638530771@163.com> Date: 星期四, 02 十一月 2023 15:20:57 +0800 Subject: [PATCH] 优化人员信息 --- igds-manager/src/main/java/com/ld/igds/oa/service/HDeptDeviceService.java | 88 ++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 84 insertions(+), 4 deletions(-) diff --git a/igds-manager/src/main/java/com/ld/igds/oa/service/HDeptDeviceService.java b/igds-manager/src/main/java/com/ld/igds/oa/service/HDeptDeviceService.java index 7b64f1b..0e6091b 100644 --- a/igds-manager/src/main/java/com/ld/igds/oa/service/HDeptDeviceService.java +++ b/igds-manager/src/main/java/com/ld/igds/oa/service/HDeptDeviceService.java @@ -1,17 +1,23 @@ package com.ld.igds.oa.service; +import com.bstek.bdf2.core.model.DefaultDept; import com.bstek.bdf2.core.orm.hibernate.HibernateDao; import com.bstek.dorado.data.provider.Page; import com.ld.igds.models.DeptDevice; import com.ld.igds.models.DeviceCheckup; +import com.ld.igds.sys.service.SysDeptService; import com.ld.igds.util.ContextUtil; import com.ld.igds.util.DateUtil; import org.apache.commons.lang3.StringUtils; +import org.apache.commons.lang3.time.DateFormatUtils; import org.hibernate.Session; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import org.springframework.util.CollectionUtils; import java.util.Date; import java.util.HashMap; +import java.util.List; import java.util.Map; /** @@ -21,6 +27,10 @@ */ @Component public class HDeptDeviceService extends HibernateDao { + + @Autowired + private SysDeptService sysDeptService; + //=====================================搴撳尯璁惧=======================================// public void pageData(Page<DeptDevice> page, Map<String, Object> param) @@ -45,9 +55,15 @@ Session session = this.getSessionFactory().openSession(); try { - data.setCompanyId(ContextUtil.getCompanyId()); - if (null == data.getId()) { - data.setId(ContextUtil.getUUID()); + if (null == data.getCompanyId()) { + data.setCompanyId(ContextUtil.getCompanyId()); + } + if (StringUtils.isEmpty(data.getDeptId())) { + data.setDeptId(ContextUtil.subDeptId(null)); + } + data.setUpdateTime(new Date()); + if (null == data.getSbbh()) { + data.setSbbh(DateFormatUtils.format(new Date(), "yyyyMMdd") + getIndex(data.getCompanyId())); } session.saveOrUpdate(data); } finally { @@ -57,10 +73,51 @@ return null; } + public String getIndex(String companyId) { + List<DeptDevice> list = getDataByTime(companyId); + int index = 10000; + if (list != null && list.size() > 0) { + String id = list.get(0).getSbbh().substring(8); + int temp = Integer.valueOf(id) + 1; + index += temp; + }else { + index ++; + } + return String.valueOf(index).substring(1); + } + + private List<DeptDevice> getDataByTime(String companyId) { + String hql = " from " + DeptDevice.class.getName() + + " where companyId =:companyId "; + + Map<String, Object> args = new HashMap<String, Object>(); + args.put("companyId", companyId); + + hql += " and updateTime >:startTime"; + args.put("startTime", DateUtil.getCurZero(new Date())); + + + hql += " and updateTime <:endTime"; + args.put("endTime", DateUtil.getNextZero(new Date())); + + + hql += " order by id desc"; + + return this.query(hql, args); + } + public String delData(DeptDevice data) { Session session = this.getSessionFactory().openSession(); try { + Map<String, Object> param = new HashMap<>(); + param.put("code", data.getSbbh()); + List<DeviceCheckup> list = this.listCheck(param); + for (DeviceCheckup checkup : list) { + session.delete(checkup); + } session.delete(data); + } catch (Exception e) { + e.printStackTrace(); } finally { session.flush(); session.close(); @@ -88,11 +145,34 @@ } + public List<DeviceCheckup> listCheck(Map<String, Object> param) throws Exception { + String hql = " from " + DeviceCheckup.class.getName() + " where companyId=:companyId"; + + Map<String, Object> args = new HashMap<>(); + args.put("companyId", ContextUtil.getCompanyId()); + + if (null != param) { + hql = buildHql(hql, param, args); + } + + hql += " order by jdsj desc"; + + return this.query(hql, args); + } + public String saveCheck(DeviceCheckup data) { Session session = this.getSessionFactory().openSession(); try { - data.setCompanyId(ContextUtil.getCompanyId()); + if (null == data.getCompanyId()) { + data.setCompanyId(ContextUtil.getCompanyId()); + } + if (StringUtils.isEmpty(data.getKqdm())) { + data.setKqdm(ContextUtil.subDeptId(null)); + } + DefaultDept dept = sysDeptService.getCacheDept(data.getCompanyId(), data.getKqdm()); + data.setKqmc(dept.getName()); + data.setZhgxsj(new Date()); if (null == data.getId()) { data.setId(ContextUtil.getUUID()); } -- Gitblit v1.9.3