Commit c7cf8792602f692d6aff64355134980d1f8cedf2

Authored by hanshaofeng
1 parent c180fa3736

hahahah

Showing 4 changed files with 46 additions and 6 deletions

platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/MongoSyncService.java View file @ c7cf879
... ... @@ -6,11 +6,13 @@
6 6 import com.lyms.platform.common.pojo.UpdateMultiData;
7 7 import com.lyms.platform.common.utils.*;
8 8 import com.lyms.platform.pojo.*;
  9 +import com.mongodb.DBObject;
9 10 import com.mongodb.Mongo;
10 11 import org.apache.commons.lang.*;
11 12 import org.apache.commons.lang.StringUtils;
12 13 import org.springframework.beans.factory.annotation.Autowired;
13 14 import org.springframework.data.mongodb.core.MongoTemplate;
  15 +import org.springframework.data.mongodb.core.query.Criteria;
14 16 import org.springframework.data.mongodb.core.query.Query;
15 17 import org.springframework.data.mongodb.core.query.Update;
16 18 import org.springframework.stereotype.Service;
... ... @@ -38,6 +40,10 @@
38 40  
39 41 public static String mongo_crypto_key = Config.getItem("mongo_crypto_key", "0");
40 42  
  43 + public static void main(String[] a) {
  44 +
  45 + }
  46 +
41 47 public boolean syncData(String action, String id, String className, String json) {
42 48 System.out.println(mongo_crypto_key);
43 49 System.out.println(action);
... ... @@ -51,7 +57,18 @@
51 57 if (obj instanceof UpdateMultiData) {
52 58 UpdateMultiData data = (UpdateMultiData) obj;
53 59 if (data.getQuery() != null && data.getUpdate() != null) {
54   - mongoTemplate.updateMulti(data.getQuery(), data.getUpdate(), cla);
  60 + MongoCondition c = null;
  61 + for (String key:data.getQuery().keySet()) {
  62 + if (c == null) {
  63 + c = new MongoCondition(key, data.getQuery().get(key), MongoOper.IS);
  64 + } else {
  65 + c.and(key, data.getQuery().get(key), MongoOper.IS);
  66 + }
  67 + }
  68 + if (c != null) {
  69 + mongoTemplate.updateMulti(new MongoQuery(c).convertToMongoQuery(), data.getUpdate(), cla);
  70 + return true;
  71 + }
55 72 }
56 73 }
57 74 } else if ("ADD".equals(action)) {
platform-common/src/main/java/com/lyms/platform/common/pojo/UpdateMultiData.java View file @ c7cf879
1 1 package com.lyms.platform.common.pojo;
2 2  
  3 +import com.mongodb.DBObject;
3 4 import org.springframework.data.mongodb.core.query.Query;
4 5 import org.springframework.data.mongodb.core.query.Update;
5 6  
  7 +import java.util.HashMap;
  8 +import java.util.Map;
  9 +
6 10 /**
7 11 * Created by riecard on 2016/10/30.
8 12 */
9 13 public class UpdateMultiData {
10 14  
11   - private Query query;
  15 + private Map<String, Object> query;
12 16 private Update update;
13 17  
14   - public Query getQuery() {
  18 + public Map<String, Object> getQuery() {
15 19 return query;
16 20 }
17 21  
18 22 public void setQuery(Query query) {
19   - this.query = query;
  23 + DBObject dbObject = query.getQueryObject();
  24 + this.query = new HashMap<>();
  25 + for (String key:dbObject.keySet()) {
  26 + if (dbObject.get(key) != null) {
  27 + this.query.put(key, dbObject.get(key));
  28 + }
  29 + }
20 30 }
21 31  
22 32 public Update getUpdate() {
platform-common/src/main/java/com/lyms/platform/common/utils/MongoSyncUtil.java View file @ c7cf879
1 1 package com.lyms.platform.common.utils;
2 2  
3 3 import com.lyms.platform.common.base.PageInfo;
  4 +import com.lyms.platform.common.dao.operator.MongoCondition;
  5 +import com.lyms.platform.common.dao.operator.MongoOper;
  6 +import com.lyms.platform.common.dao.operator.MongoQuery;
4 7 import org.apache.commons.httpclient.HttpClient;
5 8 import org.apache.commons.httpclient.NameValuePair;
6 9 import org.apache.commons.httpclient.methods.PostMethod;
  10 +import org.springframework.data.mongodb.core.query.Query;
7 11  
8 12 /**
9 13 * Created by Administrator on 2016/9/13 0013.
10 14  
... ... @@ -90,8 +94,13 @@
90 94 System.out.println(MD5Utils.md5(aaa.getClass().getName()));
91 95 System.out.println(LymsEncodeUtil.aesEncrypt("5805868f28b6213d2b7755eb", "Lymsh@2016"));
92 96 System.out.println(LymsEncodeUtil.aesDecrypt("26EB0301C4A2410E90985A3E55856E4B94848F070CCE3F6400CF502216F6DD18ED0A0A43348E4AB0AB97B38E4CEFEA7A4E1D74EE1671DAD6AC72560C5329BC05","Lymsh@2016"));
93   - System.out.println(LymsEncodeUtil.aesDecrypt("1E66365A4C484EC5DCF99895D324A87FB2F37315BD4FB4C327CF4F002FD203EBF1E850920AB9CBFDB4311E97A481629C325A2519D77B18FE6D18DDDC3206EFACF2B189E1DB41839B019BB8403F2C0875F22A1DF69BC786D3FB4A80FD3FC454A200EF5F2B2F5B534BDC272FB382DA2B14816AD6CBC907E3A6E92C6927B2A8D99A99AB386BFC3326918B7ABC246CBC2BB865E8C217C35DE4D63E1B9F85362951631B4F21101BF2677D87451AD022A87AEF01C099640011CFE40F7427AA3FF00075A878415DA09AD45B4927FEE874F9BA0222F4F39D79E6053EE35CA5997DADA53D88C7D611C8BFAA3C56CE083C80F80F412596C6854CE310766B7F4A97D9E6FF5E4B307EECF94FBC4064BCDC6215C911AF0EE74D33698333F4CBD80D294CD7A9B0447B20A74C8BF046D7C050A6DC9520F95E94C86D5CDE93DA481C86B8F4717FFF132356367A8BB54664742124D0D846877D312FA6B0B00DFCAF9A76A82F8E6A151B1B53E6CE346F228EC5028EA032AB0882617D821E901F96B505956D2A32D11E2D49B33A995828D40C94AA8EE0BE20A53590851073FB6DDE81E7FA4C20508597AEC72C3A8188634D1FB19360DA94FC695510E6FE3B8F2CCC8DB62CB0201F86F753AC93DD7FAA8E6FE69E949692C1DA1B77A10D7049C8B6B92A25F68D1AA935D9223FA0E972F079CB3700F7D0E89F4A6704E66975562133DEAAB6E5501F4578AC42998252F68DD1BC51BEA5F8FC02E4AEA985F268A4B868EF39E59670E5997F9B125761D8A9C05C01C6692253E512E42CB058F183AC04053E07219531D72E8624CDBDCD0D7810F54CABA2FD2F6C9ABDC06827979F3AB97E232CC40A40B3CA0D9EC45DC60593046C29B4B9E36D24A9D663E9D9FD2FE6F4134746E5441A4A3C03CAC95A8E58A11A067410D43C3121DED7AC8FCEF58B9E8B368D4AC0BE5FFF5482B1BF6C7B526F2818D957A2EF68E2FE16695C5B3570B90BBD96FB645B940EE71DE3BA49FBA404B73E58132864877EA6A18039086BD4C3D91C84FEEBD532CF550BDEF950055E7920CDD4EB1FEFAA0468B8A323BEAC7831F91A2E5B248A87CBF2C4B2928F849B1932C0CC0D24B5892F21DCE27738AD99AB14DD6024F983CDC33505609D0FFFA377F3DD507F947DB565B49A007547CFA585F38A12F0BCE7E7384F60D72F080FF9E7DCB8097E975923C1C6B332EE09D933E0E7B5FB2C41B1B4CCA619A674F6840211DE28EF93040854981390852E6FBD11ED48FA9B9172FE2C4C86A3FC84E5760BF0C8A9FE98E3A352105BE540D2D2C9E5283C75A042A47ED98FB1D40E3D26452101FCD38E8630A4FAC165AA36981B75797CA4CA99E96A2D7AE050FF74FCF3859CDB546E1706BE7AF76136461B6C880D4E3BFD6666C80E95DE7E65A1831902FBBC74DDCD1E01EDA246B6942A0AFD48BC7F92EE1197BBF7CAD82AEC196250DDAECD875E67626E4C213A85D39B4208A4812C71FBB21D00844A0D0ED1860FD84185750996D1AD2425F65017A2BF00F3FA748FF34DBEA9CD91B611BF5BD17D06643AB5E23428743064815D2D63B3A877D87D68A2123E0E1856567C056EA76FEE3D435E56D8CB9F6CD57C49FACC42E5CB69C9735DBBE922C11DDE4BECE29333E4EED7F17F8575D50214002A5D870891C6C8D9050A5FC9C56A8CA9B18360FD3EA0CF8BD4C72A3B99EE3042CC5C0292F9CC27D6C219836901B5E3C1A0BDC50A84725A517C0A2DD38106794831725AD7188F784ED4ACC79F38D3273E6C0219F074C92B433C52C3A6D9A3E84394DCFD0539FA9F549028989EC63C8E3E1C71934B6FE681A74FA6F50D683EA349EE278F149EF431043CEF1880768B2111EDFCE5ECE75D17A6F808033350FC0969AF3F990985D3BD6FE3C049EC4DE530BB013DF33A333E19CA3B6D2A39FC8BBC3F17F6064BF4A17F78FAE772C19ACBC7068373C9E8A394C9EA882B47F21491689EB822CCA135019F6D9D76FDBAE47BC4981F6D7F3E60830D9292254C2E7153014509EED6071E67DBE1E83F19E1E3E4B2BEB31A093C8791C583726C817E373BBC6F90D837EB7A4D92B5F9E01BAFF1E768A92BB70A6E303A221A4D2814F7EF702E5FB908AE819E50C8D3E90BE4413BBE03112E8343BB2A4C4241DA3E7AC1EB1B127702AFC8D7D3C42A7BDC5722BF4A81903041D5ED77C50F07B0E18D07266812A3DE48C23ACB6A702DECF9E96AABAAA6847D898F8C884164A96F04A40F7A4EA28BA3CC54053C52","Lymsh@2016"));
  97 + System.out.println(LymsEncodeUtil.aesDecrypt("FE679036A0EE365E30DD51E0E3C38460E8B20EEDC76E8E0B04267438BFFCFFFD76D0C562244A2C914B1254B7E706BA124EE8FF560F8DEF9AD8C87EA9C793F0E16CED2A06DF8BB124DF034D21FF38F41B6CC9B1ECB30E408073D62327F5ADF8F17E7C44235EF3BCF169A1E5AFA51AD746F515F882A9B1DBD4C10C7BD747939FDA08A3FCDC7210E660534F3FC5D602046050D22F2AAF087C7A91C2354890284B057576CE83CEBBA3BD206DD9923565BE9512124867D52FAF4EDEAB6D3051F2CAB91369DAA8F00A2C81A9529A154DB2CE549F8F4740E36EDF167BFA5B7FCFFA959E21B327CAFA63A3FF1DDE45D2455C5CC77EA36B5F7E097EF42BC87E485A0F6E47DA1B3359799768A89FE1D2D4DD4F71EBDEA0ED4CA19531DE4AA318A53F6CDD3E25A8EC17A0D5A0BA3F3C0ABA45F9B3C2C3F797A66669526FDAFCE83A29B7767870614CCB6022F32690B94B3818839F87B6CB04613F7338E8C77CD5359E3A860B06AFDC40128D8E5711DE057748A4695C","Lymsh@2016"));
94 98  
  99 + Query query = new MongoQuery(new MongoCondition("id", "aaa", MongoOper.IS).and("name", "bbb", MongoOper.IS)).convertToMongoQuery();
  100 + System.out.println(JsonUtil.obj2Str(query));
  101 + String s = "{\"restrictedTypes\":[],\"skip\":0,\"limit\":0,\"hint\":null,\"queryObject\":{\"id\":\"aaa\"},\"fieldsObject\":null,\"sortObject\":null}";
  102 + query = JsonUtil.str2Obj(s, Query.class);
  103 + System.out.println(JsonUtil.obj2Str(query));
95 104 }
96 105  
97 106 }
platform-operate-api/src/main/java/com/lyms/hospitalapi/v2/HisService.java View file @ c7cf879
... ... @@ -125,7 +125,11 @@
125 125 item.setName(checkItem.getP_ITEMNAME());
126 126 item.setCode(checkItem.getP_ITEMCODE());
127 127 item.setRefer(checkItem.getP_REFERENCEVALUE());
128   - item.setResult(checkItem.getP_ITEMRESULT());
  128 + if (StringUtils.isNotBlank(checkItem.getP_CODERESULT())) {
  129 + item.setResult(checkItem.getP_CODERESULT());
  130 + } else {
  131 + item.setResult(checkItem.getP_ITEMRESULT());
  132 + }
129 133 item.setUnit(checkItem.getP_UNIT());
130 134 item.setSpecial(checkItem.getP_HIGHANDLOWMARK());
131 135 itemList.add(item);