refactoring
This commit is contained in:
@@ -4,19 +4,22 @@ import json
|
|||||||
class DictByBatchcodeTable2JsonConverter:
|
class DictByBatchcodeTable2JsonConverter:
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def convertDictByBatchcodeTable2Json(jsonByBatchcodeTable, batchcode):
|
def convertDictByBatchcodeTable2Json(dictByBatchcodeTable, batchcode):
|
||||||
# res = jsonByBatchcodeTable.apply(lambda str: json.loads(str['SYMPTOM_COUNT_BY_VAX_LOT']), axis= 'columns')
|
|
||||||
return json.dumps(
|
return json.dumps(
|
||||||
{
|
{
|
||||||
"batchcode": batchcode,
|
"batchcode": batchcode,
|
||||||
"histograms": [
|
"histograms": DictByBatchcodeTable2JsonConverter._getHistograms(dictByBatchcodeTable)
|
||||||
{
|
|
||||||
"batchcodes": ["1808982", "EW0175"],
|
|
||||||
"histogram": {"Blood pressure orthostatic abnormal":5,"Chest discomfort":1}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"batchcodes": ["015M20A", "1808982"],
|
|
||||||
"histogram": {"Chest discomfort":2}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def _getHistograms(dictByBatchcodeTable):
|
||||||
|
return (
|
||||||
|
dictByBatchcodeTable
|
||||||
|
.apply(
|
||||||
|
lambda row: {
|
||||||
|
"batchcodes": list(row.name),
|
||||||
|
"histogram": row['SYMPTOM_COUNT_BY_VAX_LOT']
|
||||||
|
},
|
||||||
|
axis = 'columns')
|
||||||
|
.to_list()
|
||||||
|
)
|
||||||
|
|||||||
@@ -8,7 +8,6 @@ class DictByBatchcodeTable2JsonConverterTest(unittest.TestCase):
|
|||||||
|
|
||||||
def test_convertDictByBatchcodeTable2Json(self):
|
def test_convertDictByBatchcodeTable2Json(self):
|
||||||
# Given
|
# Given
|
||||||
batchcode = '1808982'
|
|
||||||
dictByBatchcodeTable = TestHelper.createDataFrame(
|
dictByBatchcodeTable = TestHelper.createDataFrame(
|
||||||
columns = ['SYMPTOM_COUNT_BY_VAX_LOT'],
|
columns = ['SYMPTOM_COUNT_BY_VAX_LOT'],
|
||||||
data = [ [
|
data = [ [
|
||||||
@@ -25,11 +24,11 @@ class DictByBatchcodeTable2JsonConverterTest(unittest.TestCase):
|
|||||||
],
|
],
|
||||||
index = pd.MultiIndex.from_tuples(
|
index = pd.MultiIndex.from_tuples(
|
||||||
names = ['VAX_LOT1', 'VAX_LOT2'],
|
names = ['VAX_LOT1', 'VAX_LOT2'],
|
||||||
tuples = [[batchcode, 'EW0175'],
|
tuples = [['1808982', 'EW0175'],
|
||||||
['015M20A', batchcode]]))
|
['015M20A', '1808982']]))
|
||||||
|
|
||||||
# When
|
# When
|
||||||
jsonActual = DictByBatchcodeTable2JsonConverter.convertDictByBatchcodeTable2Json(dictByBatchcodeTable, batchcode)
|
jsonActual = DictByBatchcodeTable2JsonConverter.convertDictByBatchcodeTable2Json(dictByBatchcodeTable, '1808982')
|
||||||
|
|
||||||
# Then
|
# Then
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
|
|||||||
Reference in New Issue
Block a user