123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312 |
- package com.fdkankan.task.jobhandler.zfb;
- import cn.hutool.core.bean.BeanUtil;
- import com.alibaba.fastjson.JSON;
- import com.alibaba.fastjson.JSONArray;
- import com.alibaba.fastjson.JSONObject;
- import com.dingtalk.api.response.OapiServiceaccountListResponse;
- import com.fdkankan.dingtalk.DingTalkSendUtils;
- import com.fdkankan.task.entity.*;
- import com.fdkankan.task.jobhandler.sale.SaleXxlJobUtil;
- import com.fdkankan.task.jobhandler.util.Utils;
- import com.fdkankan.task.mapper.*;
- import com.mybatisflex.annotation.UseDataSource;
- import com.mybatisflex.core.datasource.DataSourceKey;
- import com.mybatisflex.core.query.QueryWrapper;
- import com.xxl.job.core.context.XxlJobHelper;
- import com.xxl.job.core.handler.annotation.XxlJob;
- import org.apache.commons.lang3.StringUtils;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Component;
- import java.util.*;
- /**
- * XxlJob开发示例(Bean模式)
- *
- * 开发步骤:
- * 1、任务开发:在Spring Bean实例中,开发Job方法;
- * 2、注解配置:为Job方法添加注解 "@XxlJob(value="自定义jobhandler名称", init = "JobHandler初始化方法", destroy = "JobHandler销毁方法")",注解value值对应的是调度中心新建任务的JobHandler属性的值。
- * 3、执行日志:需要通过 "XxlJobHelper.log" 打印执行日志;
- * 4、任务结果:默认任务结果为 "成功" 状态,不需要主动设置;如有诉求,比如设置任务结果为失败,可以通过 "XxlJobHelper.handleFail/handleSuccess" 自主设置任务结果;
- *
- * @author xuxueli 2019-12-11 21:52:51
- */
- @Component
- public class ZfbXxlJob {
- private static Logger logger = LoggerFactory.getLogger(ZfbXxlJob.class);
- @Autowired
- GenSceneNumService genSceneNumService;
- /**
- * 旧指房宝检测生成场景储备码
- */
- @XxlJob("oldZfbGenOldCode")
- @UseDataSource("old-zfb")
- public void zfbGenOldCode(){
- String taskId = UUID.randomUUID().toString().replace("-", "");
- logger.info("oldZfbGenOldCode---------------start,taskId:{}",taskId);
- try {
- Integer count = 10000;
- String param = XxlJobHelper.getJobParam(); // 获取参数
- if(StringUtils.isNotBlank(param) && Utils.isNumber(param)){
- count = Integer.valueOf(param);
- }
- genSceneNumService.genOldCode(count);
- }catch (Exception e){
- logger.info("oldZfbGenOldCode-error,taskId:{},{}",taskId,e);
- }finally {
- logger.info("oldZfbGenOldCode---------------end,taskId::{}",taskId);
- }
- }
- @XxlJob("newZfbGenOldCode")
- @UseDataSource("new-zfb")
- public void newZfbGenOldCode(){
- String taskId = UUID.randomUUID().toString().replace("-", "");
- logger.info("newZfbGenOldCode---------------start,taskId:{}",taskId);
- try {
- Integer count = 10000;
- String param = XxlJobHelper.getJobParam(); // 获取参数
- if(StringUtils.isNotBlank(param) && Utils.isNumber(param)){
- count = Integer.valueOf(param);
- }
- genSceneNumService.genOldCode(count);
- }catch (Exception e){
- logger.info("newZfbGenOldCode-error,taskId:{},{}",taskId,e);
- }finally {
- logger.info("newZfbGenOldCode---------------end,taskId::{}",taskId);
- }
- }
- @XxlJob("newZfbGenNewCode")
- @UseDataSource("new-zfb")
- public void newZfbGenNewCode(){
- String taskId = UUID.randomUUID().toString().replace("-", "");
- logger.info("newZfbGenNewCode---------------start,taskId:{}",taskId);
- try {
- Integer count = 10000;
- String param = XxlJobHelper.getJobParam(); // 获取参数
- if(StringUtils.isNotBlank(param) && Utils.isNumber(param)){
- count = Integer.valueOf(param);
- }
- genSceneNumService.genNewCode(count);
- }catch (Exception e){
- logger.info("newZfbGenNewCode-error,taskId:{},{}",taskId,e);
- }finally {
- logger.info("zfbGenOldCode---------------end,taskId::{}",taskId);
- }
- }
- @Autowired
- TbCameraInstanceMapper tbCameraInstanceMapper;
- @XxlJob("oldZfbCameraAdd")
- @UseDataSource("old-zfb")
- public void oldZfbCameraAdd(){
- String taskId = UUID.randomUUID().toString().replace("-", "");
- logger.info("oldZfbCameraAdd---------------start,taskId:{}",taskId);
- try {
- String param = XxlJobHelper.getJobParam(); // 获取参数
- if(StringUtils.isNotBlank(param)){
- JSONArray jsonArray = JSON.parseArray(param);
- for (Object object : jsonArray) {
- JSONObject jsonObject = (JSONObject) object;
- String childName = jsonObject.getString("childName");
- String userName = jsonObject.getString("userName");
- QueryWrapper queryWrapper = QueryWrapper.create()
- .where("child_name ='"+childName+"'");
- List<TbCameraInstance> tbCameraInstances = tbCameraInstanceMapper.selectListByQuery(queryWrapper);
- if(!tbCameraInstances.isEmpty()){
- logger.info("oldZfbCameraAdd-已存在-error:{}",childName);
- }
- TbCameraInstance tbCameraInstance = new TbCameraInstance();
- tbCameraInstance.setChildName(childName);
- tbCameraInstance.setActiveTime(new Date());
- tbCameraInstance.setCameraTypeId(1);
- tbCameraInstance.setChildPassword("4dkankan@4dage");
- tbCameraInstance.setWifiName(childName);
- tbCameraInstance.setWifiPassword("12345678");
- tbCameraInstance.setBalance("99999999");
- tbCameraInstance.setUserName(userName);
- tbCameraInstance.setOwn(0);
- tbCameraInstance.setCountry(0);
- tbCameraInstance.setAgency("4dage");
- tbCameraInstanceMapper.insert(tbCameraInstance);
- }
- }
- }catch (Exception e){
- logger.info("oldZfbCameraAdd-error,taskId:{},{}",taskId,e);
- }finally {
- logger.info("oldZfbCameraAdd---------------end,taskId::{}",taskId);
- }
- }
- @Autowired
- TbBuildingMapper tbBuildingMapper;
- @Autowired
- TbHouseMapper tbHouseMapper;
- @XxlJob("updateBuild")
- @UseDataSource("new-zfb")
- public void updateBuild(){
- String taskId = UUID.randomUUID().toString().replace("-", "");
- logger.info("newZfbGenNewCode---------------start,taskId:{}",taskId);
- try {
- HashMap<String,TbBuilding> buildMap = new HashMap<>();
- List<TbBuilding> tbBuildings = tbBuildingMapper.selectAll();
- List<TbBuilding> DelLit = new ArrayList<>();
- for (TbBuilding tbBuilding : tbBuildings) {
- String key = tbBuilding.getName()+","+tbBuilding.getCity()+","+tbBuilding.getDistrict();
- if(buildMap.get(key) == null){
- buildMap.put(tbBuilding.getName()+","+tbBuilding.getCity()+","+tbBuilding.getDistrict(),tbBuilding);
- }else {
- QueryWrapper queryWrapper = QueryWrapper.create()
- .where("building_id =" +tbBuilding.getId());
- List<TbHouse> tbHouses = tbHouseMapper.selectListByQuery(queryWrapper);
- for (TbHouse tbHouse : tbHouses) {
- tbHouse.setBuildingId(buildMap.get(key).getId());
- tbHouseMapper.update(tbHouse);
- }
- DelLit.add(tbBuilding);
- }
- }
- for (TbBuilding buildId : DelLit) {
- tbBuildingMapper.delete(buildId);
- }
- }catch (Exception e){
- logger.info("newZfbGenNewCode-error,taskId:{},{}",taskId,e);
- }finally {
- logger.info("zfbGenOldCode---------------end,taskId::{}",taskId);
- }
- }
- @Autowired
- TbSceneDeleteMapper tbSceneDeleteMapper;
- @Autowired
- TbHouseDeleteMapper tbHouseDeleteMapper;
- @XxlJob("updateDeleteStatus")
- @UseDataSource("old-zfb")
- public void updateDeleteStatus(){
- String param = XxlJobHelper.getJobParam(); // 获取参数
- QueryWrapper queryWrapper1 = QueryWrapper.create()
- .where("user_name ='" +param+"'");
- List<TbUser> tbUsers = tbUserMapper.selectListByQuery(queryWrapper1);
- if(tbUsers.isEmpty()){
- logger.info("用户不存在:{}",param);
- return;
- }
- TbUser tbUser = tbUsers.get(0);
- QueryWrapper queryWrapper = QueryWrapper.create()
- .where("user_id =" +tbUser.getId());
- List<TbSceneDelete> tbSceneDeletes = tbSceneDeleteMapper.selectListByQuery(queryWrapper);
- if(tbSceneDeletes.isEmpty()){
- logger.info("场景不存在删除的:{}",param);
- return;
- }
- for (TbSceneDelete tbSceneDelete : tbSceneDeletes) {
- TbScene tbScene = new TbScene();
- BeanUtil.copyProperties(tbSceneDelete,tbScene);
- tbSceneMapper.insert(tbScene);
- QueryWrapper queryWrapper2 = QueryWrapper.create()
- .where("id =" +tbSceneDelete.getHouseId());
- List<TbHouseDelete> tbHouseDeletes = tbHouseDeleteMapper.selectListByQuery(queryWrapper2);
- for (TbHouseDelete tbHouseDelete : tbHouseDeletes) {
- TbHouse tbHouse = new TbHouse();
- BeanUtil.copyProperties(tbHouseDelete,tbHouse);
- tbHouseMapper.insertOrUpdate(tbHouse);
- }
- }
- }
- @XxlJob("updateCompany")
- @UseDataSource("new-zfb")
- public void updateCompany(){
- String res[] = {
- };
- HashMap<String,String> map = new HashMap<>();
- for (String re : res) {
- String[] split = re.split(",");
- map.put(split[1],split[0]);
- }
- HashMap<String,Long> userMap = new HashMap<>();
- for (String key : map.keySet()) {
- QueryWrapper wrapper = QueryWrapper.create()
- .where("user_name='"+key+"'");
- List<TbUser> tbUsers = tbUserMapper.selectListByQuery(wrapper);
- if(tbUsers.size() >0){
- userMap.put(key,tbUsers.get(0).getId());
- }
- }
- for (String key : map.keySet()) {
- QueryWrapper queryWrapper = QueryWrapper.create()
- .where("user_id=" + map.get(key));
- List<TbScene> tbScenes = tbSceneMapper.selectListByQuery(queryWrapper);
- for (TbScene tbScene : tbScenes) {
- Long userId = userMap.get(key);
- if(userId != null){
- tbScene.setUserId(userId);
- tbSceneMapper.update(tbScene);
- }
- }
- }
- }
- @Autowired
- TbSceneMapper tbSceneMapper;
- @Autowired
- TbUserMapper tbUserMapper;
- @XxlJob("updateUserPassword")
- @UseDataSource("old-zfb")
- public void updateUserPassword(){
- String param = XxlJobHelper.getJobParam(); // 获取参数
- QueryWrapper queryWrapper1 = QueryWrapper.create()
- .where("user_name ='" +param+"'");
- List<TbUser> tbUsers = tbUserMapper.selectListByQuery(queryWrapper1);
- if(tbUsers.isEmpty()){
- logger.info("用户不存在:{}",param);
- return;
- }
- TbUser tbUser = tbUsers.get(0);
- tbUser.setUserPassword("gy123456");
- tbUserMapper.update(tbUser);
- }
- public static void main(String[] args) {
- JSONArray jsonArray = new JSONArray();
- String userName = "13967143520";
- String[] res = {
- "THETAYP41148397.OSC",
- "THETAYP41133486.OSC"
- };
- for (String re : res) {
- JSONObject jsonObject = new JSONObject();
- jsonObject.put("childName",re);
- jsonObject.put("userName",userName);
- jsonArray.add(jsonObject);
- }
- System.out.println(jsonArray);
- }
- }
|