| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287 |
- package cn.com.goldenwater.dcproj.service.impl.wdtst;
- import cn.com.goldenwater.core.service.AbstractCrudService;
- import cn.com.goldenwater.dcproj.constValue.BisInspEnum;
- import cn.com.goldenwater.dcproj.constValue.SplitValue;
- import cn.com.goldenwater.dcproj.constValue.StateEnum;
- import cn.com.goldenwater.dcproj.dao.BisInspAllObjDao;
- import cn.com.goldenwater.dcproj.dao.BisInspPblmDao;
- import cn.com.goldenwater.dcproj.dao.BisInspWtdstDao;
- import cn.com.goldenwater.dcproj.dao.BisInspWtdstTrackDao;
- import cn.com.goldenwater.dcproj.dto.BisInspWtdstBaseDto;
- import cn.com.goldenwater.dcproj.dto.BisInspWtdstDetailDto;
- import cn.com.goldenwater.dcproj.model.BisInspAllObj;
- import cn.com.goldenwater.dcproj.model.BisInspWtdst;
- import cn.com.goldenwater.dcproj.model.BisInspWtdstTrack;
- import cn.com.goldenwater.dcproj.param.BisInspAllObjParam;
- import cn.com.goldenwater.dcproj.param.BisInspPblmParam;
- import cn.com.goldenwater.dcproj.param.BisInspWtdstDtoListParam;
- import cn.com.goldenwater.dcproj.param.BisInspWtdstTrackParam;
- import cn.com.goldenwater.dcproj.param.TypeParam;
- import cn.com.goldenwater.dcproj.service.BisInspObjStrategy;
- import cn.com.goldenwater.dcproj.service.BisInspPblmService;
- import cn.com.goldenwater.dcproj.service.BisInspWtdstTrackService;
- import cn.com.goldenwater.dcproj.utils.AdLevelUtil;
- import cn.com.goldenwater.dcproj.utils.DateUtils;
- import cn.com.goldenwater.id.util.UuidUtil;
- import com.github.pagehelper.PageHelper;
- import com.github.pagehelper.PageInfo;
- import org.apache.commons.lang3.StringUtils;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.beans.BeanUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- import javax.servlet.http.HttpServletResponse;
- import java.util.ArrayList;
- import java.util.Date;
- import java.util.List;
- /**
- * @author 81229
- */
- @Service
- @Transactional(rollbackFor = Exception.class)
- public class BisInspWtdstTrackServiceImpl extends AbstractCrudService<BisInspWtdstTrack, BisInspWtdstTrackParam> implements BisInspWtdstTrackService ,BisInspObjStrategy {
- private Logger logger = LoggerFactory.getLogger(getClass());
- @Autowired
- private BisInspWtdstTrackDao bisInspWtdstTrackDao;
- @Autowired
- private BisInspWtdstDao bisInspWtdstDao;
- @Autowired
- private BisInspAllObjDao bisInspAllObjDao;
- @Autowired
- private BisInspPblmDao bisInspPblmDao;
- @Autowired
- private BisInspPblmService bisInspPblmService;
- public BisInspWtdstTrackServiceImpl(BisInspWtdstTrackDao bisInspWtdstTrackDao) {
- super(bisInspWtdstTrackDao);
- this.bisInspWtdstTrackDao = bisInspWtdstTrackDao;
- }
- @Override
- public String add(BisInspWtdstTrack p) throws Exception {
- if (StringUtils.isBlank(p.getObjId())) {
- throw new Exception("objId 不能为空!");
- }
- if (StringUtils.isBlank(p.getWtdstId())) {
- BisInspAllObjParam ap = new BisInspAllObjParam();
- ap.setObjId(p.getObjId());
- BisInspAllObj bisInspAllObj = bisInspAllObjDao.getBy(ap);
- if (bisInspAllObj != null) {
- p.setWtdstId(bisInspAllObj.getCode());
- } else {
- throw new Exception("wtdstId 不能为空!");
- }
- }
- String uuid = UuidUtil.uuid();
- String now = DateUtils.getTodayYMDHMS();
- p.setIntm(new Date());
- p.setUptm(new Date());
- p.setTrackId(uuid);
- this.insert(p);
- if (StringUtils.isNotBlank(p.getWtdstId())) {
- BisInspWtdst bisInspWtdst = new BisInspWtdst();
- bisInspWtdst.setWtdstId(p.getWtdstId());
- bisInspWtdst.setWtdstState(p.getWkstate());
- bisInspWtdst.setPlanRcvrTm(p.getPlanTm());
- bisInspWtdst.setWtdstDtle(p.getDisContent());
- bisInspWtdst.setUptm(new Date());
- bisInspWtdstDao.update(bisInspWtdst);
- }
- return uuid;
- }
- @Override
- public PageInfo<BisInspWtdstBaseDto> findPageByType(TypeParam typeParam) {
- if (StringUtils.isNotBlank(typeParam.getAdCode())) {
- typeParam.setAdCode(String.valueOf(AdLevelUtil.SubAd(typeParam.getAdCode()).get(SplitValue.SUBAD)));
- }
- PageHelper.startPage(typeParam);
- List<BisInspWtdstBaseDto> list = bisInspWtdstTrackDao.findPageByType(typeParam);
- PageInfo<BisInspWtdstBaseDto> pageInfo = new PageInfo(list);
- return pageInfo;
- }
- @Override
- public List<BisInspWtdstBaseDto> findListByType(TypeParam typeParam) {
- List<BisInspWtdstBaseDto> list = bisInspWtdstTrackDao.findPageByType(typeParam);
- if (list == null) {
- return new ArrayList<>();
- }
- return list;
- }
- @Override
- public int modify(BisInspWtdstTrack p) throws Exception {
- String now = DateUtils.getTodayYMDHMS();
- p.setUptm(new Date());
- if (StringUtils.isBlank(p.getTrackId())) {
- throw new Exception("trackId 不能为空!");
- }
- if (StringUtils.isBlank(p.getObjId())) {
- throw new Exception("objId 不能为空!");
- }
- // if (StringUtils.isBlank(p.getWtdstId())) {
- // BisInspAllObjParam ap = new BisInspAllObjParam();
- // ap.setObjId(p.getObjId());
- // BisInspAllObj bisInspAllObj = bisInspAllObjDao.getBy(ap);
- // if (bisInspAllObj != null) {
- // p.setWtdstId(bisInspAllObj.getCode());
- // } else {
- // throw new Exception("wtdstId 不能为空!");
- // }
- // }
- int ret = bisInspWtdstTrackDao.update(p);
- // if (StringUtils.isNotBlank(p.getWtdstId())) {
- // BisInspWtdst bisInspWtdst = new BisInspWtdst();
- // bisInspWtdst.setWtdstId(p.getWtdstId());
- // bisInspWtdst.setWtdstState(p.getWkstate());
- // bisInspWtdst.setPlanRcvrTm(p.getPlanTm());
- // bisInspWtdst.setWtdstDtle(p.getDisContent());
- // bisInspWtdst.setUptm(new Date());
- // bisInspWtdstDao.update(bisInspWtdst);
- // }
- // 更新问题状态
- updatePblmState(p);
- return ret;
- }
- private void updatePblmState(BisInspWtdstTrack rgstr) {
- BisInspWtdstTrack r = get(rgstr.getWtdstId());
- if (r == null) {
- return;
- }
- logger.info("BisInspWtdstTrack:" + r.toString());
- bisInspPblmService.updateStateByObjId(r.getObjId(), rgstr.getState());
- }
- @Override
- public PageInfo<BisInspWtdstTrack> queryListByPage(BisInspWtdstTrackParam p) throws Exception {
- PageHelper.startPage(p.getPageNum(), p.getPageSize());
- List<BisInspWtdstTrack> list = bisInspWtdstTrackDao.findList(p);
- return new PageInfo<BisInspWtdstTrack>(list);
- }
- @Override
- public List<BisInspWtdstTrack> queryList(BisInspWtdstTrackParam p) throws Exception {
- List<BisInspWtdstTrack> list = bisInspWtdstTrackDao.findList(p);
- return list;
- }
- @Override
- public List<BisInspWtdstTrack> queryListByPersId(String id,String orgId) throws Exception {
- List<BisInspWtdstTrack> list = bisInspWtdstTrackDao.queryListByPersId(id,orgId);
- return list;
- }
- @Override
- public BisInspWtdstTrack getByObjId(String id) throws Exception {
- BisInspWtdstTrackParam param = new BisInspWtdstTrackParam();
- param.setObjId(id);
- BisInspWtdstTrack bisInspWtdstTrack = bisInspWtdstTrackDao.getBy(param);
- if (bisInspWtdstTrack == null) {
- BisInspWtdstDtoListParam bisInspWtdstDtoListParam = new BisInspWtdstDtoListParam();
- bisInspWtdstDtoListParam.setObjId(id);
- List<BisInspWtdstDetailDto> list = bisInspWtdstDao.findDtoList(bisInspWtdstDtoListParam);
- if (list != null && list.size() > 0) {
- BisInspWtdstDetailDto wtdstDetailDto = list.get(0);
- BisInspWtdstTrack p = new BisInspWtdstTrack();
- String uuid1 = UuidUtil.uuid();
- p.setIntm(new Date());
- p.setUptm(new Date());
- p.setTrackId(uuid1);
- p.setObjId(wtdstDetailDto.getObjId());
- p.setObjNm(wtdstDetailDto.getWtdstNm());
- p.setLoac(wtdstDetailDto.getLocNm());
- p.setDisContent(wtdstDetailDto.getDisContent());
- // p.setPlanTm(wtdstDetailDto.getPlanTm());
- p.setDataStat("0");
- p.setAdCode(wtdstDetailDto.getLocAd());
- p.setCost(wtdstDetailDto.getCost());
- p.setPlanRcvr(wtdstDetailDto.getPlanRcvr());
- p.setOrgId(wtdstDetailDto.getOrgId());
- this.insert(p);
- bisInspWtdstTrack = p;
- }
- }
- return bisInspWtdstTrack;
- }
- @Override
- public int insert(BisInspWtdstTrack b) {
- int ret = 1;
- BisInspWtdstTrackParam bisInspWtdstTrackParam = new BisInspWtdstTrackParam();
- bisInspWtdstTrackParam.setObjId(b.getObjId());
- List<BisInspWtdstTrack> list = bisInspWtdstTrackDao.findList(bisInspWtdstTrackParam);
- if (list == null || list.size() == 0) {
- ret = bisInspWtdstTrackDao.insert(b);
- }
- return ret;
- }
- @Override
- public void insertObj(BisInspAllObj bisInspAllObj, String persId) {
- BisInspWtdst bisInspWtdst = bisInspWtdstDao.get(bisInspAllObj.getCode());
- BisInspWtdstTrack p = new BisInspWtdstTrack();
- BeanUtils.copyProperties(bisInspWtdst, p);
- String uuid1 = UuidUtil.uuid();
- String now = DateUtils.getTodayYMDHMS();
- p.setIntm(new Date());
- p.setUptm(new Date());
- p.setTrackId(uuid1);
- p.setObjId(bisInspAllObj.getObjId());
- p.setObjNm(bisInspAllObj.getNm());
- p.setLoac(bisInspWtdst.getLocNm());
- p.setDisContent(bisInspWtdst.getWtdstDtle());
- p.setPlanTm(bisInspWtdst.getPlanRcvrTm());
- p.setAdCode(bisInspWtdst.getLocAd());
- p.setDataStat(StateEnum.NOWASTSTATE.getKey());
- bisInspWtdstTrackDao.insert(p);
- }
- @Override
- public String getType() {
- return BisInspEnum.TRACK.getValue();
- }
- @Override
- public void cleanObjData(String objId) {
- BisInspWtdstTrackParam bisInspWtdstTrackParam = new BisInspWtdstTrackParam();
- bisInspWtdstTrackParam.setObjId(objId);
- List<BisInspWtdstTrack> list = this.bisInspWtdstTrackDao.findList(bisInspWtdstTrackParam);
- if (list.size() > 0) {
- String id = list.get(0).getTrackId();
- BisInspPblmParam bisInspPblmParam = new BisInspPblmParam();
- bisInspPblmParam.setRegid(id);
- bisInspPblmParam.setObjType(BisInspEnum.TRACK.getValue());
- this.bisInspPblmDao.deleteBy(bisInspPblmParam);//删除问题
- this.bisInspWtdstTrackDao.delete(id);//删除登记表
- BisInspAllObjParam bisInspAllObjParam = new BisInspAllObjParam();
- bisInspAllObjParam.setObjId(objId);
- this.bisInspAllObjDao.deleteBy(bisInspAllObjParam);
- }
- else {
- BisInspAllObjParam bisInspAllObjParam = new BisInspAllObjParam();
- bisInspAllObjParam.setObjId(objId);
- this.bisInspAllObjDao.deleteBy(bisInspAllObjParam);
- }
- }
- @Override
- public PageInfo findObjPageByType(TypeParam typeParam, HttpServletResponse response) {
- return this.findPageByType(typeParam);
- }
- @Override
- public Object findObjListByType(TypeParam typeParam) {
- return this.findListByType(typeParam);
- }
- }
|