diff --git a/src/main/java/com/xkrs/controller/DispatchFirePointController.java b/src/main/java/com/xkrs/controller/DispatchFirePointController.java index f8de342..5be8664 100644 --- a/src/main/java/com/xkrs/controller/DispatchFirePointController.java +++ b/src/main/java/com/xkrs/controller/DispatchFirePointController.java @@ -6,24 +6,19 @@ import com.xkrs.dao.FirePointPreciseDao; import com.xkrs.dao.StreetDao; import com.xkrs.dao.SysUserDao; import com.xkrs.helper.FirePointSubscribeManager; -import com.xkrs.model.bean.VipTimeRangeBean; -import com.xkrs.model.entity.SysUserEntity; import com.xkrs.model.qo.AllFirePointQo; import com.xkrs.service.DispatchFirePointService; import com.xkrs.service.impl.FirePointServiceImpl; -import com.xkrs.utilsnew.JsonUtils; -import com.xkrs.utilsold.DateTimeUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.context.i18n.LocaleContextHolder; +import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.List; import java.util.Locale; import static com.xkrs.common.encapsulation.OutputEncapsulation.outputEncapsulationObject; @@ -49,41 +44,37 @@ public class DispatchFirePointController { @GetMapping("/debug") public String debug() { - System.out.println("开始更新用户VIP时间范围"); - - List sysUserEntityList = sysUserDao.findAll(); - for (SysUserEntity sysUserEntity : sysUserEntityList) { - String addTime = sysUserEntity.getAddTime(); - String vipTimeRangeJson = sysUserEntity.getVipTimeRangeJson(); - if (!DateTimeUtil.isValidDateTime(addTime)) { - return sysUserEntity.getUserName(); - } - if (!DateTimeUtil.isValidDateTime(vipTimeRangeJson)) { - return sysUserEntity.getUserName(); - } - VipTimeRangeBean.VipTimeRangeItemBean vipTimeRangeItemBean = new VipTimeRangeBean.VipTimeRangeItemBean(); - vipTimeRangeItemBean.setStartTime(addTime); - vipTimeRangeItemBean.setEndTime(vipTimeRangeJson); - List list = new ArrayList<>(); - list.add(vipTimeRangeItemBean); - VipTimeRangeBean vipTimeRangeBean = new VipTimeRangeBean(); - vipTimeRangeBean.setList(list); - String serialize = JsonUtils.serialize(vipTimeRangeBean); - System.out.println("serialize = " + serialize); - sysUserEntity.setVipTimeRangeJson(serialize); - sysUserDao.save(sysUserEntity); - } - - System.out.println("开始更新省编码市编码"); - firePointOrdinaryDao.updateProCityCode(); - System.out.println("开始更新省名市名"); - firePointOrdinaryDao.updateProCityName(); - -// for (int i = 0; i < 30; i++) { -// firePointOrdinaryDao.updateProCityCodeById((long) i); -// firePointOrdinaryDao.updateProCityNameById((long) i); +// System.out.println("开始更新用户VIP时间范围"); +// +// List sysUserEntityList = sysUserDao.findAll(); +// for (SysUserEntity sysUserEntity : sysUserEntityList) { +// String addTime = sysUserEntity.getAddTime(); +// String vipTimeRangeJson = sysUserEntity.getVipTimeRangeJson(); +// if (!DateTimeUtil.isValidDateTime(addTime)) { +// return sysUserEntity.getUserName(); +// } +// if (!DateTimeUtil.isValidDateTime(vipTimeRangeJson)) { +// return sysUserEntity.getUserName(); +// } +// VipTimeRangeBean.VipTimeRangeItemBean vipTimeRangeItemBean = new VipTimeRangeBean.VipTimeRangeItemBean(); +// vipTimeRangeItemBean.setStartTime(addTime); +// vipTimeRangeItemBean.setEndTime(vipTimeRangeJson); +// List list = new ArrayList<>(); +// list.add(vipTimeRangeItemBean); +// VipTimeRangeBean vipTimeRangeBean = new VipTimeRangeBean(); +// vipTimeRangeBean.setList(list); +// String serialize = JsonUtils.serialize(vipTimeRangeBean); +// System.out.println("serialize = " + serialize); +// sysUserEntity.setVipTimeRangeJson(serialize); +// sysUserDao.save(sysUserEntity); // } + for (int i = 0; i < 462; i++) { + firePointOrdinaryDao.updateProCityCode(i * 5000L, (i + 1) * 5000L); + firePointOrdinaryDao.updateProCityName(i * 5000L, (i + 1) * 5000L); + System.out.println(i + "/" + 462); + } + return outputEncapsulationObject(PromptMessageEnum.SUCCESS, "OKKKK", locale); } diff --git a/src/main/java/com/xkrs/dao/FirePointOrdinaryDao.java b/src/main/java/com/xkrs/dao/FirePointOrdinaryDao.java index be1248b..68545ec 100644 --- a/src/main/java/com/xkrs/dao/FirePointOrdinaryDao.java +++ b/src/main/java/com/xkrs/dao/FirePointOrdinaryDao.java @@ -6,24 +6,19 @@ import org.springframework.data.jpa.repository.JpaSpecificationExecutor; import org.springframework.data.jpa.repository.Modifying; import org.springframework.data.jpa.repository.Query; import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; @Component public interface FirePointOrdinaryDao extends JpaRepository, JpaSpecificationExecutor { - @Query(value = "UPDATE fire_point_ordinary SET pro_code = concat(left(county_code, 2), '0000'), city_code = concat(left(county_code, 4), '00')", nativeQuery = true) + @Query(value = "UPDATE fire_point_ordinary SET pro_code = concat(left(county_code, 2), '0000'), city_code = concat(left(county_code, 4), '00') WHERE id BETWEEN ?1 AND ?2", nativeQuery = true) @Modifying(clearAutomatically = true) - void updateProCityCode(); + @Transactional(rollbackFor = Exception.class) + void updateProCityCode(Long startId, Long endId); - @Query(value = "UPDATE fire_point_ordinary AS f SET pro_name = (SELECT s.pro_name AS proname FROM street AS s WHERE s.pro_code = f.pro_code LIMIT 1), city_name = (SELECT s.city_name AS cityname FROM street AS s WHERE s.city_code = f.city_code LIMIT 1)", nativeQuery = true) + @Query(value = "UPDATE fire_point_ordinary AS f SET pro_name = (SELECT s.pro_name AS proname FROM street AS s WHERE s.pro_code = f.pro_code LIMIT 1), city_name = (SELECT s.city_name AS cityname FROM street AS s WHERE s.city_code = f.city_code LIMIT 1) WHERE id BETWEEN ?1 AND ?2", nativeQuery = true) @Modifying(clearAutomatically = true) - void updateProCityName(); - - @Query(value = "UPDATE fire_point_ordinary SET pro_code = concat(left(county_code, 2), '0000'), city_code = concat(left(county_code, 4), '00') WHERE id = ?1", nativeQuery = true) - @Modifying(clearAutomatically = true) - void updateProCityCodeById(Long id); - - @Query(value = "UPDATE fire_point_ordinary AS f SET pro_name = (SELECT s.pro_name AS proname FROM street AS s WHERE s.pro_code = f.pro_code LIMIT 1), city_name = (SELECT s.city_name AS cityname FROM street AS s WHERE s.city_code = f.city_code LIMIT 1) WHERE id = ?1", nativeQuery = true) - @Modifying(clearAutomatically = true) - void updateProCityNameById(Long id); + @Transactional(rollbackFor = Exception.class) + void updateProCityName(Long startId, Long endId); }