| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220 |
- package cn.com.goldenwater.dcproj.service.impl.base;
- import cn.com.goldenwater.core.service.AbstractCrudService;
- import cn.com.goldenwater.dcproj.constValue.AdCodeLabel;
- import cn.com.goldenwater.dcproj.constValue.PersTypeEnum;
- import cn.com.goldenwater.dcproj.dao.AttPersBaseDao;
- import cn.com.goldenwater.dcproj.dao.RelPersInspgroupDao;
- import cn.com.goldenwater.dcproj.dto.AttPersGroupDto;
- import cn.com.goldenwater.dcproj.model.AttPersBase;
- import cn.com.goldenwater.dcproj.model.BisInspAll;
- import cn.com.goldenwater.dcproj.model.OlBisInspOrg;
- import cn.com.goldenwater.dcproj.model.RelPersInspgroup;
- import cn.com.goldenwater.dcproj.param.AttPersBaseParam;
- import cn.com.goldenwater.dcproj.service.AttPersBaseService;
- import cn.com.goldenwater.dcproj.service.BisInspAllService;
- import cn.com.goldenwater.dcproj.service.OlBisInspOrgService;
- import cn.com.goldenwater.dcproj.utils.DateUtils;
- import cn.com.goldenwater.dcproj.utils.TelUtil;
- import com.github.pagehelper.PageHelper;
- import com.github.pagehelper.PageInfo;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- import org.springframework.util.StringUtils;
- import java.util.List;
- /**
- * @author lune
- * @date 2019-2-18
- */
- @Service
- @Transactional(rollbackFor = Exception.class)
- public class AttPersBaseServiceImpl extends AbstractCrudService<AttPersBase, AttPersBaseParam> implements AttPersBaseService {
- @Autowired
- private AttPersBaseDao attPersBaseDao;
- @Autowired
- private RelPersInspgroupDao relPersInspgroupDao;
- @Autowired
- private BisInspAllService bisInspAllService;
- public AttPersBaseServiceImpl(AttPersBaseDao attPersBaseDao) {
- super(attPersBaseDao);
- this.attPersBaseDao = attPersBaseDao;
- }
- @Override
- public List<AttPersGroupDto> findPerInGroup(String id) throws Exception {
- List<AttPersGroupDto> list = attPersBaseDao.findPerInGroup(id);
- return list;
- }
- @Override
- public AttPersGroupDto findPerDetailInGroup(String id) throws Exception {
- AttPersGroupDto att = attPersBaseDao.findPerDetailInGroup(id);
- return att;
- }
- @Override
- public PageInfo<AttPersBase> getListByGuidInspGroupIdName(String inspGroupId, String name, int pageIndex, int pageSize) {
- //设置分页
- PageHelper.startPage(pageIndex, pageSize);
- //处理namelike
- if (null != name) {
- name = AdCodeLabel.PRCENT_INIT_DATE + name + AdCodeLabel.PRCENT_INIT_DATE;
- }
- List<AttPersBase> list = attPersBaseDao.getListByGuidInspGroupIdName(inspGroupId, name);
- return new PageInfo<AttPersBase>(list);
- }
- @Override
- public PageInfo<AttPersBase> getListByGuid(String guid, int pageIndex, int pageSize) {
- //设置分页
- PageHelper.startPage(pageIndex, pageSize);
- AttPersBaseParam attPersBaseParam = new AttPersBaseParam();
- attPersBaseParam.setOrgGuid(guid);
- attPersBaseParam.setStatus(AdCodeLabel.INIT_STATUS);
- List<AttPersBase> list = attPersBaseDao.findList(attPersBaseParam);
- return new PageInfo<AttPersBase>(list);
- }
- @Override
- public PageInfo<AttPersBase> getListByGuidNotInspGroupId(String inspGroupId, String name, int pageIndex, int pageSize, String orgName, String guid, String numb, String orgId, String province) {
- //设置分页
- PageHelper.startPage(pageIndex, pageSize);
- List<AttPersBase> list = attPersBaseDao.getListByGuidNotInspGroupId(inspGroupId, name, guid, numb, orgId, orgName, province);
- PageInfo<AttPersBase> attPersBasePageInfo = new PageInfo<AttPersBase>(list);
- for (int i = 0; i < attPersBasePageInfo.getList().size(); i++) {
- String tel = attPersBasePageInfo.getList().get(i).getMobilenumb() == null ? AdCodeLabel.NULL_INIT_DATE : attPersBasePageInfo.getList().get(i).getMobilenumb().toString();
- if (!tel.equals(AdCodeLabel.NULL_INIT_DATE)) {
- attPersBasePageInfo.getList().get(i).setMobilenumb(TelUtil.getTel(tel));
- }
- //获取人员ID
- String persId = attPersBasePageInfo.getList().get(i).getGuid();
- //获取人员分配的组
- String dcWork = "";
- List<BisInspAll> bisInspAlls = bisInspAllService.getPersDcWork(persId);
- for (BisInspAll bisInspAll : bisInspAlls) {
- if (bisInspAll.getSttm() == null || bisInspAll.getEntm() == null) {
- dcWork += " 在组" + bisInspAll.getPnm() + " 中担任:" + getName(bisInspAll.getPertype()) + "\r\n";
- } else {
- dcWork += DateUtils.Date2Str(bisInspAll.getSttm()) + "至" + DateUtils.Date2Str(bisInspAll.getEntm()) + " 在组" + bisInspAll.getPnm() + " 中担任:" + getName(bisInspAll.getPertype()) + "\r\n";
- }
- }
- if (dcWork.length() > 0) {
- dcWork = dcWork.substring(0, dcWork.length() - 1);
- }
- //拼接组信息
- attPersBasePageInfo.getList().get(i).setDcWork(dcWork);
- }
- return attPersBasePageInfo;
- }
- public String getName(String perType) {
- String name = "";
- if (perType.equals("1")) {
- name = "组长";
- } else if (perType.equals("2")) {
- name = "组员";
- } else if (perType.equals("3")) {
- name = "专家";
- } else if (perType.equals("3")) {
- name = "联络员";
- }
- return name;
- }
- @Autowired
- private OlBisInspOrgService inspOrgService;
- @Override
- public int addManByInspGroupIdAndManId(String manIds, String inspGroupId, String mohurd, String orgId) {
- OlBisInspOrg olBisInspOrg = inspOrgService.get(orgId);
- //处理参数
- String adCode = olBisInspOrg.getRlcode();
- if (null != manIds && manIds.contains(AdCodeLabel.DOUHAO_SPLIT)) {
- String[] split = manIds.split(AdCodeLabel.DOUHAO_SPLIT);
- String[] mohs = mohurd == null ? AdCodeLabel.NULL_INIT_DATE.split(AdCodeLabel.DOUHAO_SPLIT) : mohurd.split(AdCodeLabel.DOUHAO_SPLIT);
- for (int i = 0; i < split.length; i++) {
- RelPersInspgroup relPersInspgroup = new RelPersInspgroup();
- if (StringUtils.isEmpty(mohs[i]) || AdCodeLabel.NULL_INIT_DATE_DESC.equals(mohs[i])) {
- relPersInspgroup.setInspPersType(AdCodeLabel.PERS_TYPE);
- } else {
- relPersInspgroup.setInspPersType(mohs[i]);
- }
- relPersInspgroup.setInspGroupId(inspGroupId);
- relPersInspgroup.setPersId(split[i]);
- if (!adCode.startsWith(AdCodeLabel.START_PARENT_ADCODE)) {
- relPersInspgroup.setAdCode(adCode);
- relPersInspgroup.setOrgId(orgId);
- }
- String type = Integer.parseInt(inspGroupId.substring(0, 3)) + "";
- relPersInspgroup.setType(type);
- relPersInspgroupDao.insertRelation(relPersInspgroup);
- }
- } else {
- RelPersInspgroup relPersInspgroup = new RelPersInspgroup();
- //1组长2组员
- if (StringUtils.isEmpty(mohurd) || AdCodeLabel.NULL_INIT_DATE_DESC.equals(mohurd)) {
- relPersInspgroup.setInspPersType(AdCodeLabel.PERS_TYPE);
- } else {
- relPersInspgroup.setInspPersType(mohurd);
- }
- if (!adCode.startsWith(AdCodeLabel.START_PARENT_ADCODE)) {
- relPersInspgroup.setAdCode(adCode);
- relPersInspgroup.setOrgId(orgId);
- }
- relPersInspgroup.setInspGroupId(inspGroupId);
- relPersInspgroup.setPersId(manIds);
- String type = Integer.parseInt(inspGroupId.substring(0, 3)) + "";
- relPersInspgroup.setType(type);
- relPersInspgroupDao.insertRelation(relPersInspgroup);
- }
- return 0;
- }
- @Override
- public AttPersBase getPers(String persId) {
- return attPersBaseDao.getPers(persId);
- }
- @Override
- public PageInfo<AttPersBase> getListByInspGroupId(String inspGroupId, int pageNum, int pageSize, String isAll, String persName, String province) {
- PageHelper.startPage(pageNum, pageSize);
- List<AttPersBase> list = attPersBaseDao.getByInspGroupId(inspGroupId, isAll, persName, province);
- PageInfo<AttPersBase> attPersBasePageInfo = new PageInfo<AttPersBase>(list);
- for (int i = 0; i < attPersBasePageInfo.getList().size(); i++) {
- String tel = attPersBasePageInfo.getList().get(i).getMobilenumb() == null ? AdCodeLabel.NULL_INIT_DATE : attPersBasePageInfo.getList().get(i).getMobilenumb().toString();
- if (!tel.equals(AdCodeLabel.NULL_INIT_DATE)) {
- if(org.apache.commons.lang3.StringUtils.isEmpty(attPersBasePageInfo.getList().get(i).getCallnumber()) ){
- attPersBasePageInfo.getList().get(i).setCallnumber(tel);
- }
- }
- }
- return attPersBasePageInfo;
- }
- @Override
- public List<AttPersBase> listByInspGroupId(String inspGroupId, String isAll, String persName, String province) {
- List<AttPersBase> list = attPersBaseDao.getByInspGroupId(inspGroupId, isAll, persName, province);
- for (AttPersBase attPersBase : list) {
- String tel = attPersBase.getMobilenumb() == null ? AdCodeLabel.NULL_INIT_DATE : attPersBase.getMobilenumb();
- if (!tel.equals(AdCodeLabel.NULL_INIT_DATE)) {
- attPersBase.setMobilenumb(TelUtil.getTel(tel));
- }
- }
- return list;
- }
- @Override
- public List<AttPersBase> getExpertListByInspGroupId(String inspGroupId, String province) {
- return attPersBaseDao.getExpertListByInspGroupId(inspGroupId, province);
- }
- }
|