radboy 0.0.721__py3-none-any.whl → 0.0.722__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of radboy might be problematic. Click here for more details.

@@ -57,6 +57,104 @@ class HealthLogUi:
57
57
  session.refresh(hl)
58
58
  print(std_colorize(f"Updated {hl}",0,1))
59
59
 
60
+ def search(self):
61
+ with localcontext() as CTX:
62
+ with Session(ENGINE) as session:
63
+ fields={
64
+ i.name:{
65
+ 'default':None,
66
+ 'type':str(i.type).lower()
67
+ } for i in HealthLog.__table__.columns
68
+ }
69
+ fd=FormBuilder(data=fields,passThruText="Your Search Terms `showkeys` and `gotoi` are useful.")
70
+ if fd is None:
71
+ return
72
+ FD={}
73
+ for i in fd:
74
+ if fd[i] is not None:
75
+ FD[i]=fd[i]
76
+ fd=FD
77
+ filte=[]
78
+ for i in fd:
79
+ if isinstance(fd[i],str):
80
+ filte.append(getattr(HealthLog,i).icontains(fd[i]))
81
+ else:
82
+ filte.append(getattr(HealthLog,i)==fd[i])
83
+ query=session.query(HealthLog).filter(and_(*filte))
84
+ ordered=orderQuery(query,HealthLog.DTOE)
85
+ lo={
86
+ 'limit':{
87
+ 'default':10,
88
+ 'type':'integer',
89
+ },
90
+ 'offset':{
91
+ 'type':'integer',
92
+ 'default':0,
93
+ }
94
+ }
95
+ lod=FormBuilder(data=lo,passThruText="Limit your results?")
96
+ if lod is None:
97
+ return
98
+
99
+ loq=limitOffset(query,lod['limit'],lod['offset'])
100
+ results=loq.all()
101
+ ct=len(results)
102
+ if len(results) < 1:
103
+ print("No Results!")
104
+ return
105
+ for num,i in enumerate(results):
106
+ view=[]
107
+ for x in i.__table__.columns:
108
+ if getattr(i,str(x.name)) not in [None]:
109
+ view.append(f'{Fore.green_3b}{Style.bold}{str(x.name)}{Fore.deep_sky_blue_1}={Fore.sea_green_2}{str(getattr(i,str(x.name)))}{Style.reset}')
110
+ msg=f"{'|'.join(view)}"
111
+ print(std_colorize(msg,num,ct))
112
+
113
+ def searchText(self):
114
+ filte=[]
115
+ with localcontext() as CTX:
116
+ with Session(ENGINE) as session:
117
+ query=session.query(HealthLog)
118
+ fields=[i for i in HealthLog.__table__.columns if str(i.type).lower() in ['string','varchar','char','text']]
119
+
120
+ term=Control(func=FormBuilderMkText,ptext="What are you searching?",helpText="just text is searched.",data="string")
121
+ if term in [None,'NaN','d']:
122
+ return
123
+ else:
124
+ filte=[]
125
+ for i in fields:
126
+ filte.append((getattr(HealthLog,i.name).icontains(term)))
127
+
128
+ query=session.query(HealthLog).filter(or_(*filte))
129
+ ordered=orderQuery(query,HealthLog.DTOE)
130
+ lo={
131
+ 'limit':{
132
+ 'default':10,
133
+ 'type':'integer',
134
+ },
135
+ 'offset':{
136
+ 'type':'integer',
137
+ 'default':0,
138
+ }
139
+ }
140
+ lod=FormBuilder(data=lo,passThruText="Limit your results?")
141
+ if lod is None:
142
+ return
143
+
144
+ loq=limitOffset(query,lod['limit'],lod['offset'])
145
+ results=loq.all()
146
+ ct=len(results)
147
+ if len(results) < 1:
148
+ print("No Results!")
149
+ return
150
+ for num,i in enumerate(results):
151
+ view=[]
152
+ for x in i.__table__.columns:
153
+ if getattr(i,str(x.name)) not in [None]:
154
+ view.append(f'{Fore.green_3b}{Style.bold}{str(x.name)}{Fore.deep_sky_blue_1}={Fore.sea_green_2}{str(getattr(i,str(x.name)))}{Style.reset}')
155
+ msg=f"{'|'.join(view)}"
156
+ print(std_colorize(msg,num,ct))
157
+
60
158
  def new_health_log(self):
61
159
  with Session(ENGINE) as session:
62
160
  hl=HealthLog()
@@ -919,6 +1017,16 @@ class HealthLogUi:
919
1017
  'exec':lambda self=self:self.export_log_field(fields=['BloodSugar','BloodSugarUnitName','LongActingInsulinName','LongActingInsulinTaken','LongActingInsulinUnitName','ShortActingInsulinName','ShortActingInsulinTaken','ShortActingInsulinUnitName','HeartRate','HeartRateUnitName','DrugConsumed','DrugQtyConsumed','DrugQtyConsumedUnitName','CarboHydrateIntake','CarboHydrateIntakeUnitName','Comments',],not_none=['Comments',])
920
1018
  },
921
1019
  str(uuid1()):{
1020
+ 'cmds':generate_cmds(startcmd=['sch','search'],endCmd=['specific','spec','spcfc','finer']),
1021
+ 'desc':'search with formbuilder with just equals/icontains',
1022
+ 'exec':lambda self=self:self.search()
1023
+ },
1024
+ str(uuid1()):{
1025
+ 'cmds':generate_cmds(startcmd=['sch','search'],endCmd=['text','txt','str','t']),
1026
+ 'desc':'search with text only fields by term',
1027
+ 'exec':lambda self=self:self.searchText()
1028
+ },
1029
+ str(uuid1()):{
922
1030
  'cmds':['ordered and recieved','oar','ordered and rxd','ordered & rxd','ordered & recieved','o&r'],
923
1031
  'desc':'ordered and recieved journal',
924
1032
  'exec':lambda self=self:OrderAndRxdUi()
radboy/__init__.py CHANGED
@@ -1 +1 @@
1
- VERSION='0.0.721'
1
+ VERSION='0.0.722'
Binary file
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: radboy
3
- Version: 0.0.721
3
+ Version: 0.0.722
4
4
  Summary: A Retail Calculator for Android/Linux
5
5
  Author: Carl Joseph Hirner III
6
6
  Author-email: Carl Hirner III <k.j.hirner.wisdom@gmail.com>
@@ -5,7 +5,7 @@ radboy/Holidays.txt,sha256=y-JZPihh5iaWKxMIHNXD39yVuVmf1vMs4FdNDcg0f1Y,3114
5
5
  radboy/InventoryGlossary.txt,sha256=018-Yqca6DFb10jPdkUY-5qhkRlQN1k3rxoTaERQ-LA,91008
6
6
  radboy/RecordMyCodes.py,sha256=KI7Jmf3MX0Zng_YUvcjVKN2siyUOhaMAHQGzpPuX8KQ,41373
7
7
  radboy/Run.py,sha256=JUoCTHnzQBv7n8PB2_i93ANdAC_iW__RkAge8esCnk4,76
8
- radboy/__init__.py,sha256=4O88k8mFIYsjET9qpt_POXkjh7WzptHdy5JBHPOlOmc,17
8
+ radboy/__init__.py,sha256=MA7C2nRRlB9ZM_7aN17IcptROrzbRtV11GEzrRYz-gM,17
9
9
  radboy/api_key,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
10
  radboy/case-export-2024-05-14-13-10-00.672971.xlsx,sha256=Wd592d_VLFmfUI9KKKSVjNwjV91euc1T7ATyvwvUhlg,5431
11
11
  radboy/case-export-2024-05-14-13-13-22.540614.xlsx,sha256=OnGrhmScHfGp_mVaWW-LNMsqrQgyZDpiU3wV-2s3U5Q,5556
@@ -218,10 +218,10 @@ radboy/GeoTools/__pycache__/GeoClass.cpython-313.pyc,sha256=eZ6hpLKoic1XCb7BKKg-
218
218
  radboy/GeoTools/__pycache__/OSMClass.cpython-312.pyc,sha256=5RoT8_wiI8R7yb_B9FWIC7mALdGNoqyWtkzsjM2pbh0,40387
219
219
  radboy/GeoTools/__pycache__/__init__.cpython-312.pyc,sha256=Y7Xtrzwm44-xuY_4NK8aDjYfVmXIzUFWOyexJu9le8A,1238
220
220
  radboy/GeoTools/__pycache__/__init__.cpython-313.pyc,sha256=-bk9eEIxWZgHYZHtNJbrpubDRWkbdYNkGr5J7sVhyIE,1238
221
- radboy/HealthLog/HealthLog.py,sha256=kab1O3Pb_gwwCXzEHPUetq99cR-nf0ueSISqjL29Z4Y,37763
221
+ radboy/HealthLog/HealthLog.py,sha256=H2WMUPnkknDCHHbXLKjNki-w2oIP-11d3LAq1Qj28ek,40999
222
222
  radboy/HealthLog/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
223
223
  radboy/HealthLog/__pycache__/HealthLog.cpython-312.pyc,sha256=hTo4o7jo9L2yqPZgzuKUw_kon_PVcCuTRguELTuLrIo,27946
224
- radboy/HealthLog/__pycache__/HealthLog.cpython-313.pyc,sha256=OQ-NlyGzqyvleIjFdnm-lVEmIoM0B0nXDVV9gD_7EUE,58838
224
+ radboy/HealthLog/__pycache__/HealthLog.cpython-313.pyc,sha256=sOJLndLegNB0V9uUYASAB6YJ2rCNWtOspA9UU8pNWik,65538
225
225
  radboy/HealthLog/__pycache__/__init__.cpython-312.pyc,sha256=yZrYKBk31pGSjCRqmqzpX409iw-muC1zsNO2ObqkGlY,272
226
226
  radboy/HealthLog/__pycache__/__init__.cpython-313.pyc,sha256=cqdZbEJKq9XVoVqDAwsW0pwwBBGSerJNWGlST3YVR3g,151
227
227
  radboy/InListRestore/ILR.py,sha256=s8fbbHLKQSVJX1VaeyGE-vdIUGBEbOPX29kRIG2j2WY,16847
@@ -406,7 +406,7 @@ radboy/__pycache__/Run.cpython-311.pyc,sha256=G_UEfMtkLRjR6ZpGA_BJzGenuaCcP469Y9
406
406
  radboy/__pycache__/Run.cpython-312.pyc,sha256=v4xolc3mHyla991XhpYBUbBHYT0bnJ1gE-lkFoQ4GFA,241
407
407
  radboy/__pycache__/__init__.cpython-311.pyc,sha256=R-DVbUioMOW-Fnaq7FpT5F1a5p0q3b_RW-HpLRArCAY,242
408
408
  radboy/__pycache__/__init__.cpython-312.pyc,sha256=FsFzLXOlTK8_7ixoPZzakkR8Wibt-DvXLFh-oG2QlPw,164
409
- radboy/__pycache__/__init__.cpython-313.pyc,sha256=iVg1iZ45VdgL347nqfh5Lynu5SM02Sf3-4PQSqbxuBY,165
409
+ radboy/__pycache__/__init__.cpython-313.pyc,sha256=4Zy6awWzPvRmjAXJ4qFRwGPbZz-E1bP935rXWHrixcE,165
410
410
  radboy/__pycache__/__init__.cpython-39.pyc,sha256=D48T6x6FUeKPfubo0sdS_ZUut3FmBvPMP7qT6rYBZzU,275
411
411
  radboy/__pycache__/possibleCode.cpython-311.pyc,sha256=zFiHyzqD8gUnIWu4vtyMYIBposiRQqaRXfcT_fOl4rU,20882
412
412
  radboy/__pycache__/possibleCode.cpython-312.pyc,sha256=tk_CO-AcsO3YZj5j6vEsw3g37UmEzWc5YgeWEoJEUg4,27922
@@ -434,7 +434,7 @@ radboy/tkGui/Images/__pycache__/__init__.cpython-311.pyc,sha256=tXBYpqbOlZ24B1BI
434
434
  radboy/tkGui/__pycache__/BeginnersLuck.cpython-311.pyc,sha256=xLQOnV1wuqHGaub16mPX0dDMGU9ryCeLtNz5e517_GE,3004
435
435
  radboy/tkGui/__pycache__/Review.cpython-311.pyc,sha256=wKq24iM6Xe2OampgZ7-8U6Nvmgs2y-qWOrGwtWhc75k,4047
436
436
  radboy/tkGui/__pycache__/__init__.cpython-311.pyc,sha256=BX7DBn5qbvKTvlrKOP5gzTBPBTeTgSMjBW6EMl7N8e0,230
437
- radboy-0.0.721.dist-info/METADATA,sha256=ErdHTnvy4AvvBnw2U7uaQEtZwKyr7YxwUoiSDtnzwcY,1891
438
- radboy-0.0.721.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
439
- radboy-0.0.721.dist-info/top_level.txt,sha256=mlM0RWMUxGo1YHnlLmYrHOgGdK4XNRpr7nMFD5lR56c,7
440
- radboy-0.0.721.dist-info/RECORD,,
437
+ radboy-0.0.722.dist-info/METADATA,sha256=O8xCgwXMkgERFqKfSZFahmmRB99cK1NM3EOwa6ESZE0,1891
438
+ radboy-0.0.722.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
439
+ radboy-0.0.722.dist-info/top_level.txt,sha256=mlM0RWMUxGo1YHnlLmYrHOgGdK4XNRpr7nMFD5lR56c,7
440
+ radboy-0.0.722.dist-info/RECORD,,