Commit c7cf8792602f692d6aff64355134980d1f8cedf2
1 parent
c180fa3736
Exists in
master
and in
1 other branch
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
- platform-common/src/main/java/com/lyms/platform/common/pojo/UpdateMultiData.java
- platform-common/src/main/java/com/lyms/platform/common/utils/MongoSyncUtil.java
- platform-operate-api/src/main/java/com/lyms/hospitalapi/v2/HisService.java
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); |