Merge remote-tracking branch 'origin/master'
| | |
| | | |
| | | @ApiOperation("å页æ¥è¯¢") |
| | | @PostMapping("/page") |
| | | @RequiresPermissions("business:cars:query") |
| | | // @RequiresPermissions("business:cars:query") |
| | | public ApiResponse<PageData<Cars>> findPage (@RequestBody PageWrap<Cars> pageWrap) { |
| | | return ApiResponse.success(carsService.findPage(pageWrap)); |
| | | } |
| | |
| | | |
| | | @ApiOperation("å页æ¥è¯¢") |
| | | @PostMapping("/page") |
| | | @RequiresPermissions("business:parkbook:query") |
| | | // @RequiresPermissions("business:parkbook:query") |
| | | public ApiResponse<PageData<ParkBook>> findPage (@RequestBody PageWrap<ParkBook> pageWrap) { |
| | | return ApiResponse.success(parkBookService.findPage(pageWrap)); |
| | | } |
| | |
| | | return ApiResponse.success(parksService.findPage(pageWrap)); |
| | | } |
| | | |
| | | @ApiOperation("æå±å车åºå表") |
| | | @PostMapping("/findList") |
| | | @RequiresPermissions("business:parks:query") |
| | | public ApiResponse<List<Parks>> findList (@RequestBody Parks parks) { |
| | | return ApiResponse.success(parksService.findList(parks)); |
| | | } |
| | | |
| | | @ApiOperation("导åºExcel") |
| | | @PostMapping("/exportExcel") |
| | | @RequiresPermissions("business:parks:exportExcel") |
| | |
| | | package com.doumee.task; |
| | | |
| | | |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import org.apache.http.client.methods.CloseableHttpResponse; |
| | | import org.apache.http.client.methods.HttpGet; |
| | | import org.apache.http.client.utils.URIBuilder; |
| | | import org.apache.http.impl.client.CloseableHttpClient; |
| | | import org.apache.http.impl.client.HttpClients; |
| | | import org.apache.http.util.EntityUtils; |
| | | import com.doumee.service.business.impl.hksync.HkSyncImgServiceImpl; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.scheduling.annotation.EnableScheduling; |
| | | import org.springframework.scheduling.annotation.Scheduled; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | import java.io.IOException; |
| | | import java.net.URI; |
| | | import java.util.Date; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * 宿¶ä»»å¡ |
| | |
| | | @EnableScheduling |
| | | public class ScheduleTool { |
| | | |
| | | |
| | | @Autowired |
| | | private SystemDictDataBiz systemDictDataBiz; |
| | | private HkSyncImgServiceImpl hkSyncImgService; |
| | | /** |
| | | * æ¯å¦å¼åè
|
| | | */ |
| | |
| | | * ç¼åçå¸åº |
| | | * @throws Exception |
| | | */ |
| | | @Scheduled(fixedDelay=24*60*60*1000) |
| | | public void cacheCampus() throws Exception { |
| | | } |
| | | /** |
| | | * æ¯å¤©åæ¨éç½®ææè®¢åcodeç±»åå§å¼ |
| | | * @throws Exception |
| | | */ |
| | | @Scheduled(cron="0 0 0 * * ?") |
| | | public void resetOrderCodes() throws Exception { |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * åégetè¯·æ± |
| | | * @param url 请æ±URL |
| | | * @param param 请æ±åæ° key:value urlæºå¸¦åæ° æè
æ åå¯ä¸å¡« |
| | | * @return |
| | | */ |
| | | public String doGet(String url, Map<String, String> param) { |
| | | // å建Httpclient对象 |
| | | CloseableHttpClient httpclient = HttpClients.createDefault(); |
| | | String resultString = ""; |
| | | CloseableHttpResponse response = null; |
| | | try { |
| | | // å建uri |
| | | URIBuilder builder = new URIBuilder(url); |
| | | if (param != null) { |
| | | for (String key : param.keySet()) { |
| | | builder.addParameter(key, param.get(key)); |
| | | } |
| | | } |
| | | URI uri = builder.build(); |
| | | // å建http GETè¯·æ± |
| | | HttpGet httpGet = new HttpGet(uri); |
| | | // æ§è¡è¯·æ± |
| | | response = httpclient.execute(httpGet); |
| | | // 夿è¿åç¶ææ¯å¦ä¸º200 |
| | | if (response.getStatusLine().getStatusCode() == 200) { |
| | | resultString = EntityUtils.toString(response.getEntity(), "UTF-8"); |
| | | } |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } finally { |
| | | try { |
| | | if (response != null) { |
| | | response.close(); |
| | | } |
| | | httpclient.close(); |
| | | } catch (IOException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | return resultString; |
| | | @Scheduled(fixedDelay= 60*1000) |
| | | public void downloadHkImg() throws Exception { |
| | | hkSyncImgService.downHKImgs(0); |
| | | } |
| | | |
| | | } |
| | |
| | | |
| | | @Data |
| | | public class HKConstants { |
| | | public static final String IMG_INDEX ="HKIMG_" ; |
| | | public static final String IMG_INDEX_ERROR ="HKIMG_ERROR=" ; |
| | | public static final String IMG_INDEX ="HKIMG=" ; |
| | | public static final String IMG_INDEX_ERROR ="HKIMG=ERROR=" ; |
| | | private Logger logger = LoggerFactory.getLogger(HKConstants.class); |
| | | //æµ·åº·å¹³å°æ ¹æ®ç°åºç¯å¢é
ç½®httpè¿æ¯https |
| | | public static final String RESPONSE_SUCCEE = "0"; |
| | |
| | | String eventSub= "/api/eventService/v1/eventSubscriptionByEventTypes";//äºä»¶è®¢é
|
| | | String doorSearch= "/api/resource/v2/door/search";//æ¥è¯¢é¨ç¦ç¹å表v2 |
| | | String cancelEventSub= "/api/eventService/v1/eventUnSubscriptionByEventTypes";//åæ¶äºä»¶è®¢é
|
| | | String visitPicture= "/api/visitor/v1/record/pictures";//è·å访客记å½ä¸çå¾ç |
| | | String devicePicture= "/api/acs/v1/event/pictures";//è·åé¨ç¦äºä»¶çå¾ç |
| | | String carPicture= "/api/pms/v1/image";//æ¥è¯¢è½¦è¾ææå¾ç |
| | | } |
| | | |
| | | /** |
| | |
| | | this.name = name; |
| | | this.key = key; |
| | | } |
| | | |
| | | |
| | | |
| | | // get set æ¹æ³ |
| | |
| | | } |
| | | } |
| | | /** |
| | | * è·å访客记å½ä¸çå¾ç |
| | | * @param body |
| | | * @return |
| | | */ |
| | | public static InputStream getVisitPicture(String body) throws Exception{ |
| | | |
| | | Map<String, String> path = getPath(HKConstants.InterfacePath.visitPicture); |
| | | //åæ°æ ¹æ®æ¥å£å®é
æ
åµè®¾ç½® |
| | | HttpResponse resp = ArtemisHttpUtil.doPostStringImgArtemis( path, body, null, null,"application/json",null); |
| | | if (200==resp.getStatusLine().getStatusCode()) { |
| | | HttpEntity entity = resp.getEntity(); |
| | | InputStream in = entity.getContent(); |
| | | return in; |
| | | }else{ |
| | | throw new Exception("è·å访客记å½ä¸çå¾çä¸è½½åºé"); |
| | | } |
| | | } |
| | | /** |
| | | * è·åé¨ç¦äºä»¶çå¾ç |
| | | * @param body |
| | | * @return |
| | | */ |
| | | public static InputStream getDevicePicture(String body) throws Exception{ |
| | | |
| | | Map<String, String> path = getPath(HKConstants.InterfacePath.devicePicture); |
| | | //åæ°æ ¹æ®æ¥å£å®é
æ
åµè®¾ç½® |
| | | HttpResponse resp = ArtemisHttpUtil.doPostStringImgArtemis( path, body, null, null,"application/json",null); |
| | | if (200==resp.getStatusLine().getStatusCode()) { |
| | | HttpEntity entity = resp.getEntity(); |
| | | InputStream in = entity.getContent(); |
| | | return in; |
| | | }else{ |
| | | throw new Exception("è·åé¨ç¦äºä»¶çå¾çä¸è½½åºé"); |
| | | } |
| | | } |
| | | /** |
| | | * æ¥è¯¢è½¦è¾ææå¾ç |
| | | * @param body |
| | | * @return |
| | | */ |
| | | public static InputStream getCarPicture(String body) throws Exception{ |
| | | |
| | | Map<String, String> path = getPath(HKConstants.InterfacePath.carPicture); |
| | | //åæ°æ ¹æ®æ¥å£å®é
æ
åµè®¾ç½® |
| | | HttpResponse resp = ArtemisHttpUtil.doPostStringImgArtemis( path, body, null, null,"application/json",null); |
| | | if (200==resp.getStatusLine().getStatusCode()) { |
| | | HttpEntity entity = resp.getEntity(); |
| | | InputStream in = entity.getContent(); |
| | | return in; |
| | | }else{ |
| | | throw new Exception("æ¥è¯¢è½¦è¾ææå¾çä¸è½½åºé"); |
| | | } |
| | | } |
| | | /** |
| | | * è·åé¨ç¦ç¹å表 |
| | | * @param body |
| | | * @return |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.haikang.model.param.request; |
| | | |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class CarPictureRequest { |
| | | |
| | | private String aswSyscode;// string True å¾çæå¡å¯ä¸æ è¯ç ï¼æå¤§é¿åº¦64ï¼ ä»å
¶ä»è¿åå¾çUriæ¥å£å¤è·å |
| | | private String picUri ;//string True å¾çUriï¼æå¤§é¿åº¦256ï¼ |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.haikang.model.param.request; |
| | | |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class DevicePictureRequest { |
| | | |
| | | private String svrIndexCode ;// string True æä¾picUriå¤ä¼æä¾æ¤å段 |
| | | private String picUri ;// string True å¾çç¸å¯¹å°å |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.haikang.model.param.request; |
| | | |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class VisitPictureRequest { |
| | | |
| | | private String svrIndexCode ;// string True æä¾picUriå¤ä¼æä¾æ¤å段 |
| | | private String picUri ;// string True å¾çç¸å¯¹å°å |
| | | |
| | | } |
| | |
| | | package com.doumee.core.haikang.service; |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import com.doumee.core.haikang.model.param.request.*; |
| | | import com.doumee.core.haikang.model.param.respose.*; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.alibaba.fastjson.TypeReference; |
| | | import com.doumee.core.haikang.model.HKConstants; |
| | | import com.doumee.core.haikang.model.HKTools; |
| | | import com.doumee.core.haikang.model.param.BaseRequst; |
| | | import com.doumee.core.haikang.model.param.BaseResponse; |
| | | import com.doumee.dao.business.model.InterfaceLog; |
| | | import com.doumee.service.business.InterfaceLogService; |
| | | import com.hikvision.artemis.sdk.config.ArtemisConfig; |
| | | import com.doumee.core.haikang.model.param.request.*; |
| | | import com.doumee.core.haikang.model.param.respose.*; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | 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.Service; |
| | | |
| | | import javax.annotation.PostConstruct; |
| | | import com.alibaba.fastjson.TypeReference; |
| | | |
| | | import java.io.InputStream; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | @Slf4j |
| | |
| | | } |
| | | return null; |
| | | } |
| | | /** |
| | | * è·å访客记å½ä¸çå¾ç |
| | | * @return |
| | | */ |
| | | public static InputStream getVisitPicture(VisitPictureRequest param) { |
| | | log.info("ãæµ·åº·è®¿å®¢å¾çæµã================å¼å§===="+JSONObject.toJSONString(param)); |
| | | try { |
| | | InputStream res = HKTools.getVisitPicture(JSONObject.toJSONString(param)); |
| | | log.error("ãæµ·åº·è®¿å®¢å¾çæµã================æå====\n"); |
| | | return res; |
| | | }catch (Exception e){ |
| | | log.error("ãæµ·åº·è®¿å®¢å¾çæµã================失败====ï¼\n"+ e.getMessage()); |
| | | } |
| | | return null; |
| | | } |
| | | /** |
| | | * è·åé¨ç¦äºä»¶çå¾ç |
| | | * @return |
| | | */ |
| | | public static InputStream getDevicePicture(DevicePictureRequest param) { |
| | | log.info("ãæµ·åº·é¨ç¦äºä»¶å¾çæµã================å¼å§===="+JSONObject.toJSONString(param)); |
| | | try { |
| | | InputStream res = HKTools.getDevicePicture(JSONObject.toJSONString(param)); |
| | | log.error("ãæµ·åº·é¨ç¦äºä»¶å¾çæµã================æå====\n"); |
| | | return res; |
| | | }catch (Exception e){ |
| | | log.error("ãæµ·åº·é¨ç¦äºä»¶å¾çæµã================失败====ï¼\n"+ e.getMessage()); |
| | | } |
| | | return null; |
| | | } |
| | | /** |
| | | * æ¥è¯¢è½¦è¾ææå¾ç |
| | | * @return |
| | | */ |
| | | public static InputStream getCarPicture(CarPictureRequest param) { |
| | | log.info("ãæµ·åº·è½¦è¾ææå¾çå¾çæµã================å¼å§===="+JSONObject.toJSONString(param)); |
| | | try { |
| | | InputStream res = HKTools.getCarPicture(JSONObject.toJSONString(param)); |
| | | log.error("ãæµ·åº·è½¦è¾ææå¾çå¾çæµã================æå====\n"); |
| | | return res; |
| | | }catch (Exception e){ |
| | | log.error("ãæµ·åº·è½¦è¾ææå¾çå¾çæµã================失败====ï¼\n"+ e.getMessage()); |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | /** |
| | | *è·å车åºåè¡¨æ°æ®ï¼å
¨éï¼ |
| | |
| | | package com.doumee.core.model.openapi.request; |
| | | |
| | | import com.doumee.core.haikang.model.param.BaseRequst; |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | |
| | | */ |
| | | @Data |
| | | @ApiModel("访客ç³è¯·å®¡æ¹ç»æéç¥è¯·æ±ä¿¡æ¯") |
| | | public class ApproveNoticeRequest { |
| | | public class ApproveNoticeRequest extends BaseRequst { |
| | | @ApiModelProperty(value = "审æ¹è®°å½å¯ä¸æ è¯ï¼ERP端IDï¼" ,example = "1") |
| | | private Integer id; |
| | | @ApiModelProperty(value = "审æ¹ç»æ 0-ä¸éè¿ 1-éè¿,é»è®¤ 0" ,example = "1") |
| | | private Integer status; |
| | | @ApiModelProperty(value = "å®¡æ ¸æ¶é´" ) |
| | | @ApiModelProperty(value = "å®¡æ ¸æ¶é´ yyyy-MM-dd HH:mm:ss" ) |
| | | private String approveDate ; |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.model.openapi.request.erp; |
| | | |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author æ±è¹è¹ |
| | | * @date 2023/11/23 14:03 |
| | | */ |
| | | @Data |
| | | @ApiModel(value = "åå·¥åæ¥å¤±è´¥æ¨é请æ±åæ°" ) |
| | | public class MemberFailRequest { |
| | | |
| | | @ApiModelProperty(value = "åå·¥id" ) |
| | | private String userId; |
| | | @ApiModelProperty(value = "失败类å 0人ååæ¥å¤±è´¥ 1æéä¸å失败 " ) |
| | | private Integer type; |
| | | |
| | | @ApiModelProperty(value = "夿³¨ä¿¡æ¯ï¼æè¿°å¤±è´¥åå ") |
| | | private String info; |
| | | |
| | | } |
| | |
| | | public static final String FILE_DIR = ""; |
| | | // 访客æ¥è®¿é
ç½® |
| | | public static final String VISIT_CONFIG = "VISIT_CONFIG"; |
| | | public static final String MEMBER_IMG = "MEMBER_IMG"; |
| | | // å³å¡æ¥è®¿é
ç½® |
| | | public static final String LABOR_CONFIG = "LABOR_CONFIG"; |
| | | public static final String VISIT_EVENT_IMG = "VISIT_EVENT_IMG"; |
| | | public static final String CAR_EVENT_IMG = "CAR_EVENT_IMG"; |
| | | public static final String DEVICE_EVENT_IMG = "DEVICE_EVENT_IMG"; |
| | | public static final String FTP ="FTP" ; |
| | | public static final String FTP_HOST ="FTP_HOST" ; |
| | | public static final String FTP_PORT ="FTP_PORT" ; |
| | | public static final String FTP_USERNAME ="FTP_USERNAME" ; |
| | | public static final String FTP_PWD ="FTP_PWD" ; |
| | | public static final String FTP_RESOURCE_PATH ="FTP_RESOURCE_PATH" ; |
| | | public static boolean DEALING_HK_IMG = false; |
| | | // ERPæ¥å£é
ç½® |
| | | public static final String ERP_CONFIG = "ERP_CONFIG"; |
| | |
| | | @Slf4j |
| | | public class FtpUtil { |
| | | public FTPClient ftpClient = new FTPClient(); |
| | | public static String hostname; |
| | | public static int port; |
| | | public static String username; |
| | | public static String password; |
| | | |
| | | public FtpUtil() { |
| | | // 设置å°è¿ç¨ä¸ä½¿ç¨å°çå½ä»¤è¾åºå°æ§å¶å° |
| | |
| | | public FtpUtil(String hostname, int port, String username, String password) |
| | | throws IOException { |
| | | // 设置å°è¿ç¨ä¸ä½¿ç¨å°çå½ä»¤è¾åºå°æ§å¶å° |
| | | connect(hostname, port, username, password); |
| | | FtpUtil.hostname =hostname; |
| | | FtpUtil.port =port; |
| | | FtpUtil.username =username; |
| | | FtpUtil.password =password; |
| | | connect(); |
| | | } |
| | | |
| | | /** */ |
| | | /** |
| | | * è¿æ¥å°FTPæå¡å¨ |
| | | * |
| | | * @param hostname |
| | | * 主æºå |
| | | * @param port |
| | | * ç«¯å£ |
| | | * @param username |
| | | * ç¨æ·å |
| | | * @param password |
| | | * å¯ç |
| | | * @return æ¯å¦è¿æ¥æå |
| | | * @throws IOException |
| | | */ |
| | | public boolean connect(String hostname, int port, String username, |
| | | String password) throws IOException { |
| | | public boolean connect() throws IOException { |
| | | ftpClient.connect(hostname, port); |
| | | ftpClient.setControlEncoding("GBK"); |
| | | if (FTPReply.isPositiveCompletion(ftpClient.getReplyCode())) { |
| | |
| | | } |
| | | return result; |
| | | } |
| | | public boolean uploadInputstream(InputStream inputStream, String remote) { |
| | | // 设置PassiveModeä¼ è¾ |
| | | try { |
| | | ftpClient.enterLocalPassiveMode(); |
| | | |
| | | // 设置以äºè¿å¶æµçæ¹å¼ä¼ è¾ |
| | | ftpClient.setFileType(FTP.BINARY_FILE_TYPE); |
| | | ftpClient.setControlEncoding("GBK"); |
| | | // 对è¿ç¨ç®å½çå¤ç |
| | | String remoteFileName = remote; |
| | | if (remote.contains("/")) { |
| | | remoteFileName = remote.substring(remote.lastIndexOf("/") + 1); |
| | | // å建æå¡å¨è¿ç¨ç®å½ç»æï¼åå»ºå¤±è´¥ç´æ¥è¿å |
| | | if (StringUtils.equals(CreateDirecroty(remote, ftpClient), "2")) { |
| | | log.error("å建ftpç®å½å¤±è´¥======================="+remote); |
| | | return false; |
| | | } |
| | | } |
| | | boolean result = ftpClient.storeFile(remoteFileName, inputStream); |
| | | inputStream.close(); |
| | | ftpClient.logout(); |
| | | if(result){ |
| | | log.info("ä¸ä¼ æä»¶æå======================"+remote); |
| | | }else{ |
| | | log.error("ä¸ä¼ æä»¶å¤±è´¥======================="+remote); |
| | | } |
| | | return result; |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | log.error("ä¸ä¼ æä»¶å¤±è´¥======================="+remote); |
| | | } |
| | | return false; |
| | | } |
| | | public int getNumFromStr(String str,char searchstr) { |
| | | int count = 0; |
| | | char[] charArray = str.toCharArray(); |
| | |
| | | String result; |
| | | // 对è¿ç¨ç®å½çå¤ç |
| | | String remoteFileName = remote ; |
| | | if (remote.contains(File.separator)) { |
| | | remoteFileName = remote.substring(remote.lastIndexOf(File.separator) + 1); |
| | | if (remote.contains("/")) { |
| | | remoteFileName = remote.substring(remote.lastIndexOf("/") + 1); |
| | | // å建æå¡å¨è¿ç¨ç®å½ç»æï¼åå»ºå¤±è´¥ç´æ¥è¿å |
| | | if (StringUtils.equals(CreateDirecroty(remote, ftpClient), "2")) { |
| | | return "2"; |
| | |
| | | throws IOException { |
| | | String status = "1"; |
| | | // UploadStatus status = UploadStatus.Create_Directory_Success; |
| | | String directory = remote.substring(0, remote.lastIndexOf(File.separator) + 1); |
| | | if (!directory.equalsIgnoreCase(File.separator) |
| | | String directory = remote.substring(0, remote.lastIndexOf("/") + 1); |
| | | if (!directory.equalsIgnoreCase("/") |
| | | && !ftpClient.changeWorkingDirectory(new String(directory |
| | | .getBytes("GBK"), "iso-8859-1"))) { |
| | | // 妿è¿ç¨ç®å½ä¸åå¨ï¼åéå½å建è¿ç¨æå¡å¨ç®å½ |
| | | int start = 0; |
| | | int end = 0; |
| | | if (directory.startsWith(File.separator)) { |
| | | if (directory.startsWith("/")) { |
| | | start = 1; |
| | | } else { |
| | | start = 0; |
| | | } |
| | | end = directory |
| | | .indexOf(File.separator, start); |
| | | .indexOf("/", start); |
| | | while (true) { |
| | | String subDirectory = new String(remote.substring(start, end) |
| | | .getBytes("GBK"), "iso-8859-1"); |
| | |
| | | } |
| | | |
| | | start = end + 1; |
| | | end = directory.indexOf(File.separator, |
| | | end = directory.indexOf("/", |
| | | start); |
| | | |
| | | // æ£æ¥ææç®å½æ¯å¦åå»ºå®æ¯ |
| | |
| | | public static void main(String[] args) throws Exception { |
| | | try { |
| | | FtpUtil ftpUtil = new FtpUtil("175.27.187.84", 21, "ftpuser","doumee168" ); |
| | | ftpUtil.uploadOnlineFile("https://profile-avatar.csdnimg.cn/default.jpg!1", "test"+File.separator, UUID.randomUUID().toString()+"test.jpg"); |
| | | ftpUtil.uploadOnlineFile("https://profile-avatar.csdnimg.cn/default.jpg!1", "test"+"/", UUID.randomUUID().toString()+"test.jpg"); |
| | | /*FtpUtil myFtp = new FtpUtil("106.15.54.228", 21, "ftptlg", |
| | | "tlg168.com"); |
| | | System.out.println(myFtp.upload("D:\\devices.sql", "/1111/devices.sql")); |
| | |
| | | String remoteDirectoryPath) throws Exception { |
| | | File src = new File(localDirectory); |
| | | try { |
| | | remoteDirectoryPath = remoteDirectoryPath + File.separator; |
| | | |
| | | // System.out.println(remoteDirectoryPath+":===============å建ç®å½================="); |
| | | remoteDirectoryPath = remoteDirectoryPath + "/"; |
| | | boolean makeDirFlag = this.ftpClient.makeDirectory(remoteDirectoryPath); |
| | | }catch (IOException e) { |
| | | e.printStackTrace(); |
| | |
| | | for (int currentFile = 0;currentFile < allFile.length;currentFile++) { |
| | | File f =allFile[currentFile]; |
| | | String srcName= f.getPath().toString(); |
| | | // System.out.println(srcName+":====================读åæä»¶======================"); |
| | | String tPath = remoteDirectoryPath+f.getName(); |
| | | if (!f.isDirectory()) { |
| | | |
| | | // System.out.println(srcName+":====================å¼å§ä¼ è¾æä»¶======================"); |
| | | int dNum = getNumFromStr(tPath,File.separator.toCharArray()[0]); |
| | | int dNum = getNumFromStr(tPath,"/".toCharArray()[0]); |
| | | uploadFile(f, tPath); |
| | | if(dNum -2>=0){ |
| | | for (int i = 0; i < dNum-1; i++) { |
| | |
| | | } |
| | | } |
| | | }else{ |
| | | // System.out.println(srcName+":====================å建åç®å½======================"); |
| | | uploadDirectory(srcName, |
| | | tPath+File.separator); |
| | | tPath+"/"); |
| | | } |
| | | // System.out.println(srcName+":====================ä¸ä¼ 宿¯======================"); |
| | | } |
| | | return true; |
| | | } |
| | |
| | | * */ |
| | | public boolean delDirectory(String pathName ) throws Exception { |
| | | try { |
| | | this.ftpClient.changeWorkingDirectory( pathName.substring(0, pathName.lastIndexOf(File.separator)) ); |
| | | this.ftpClient.changeWorkingDirectory( pathName.substring(0, pathName.lastIndexOf("/")) ); |
| | | ftpClient.removeDirectory(pathName); |
| | | }catch (IOException e) { |
| | | e.printStackTrace(); |
| | |
| | | |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.doumee.dao.business.model.MemberCard; |
| | | import com.doumee.dao.business.model.MemberRole; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author æ±è¹è¹ |
| | |
| | | */ |
| | | public interface MemberCardMapper extends BaseMapper<MemberCard> { |
| | | |
| | | void insertBatchSomeColumn(List<MemberCard> list); |
| | | } |
| | |
| | | |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.doumee.dao.business.model.MemberRole; |
| | | import com.doumee.dao.business.model.VisitEvent; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author æ±è¹è¹ |
| | |
| | | */ |
| | | public interface MemberRoleMapper extends BaseMapper<MemberRole> { |
| | | |
| | | void insertBatchSomeColumn(List<MemberRole> list); |
| | | |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.dao.business.join; |
| | | |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.doumee.dao.business.model.Parks; |
| | | import com.github.yulichang.base.mapper.MPJJoinMapper; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author æ±è¹è¹ |
| | | * @date 2023/11/30 15:33 |
| | | */ |
| | | public interface ParksJoinMapper extends MPJJoinMapper<Parks> { |
| | | |
| | | } |
| | |
| | | package com.doumee.dao.business.model; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.doumee.core.annotation.excel.ExcelColumn; |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | |
| | | @ExcelColumn(name="ç¶æ 0ç¦ç¨ 1å¯ç¨") |
| | | private Integer status; |
| | | |
| | | @ApiModelProperty(value = "å车åºåç§°", example = "1") |
| | | @ExcelColumn(name="å车åºåç§°") |
| | | @TableField(exist = false) |
| | | private String parksName; |
| | | |
| | | @ApiModelProperty(value = "ç¨æ·ç±»å 0å³å¡è®¿å®¢ 1æ®é访客 2å
é¨äººå", example = "1") |
| | | @ExcelColumn(name="ç¨æ·ç±»å 0å³å¡è®¿å®¢ 1æ®é访客 2å
é¨äººå") |
| | | @TableField(exist = false) |
| | | private Integer memberType; |
| | | |
| | | @ApiModelProperty(value = "å§å", example = "1") |
| | | @ExcelColumn(name="å§å") |
| | | @TableField(exist = false) |
| | | private String memberName; |
| | | |
| | | @ApiModelProperty(value = "ææºå·", example = "1") |
| | | @ExcelColumn(name="ææºå·") |
| | | @TableField(exist = false) |
| | | private String memberPhone; |
| | | |
| | | @ApiModelProperty(value = "é¨é¨", example = "1") |
| | | @ExcelColumn(name="é¨é¨") |
| | | @TableField(exist = false) |
| | | private String companyName; |
| | | |
| | | } |
| | |
| | | package com.doumee.dao.business.model; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.doumee.core.annotation.excel.ExcelColumn; |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | |
| | | @JsonFormat(pattern = "yyyy-MM-dd") |
| | | private Date hkDate; |
| | | |
| | | |
| | | @ApiModelProperty(value = "å车åºåç§°", example = "1") |
| | | @ExcelColumn(name="å车åºåç§°") |
| | | @TableField(exist = false) |
| | | private String parksName; |
| | | |
| | | @ApiModelProperty(value = "ç¨æ·ç±»å 0å³å¡è®¿å®¢ 1æ®é访客 2å
é¨äººå", example = "1") |
| | | @ExcelColumn(name="ç¨æ·ç±»å 0å³å¡è®¿å®¢ 1æ®é访客 2å
é¨äººå") |
| | | @TableField(exist = false) |
| | | private Integer memberType; |
| | | |
| | | @ApiModelProperty(value = "å§å", example = "1") |
| | | @ExcelColumn(name="å§å") |
| | | @TableField(exist = false) |
| | | private String memberName; |
| | | |
| | | @ApiModelProperty(value = "ææºå·", example = "1") |
| | | @ExcelColumn(name="ææºå·") |
| | | @TableField(exist = false) |
| | | private String memberPhone; |
| | | |
| | | @ApiModelProperty(value = "é¨é¨", example = "1") |
| | | @ExcelColumn(name="é¨é¨") |
| | | @TableField(exist = false) |
| | | private String companyName; |
| | | |
| | | } |
| | |
| | | package com.doumee.dao.business.model; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.doumee.core.annotation.excel.ExcelColumn; |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | |
| | | @ExcelColumn(name="ç¶æ 0ç¦ç¨ 1å¯ç¨") |
| | | private Integer status; |
| | | |
| | | @ApiModelProperty(value = "æå±å车åº", example = "1") |
| | | @TableField(exist = false) |
| | | private String parentName; |
| | | |
| | | } |
| | |
| | | void orgUpdate(OrgUpdateRequest param); |
| | | |
| | | void userUpdate(UserUpdateRequest param); |
| | | |
| | | void approveApply(ApproveNoticeRequest param); |
| | | } |
| | |
| | | package com.doumee.service.business.impl; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.core.utils.Utils; |
| | | import com.doumee.dao.admin.request.CarsQuery; |
| | | import com.doumee.dao.admin.response.CarsDTO; |
| | | import com.doumee.dao.admin.response.MemberInfoDTO; |
| | | import com.doumee.dao.business.CarsMapper; |
| | | import com.doumee.dao.business.join.CarJoinMapper; |
| | | import com.doumee.dao.business.join.ParkBookJoinMapper; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.service.business.CarsService; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.github.yulichang.wrapper.MPJLambdaWrapper; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | |
| | | |
| | | IPage<Cars> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | QueryWrapper<Cars> queryWrapper = new QueryWrapper<>(); |
| | | Utils.MP.blankToNull(pageWrap.getModel()); |
| | | if (pageWrap.getModel().getId() != null) { |
| | | queryWrapper.lambda().eq(Cars::getId, pageWrap.getModel().getId()); |
| | | } |
| | | if (pageWrap.getModel().getCreator() != null) { |
| | | queryWrapper.lambda().eq(Cars::getCreator, pageWrap.getModel().getCreator()); |
| | | } |
| | | if (pageWrap.getModel().getCreateDate() != null) { |
| | | queryWrapper.lambda().ge(Cars::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())); |
| | | queryWrapper.lambda().le(Cars::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())); |
| | | } |
| | | if (pageWrap.getModel().getEdirot() != null) { |
| | | queryWrapper.lambda().eq(Cars::getEdirot, pageWrap.getModel().getEdirot()); |
| | | } |
| | | if (pageWrap.getModel().getEditDate() != null) { |
| | | queryWrapper.lambda().ge(Cars::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate())); |
| | | queryWrapper.lambda().le(Cars::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())); |
| | | } |
| | | if (pageWrap.getModel().getIsdeleted() != null) { |
| | | queryWrapper.lambda().eq(Cars::getIsdeleted, pageWrap.getModel().getIsdeleted()); |
| | | } |
| | | if (pageWrap.getModel().getRemark() != null) { |
| | | queryWrapper.lambda().eq(Cars::getRemark, pageWrap.getModel().getRemark()); |
| | | } |
| | | if (pageWrap.getModel().getHkId() != null) { |
| | | queryWrapper.lambda().eq(Cars::getHkId, pageWrap.getModel().getHkId()); |
| | | } |
| | | if (pageWrap.getModel().getSortnum() != null) { |
| | | queryWrapper.lambda().eq(Cars::getSortnum, pageWrap.getModel().getSortnum()); |
| | | } |
| | | if (pageWrap.getModel().getCode() != null) { |
| | | queryWrapper.lambda().eq(Cars::getCode, pageWrap.getModel().getCode()); |
| | | } |
| | | if (pageWrap.getModel().getParkId() != null) { |
| | | queryWrapper.lambda().eq(Cars::getParkId, pageWrap.getModel().getParkId()); |
| | | } |
| | | if (pageWrap.getModel().getHkId2() != null) { |
| | | queryWrapper.lambda().eq(Cars::getHkId2, pageWrap.getModel().getHkId2()); |
| | | } |
| | | if (pageWrap.getModel().getHkStatus() != null) { |
| | | queryWrapper.lambda().eq(Cars::getHkStatus, pageWrap.getModel().getHkStatus()); |
| | | } |
| | | if (pageWrap.getModel().getHkDate() != null) { |
| | | queryWrapper.lambda().ge(Cars::getHkDate, Utils.Date.getStart(pageWrap.getModel().getHkDate())); |
| | | queryWrapper.lambda().le(Cars::getHkDate, Utils.Date.getEnd(pageWrap.getModel().getHkDate())); |
| | | } |
| | | if (pageWrap.getModel().getMemberId() != null) { |
| | | queryWrapper.lambda().eq(Cars::getMemberId, pageWrap.getModel().getMemberId()); |
| | | } |
| | | if (pageWrap.getModel().getMemberUserId() != null) { |
| | | queryWrapper.lambda().eq(Cars::getMemberUserId, pageWrap.getModel().getMemberUserId()); |
| | | } |
| | | if (pageWrap.getModel().getErpId() != null) { |
| | | queryWrapper.lambda().eq(Cars::getErpId, pageWrap.getModel().getErpId()); |
| | | } |
| | | if (pageWrap.getModel().getStatus() != null) { |
| | | queryWrapper.lambda().eq(Cars::getStatus, pageWrap.getModel().getStatus()); |
| | | } |
| | | for(PageWrap.SortData sortData: pageWrap.getSorts()) { |
| | | if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { |
| | | queryWrapper.orderByDesc(sortData.getProperty()); |
| | | } else { |
| | | queryWrapper.orderByAsc(sortData.getProperty()); |
| | | } |
| | | } |
| | | return PageData.from(carsMapper.selectPage(page, queryWrapper)); |
| | | MPJLambdaWrapper<Cars> queryWrapper = new MPJLambdaWrapper<>(); |
| | | |
| | | queryWrapper.selectAll(Cars.class); |
| | | queryWrapper.selectAs(Parks::getName,Cars::getParksName); |
| | | queryWrapper.selectAs(Member::getType,Cars::getMemberType); |
| | | queryWrapper.selectAs(Member::getName,Cars::getMemberName); |
| | | queryWrapper.selectAs(Member::getPhone,Cars::getMemberPhone); |
| | | queryWrapper.selectAs(Company::getName,Cars::getCompanyName); |
| | | |
| | | queryWrapper.leftJoin(Parks.class,Parks::getId,Cars::getParkId); |
| | | queryWrapper.leftJoin(Member.class,Member::getId,Cars::getMemberId); |
| | | queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId); |
| | | |
| | | queryWrapper.eq(Cars::getIsdeleted,Constants.ZERO); |
| | | |
| | | queryWrapper.orderByDesc(Cars::getCreateDate); |
| | | IPage<Cars> result = carJoinMapper.selectJoinPage(page, Cars.class,queryWrapper); |
| | | return PageData.from(result); |
| | | } |
| | | |
| | | @Override |
| | |
| | | |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.core.utils.Utils; |
| | | import com.doumee.dao.business.ParkBookMapper; |
| | | import com.doumee.dao.business.model.ParkBook; |
| | | import com.doumee.dao.business.join.ParkBookJoinMapper; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.service.business.ParkBookService; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.github.yulichang.wrapper.MPJLambdaWrapper; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.util.CollectionUtils; |
| | |
| | | |
| | | @Autowired |
| | | private ParkBookMapper parkBookMapper; |
| | | |
| | | @Autowired |
| | | private ParkBookJoinMapper parkBookJoinMapper; |
| | | |
| | | |
| | | |
| | | @Override |
| | | public Integer create(ParkBook parkBook) { |
| | |
| | | @Override |
| | | public PageData<ParkBook> findPage(PageWrap<ParkBook> pageWrap) { |
| | | IPage<ParkBook> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | QueryWrapper<ParkBook> queryWrapper = new QueryWrapper<>(); |
| | | Utils.MP.blankToNull(pageWrap.getModel()); |
| | | if (pageWrap.getModel().getId() != null) { |
| | | queryWrapper.lambda().eq(ParkBook::getId, pageWrap.getModel().getId()); |
| | | } |
| | | if (pageWrap.getModel().getCreator() != null) { |
| | | queryWrapper.lambda().eq(ParkBook::getCreator, pageWrap.getModel().getCreator()); |
| | | } |
| | | if (pageWrap.getModel().getCreateDate() != null) { |
| | | queryWrapper.lambda().ge(ParkBook::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())); |
| | | queryWrapper.lambda().le(ParkBook::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())); |
| | | } |
| | | if (pageWrap.getModel().getEdirot() != null) { |
| | | queryWrapper.lambda().eq(ParkBook::getEdirot, pageWrap.getModel().getEdirot()); |
| | | } |
| | | if (pageWrap.getModel().getEditDate() != null) { |
| | | queryWrapper.lambda().ge(ParkBook::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate())); |
| | | queryWrapper.lambda().le(ParkBook::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())); |
| | | } |
| | | if (pageWrap.getModel().getIsdeleted() != null) { |
| | | queryWrapper.lambda().eq(ParkBook::getIsdeleted, pageWrap.getModel().getIsdeleted()); |
| | | } |
| | | if (pageWrap.getModel().getRemark() != null) { |
| | | queryWrapper.lambda().eq(ParkBook::getRemark, pageWrap.getModel().getRemark()); |
| | | } |
| | | if (pageWrap.getModel().getHkId() != null) { |
| | | queryWrapper.lambda().eq(ParkBook::getHkId, pageWrap.getModel().getHkId()); |
| | | } |
| | | if (pageWrap.getModel().getSortnum() != null) { |
| | | queryWrapper.lambda().eq(ParkBook::getSortnum, pageWrap.getModel().getSortnum()); |
| | | } |
| | | if (pageWrap.getModel().getVisitId() != null) { |
| | | queryWrapper.lambda().eq(ParkBook::getVisitId, pageWrap.getModel().getVisitId()); |
| | | } |
| | | if (pageWrap.getModel().getCarCode() != null) { |
| | | queryWrapper.lambda().eq(ParkBook::getCarCode, pageWrap.getModel().getCarCode()); |
| | | } |
| | | if (pageWrap.getModel().getParkId() != null) { |
| | | queryWrapper.lambda().eq(ParkBook::getParkId, pageWrap.getModel().getParkId()); |
| | | } |
| | | if (pageWrap.getModel().getOrigin() != null) { |
| | | queryWrapper.lambda().eq(ParkBook::getOrigin, pageWrap.getModel().getOrigin()); |
| | | } |
| | | if (pageWrap.getModel().getStartTime() != null) { |
| | | queryWrapper.lambda().ge(ParkBook::getStartTime, Utils.Date.getStart(pageWrap.getModel().getStartTime())); |
| | | queryWrapper.lambda().le(ParkBook::getStartTime, Utils.Date.getEnd(pageWrap.getModel().getStartTime())); |
| | | } |
| | | if (pageWrap.getModel().getEndTime() != null) { |
| | | queryWrapper.lambda().ge(ParkBook::getEndTime, Utils.Date.getStart(pageWrap.getModel().getEndTime())); |
| | | queryWrapper.lambda().le(ParkBook::getEndTime, Utils.Date.getEnd(pageWrap.getModel().getEndTime())); |
| | | } |
| | | if (pageWrap.getModel().getMemberId() != null) { |
| | | queryWrapper.lambda().eq(ParkBook::getMemberId, pageWrap.getModel().getMemberId()); |
| | | } |
| | | if (pageWrap.getModel().getTimeType() != null) { |
| | | queryWrapper.lambda().eq(ParkBook::getTimeType, pageWrap.getModel().getTimeType()); |
| | | } |
| | | if (pageWrap.getModel().getHkId2() != null) { |
| | | queryWrapper.lambda().eq(ParkBook::getHkId2, pageWrap.getModel().getHkId2()); |
| | | } |
| | | if (pageWrap.getModel().getHkStatus() != null) { |
| | | queryWrapper.lambda().eq(ParkBook::getHkStatus, pageWrap.getModel().getHkStatus()); |
| | | } |
| | | if (pageWrap.getModel().getHkDate() != null) { |
| | | queryWrapper.lambda().ge(ParkBook::getHkDate, Utils.Date.getStart(pageWrap.getModel().getHkDate())); |
| | | queryWrapper.lambda().le(ParkBook::getHkDate, Utils.Date.getEnd(pageWrap.getModel().getHkDate())); |
| | | } |
| | | for(PageWrap.SortData sortData: pageWrap.getSorts()) { |
| | | if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { |
| | | queryWrapper.orderByDesc(sortData.getProperty()); |
| | | } else { |
| | | queryWrapper.orderByAsc(sortData.getProperty()); |
| | | } |
| | | } |
| | | return PageData.from(parkBookMapper.selectPage(page, queryWrapper)); |
| | | MPJLambdaWrapper<ParkBook> queryWrapper = new MPJLambdaWrapper<>(); |
| | | |
| | | queryWrapper.selectAll(Cars.class); |
| | | queryWrapper.selectAs(Parks::getName,Cars::getParksName); |
| | | queryWrapper.selectAs(Member::getType,Cars::getMemberType); |
| | | queryWrapper.selectAs(Member::getName,Cars::getMemberName); |
| | | queryWrapper.selectAs(Member::getPhone,Cars::getMemberPhone); |
| | | queryWrapper.selectAs(Company::getName,Cars::getCompanyName); |
| | | |
| | | queryWrapper.leftJoin(Parks.class,Parks::getId,ParkBook::getParkId); |
| | | queryWrapper.leftJoin(Member.class,Member::getId,ParkBook::getMemberId); |
| | | queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId); |
| | | |
| | | queryWrapper.eq(ParkBook::getIsdeleted, Constants.ZERO) |
| | | .and(StringUtils.isNotBlank(pageWrap.getModel().getMemberName()), ms->ms.like(Member::getPhone,pageWrap.getModel().getMemberName()) |
| | | .or().like(Member::getName,pageWrap.getModel().getMemberName())); |
| | | queryWrapper.eq(StringUtils.isNotBlank(pageWrap.getModel().getCarCode()),ParkBook::getCarCode,pageWrap.getModel().getCarCode()); |
| | | queryWrapper.orderByDesc(ParkBook::getCreateDate); |
| | | |
| | | IPage<ParkBook> result = parkBookJoinMapper.selectJoinPage(page, ParkBook.class,queryWrapper); |
| | | |
| | | return PageData.from(result); |
| | | } |
| | | |
| | | @Override |
| | |
| | | |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.core.utils.Utils; |
| | | import com.doumee.dao.admin.response.MemberInfoDTO; |
| | | import com.doumee.dao.business.ParksMapper; |
| | | import com.doumee.dao.business.join.ParksJoinMapper; |
| | | import com.doumee.dao.business.model.Member; |
| | | import com.doumee.dao.business.model.Parks; |
| | | import com.doumee.service.business.ParksService; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.github.yulichang.wrapper.MPJLambdaWrapper; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | |
| | | /** |
| | | * å车åºä¿¡æ¯è¡¨Serviceå®ç° |
| | |
| | | |
| | | @Autowired |
| | | private ParksMapper parksMapper; |
| | | |
| | | @Autowired |
| | | private ParksJoinMapper parksJoinMapper; |
| | | |
| | | |
| | | @Override |
| | | public Integer create(Parks parks) { |
| | |
| | | |
| | | @Override |
| | | public List<Parks> findList(Parks parks) { |
| | | QueryWrapper<Parks> wrapper = new QueryWrapper<>(parks); |
| | | return parksMapper.selectList(wrapper); |
| | | MPJLambdaWrapper<Parks> queryWrapper = new MPJLambdaWrapper<>(); |
| | | queryWrapper.isNull(Parks::getParentHkId); |
| | | queryWrapper.eq(Parks::getIsdeleted,Constants.ZERO); |
| | | queryWrapper.orderByDesc(Parks::getCreateDate); |
| | | return parksMapper.selectList(queryWrapper); |
| | | } |
| | | |
| | | @Override |
| | | public PageData<Parks> findPage(PageWrap<Parks> pageWrap) { |
| | | IPage<Parks> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | QueryWrapper<Parks> queryWrapper = new QueryWrapper<>(); |
| | | Utils.MP.blankToNull(pageWrap.getModel()); |
| | | if (pageWrap.getModel().getId() != null) { |
| | | queryWrapper.lambda().eq(Parks::getId, pageWrap.getModel().getId()); |
| | | } |
| | | if (pageWrap.getModel().getCreator() != null) { |
| | | queryWrapper.lambda().eq(Parks::getCreator, pageWrap.getModel().getCreator()); |
| | | } |
| | | if (pageWrap.getModel().getCreateDate() != null) { |
| | | queryWrapper.lambda().ge(Parks::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())); |
| | | queryWrapper.lambda().le(Parks::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())); |
| | | } |
| | | if (pageWrap.getModel().getEdirot() != null) { |
| | | queryWrapper.lambda().eq(Parks::getEdirot, pageWrap.getModel().getEdirot()); |
| | | } |
| | | if (pageWrap.getModel().getEditDate() != null) { |
| | | queryWrapper.lambda().ge(Parks::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate())); |
| | | queryWrapper.lambda().le(Parks::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())); |
| | | } |
| | | if (pageWrap.getModel().getIsdeleted() != null) { |
| | | queryWrapper.lambda().eq(Parks::getIsdeleted, pageWrap.getModel().getIsdeleted()); |
| | | } |
| | | if (pageWrap.getModel().getRemark() != null) { |
| | | queryWrapper.lambda().eq(Parks::getRemark, pageWrap.getModel().getRemark()); |
| | | } |
| | | if (pageWrap.getModel().getName() != null) { |
| | | queryWrapper.lambda().eq(Parks::getName, pageWrap.getModel().getName()); |
| | | } |
| | | if (pageWrap.getModel().getHkId() != null) { |
| | | queryWrapper.lambda().eq(Parks::getHkId, pageWrap.getModel().getHkId()); |
| | | } |
| | | if (pageWrap.getModel().getHkStatus() != null) { |
| | | queryWrapper.lambda().eq(Parks::getHkStatus, pageWrap.getModel().getHkStatus()); |
| | | } |
| | | if (pageWrap.getModel().getHkDate() != null) { |
| | | queryWrapper.lambda().ge(Parks::getHkDate, Utils.Date.getStart(pageWrap.getModel().getHkDate())); |
| | | queryWrapper.lambda().le(Parks::getHkDate, Utils.Date.getEnd(pageWrap.getModel().getHkDate())); |
| | | } |
| | | if (pageWrap.getModel().getSortnum() != null) { |
| | | queryWrapper.lambda().eq(Parks::getSortnum, pageWrap.getModel().getSortnum()); |
| | | } |
| | | if (pageWrap.getModel().getParkCreateDate() != null) { |
| | | queryWrapper.lambda().ge(Parks::getParkCreateDate, Utils.Date.getStart(pageWrap.getModel().getParkCreateDate())); |
| | | queryWrapper.lambda().le(Parks::getParkCreateDate, Utils.Date.getEnd(pageWrap.getModel().getParkCreateDate())); |
| | | } |
| | | if (pageWrap.getModel().getParentHkId() != null) { |
| | | queryWrapper.lambda().eq(Parks::getParentHkId, pageWrap.getModel().getParentHkId()); |
| | | } |
| | | if (pageWrap.getModel().getParkEditDate() != null) { |
| | | queryWrapper.lambda().ge(Parks::getParkEditDate, Utils.Date.getStart(pageWrap.getModel().getParkEditDate())); |
| | | queryWrapper.lambda().le(Parks::getParkEditDate, Utils.Date.getEnd(pageWrap.getModel().getParkEditDate())); |
| | | } |
| | | if (pageWrap.getModel().getErpStatus() != null) { |
| | | queryWrapper.lambda().eq(Parks::getErpStatus, pageWrap.getModel().getErpStatus()); |
| | | } |
| | | if (pageWrap.getModel().getErpDate() != null) { |
| | | queryWrapper.lambda().ge(Parks::getErpDate, Utils.Date.getStart(pageWrap.getModel().getErpDate())); |
| | | queryWrapper.lambda().le(Parks::getErpDate, Utils.Date.getEnd(pageWrap.getModel().getErpDate())); |
| | | } |
| | | if (pageWrap.getModel().getStatus() != null) { |
| | | queryWrapper.lambda().eq(Parks::getStatus, pageWrap.getModel().getStatus()); |
| | | } |
| | | for(PageWrap.SortData sortData: pageWrap.getSorts()) { |
| | | if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { |
| | | queryWrapper.orderByDesc(sortData.getProperty()); |
| | | } else { |
| | | queryWrapper.orderByAsc(sortData.getProperty()); |
| | | } |
| | | } |
| | | return PageData.from(parksMapper.selectPage(page, queryWrapper)); |
| | | MPJLambdaWrapper<Parks> queryWrapper = new MPJLambdaWrapper<>(); |
| | | queryWrapper.selectAll(Parks.class); |
| | | queryWrapper.select(" p.name as parentName"); |
| | | |
| | | queryWrapper.leftJoin(" parks p on p.id=t.PARENT_HK_ID"); |
| | | |
| | | queryWrapper.isNotNull(Parks::getParentHkId); |
| | | queryWrapper.eq(Parks::getIsdeleted, Constants.ZERO); |
| | | queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getName()),Parks::getName,pageWrap.getModel().getName()); |
| | | queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getParentHkId()),Parks::getName,pageWrap.getModel().getParentHkId()); |
| | | queryWrapper.orderByDesc(Parks::getCreateDate); |
| | | IPage<Parks> result = parksJoinMapper.selectJoinPage(page, Parks.class,queryWrapper); |
| | | return PageData.from(result); |
| | | } |
| | | |
| | | @Override |
| | |
| | | import com.doumee.core.model.openapi.response.erp.OrgListRespone; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.core.utils.DESUtil; |
| | | import com.doumee.core.utils.DateUtil; |
| | | import com.doumee.core.utils.Utils; |
| | | import com.doumee.core.utils.redis.RedisUtil; |
| | | import com.doumee.dao.admin.response.MemberInfoDTO; |
| | |
| | | |
| | | @Autowired |
| | | private MemberCardMapper memberCardMapper; |
| | | |
| | | @Autowired |
| | | private VisitsMapper visitsMapper; |
| | | |
| | | @Autowired |
| | | private InterfaceLogService interfaceLogService; |
| | |
| | | memberRoleMapper.delete(new QueryWrapper<MemberRole>().lambda().eq(MemberRole::getMemberId,member.getId())); |
| | | //TODO æµ·åº·æ°æ®æ´æ° |
| | | } |
| | | //æ·»å 人åè§å
³èæ°æ® |
| | | //æ·»å 人åè§è²å
³èæ°æ® |
| | | if(!Objects.isNull(param.getRoleIds())&¶m.getRoleIds().length>Constants.ZERO){ |
| | | //æ¥è¯¢æ°æ®åºåå¨çæé |
| | | List<MemberRole> memberRoleList = memberRoleMapper.selectList(new QueryWrapper<MemberRole>().lambda().eq(MemberRole::getId,param.getRoleIds())); |
| | | List<Integer> roleIds = Arrays.asList(param.getRoleIds()); |
| | | |
| | | // List<MemberRole> memberRoleList = new ArrayList<>(); |
| | | // |
| | | // for (Integer id:roleIds) { |
| | | // |
| | | // } |
| | | |
| | | |
| | | |
| | | |
| | | List<DeviceRole> deviceRoleList |
| | | = deviceRoleMapper.selectList(new QueryWrapper<DeviceRole>().lambda().eq(DeviceRole::getId,param.getRoleIds())); |
| | | if(CollectionUtils.isNotEmpty(deviceRoleList)){ |
| | | List<MemberRole> memberRoleList = new ArrayList<>(); |
| | | for (DeviceRole deviceRole:deviceRoleList) { |
| | | MemberRole memberRole = new MemberRole(); |
| | | memberRole.setCreateDate(new Date()); |
| | | memberRole.setMemberId(member.getId()); |
| | | memberRole.setIsdeleted(Constants.ZERO); |
| | | memberRole.setRoleId(deviceRole.getId().toString()); |
| | | memberRoleList.add(memberRole); |
| | | } |
| | | memberRoleMapper.insertBatchSomeColumn(memberRoleList); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | //æ·»å 人åå¡çæ°æ® |
| | | if(!Objects.isNull(param.getCardList())&¶m.getCardList().size()>Constants.ZERO){ |
| | | if(CollectionUtils.isNotEmpty(param.getCardList())){ |
| | | List<MemberCard> memberCardList = new ArrayList<>(); |
| | | for (String id:param.getCardList()) { |
| | | MemberCard memberCard = new MemberCard(); |
| | | memberCard.setCreateDate(new Date()); |
| | | memberCard.setMemberId(member.getId()); |
| | | memberCard.setIsdeleted(Constants.ZERO); |
| | | memberCard.setCode(id); |
| | | memberCardList.add(memberCard); |
| | | } |
| | | memberCardMapper.insertBatchSomeColumn(memberCardList); |
| | | } |
| | | } |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | }finally { |
| | |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public void approveApply(ApproveNoticeRequest param){ |
| | | try{ |
| | | if(Objects.isNull(param) |
| | | ||Objects.isNull(param.getId()) |
| | | ||Objects.isNull(param.getStatus()) |
| | | ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | } |
| | | if(!(param.getStatus()==Constants.ZERO||param.getStatus()==Constants.ONE)){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"ç¶æç é误"); |
| | | } |
| | | if(visitsMapper.selectCount(new QueryWrapper<Visits>().lambda().eq(Visits::getErpId,param.getId()) |
| | | .ne(Visits::getStatus,Constants.VisitStatus.submitCheck))>Constants.ZERO){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"æ°æ®ç¶æç é误"); |
| | | } |
| | | List<Visits> visitsList = visitsMapper.selectList(new QueryWrapper<Visits>().lambda().eq(Visits::getErpId,param.getId())); |
| | | if(CollectionUtils.isNotEmpty(visitsList)){ |
| | | visitsList.forEach(i->{ |
| | | i.setStatus(param.getStatus().equals(Constants.ZERO)?Constants.VisitStatus.pass:Constants.VisitStatus.noPass); |
| | | i.setEndCheckDate(DateUtil.StringToDate(param.getApproveDate(),"yyyy-MM-dd HH:mm:ss")); |
| | | visitsMapper.updateById(i); |
| | | }); |
| | | } |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | }finally { |
| | | saveInterfaceLog(param,"/visitBiz/resource/approveApply",null,Constants.ZERO); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import com.doumee.core.constants.ResponseStatus; |
| | | import com.doumee.core.exception.BusinessException; |
| | | import com.doumee.core.haikang.model.HKConstants; |
| | | import com.doumee.core.haikang.model.param.BaseResponse; |
| | | import com.doumee.core.haikang.model.param.request.AcsDeviceListRequest; |
| | | import com.doumee.core.haikang.model.param.request.*; |
| | | import com.doumee.core.haikang.model.param.respose.AcsDeviceInfoResponse; |
| | | import com.doumee.core.haikang.model.param.respose.AcsDeviceListResponse; |
| | | import com.doumee.core.haikang.service.HKService; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.core.utils.DateUtil; |
| | | import com.doumee.core.utils.FtpUtil; |
| | | import com.doumee.dao.business.*; |
| | | import com.doumee.dao.business.model.CarEvent; |
| | | import com.doumee.dao.business.model.Device; |
| | | import com.doumee.dao.business.model.DeviceEvent; |
| | | import com.doumee.dao.business.model.VisitEvent; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.scheduling.annotation.Async; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.io.File; |
| | | import java.io.IOException; |
| | | import java.io.InputStream; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.UUID; |
| | | |
| | | /** |
| | | * 设å¤ä¿¡æ¯è¡¨Serviceå®ç° |
| | |
| | | * @date 2023/11/30 15:33 |
| | | */ |
| | | @Service |
| | | @Slf4j |
| | | public class HkSyncImgServiceImpl extends HkSyncBaseServiceImpl { |
| | | |
| | | @Autowired |
| | |
| | | private DeviceEventMapper deviceEventMapper; |
| | | @Autowired |
| | | private VisitEventMapper visitEventMapper; |
| | | @Autowired |
| | | private SystemDictDataBiz systemDictDataBiz; |
| | | @Override |
| | | public String downHKImgs(int type){ |
| | | if(Constants.DEALING_HK_IMG){ |
| | |
| | | try { |
| | | //æ¥è¯¢ææè®¿å®¢äºä»¶è®°å½ä¸ææä¸è½½ç海康端 ææç
§ç å ç
§ç |
| | | startDealVisitImg(); |
| | | |
| | | //æ¥è¯¢ææå车åºäºä»¶è®°å½ä¸ææä¸è½½ç海康端 车çå¾ç å 车è¾å¾ç |
| | | startDealCarImg(); |
| | | //æ¥è¯¢ææé¨ç¦äºä»¶è®°å½ä¸ææä¸è½½ç海康端 ææç
§ç å 身份è¯å¾çURL |
| | | startDealDeviceImg(); |
| | | }catch (Exception e){ |
| | | |
| | | e.printStackTrace(); |
| | | }finally { |
| | | Constants.DEALING_HK_IMG =false; |
| | | } |
| | |
| | | private void startDealDeviceImg() { |
| | | List<DeviceEvent> deviceEventList = deviceEventMapper.selectList(new QueryWrapper<DeviceEvent>().lambda() |
| | | .eq(DeviceEvent::getIsdeleted,Constants.ZERO) |
| | | .and(wrapper ->{wrapper.likeLeft(DeviceEvent::getExtEventPictureURL,HKConstants.IMG_INDEX) |
| | | .and(wrapper ->{wrapper.likeRight(DeviceEvent::getExtEventPictureURL,HKConstants.IMG_INDEX) |
| | | .or() |
| | | .likeLeft(DeviceEvent::getExtEventIDCardPictureURL,HKConstants.IMG_INDEX) ;})); |
| | | .likeRight(DeviceEvent::getExtEventIDCardPictureURL,HKConstants.IMG_INDEX) ;})); |
| | | Date date= new Date(); |
| | | if(deviceEventList !=null && deviceEventList.size()>0){ |
| | | for(DeviceEvent model:deviceEventList){ |
| | | String img1 = model.getExtEventPictureURL(); |
| | | String img2 = model.getExtEventIDCardPictureURL(); |
| | | String serverIndex = model.getSvrIndexCode();//æå¡å¨ç¼ç |
| | | String rs1 = downHkImgToFtp(img1,serverIndex,Constants.DEVICE_EVENT_IMG); |
| | | String rs2 = downHkImgToFtp(img2,serverIndex,Constants.DEVICE_EVENT_IMG); |
| | | if(StringUtils.isBlank(serverIndex)){ |
| | | continue; |
| | | } |
| | | String rs1 = null; |
| | | String rs2 = null; |
| | | DeviceEvent event = new DeviceEvent(); |
| | | event.setId(model.getId()); |
| | | event.setEditDate(date); |
| | | |
| | | if(StringUtils.isNotBlank(model.getExtEventPictureURL())){ |
| | | String img1 = model.getExtEventPictureURL().replace(HKConstants.IMG_INDEX_ERROR, "").replace(HKConstants.IMG_INDEX, ""); |
| | | rs1 = downHkImgToFtp(img1,serverIndex,Constants.DEVICE_EVENT_IMG); |
| | | if(StringUtils.isNotBlank(rs1)){ |
| | | event.setExtEventPictureURL(rs1); |
| | | }else{ |
| | | event.setExtEventPictureURL(img1.replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR)); |
| | | event.setExtEventPictureURL(model.getExtEventPictureURL().replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR)); |
| | | } |
| | | } |
| | | if(StringUtils.isNotBlank(model.getExtEventIDCardPictureURL())){ |
| | | String img2 = model.getExtEventIDCardPictureURL().replace(HKConstants.IMG_INDEX_ERROR, "").replace(HKConstants.IMG_INDEX, ""); |
| | | rs2 = downHkImgToFtp(img2,serverIndex,Constants.DEVICE_EVENT_IMG); |
| | | |
| | | if(StringUtils.isNotBlank(rs2)){ |
| | | event.setExtEventIDCardPictureURL(rs2); |
| | | }else{ |
| | | event.setExtEventIDCardPictureURL(img2.replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR)); |
| | | event.setExtEventIDCardPictureURL(model.getExtEventIDCardPictureURL().replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR)); |
| | | } |
| | | } |
| | | deviceEventMapper.updateById(event); |
| | | } |
| | |
| | | private void startDealCarImg() { |
| | | List<CarEvent> carEventList = carEventMapper.selectList(new QueryWrapper<CarEvent>().lambda() |
| | | .eq(CarEvent::getIsdeleted,Constants.ZERO) |
| | | .and(wrapper ->{wrapper.likeLeft(CarEvent::getPlatePicUrl,HKConstants.IMG_INDEX) |
| | | .and(wrapper ->{wrapper.likeRight(CarEvent::getPlatePicUrl,HKConstants.IMG_INDEX) |
| | | .or() |
| | | .likeLeft(CarEvent::getVehiclePicUrl,HKConstants.IMG_INDEX) ;})); |
| | | .likeRight(CarEvent::getVehiclePicUrl,HKConstants.IMG_INDEX) ;})); |
| | | Date date= new Date(); |
| | | if(carEventList !=null && carEventList.size()>0){ |
| | | for(CarEvent model:carEventList){ |
| | | String img1 = model.getPlatePicUrl(); |
| | | String img2 = model.getVehiclePicUrl(); |
| | | String serverIndex = model.getSvrIndex();//æå¡å¨ç¼ç |
| | | String rs1 = downHkImgToFtp(img1,serverIndex,Constants.CAR_EVENT_IMG); |
| | | String rs2 = downHkImgToFtp(img2,serverIndex,Constants.CAR_EVENT_IMG); |
| | | if(StringUtils.isBlank(serverIndex)){ |
| | | continue; |
| | | } |
| | | CarEvent event = new CarEvent(); |
| | | event.setId(model.getId()); |
| | | event.setEditDate(date); |
| | | String rs1 = null; |
| | | String rs2 = null; |
| | | |
| | | if(StringUtils.isNotBlank(model.getPlatePicUrl())){ |
| | | String img1 = model.getPlatePicUrl().replace(HKConstants.IMG_INDEX_ERROR, "").replace(HKConstants.IMG_INDEX, ""); |
| | | rs1 = downHkImgToFtp(img1,serverIndex,Constants.CAR_EVENT_IMG); |
| | | if(StringUtils.isNotBlank(rs1)){ |
| | | event.setPlatePicUrl(rs1); |
| | | }else{ |
| | | event.setPlatePicUrl(img1.replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR)); |
| | | event.setPlatePicUrl(model.getPlatePicUrl().replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR)); |
| | | } |
| | | } |
| | | if(StringUtils.isNotBlank(model.getVehiclePicUrl())){ |
| | | String img2 = model.getVehiclePicUrl().replace(HKConstants.IMG_INDEX_ERROR, "").replace(HKConstants.IMG_INDEX, ""); |
| | | rs2 = downHkImgToFtp(img2,serverIndex,Constants.CAR_EVENT_IMG); |
| | | if(StringUtils.isNotBlank(rs2)){ |
| | | event.setVehiclePicUrl(rs2); |
| | | }else{ |
| | | event.setVehiclePicUrl(img2.replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR)); |
| | | event.setVehiclePicUrl(model.getVehiclePicUrl().replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR)); |
| | | } |
| | | } |
| | | |
| | | carEventMapper.updateById(event); |
| | | } |
| | | } |
| | |
| | | private void startDealVisitImg() { |
| | | List<VisitEvent> visitEventList = visitEventMapper.selectList(new QueryWrapper<VisitEvent>().lambda() |
| | | .eq(VisitEvent::getIsdeleted,Constants.ZERO) |
| | | .and(wrapper ->{wrapper.likeLeft(VisitEvent::getCaptureUrl,HKConstants.IMG_INDEX) |
| | | .and(wrapper ->{wrapper.likeRight(VisitEvent::getCaptureUrl,HKConstants.IMG_INDEX) |
| | | .or() |
| | | .likeLeft(VisitEvent::getPhotoUrl,HKConstants.IMG_INDEX) ;})); |
| | | .likeRight(VisitEvent::getPhotoUrl,HKConstants.IMG_INDEX) ;})); |
| | | |
| | | Date date= new Date(); |
| | | if(visitEventList !=null && visitEventList.size()>0){ |
| | | for(VisitEvent model:visitEventList){ |
| | | String img1 = model.getCaptureUrl(); |
| | | String img2 = model.getPhotoUrl(); |
| | | String serverIndex = model.getSvrIndexCode();//æå¡å¨ç¼ç |
| | | String rs1 = downHkImgToFtp(img1,serverIndex,Constants.VISIT_EVENT_IMG); |
| | | String rs2 = downHkImgToFtp(img2,serverIndex,Constants.VISIT_EVENT_IMG); |
| | | if(StringUtils.isBlank(serverIndex)){ |
| | | continue; |
| | | } |
| | | VisitEvent event = new VisitEvent(); |
| | | event.setId(model.getId()); |
| | | event.setEditDate(date); |
| | | String rs1 = null; |
| | | String rs2 = null; |
| | | if(StringUtils.isNotBlank(model.getCaptureUrl())){ |
| | | String img1 = model.getCaptureUrl().replace(HKConstants.IMG_INDEX_ERROR, "").replace(HKConstants.IMG_INDEX, ""); |
| | | rs1 = downHkImgToFtp(img1,serverIndex,Constants.VISIT_EVENT_IMG); |
| | | if(StringUtils.isNotBlank(rs1)){ |
| | | event.setCaptureUrl(rs1); |
| | | }else{ |
| | | event.setCaptureUrl(img1.replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR)); |
| | | event.setCaptureUrl(model.getCaptureUrl().replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR)); |
| | | } |
| | | } |
| | | if(StringUtils.isNotBlank(model.getPhotoUrl())){ |
| | | String img2 = model.getPhotoUrl().replace(HKConstants.IMG_INDEX_ERROR, "").replace(HKConstants.IMG_INDEX, ""); |
| | | rs2 = downHkImgToFtp(img2,serverIndex,Constants.VISIT_EVENT_IMG); |
| | | if(StringUtils.isNotBlank(rs2)){ |
| | | event.setPhotoUrl(rs2); |
| | | }else{ |
| | | event.setPhotoUrl(img2.replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR)); |
| | | event.setPhotoUrl(model.getPhotoUrl().replace(HKConstants.IMG_INDEX, HKConstants.IMG_INDEX_ERROR)); |
| | | } |
| | | } |
| | | |
| | | visitEventMapper.updateById(event); |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | private String downHkImgToFtp(String img1, String serverIndex, String visitEventImg) { |
| | | // |
| | | |
| | | public static FtpUtil ftp = null; |
| | | private String downHkImgToFtp(String img1, String serverIndex, String folder_code) { |
| | | String folder = systemDictDataBiz.queryByCode(Constants.FTP,folder_code).getCode(); |
| | | InputStream is = null; |
| | | if(StringUtils.equals(folder_code,Constants.CAR_EVENT_IMG)){ |
| | | //åè½¦åºææå¾ |
| | | CarPictureRequest param = new CarPictureRequest(); |
| | | param.setPicUri(img1.replace(HKConstants.IMG_INDEX_ERROR,"").replace(HKConstants.IMG_INDEX,"")); |
| | | param.setAswSyscode(serverIndex); |
| | | is = HKService.getCarPicture(param); |
| | | }else if(StringUtils.equals(folder_code,Constants.DEVICE_EVENT_IMG)){ |
| | | //é¨ç¦äºä»¶å¾ç |
| | | DevicePictureRequest param = new DevicePictureRequest(); |
| | | param.setPicUri(img1.replace(HKConstants.IMG_INDEX_ERROR,"").replace(HKConstants.IMG_INDEX,"")); |
| | | param.setSvrIndexCode(serverIndex); |
| | | is = HKService.getDevicePicture(param); |
| | | }else if(StringUtils.equals(folder_code,Constants.VISIT_EVENT_IMG)){ |
| | | //访客äºä»¶å¾ç |
| | | VisitPictureRequest param = new VisitPictureRequest(); |
| | | param.setPicUri(img1.replace(HKConstants.IMG_INDEX_ERROR,"").replace(HKConstants.IMG_INDEX,"")); |
| | | param.setSvrIndexCode(serverIndex); |
| | | is = HKService.getVisitPicture(param); |
| | | } |
| | | if(is ==null){ |
| | | return null; |
| | | } |
| | | //TODO------jiangping--------- |
| | | try { |
| | | if(ftp == null){ |
| | | ftp = new FtpUtil(systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_HOST).getCode(), |
| | | Integer.parseInt(systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_PORT).getCode()), |
| | | systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_USERNAME).getCode(), |
| | | systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_PWD).getCode()); |
| | | }else{ |
| | | ftp.connect(); |
| | | } |
| | | String date = DateUtil.getNowShortDate(); |
| | | String fName = date+"/"+ UUID.randomUUID().toString()+".jpg"; |
| | | String fileName = folder+fName; |
| | | boolean r = ftp.uploadInputstream(is,fileName);//ä¸ä¼ |
| | | if(r){ |
| | | log.info("ãæµ·åº·å¾çä¸è½½ä¸ä¼ FTPæåã======================" ); |
| | | return fName; |
| | | }else{ |
| | | log.error("ãæµ·åº·å¾çä¸è½½ä¸ä¼ FTP失败ã======================" ); |
| | | } |
| | | } catch (Exception e) { |
| | | log.error("ãæµ·åº·å¾çä¸è½½ä¸ä¼ FTP失败ã======================"+e.getMessage()); |
| | | } |
| | | return null; |
| | | } |
| | | } |
| | |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "æætokenå¼", required = true) |
| | | }) |
| | | public ApiResponse approveApply(@RequestBody ApproveNoticeRequest account ) { |
| | | public ApiResponse approveApply(@RequestBody ApproveNoticeRequest param) { |
| | | param.setToken(this.getToken()); |
| | | erpSyncService.approveApply(param); |
| | | return ApiResponse.success(null); |
| | | } |
| | | } |
| | |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.core.model.openapi.request.erp.ApproveAddRequest; |
| | | import com.doumee.core.model.openapi.request.erp.MemberFailRequest; |
| | | import com.doumee.core.model.openapi.request.erp.OrgListRequest; |
| | | import com.doumee.core.model.openapi.request.erp.UserListRequest; |
| | | import com.doumee.core.model.openapi.response.erp.ApproveInfoResponse; |
| | |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.util.List; |
| | | import java.util.UUID; |
| | | |
| | | /** |
| | |
| | | |
| | | @Api(tags = "2ããERPã端æä¾æ¥å£ï¼å访客端æä¾ææäº¤æ°æ®ä¿¡æ¯ï¼") |
| | | @RestController |
| | | @RequestMapping("/erp") |
| | | @RequestMapping("/erp/resource") |
| | | @Slf4j |
| | | public class ErpResourceController extends ApiController{ |
| | | @ApiOperation(value = "å
¨éç»ç»ä¿¡æ¯æ¥å£", notes = "ERP端æä¾ï¼ä¾è®¿å®¢ç«¯æåå
¨é¨ç»ç»ä¿¡æ¯ï¼ç¨äºåå§ååå¨ææ§æ°æ®æ ¸æ¥") |
| | | @PostMapping("/resource/org/list") |
| | | @PostMapping("/org/list") |
| | | public ApiResponse<PageData<OrgListResponse>> orgList (@RequestBody PageWrap<OrgListRequest> pageWrap) { |
| | | return ApiResponse.success(null); |
| | | } |
| | | @ApiOperation(value = "å
¨é人åä¿¡æ¯æ¥å£", notes = "ERP端æä¾ï¼ä¾è®¿å®¢ç«¯æåå
¨é¨äººåä¿¡æ¯ï¼ç¨äºåå§ååå¨ææ§æ°æ®æ ¸æ¥") |
| | | @PostMapping("/resource/user/list") |
| | | @PostMapping("/user/list") |
| | | public ApiResponse<PageData<UserListRespone>> userList (@RequestBody PageWrap<UserListRequest> pageWrap) { |
| | | return ApiResponse.success(null); |
| | | } |
| | | @ApiOperation(value = "访客ç³è¯·æäº¤å®¡æ¹æ¥å£", notes = "ERP端æä¾ï¼ä¾è®¿å®¢ç«¯è°ç¨ï¼æäº¤è®¿å®¢ç³è¯·ä¿¡æ¯,æ¥å£æäº¤æåï¼ERP端è¿å审æ¹è®°å½ç¼ç ") |
| | | @PostMapping("/event/approve/apply") |
| | | public ApiResponse<String> approveApply(@RequestBody ApproveAddRequest account ) { |
| | | public ApiResponse<String> approveApply(@RequestBody ApproveAddRequest param ) { |
| | | return ApiResponse.success(UUID.randomUUID().toString()); |
| | | } |
| | | @ApiOperation(value = "访客ç³è¯·å®¡æ¹ç»ææ¥è¯¢æ¥å£", notes = "ERP端æä¾ï¼ä¾è®¿å®¢ç«¯è°ç¨ï¼æ¥è¯¢è®¿å®¢ç³è¯·å®¡æ¹ç»æ") |
| | | @GetMapping("/resource/approve/info") |
| | | @GetMapping("/approve/info") |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(paramType = "query", dataType = "String", name = "id", value = "审æ¹è®°å½å¯ä¸æ è¯", required = true) |
| | | }) |
| | | public ApiResponse<ApproveInfoResponse> approveInfo(@RequestParam String id ) { |
| | | return ApiResponse.success(null ); |
| | | } |
| | | @ApiOperation(value = "åå·¥åæ¥å¤±è´¥æ¨éæ¥å£", notes = "ERP端æä¾ï¼ä¾è®¿å®¢ç«¯è°ç¨ï¼åç¥erpå工信æ¯åæ¥å¤±è´¥çæ°æ®") |
| | | @PostMapping("/member/fail") |
| | | public ApiResponse<ApproveInfoResponse> memberFail(@RequestBody List<MemberFailRequest> param) { |
| | | return ApiResponse.success(null ); |
| | | } |
| | | |
| | | } |
| | | |