def add_achievement(): valid, form = parsing_form('addAchievementForm') if not valid: return reply(success=False, message='参数错误', error_code=const.PARAM_ERR) res_device = utils.is_code_exist(Device, form['device_code']) if not res_device[0]: return reply(success=False, message='设备不存在', error_code=const.PARAM_ILLEGAL) if not utils.is_code_exist(Member, form['member_code'])[0]: return reply(success=False, message='成员不存在', error_code=const.PARAM_ILLEGAL) device = res_device[1].first() device_achievement_data = { 'device_code': form['device_code'], 'member_code': form['member_code'], 'department_id': device.department_id, 'manufacturer_date': form['manufacturer_date'], 'achievement_description': form['achievement_description'], 'patent_description': form['patent_description'], 'paper_description': form['paper_description'], 'competition_description': form['competition_description'], 'achievement_remark': form['achievement_remark'], 'record_status': const.RECORD_NORMAL, } res = utils.add_by_data(Achievement, device_achievement_data) return reply(success=res[0], message=res[1], error_code=res[2])
def add_device(): valid, form = parsing_form('addDeviceForm') if not valid: return reply(success=False, message='参数错误', error_code=const.PARAM_ERR) if utils.is_code_exist(Device, form['code'])[0]: return reply(success=False, message='该设备编码已存在', error_code=const.PARAM_ILLEGAL) if not utils.is_id_exist(Department, form['department_id'])[0]: return reply(success=False, message='该部门不存在', error_code=const.PARAM_ILLEGAL) if not utils.is_id_exist(Manufacturer, form['manufacturer_id'])[0]: return reply(success=False, message='该生产厂家不存在', error_code=const.PARAM_ILLEGAL) device_data = { 'code': form['code'], 'name': form['name'], 'model': form['model'], 'brand': form['brand'], 'tag_code': form['tag_code'], 'description': form['description'], 'status': const.DEVICE_RETURNED, 'manufacturer_date': form['manufacturer_date'], 'manufacturer_id': form['manufacturer_id'], 'department_id': form['department_id'], 'record_status': const.RECORD_NORMAL, } res = utils.add_by_data(Device, device_data) return reply(success=res[0], message=res[1], error_code=res[2])
def return_device(): valid, form = parsing_form('returnDeviceForm') if not valid: return reply(success=False, message='参数错误', error_code=const.PARAM_ERR) res_device = utils.is_code_exist(Device, form['device_code']) if not res_device[0]: return reply(success=False, message='该设备不存在', error_code=const.PARAM_ILLEGAL) device = res_device[1].first() if device.status != const.DEVICE_RENTED: return reply(success=False, message='该设备未被借出', error_code=const.PARAM_ILLEGAL) device_rented = DeviceRent.query.filter_by( device_code=form['device_code'], status=const.DEVICE_RENTED, record_status=const.RECORD_NORMAL ) cnt = device_rented.count() if cnt < 1: return reply(success=False, message='无此设备正在外借记录', error_code=const.UNKNOWN_ERR) if cnt > 1: return reply(success=False, message='内部数据错误,请联系管理员', error_code=const.UNKNOWN_ERR) res_member = utils.is_code_exist(Member, form['returner_member_code']) if not res_member[0]: return reply(success=False, message='该归还成员不存在', error_code=const.PARAM_ILLEGAL) member = res_member[1].first() update_info = { 'status': const.DEVICE_RETURNED, } if not utils.update_by_data(res_device[1], update_info, False)[0]: return reply(success=False, message='设备状态修改失败', error_code=const.UNKNOWN_ERR) device_return_data = { 'status': const.DEVICE_RETURNED, 'returner_member_code': form['returner_member_code'], 'returner_department_id': member.department_id, 'real_return_date': form['return_date'], 'return_remark': form['return_remark'], } res = utils.update_by_data(device_rented, device_return_data, True) return reply(success=res[0], message=res[1], error_code=res[2])
def rent_device(): valid, form = parsing_form('rentDeviceForm') if not valid: return reply(success=False, message='参数错误', error_code=const.PARAM_ERR) res_device = utils.is_code_exist(Device, form['device_code']) if not res_device[0]: return reply(success=False, message='该设备不存在', error_code=const.PARAM_ILLEGAL) device = res_device[1].first() if device.status != const.DEVICE_RETURNED: return reply(success=False, message='该设备已被借出', error_code=const.PARAM_ILLEGAL) res_member = utils.is_code_exist(Member, form['borrower_member_code']) if not res_member[0]: return reply(success=False, message='该成员不存在', error_code=const.PARAM_ILLEGAL) member = res_member[1].first() update_info = { 'status': const.DEVICE_RENTED, } if not utils.update_by_data(res_device[1], update_info, False)[0]: return reply(success=False, message='设备状态修改失败', error_code=const.UNKNOWN_ERR) device_rent_data = { 'device_code': form['device_code'], 'device_department_id': device.department_id, 'status': const.DEVICE_RENTED, 'borrower_member_code': form['borrower_member_code'], 'borrower_department_id': member.department_id, 'borrow_date': form['borrow_date'], 'borrow_remark': form['borrow_remark'], 'expect_return_date': form['expect_return_date'], # default 'returner_member_code': '', 'returner_department_id': 0, 'real_return_date': form['expect_return_date'], 'return_remark': '', 'record_status': const.RECORD_NORMAL, } res = utils.add_by_data(DeviceRent, device_rent_data) return reply(success=res[0], message=res[1], error_code=res[2])
def add_department(): valid, form = parsing_form('addDepartmentForm') if not valid: return reply(success=False, message='参数错误', error_code=const.PARAM_ERR) if utils.is_code_exist(Department, form['code'])[0]: return reply(success=False, message='该部门已存在', error_code=const.PARAM_ILLEGAL) department_data = { 'code': form['code'], 'name': form['name'], 'record_status': const.RECORD_NORMAL, } res = utils.add_by_data(Department, department_data) return reply(success=res[0], message=res[1], error_code=res[2])
def add_member(): valid, form = parsing_form('addMemberForm') if not valid: return reply(success=False, message='参数错误', error_code=const.PARAM_ERR) if utils.is_code_exist(Member, form['code'])[0]: return reply(success=False, message='该成员编码已存在', error_code=const.PARAM_ILLEGAL) if not utils.is_id_exist(Department, form['department_id'])[0]: return reply(success=False, message='该部门不存在', error_code=const.PARAM_ILLEGAL) member_data = { 'code': form['code'], 'name': form['name'], 'department_id': form['department_id'], 'record_status': const.RECORD_NORMAL, } res = utils.add_by_data(Member, member_data) return reply(success=res[0], message=res[1], error_code=res[2])