def create_or_update_device(request): # define default response response = {"error": "", "data": ""} # return if GET request if request.method == 'GET': response['error'] = {'no': 'err0', 'msg': 'sorry no gets'} return json_response_from(response) # get params from POST params = request.POST # error checking if (params['device_id'] == "" or params['reg_id'] == "" or params['phone_no'] == ""): response['error'] = {'no': 'err1', 'msg': 'missing mandatory params'} # get device device = Device.objects.filter(meid=params['device_id']) # if device exists, update if device.count() == 1: device = device[0] # email #if ('email' in params and device.email != params['email']): # device.email = params['email'] # reg_id if ('reg_id' in params and device.reg_id != params['reg_id']): device.reg_id = params['reg_id'] # update if ('update_interval' in params and device.update_interval != params['update_interval']): device.update_interval = params['update_interval'] device.save() # device does not exist, insert else: device = Device( meid=params['device_id'], # email = "*****@*****.**", #params['email'] reg_id=params['reg_id'], active="E") device.save() # create monitor interval in StatusMonitor class # statusmonitor = StatusMonitor( # name = 'monitorInterval', # value = '10', # units = 'min') # statusmonitor.save() deviceprofile = DeviceProfile() #deviceprofile.statusmonitor.add(statusmonitor) deviceprofile.dev = device if params['device_id'].startswith('A0000', 0, 5): deviceprofile.phone_no = params['phone_no'] deviceprofile.save() # device response['data'] = device # render json response return json_response_from(response)
def add_device(request): """ 添加设备 :param request: :return: """ if request.method == "POST": SN = request.POST.get("SN") profile_name = request.POST.get("profile_name") user_id_list = request.POST.getlist("users") # create_time = request.POST.get("create_time") # 新增时自动生成 with transaction.atomic(): device = Device.objects.create(SN=SN) device.users.add(user_id_list) device.profile = DeviceProfile(name=profile_name) return JsonResponse({ "result": 0, "message": "Add device successfully." })
def create_or_update_device(request): # define default response response = { "error": "", "data": "" } # return if GET request if request.method == 'GET': response['error'] = { 'no' : 'err0', 'msg': 'sorry no gets' } return json_response_from(response) # get params from POST params = request.POST # error checking if (params['device_id'] == "" or params['reg_id'] == "" or params['phone_no'] == ""): response['error'] = { 'no' : 'err1', 'msg': 'missing mandatory params' } # get device device = Device.objects.filter(meid=params['device_id']) # if device exists, update if device.count() == 1: device = device[0] # email #if ('email' in params and device.email != params['email']): # device.email = params['email'] # reg_id if ('reg_id' in params and device.reg_id != params['reg_id']): device.reg_id = params['reg_id'] # update if ('update_interval' in params and device.update_interval != params['update_interval']): device.update_interval = params['update_interval'] device.save() # device does not exist, insert else: device = Device( meid = params['device_id'], # email = "*****@*****.**", #params['email'] reg_id = params['reg_id'], active = "E" ) device.save() # create monitor interval in StatusMonitor class # statusmonitor = StatusMonitor( # name = 'monitorInterval', # value = '10', # units = 'min') # statusmonitor.save() deviceprofile = DeviceProfile() #deviceprofile.statusmonitor.add(statusmonitor) deviceprofile.dev = device if params['device_id'].startswith('A0000', 0, 5): deviceprofile.phone_no = params['phone_no'] deviceprofile.save() # device response['data'] = device # render json response return json_response_from(response)
def confirm_participant_register(request): # params checking if (request.POST['ub_id'] == '' and request.POST['email'] == '' \ and request.POST['first_name'] =='' and request.POST['last_name'] ==''): participantregister = ParticipantRegister( lib_number = request.POST['lib_number'], meid = request.POST['meid'] ) print request.POST['lib_number']+" -- "+request.POST['meid'] participantregister.save() return render_to_response( 'participant_register_form.html', { 'success': True, }, context_instance=RequestContext(request) ) else: password = User.objects.make_random_password(length=10, allowed_chars='abcdefghjkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ23456789') user = User.objects.create_user(request.POST['ub_id'], request.POST['email'], password) user.is_active = False user.first_name = request.POST['first_name'] user.last_name = request.POST['last_name'] user.save() # Build the activation key for their account salt = hashlib.md5(str(random.random())).hexdigest()[:5] activation_key = hashlib.md5(salt+user.username).hexdigest() key_expires = datetime.today() + timedelta(2) userprofile = UserProfile( user = user, user_type = "P", activation_key=activation_key, key_expires=key_expires ) # Create and save their profile userprofile.save() device = Device( meid = request.POST['meid'], hash_meid = hashlib.sha1(request.POST['meid']).hexdigest(), active = "E" ) device_id = device.save() device.save() # create monitor interval in StatusMonitor class statusmonitor = StatusMonitor( name = 'monitorInterval', value = '10', units = 'min') statusmonitor.save() # Create and save device profile deviceprofile = DeviceProfile() deviceprofile.dev = device deviceprofile.user = user deviceprofile.phone_no = request.POST['phone_number'] deviceprofile.status = "W" #deviceprofile.purpose = "" if request.POST['meid'].startswith('A0000', 0, 5): deviceprofile.service_type = "4" else: deviceprofile.service_type = "3" deviceprofile.save() deviceprofile.statusmonitor.add(statusmonitor) deviceprofile.save() return render_to_response( 'participant_register_form.html', { 'success': True, }, context_instance=RequestContext(request) )