| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158 |
- package cn.com.goldenwater.dcproj.service.impl.travel;
- import cn.com.goldenwater.core.service.AbstractCrudService;
- import cn.com.goldenwater.dcproj.dao.BisInspTravelPlanDayDao;
- import cn.com.goldenwater.dcproj.dao.BisInspTravelPlanPointDao;
- import cn.com.goldenwater.dcproj.model.AttAdBase;
- import cn.com.goldenwater.dcproj.model.BisInspTravelPlanDay;
- import cn.com.goldenwater.dcproj.model.BisInspTravelPlanPoint;
- import cn.com.goldenwater.dcproj.param.BisInspTravelPlanPointParam;
- import cn.com.goldenwater.dcproj.service.AttAdBaseService;
- import cn.com.goldenwater.dcproj.service.BisInspTravelPlanDayService;
- import cn.com.goldenwater.dcproj.service.BisInspTravelPlanPointService;
- import cn.com.goldenwater.id.util.UuidUtil;
- import org.apache.commons.lang3.StringUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- import java.util.Date;
- import java.util.List;
- /**
- * @author lhc
- * @date 2019-9-17
- */
- @Service
- @Transactional(rollbackFor = Exception.class)
- public class BisInspTravelPlanPointServiceImpl extends AbstractCrudService<BisInspTravelPlanPoint, BisInspTravelPlanPointParam> implements BisInspTravelPlanPointService {
- @Autowired
- private BisInspTravelPlanPointDao bisInspTravelPlanPointDao;
- @Autowired
- private BisInspTravelPlanDayService bisInspTravelPlanDayService;
- @Autowired
- private AttAdBaseService attAdBaseService;
- @Autowired
- private BisInspTravelPlanDayDao bisInspTravelPlanDayDao;
- public BisInspTravelPlanPointServiceImpl(BisInspTravelPlanPointDao bisInspTravelPlanPointDao) {
- super(bisInspTravelPlanPointDao);
- this.bisInspTravelPlanPointDao = bisInspTravelPlanPointDao;
- }
- public String getAdnmByAdCode(String adCode) {
- AttAdBase attAdBase = attAdBaseService.getByAdcode(adCode);
- return attAdBase.getAdName();
- }
- @Override
- public int insert(BisInspTravelPlanPoint bisInspTravelPlanPoint) {
- bisInspTravelPlanPoint.setIntm(new Date());
- bisInspTravelPlanPoint.setUptm(new Date());
- bisInspTravelPlanPoint.setId(UuidUtil.uuid());
- bisInspTravelPlanPoint.setDataStat("0");
- if (StringUtils.isNotBlank(bisInspTravelPlanPoint.getAddvcd())) {
- String addvcd = bisInspTravelPlanPoint.getAddvcd();
- String addvnm;
- if (addvcd.length() == 6) {
- addvnm = getAdnmByAdCode(addvcd.substring(0, 4) + "00000000");
- } else {
- addvnm = getAdnmByAdCode(addvcd);
- }
- bisInspTravelPlanPoint.setAddvnm(addvnm);
- }
- Integer ordr = bisInspTravelPlanPointDao.getMaxOne(bisInspTravelPlanPoint.getPlanDayId());
- if (null == ordr) {
- ordr = 1;
- } else {
- ordr = ordr + 1;
- }
- bisInspTravelPlanPoint.setOrdr(ordr);
- //插入路书Id
- BisInspTravelPlanDay bisInspTravelPlanDay = bisInspTravelPlanDayDao.get(bisInspTravelPlanPoint.getPlanDayId());
- bisInspTravelPlanPoint.setTravelPlanId(bisInspTravelPlanDay.getTravelPlanId());
- int row = bisInspTravelPlanPointDao.insert(bisInspTravelPlanPoint);
- updateTitle(bisInspTravelPlanPoint.getPlanDayId());
- return row;
- }
- @Override
- public int update(BisInspTravelPlanPoint bisInspTravelPlanPoint) {
- bisInspTravelPlanPoint.setUptm(new Date());
- int row = bisInspTravelPlanPointDao.update(bisInspTravelPlanPoint);
- updateTitle(bisInspTravelPlanPoint.getPlanDayId());
- return row;
- }
- @Override
- public int delete(String id) {
- BisInspTravelPlanPoint bisInspTravelPlanPoint = bisInspTravelPlanPointDao.get(id);
- String dayId = bisInspTravelPlanPoint.getPlanDayId();
- int row = bisInspTravelPlanPointDao.delete(id);
- updateTitle(dayId);
- return row;
- }
- @Override
- public List<BisInspTravelPlanPoint> getPointByDayId(String dayId) {
- return bisInspTravelPlanPointDao.getPointByDayId(dayId);
- }
- @Override
- public List<BisInspTravelPlanPoint> insertList(List<BisInspTravelPlanPoint> bisInspTravelPlanPoints) {
- //判断列表大于零,去出天id,删除所有的天Id位这个值得
- String dayPlanId = "";
- if (bisInspTravelPlanPoints.size() > 0) {
- dayPlanId = bisInspTravelPlanPoints.get(0).getPlanDayId();
- //删除这一天的所有点
- bisInspTravelPlanPointDao.deleteByDayId(dayPlanId);
- for (BisInspTravelPlanPoint bisInspTravelPlanPoint : bisInspTravelPlanPoints) {
- this.insert(bisInspTravelPlanPoint);
- }
- return bisInspTravelPlanPoints;
- } else {
- return null;
- }
- }
- /**
- * 根据日ID更新 行程经过点信息
- *
- * @param dayId 日行程ID
- * @return
- */
- public BisInspTravelPlanDay updateTitle(String dayId) {
- //根据日行程获取所有点信息
- List<BisInspTravelPlanPoint> bisInspTravelPlanPoints = getPointByDayId(dayId);
- if (bisInspTravelPlanPoints.size() > 0) {
- String title = "";
- String tempAddvcd = "";
- for (int i = 0; i < bisInspTravelPlanPoints.size(); i++) {
- if (StringUtils.isNotBlank(bisInspTravelPlanPoints.get(i).getAddvcd())) {
- String curentAddvcd = bisInspTravelPlanPoints.get(i).getAddvcd().substring(0, 2);
- String curentAddvnm = bisInspTravelPlanPoints.get(i).getAddvnm();
- if (!tempAddvcd.equalsIgnoreCase(curentAddvcd)) {
- title += curentAddvnm + "-";
- }
- tempAddvcd = curentAddvcd;
- }
- }
- if (title.length() > 0) {
- title = title.substring(0, title.length() - 1);
- }
- BisInspTravelPlanDay bisInspTravelPlanDay = new BisInspTravelPlanDay();
- bisInspTravelPlanDay.setId(dayId);
- bisInspTravelPlanDay.setTitle(title);
- bisInspTravelPlanDayService.update(bisInspTravelPlanDay);
- return bisInspTravelPlanDayService.get(dayId);
- } else {
- return bisInspTravelPlanDayService.get(dayId);
- }
- }
- }
|