From 5d2ddd92e970f02f42a4014cc65eb74e33feb776 Mon Sep 17 00:00:00 2001 From: YYC <1833023622@qq.com> Date: 星期一, 30 十二月 2024 16:06:17 +0800 Subject: [PATCH] 数据同步 --- src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogPeople.java | 4 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1023.java | 6 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1207.java | 2 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1202.java | 14 ++ src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1310.java | 7 - src/main/java/com/fzzy/async/fzzy40/entity/Fz40InoutStockChange.java | 8 + src/main/java/com/fzzy/api/utils/FileUtils.java | 254 ++++++++++++++++++++++++++++++++------------------ 7 files changed, 189 insertions(+), 106 deletions(-) diff --git a/src/main/java/com/fzzy/api/utils/FileUtils.java b/src/main/java/com/fzzy/api/utils/FileUtils.java index b3b8ac2..eedfb43 100644 --- a/src/main/java/com/fzzy/api/utils/FileUtils.java +++ b/src/main/java/com/fzzy/api/utils/FileUtils.java @@ -1,9 +1,16 @@ package com.fzzy.api.utils; import com.fzzy.data.ConfigData; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.time.DateFormatUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import ws.schild.jave.Encoder; +import ws.schild.jave.EncoderException; +import ws.schild.jave.MultimediaObject; +import ws.schild.jave.encode.AudioAttributes; +import ws.schild.jave.encode.EncodingAttributes; +import ws.schild.jave.encode.VideoAttributes; import java.io.ByteArrayOutputStream; import java.io.File; @@ -14,114 +21,177 @@ /** * 灏嗘枃浠惰浆涓轰簩杩涘埗娴佸伐鍏风被 - * @author czt * + * @author czt */ +@Slf4j @Service(FileUtils.BEAN_ID) public class FileUtils { - public static final String BEAN_ID = "base.fileUtil"; + public static final String BEAN_ID = "base.fileUtil"; - @Autowired - private ConfigData configData; + @Autowired + private ConfigData configData; - /** - * 鏍规嵁鏂囦欢璺緞灏嗘枃浠惰浆涓轰簩杩涘埗鏂囦欢娴佸瓧绗︿覆 - * @param filePath:鏂囦欢璺緞 - * @return - */ - public static String fileToByteString(String filePath) { - byte[] bytes = file2byte(filePath); - return toHexString(bytes); - } + /** + * 鏍规嵁鏂囦欢璺緞灏嗘枃浠惰浆涓轰簩杩涘埗鏂囦欢娴佸瓧绗︿覆 + * + * @param filePath:鏂囦欢璺緞 + * @return + */ + public static String fileToByteString(String filePath) { + byte[] bytes = file2byte(filePath); + return toHexString(bytes); + } - /** - * 鏍规嵁鏂囦欢璺緞灏嗘枃浠惰浆涓轰簩杩涘埗鏁扮粍 - * @param filePath:鏂囦欢璺緞 - * @return - */ - public static byte[] file2byte(String filePath) { - byte[] buffer = null; - try { - File file = new File(filePath); - FileInputStream fis = new FileInputStream(file); - ByteArrayOutputStream bos = new ByteArrayOutputStream(); - byte[] b = new byte[1024]; - int n; - while ((n = fis.read(b)) != -1) { - bos.write(b, 0, n); - } - fis.close(); - bos.close(); - buffer = bos.toByteArray(); - } catch (FileNotFoundException e) { - e.printStackTrace(); - } catch (IOException e) { - e.printStackTrace(); - } - return buffer; - } - - /** - * 灏嗕簩杩涘埗鏁扮粍杞负瀛楃涓� - * @param byteArray - * @return - */ - private static String toHexString(byte[] byteArray) { - if (byteArray == null || byteArray.length < 1) - throw new IllegalArgumentException( - "this byteArray must not be null or empty"); + /** + * 鏍规嵁鏂囦欢璺緞灏嗘枃浠惰浆涓轰簩杩涘埗鏁扮粍 + * + * @param filePath:鏂囦欢璺緞 + * @return + */ + public static byte[] file2byte(String filePath) { + byte[] buffer = null; + try { + File file = new File(filePath); + FileInputStream fis = new FileInputStream(file); + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + byte[] b = new byte[1024]; + int n; + while ((n = fis.read(b)) != -1) { + bos.write(b, 0, n); + } + fis.close(); + bos.close(); + buffer = bos.toByteArray(); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + return buffer; + } - final StringBuilder hexString = new StringBuilder(); - for (int i = 0; i < byteArray.length; i++) { - if ((byteArray[i] & 0xff) < 0x10)// 0~F鍓嶉潰涓嶉浂 - hexString.append("0"); - hexString.append(Integer.toHexString(0xFF & byteArray[i])); - } - return hexString.toString().toLowerCase(); - } + /** + * 灏嗕簩杩涘埗鏁扮粍杞负瀛楃涓� + * + * @param byteArray + * @return + */ + private static String toHexString(byte[] byteArray) { + if (byteArray == null || byteArray.length < 1) + throw new IllegalArgumentException( + "this byteArray must not be null or empty"); - public String getInoutFilePath(Date date) { - if (null == date) { - date = new Date(); - } + final StringBuilder hexString = new StringBuilder(); + for (int i = 0; i < byteArray.length; i++) { + if ((byteArray[i] & 0xff) < 0x10)// 0~F鍓嶉潰涓嶉浂 + hexString.append("0"); + hexString.append(Integer.toHexString(0xFF & byteArray[i])); + } + return hexString.toString().toLowerCase(); + } - String basePath = configData.getImgPath() + "INOUT/" - + DateFormatUtils.format(date, "yyyyMM") + "/"; + public String getInoutFilePath(Date date) { + if (null == date) { + date = new Date(); + } - File file = new File(basePath); - if (!file.exists()) { - file.mkdirs(); - } + String basePath = configData.getImgPath() + "INOUT/" + + DateFormatUtils.format(date, "yyyyMM") + "/"; - return basePath; - } + File file = new File(basePath); + if (!file.exists()) { + file.mkdirs(); + } - public String getSnapFilePath(Date date) { - if (null == date) { - date = new Date(); - } + return basePath; + } - String basePath = configData.getImgPath() + "SNAP/" - + DateFormatUtils.format(date, "yyyyMM") + "/"; - File file = new File(basePath); - if (!file.exists()) { - file.mkdirs(); - } - return basePath; - } + public String getSnapFilePath(Date date) { + if (null == date) { + date = new Date(); + } - public String getCommonFilePath(Date date) { - if (null == date) - date = new Date(); + String basePath = configData.getImgPath() + "SNAP/" + + DateFormatUtils.format(date, "yyyyMM") + "/"; + File file = new File(basePath); + if (!file.exists()) { + file.mkdirs(); + } + return basePath; + } - String basePath = configData.getImgPath() + "COMMON/" - + DateFormatUtils.format(date, "yyyyMM") + "/"; + public String getCommonFilePath(Date date) { + if (null == date) + date = new Date(); - File file = new File(basePath); - if (!file.exists()) { - file.mkdirs(); - } - return basePath; - } + String basePath = configData.getImgPath() + "COMMON/" + + DateFormatUtils.format(date, "yyyyMM") + "/"; + + File file = new File(basePath); + if (!file.exists()) { + file.mkdirs(); + } + return basePath; + } + + /** + * 瑙嗛鍘嬬缉 + * + * @param source 婧愭枃浠� + * @param target 鐩爣鏂囦欢 + * @param rate 鍘嬬缉姣� + */ + public static void compre(File source, File target, Integer rate) throws EncoderException { + try { + log.info("---------------寮�濮嬪帇缂�---------------"); + long start = System.currentTimeMillis(); + + // 闊抽缂栫爜灞炴�ч厤缃� + AudioAttributes audio = new AudioAttributes(); + audio.setCodec("libmp3lame"); + // 璁剧疆闊抽姣旂壒鐜�,鍗曚綅:b (姣旂壒鐜囪秺楂橈紝娓呮櫚搴�/闊宠川瓒婂ソ锛屽綋鐒舵枃浠朵篃灏辫秺澶� 56000 = 56kb) + // audio.setBitRate(new Integer(56_000)); + audio.setBitRate(new Integer(10)); + // 璁剧疆閲嶆柊缂栫爜鐨勯煶棰戞祦涓娇鐢ㄧ殑澹伴亾鏁帮紙1 =鍗曞0閬擄紝2 = 鍙屽0閬擄紙绔嬩綋澹帮級锛� + audio.setChannels(1); + // 閲囨牱鐜囪秺楂樺0闊崇殑杩樺師搴﹁秺濂斤紝鏂囦欢瓒婂ぇ + // audio.setSamplingRate(new Integer(44100)); + audio.setSamplingRate(new Integer(22050)); + // 瑙嗛缂栫爜灞炴�ч厤缃� + VideoAttributes video = new VideoAttributes(); + // 璁剧疆缂栫爜 + video.setCodec("h254"); + //璁剧疆闊抽姣旂壒鐜�,鍗曚綅:b (姣旂壒鐜囪秺楂橈紝娓呮櫚搴�/闊宠川瓒婂ソ锛屽綋鐒舵枃浠朵篃灏辫秺澶� 5600000 = 5600kb) + // video.setBitRate(new Integer(5_600_000 / rate)); + video.setBitRate(10 / rate); + + // 璁剧疆瑙嗛甯х巼锛堝抚鐜囪秺浣庯紝瑙嗛浼氬嚭鐜版柇灞傦紝瓒婇珮璁╀汉鎰熻瓒婅繛缁級,杩欓噷 闄�1000鏄负浜嗗崟浣嶈浆鎹� + video.setFrameRate(15); + + + // 缂栫爜璁剧疆 + EncodingAttributes attr = new EncodingAttributes(); + attr.setOutputFormat("mp4"); + attr.setAudioAttributes(audio); + attr.setVideoAttributes(video); + + // 璁剧疆鍊肩紪鐮� + Encoder ec = new Encoder(); + ec.encode(new MultimediaObject(source), target, attr); + + + log.info("---------------缁撴潫鍘嬬缉---------------"); + long end = System.currentTimeMillis(); + log.info("鍘嬬缉鍓嶅ぇ灏忥細" + source.length() + " 鍘嬬缉鍚庡ぇ灏忥細" + target.length()); + log.info("鍘嬬缉鑰楁椂锛�" + (end - start)); + + } catch (EncoderException e) { + e.printStackTrace(); + } catch (IllegalArgumentException e) { + e.printStackTrace(); + } + + } } diff --git a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogPeople.java b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogPeople.java index 428ce25..d2a7a23 100644 --- a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogPeople.java +++ b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40DrugLogPeople.java @@ -24,8 +24,8 @@ @Id @Column(name = "PEOPLE_ID_", length = 40) - @PropertyDef(label = "propleId") - private String propleId; + @PropertyDef(label = "peopleId") + private String peopleId; @Column(name = "DRUG_LOG_ID_", length = 12) diff --git a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40InoutStockChange.java b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40InoutStockChange.java index d7c8df1..ab5d61d 100644 --- a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40InoutStockChange.java +++ b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40InoutStockChange.java @@ -60,6 +60,14 @@ @PropertyDef(label = "鍊掑嚭浠撳簱") private String depotIdOut; + @Column(name = "CHANGE_START_DATE_") + @PropertyDef(label = "鍊掍粨寮�濮嬫棩鏈�", description = "yyyy-MM-dd") + private Date changeStartDate; + + @Column(name = "CHANGE_END_DATE_") + @PropertyDef(label = "鍊掍粨缁撴潫鏃ユ湡", description = "yyyy-MM-dd") + private Date changeEndDate; + @Column(name = "CHANGE_DATE_") @PropertyDef(label = "鍊掍粨鏃ユ湡", description = "yyyy-MM-dd") private Date changeDate; diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1023.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1023.java index 76af5ef..9bb34b3 100644 --- a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1023.java +++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1023.java @@ -197,11 +197,11 @@ infoData.setKqdm(kqdm); infoData.setInteType(Constant.API_CATEGORY_13); - infoData.setInteId(ApiCodeConstant.API_1023); - infoData.setBizType(PushProtocol.SB_GD_2022.getCode()); + infoData.setInteId(ApiCodeConstant.API_9201); + infoData.setBizType(PushProtocol.SB_GD_2023.getCode()); infoData.setUpdateTime(new Date()); infoData.setDataId(data.getXzbm()); - apiInfoList = apiInfoDataRep.getDataByInteAndData(ApiCodeConstant.API_1023, data.getXzbm(), kqdm); + apiInfoList = apiInfoDataRep.getDataByInteAndData(ApiCodeConstant.API_9201, data.getXzbm(), kqdm); if (null == apiInfoList || apiInfoList.isEmpty()) { GD2022Api1023.setCzbz(Constant.CZBZ_I); diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1202.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1202.java index bd1122f..d4b81ca 100644 --- a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1202.java +++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1202.java @@ -148,9 +148,14 @@ //绮潈鍗曚綅褰掑睘浠g爜 List<Api1208> dataByHwdm = api1208Rep.findDataByHwdm(apiData.getHwdm()); - if(null != dataByHwdm && dataByHwdm.size() > 0){ - apiData.setLqgsdwdm(StringUtils.isEmpty(dataByHwdm.get(0).getLqgsdwdm()) ? apiData.getHwdm().substring(0, 18) : dataByHwdm.get(0).getLqgsdwdm()); + if (null != dataByHwdm && dataByHwdm.size() > 0) { + apiData.setLqgsdwdm(StringUtils.isEmpty(dataByHwdm.get(0).getLqgsdwdm()) ? apiData.getKqdm() : dataByHwdm.get(0).getLqgsdwdm()); + }else { + apiData.setLqgsdwdm(apiData.getKqdm()); } + apiData.setSlr("鍞伯浜�"); + apiData.setSlrdz("鍞伯浜哄湴鍧�"); + apiData.setBz(StringUtils.isEmpty(sysData.getRemarks()) ? "澶囨敞" : sysData.getRemarks()); apiData.setXxdz(StringUtils.isEmpty(sysData.getUserAddress()) ? "璇︾粏鍦板潃" : sysData.getUserAddress()); @@ -164,7 +169,7 @@ //鐢熸垚鏂瑰紡 apiData.setScfs(1); - if(StringUtils.isNotEmpty(sysData.getRecordStatus()) && sysData.getRecordStatus().equals("ADD")){ + if (StringUtils.isNotEmpty(sysData.getRecordStatus()) && sysData.getRecordStatus().equals("ADD")) { apiData.setScfs(2); apiData.setSdblyy("搴撳尯鍋滅數瀵艰嚧鏃犳硶鎸夋祦绋嬭繘琛屽嚭搴�"); } @@ -254,7 +259,6 @@ apiData.setBizId(sysData.getId()); apiData.setKqdm(kqdm); apiData.setSyncTime(new Date()); - apiData.setBz(null == sysData.getRemarks() ? "澶囨敞" : sysData.getRemarks()); apiData.setKlyy("鎵i噺鍘熷洜"); apiData.setCmqrmgryxm(StringUtils.isEmpty(sysData.getRegisterUser()) ? "鐧昏浜�" : sysData.getRegisterUser()); @@ -263,6 +267,8 @@ //04:琛ㄧず鍐滅敤杞﹁溅鐗屽彿锛岀豢搴曠櫧瀛楋紱 LS:琛ㄧず涓存椂铏氭嫙鍙风墝锛屼粎闄愪簬鍞� 绮溅鏃犲浐瀹氬彿鐗屾椂浣跨敤 apiData.setCchlx("01"); apiData.setLdd("瑁呯伯鍦扮偣"); + apiData.setZkj(0.0); + apiData.setZlfyzkl(0.0); apiData.setQzsfzkl(0.0); apiData.setQzzzzkl(0.0); apiData.setQzgwcmkl(0.0); diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1207.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1207.java index eb5c271..2771377 100644 --- a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1207.java +++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1207.java @@ -96,6 +96,8 @@ apiData.setDchwdm(api1105Out.getHwdm()); apiData.setDrhwdm(api1105In.getHwdm()); apiData.setDcrq(sysData.getChangeDate()); + apiData.setDcksrq(sysData.getChangeStartDate()); + apiData.setDcjsrq(sysData.getChangeEndDate()); apiData.setDcsl(sysData.getNumber()); apiData.setBzw(sysData.getBzw()); apiData.setBzbjs(sysData.getBzbjs()); diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1310.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1310.java index d09660f..caee90c 100644 --- a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1310.java +++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1310.java @@ -106,8 +106,8 @@ api1310.setRkrq(fz40Quality.getStoreDate()); api1310.setJylb(fz40Quality.getType()); api1310.setJysj(fz40Quality.getTime()); - api1310.setJydw(fz40Quality.getUser()); - api1310.setJyr(fz40Quality.getUser()); + api1310.setJydw(StringUtils.isEmpty(fz40Quality.getUnit()) ? "妫�楠屽崟浣�" : fz40Quality.getUnit()); + api1310.setJyr(StringUtils.isEmpty(fz40Quality.getUser()) ? "妫�楠屼汉" : fz40Quality.getUser()); api1310.setJyyj(fz40Quality.getStandard()); if (StringUtils.isEmpty(fz40Quality.getZblb())) { api1310.setZblb("2"); @@ -139,9 +139,6 @@ api1310.setZbjgpd(fz40Quality.getResult()); api1310.setQfrq(fz40Quality.getTime()); api1310.setBgcjsj(fz40Quality.getTime()); - if (fz40Quality.getUser().isEmpty()){ - fz40Quality.setUser(fz40Quality.getCheckUser()); - } api1310.setShrxm(fz40Quality.getShrxm().contains("銆�")?fz40Quality.getShrxm().replace('銆�','|'):fz40Quality.getShrxm()); if (null == fz40Quality.getCheckTime()) { fz40Quality.setCheckTime(DateUtils.addDays(fz40Quality.getTime(), -1)); -- Gitblit v1.9.3