def post(self): plates_info = self.get_argument('plates_info') volume = self.get_argument('volume') preparation_date = self.get_argument('preparation_date') month, day, year = map(int, preparation_date.split('/')) preparation_date = date(year, month, day) processes = [ LibraryPrep16SProcess.create( self.current_user, Plate(pid), Plate(pp), pn, Equipment(ep), Equipment(ep300), Equipment(ep50), ReagentComposition.from_external_id(mm), ReagentComposition.from_external_id(w), volume, preparation_date=preparation_date).id for pid, pn, pp, ep, ep300, ep50, mm, w in json_decode(plates_info) ] self.write({'processes': processes})
def post(self): user = self.current_user plates_info = self.get_argument('plates_info') water = self.get_argument('water') total_vol = self.get_argument('total_vol') ng = self.get_argument('ng') min_vol = self.get_argument('min_vol') max_vol = self.get_argument('max_vol') resolution = self.get_argument('resolution') reformat = self.get_argument('reformat') processes = [[ plate_id, NormalizationProcess.create( user, Plate(plate_id).quantification_process, ReagentComposition.from_external_id(water), plate_name, total_vol=float(total_vol), ng=float(ng), min_vol=float(min_vol), max_vol=float(max_vol), resolution=float(resolution), reformat=reformat).id ] for plate_id, plate_name in json_decode(plates_info)] self.write({'processes': processes})
def post(self): plate_name = self.get_argument('plate_name') volume = self.get_argument('volume') plate = self.get_argument('plate') i5_plate = self.get_argument('i5_plate') i7_plate = self.get_argument('i7_plate') kappa_hyper_plus_kit = self.get_argument('kappa_hyper_plus_kit') stub_lot = self.get_argument('stub_lot') process = LibraryPrepShotgunProcess.create( self.current_user, Plate(plate), plate_name, ReagentComposition.from_external_id(kappa_hyper_plus_kit), ReagentComposition.from_external_id(stub_lot), volume, Plate(i5_plate), Plate(i7_plate)) self.write({'process': process.id})
def post(self): user = self.current_user plate_id = self.get_argument('plate_id') water = self.get_argument('water') plate_name = self.get_argument('plate_name') total_vol = self.get_argument('total_vol') ng = self.get_argument('ng') min_vol = self.get_argument('min_vol') max_vol = self.get_argument('max_vol') resolution = self.get_argument('resolution') reformat = self.get_argument('reformat') qprocess = Plate(plate_id).quantification_process process = NormalizationProcess.create( user, qprocess, ReagentComposition.from_external_id(water), plate_name, total_vol=float(total_vol), ng=float(ng), min_vol=float(min_vol), max_vol=float(max_vol), resolution=float(resolution), reformat=reformat) self.write({'process': process.id})
def post(self): user = self.current_user plates_info = self.get_argument('plates_info') water = self.get_argument('water') total_vol = self.get_argument('total_vol') ng = self.get_argument('ng') min_vol = self.get_argument('min_vol') max_vol = self.get_argument('max_vol') resolution = self.get_argument('resolution') reformat = self.get_argument('reformat') # NB: JavaScript uses true and false, posting converts them to strings reformat = reformat == 'true' processes = [[ plate_id, NormalizationProcess.create( user, QuantificationProcess(quantification_process_id), ReagentComposition.from_external_id(water), plate_name, total_vol=float(total_vol), ng=float(ng), min_vol=float(min_vol), max_vol=float(max_vol), resolution=float(resolution), reformat=reformat).id ] for plate_id, plate_name, quantification_process_id in json_decode( plates_info)] self.write({'processes': processes})
def post(self): user = self.current_user plates_info = self.get_argument('plates_info') volume = self.get_argument('volume') kappa_hyper_plus_kit = self.get_argument('kappa_hyper_plus_kit') stub_lot = self.get_argument('stub_lot') processes = [[ pid, LibraryPrepShotgunProcess.create( user, Plate(pid), plate_name, ReagentComposition.from_external_id(kappa_hyper_plus_kit), ReagentComposition.from_external_id(stub_lot), volume, Plate(i5p), Plate(i7p)).id ] for pid, plate_name, i5p, i7p in json_decode(plates_info)] self.write({'processes': processes})
def post(self): master_mix = self.get_argument('master_mix') water = self.get_argument('water') robot = self.get_argument('robot') tm300_8_tool = self.get_argument('tm300_8_tool') tm50_8_tool = self.get_argument('tm50_8_tool') volume = self.get_argument('volume') plates = self.get_argument('plates') plates = [(Plate(pid), Plate(ppid)) for pid, ppid in json_decode(plates)] process = LibraryPrep16SProcess.create( self.current_user, ReagentComposition.from_external_id(master_mix), ReagentComposition.from_external_id(water), Equipment(robot), Equipment(tm300_8_tool), Equipment(tm50_8_tool), volume, plates) self.write({'process': process.id})
def post(self): robot = self.get_argument('robot') tool = self.get_argument('tool') kit = self.get_argument('kit') plates = self.get_argument('plates') volume = self.get_argument('volume') plates = [Plate(pid) for pid in json_decode(plates)] process = GDNAExtractionProcess.create( self.current_user, Equipment(robot), Equipment(tool), ReagentComposition.from_external_id(kit), plates, volume) self.write({'process': process.id})
def post(self): plates_info = self.get_argument('plates_info') extraction_date = self.get_argument('extraction_date') volume = self.get_argument('volume') month, day, year = map(int, extraction_date.split('/')) extraction_date = date(year, month, day) # We create one process per plate processes = [] for pid, ee, kf, ep, ept, kit, p_name, nt in json_decode(plates_info): # Check whether plate was externally extracted if ee is True: # find the id of null things eq_no = \ Equipment.list_equipment('Not applicable')[0]['equipment_id'] ep = ept = kf = Equipment(eq_no) kit = ReagentComposition.from_external_id('Not applicable') else: kf = Equipment(kf) ep = Equipment(ep) ept = Equipment(ept) kit = ReagentComposition.from_external_id(kit) processes.append( GDNAExtractionProcess.create(self.current_user, Plate(pid), kf, ep, ept, kit, volume, p_name, externally_extracted=ee, extraction_date=extraction_date, notes=nt).id) self.write({'processes': processes})
def post(self): plates_info = self.get_argument('plates_info') extraction_date = self.get_argument('extraction_date') volume = self.get_argument('volume') month, day, year = map(int, extraction_date.split('/')) extraction_date = date(year, month, day) plates_info = [ (Plate(pid), Equipment(kf), Equipment(ep), Equipment(ept), ReagentComposition.from_external_id(kit), p_name) for pid, kf, ep, ept, kit, p_name in json_decode(plates_info) ] process = GDNAExtractionProcess.create(self.current_user, plates_info, volume, extraction_date=extraction_date) self.write({'process': process.id})
def test_reagent_composition_from_external_id(self): self.assertEqual(ReagentComposition.from_external_id('157022406'), ReagentComposition(1)) with self.assertRaises(LabmanUnknownIdError): ReagentComposition.from_external_id('Does not exist')