def update_did(self): """ 更新部门到技术开发中心 :return: """ self.modify_user_post() sql = 'SELECT user_id from sys_user where user_phone = "%s"' % self.user_phone user_id = base.searchSQL(sql)[0][0] sql = 'SELECT update_time from sys_user where user_phone = "%s"' % self.user_phone update_time = str(base.searchSQL(sql)[0][0]) url = "http://isz.ishangzu.com/isz_base/UserController/saveUser.action" data = { "dep_id": "10013", "update_time": update_time, "user_id": user_id, "Operation_type": "DEPMOVE" } interface.myRequest(url, data) sql = 'SELECT update_time from sys_user where user_phone = "%s"' % self.user_phone update_time = str(base.searchSQL(sql)[0][0]) url = "http://isz.ishangzu.com/isz_base/UserController/saveUser.action" data = { "role_id": "8AB398CA5D0D2944015D2B7FF10C6E49", "update_time": update_time, "user_id": user_id, "Operation_type": "ROLEMOVE" } interface.myRequest(url, data) return
def modify_user_post(self): """ 修改用户岗位 :return: """ base.consoleLog('修改用户岗位。账号:' + self.user_phone) sql = 'SELECT user_id from sys_user where user_phone = "%s"' % self.user_phone user_id = base.searchSQL(sql)[0][0] url = "http://isz.ishangzu.com/isz_base/UserController/searchNewUser.action" data = {"user_id": user_id} result = interface.myRequest(url, data)["obj"] sql = 'select position_id from sys_position where position_name = "%s" ' % self.rolename position_id = base.searchSQL(sql)[0][0] sql = 'SELECT update_time from sys_user where user_phone = "%s"' % self.user_phone update_time = str(base.searchSQL(sql)[0][0]) url = "http://isz.ishangzu.com/isz_base/UserController/saveUser.action" data = { "position_id": position_id, "update_time": update_time, "user_id": result["sysFollows"][0]["user_id"], "role_id": result["role_id"], "Operation_type": "POSTMOVE" } interface.myRequest(url, data) base.consoleLog('修改用户岗位接口执行完成。') return
def dispach(self): """ 派单 :return: """ base.consoleLog('派单') # 装配专员 url = "http://decorate.ishangzu.com/isz_decoration/AssembleAreaController/searchAssemblyPerson" data = {"city_code": "330100"} result = interface.myRequest(url, data) if result['code'] != 0: return result['msg'] result = result["obj"][0] construct_uname = result["user_name"] construct_uid = result["user_id"] # 供应商 # url = "http://decorate.ishangzu.com/isz_decoration/DecorationProjectController/suppliers?city_code=330100&supplier_type=STUFF" # result = interface.myRequest(url, method="get") # if result['code'] != 0: # return result['msg'] # result = result["obj"][0] # supplier_name = result["item_name"] # supplier_id = result["item_id"] supplier_name = "测试专用硬装供应商" supplier_id = "8A2152435FBAEFC3015FBAEFC3000000" # 工长 url = "http://decorate.ishangzu.com/isz_decoration/DecorationProjectController/supplier/" + supplier_id + "/persons?supplier_person_type=MANAGER&supplier_id=" + supplier_id result = interface.myRequest(url, method="get") if result['code'] != 0: return result['msg'] result = result["obj"][0] supplier_uname = result["item_name"] supplier_uid = result["item_id"] # 派单 url = "http://decorate.ishangzu.com/isz_decoration/NewDecorationProjectController/changeProgress/dispatchOrder" data = { "construct_uid": construct_uid, "construct_uname": construct_uname, "dispach_remark": "派单备注", "project_id": self.project_id, "supplier_id": supplier_id, "supplier_uid": supplier_uid, "predict_survey_date": "", "supplier_name": supplier_name, "supplier_uname": supplier_uname} result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('派单接口执行失败!') return result['msg'] base.consoleLog('派单接口执行成功!') return
def confirmation_down_payment(self, breach_money="2000"): """ 违约 :param breach_money: 违约金额 :return: """ base.consoleLog('下定违约。房源编号:' + self.apartment_code + ' 违约金额:' + breach_money) # 查询定金编号id url = "http://isz.ishangzu.com/isz_contract/EarnestController/searchEarnestList.action" data = { "residential_name_object_code_search": self.apartment_code, "pageNumber": 1, "pageSize": 50, "sort": "create_time", "order": "DESC", "current_dep_id": "00000000000000000000000000000000" } result = interface.myRequest(url, data)["obj"]["rows"][0] earnest_id = result["earnest_id"] # 确认定金 url = "http://isz.ishangzu.com/isz_contract/EarnestController/confirmEarnest.action" data = { "receipt_date": base.now_time(), "earnest_id": earnest_id, "earnest_money": result["earnest_money"], "payment_way": "BANKTRANSFER", "receipt_name": "收据姓名", "company": "ISZTECH" } results = interface.myRequest(url, data) if results['code'] != 0: return results['msg'] # 违约 url = "http://isz.ishangzu.com/isz_contract/EarnestController/saveEarnestBreach.action" data = { "breach_reason": "auto违约原因", "breach_money": breach_money, "earnest_id": earnest_id, "earnest_money": result["earnest_money"] } result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('下定违约接口执行失败!') return result['msg'] base.consoleLog('下定违约接口执行成功!') return
def place_order(self): """ 下单 :return: """ base.consoleLog('下单') url = "http://decorate.ishangzu.com/isz_decoration/NewDecorationProjectController/changeProgress/placeOrder" place_order_date = self.now_times + " 10:09:54" predict_survey_date = self.now_times + " 11:00" data = { "place_order_dep": "8A2152435E2E34E5015E30F811BB2653", # 下单部门id 测试专用店。 "place_order_reason": "测试下单原因", "place_order_uid": "1444", "place_order_uname": "测试专用 勿改", "place_order_date": place_order_date, "predict_survey_date": predict_survey_date, "project_id": self.project_id} #下单 result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('下单接口执行失败!') return result['msg'] base.consoleLog('下单接口执行成功!') return
def reviewed_apartment_contract_receivable(self): """ 审核出租合同所有应收 :return: """ base.consoleLog('审核出租合同所有应收。出租合同号:' + self.contract_num) try: sql = "select contract_id from apartment_contract where contract_num = '%s'" % self.contract_num contract_id = base.searchSQL(sql)[0][0] except Exception as e: base.consoleLog("查询出租合同sql报错,sql:" + sql + "错误返回" + str(e), 'e') return str(e) sql = 'SELECT receivable_id from apartment_contract_receivable where contract_id = "%s" and deleted =0' % contract_id receivable_id_tuple = base.searchSQL(sql) #循环审核应收 url = 'http://isz.ishangzu.com/isz_finance/ApartmentContractReceiptsController/endReceivable.action' for i in range(len(receivable_id_tuple)): data = {"receivable_id": receivable_id_tuple[i][0]} result = interface.myRequest(url, data) if result['code'] == 0: base.consoleLog('审核应收接口执行成功。应收ID:' + receivable_id_tuple[i][0]) else: base.consoleLog('审核应收接口执行失败。应收ID:' + receivable_id_tuple[i][0], level='e') return
def max_date(self): """获取房源最大签约日期""" url = '/isz_contract/ApartmentContractController/getApartmentContractSignDate.action' requestPayload = {"apartment_id": self.apartment_id} result = myRequest(url, requestPayload) if result: return result['obj']['max_date']
def apartment_price_entire(self, rent_price='5030'): """ 自营房源整租定价 :param rent_price: 价格 :return: """ base.consoleLog("自营房源整租定价。价格:" + rent_price) try: sql = 'SELECT apartment_id from apartment where house_id = (SELECT house_id from house_contract where contract_num ="%s") ORDER BY create_time desc limit 1 ' % self.contract_num apartment_id = base.searchSQL(sql)[0][0] except Exception as e: base.consoleLog("查询sql报错,sql:" + sql + "错误返回:" + str(e),'e') return str(e) #整租定价 url = "http://erp.ishangzu.com/isz_house/ApartmentController/confirmApatmentRentPricing.action" data = {"apartment_id": apartment_id, "rent_price": rent_price} result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('自营房源整租定价接口执行失败!') return result['msg'] base.consoleLog('自营房源整租定价接口执行成功!') return
def water_closed_test(self): """ 闭水试验 :return: """ base.consoleLog('闭水试验') url = "http://decorate.ishangzu.com/isz_decoration/NewDecorationProjectController/survey/closed" idCardPhotos = interface.upLoadPhoto(self.url, base.get_conf('Img', 'picture_name'), base.get_conf('Img', 'file_path'),value='rsm') data = { "remark": "闭水试验备注", "attachments": [{ "attach_type": "SCENE", "imgs": [{ "url": idCardPhotos["src"], "img_id": idCardPhotos["img_id"], "create_name": "", "create_dept": "", "create_time": "", "sort": 0, "type": "" }] }], "project_id": self.project_id, "closed_water_test_result": "Y", "is_need_waterproofing": "N"} result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('闭水试验接口执行失败!') return result['msg'] base.consoleLog('闭水试验接口执行成功!') return
def rceipt(self): """ 接单 :return: """ base.consoleLog('接单') url = "http://decorate.ishangzu.com/isz_decoration/NewDecorationProjectController/changeProgress/acceptOrder" data = {"project_id": self.project_id} result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('接单接口执行失败!') return result['msg'] base.consoleLog('接单接口执行成功!') return
def apartment_price_share(self, rent_price=['2030','2360','2890']): """ 自营房源合租定价 :param rent_price:列表 :return: """ base.consoleLog('自营房源合租定价。价格' + str(rent_price)) try: sql = 'SELECT apartment_id from apartment where house_id = (SELECT house_id from house_contract where contract_num ="%s") ORDER BY create_time desc limit 1 ' % self.contract_num apartment_id = base.searchSQL(sql)[0][0] except Exception as e: base.consoleLog("查询自营公寓返回为空,sql:" + sql + "错误返回:" + str(e),'e') return str(e) # 查询合租房间信息 url = "http://erp.ishangzu.com/isz_house/ApartmentController/searchShareApartment.action" data = {"apartment_id": apartment_id} result = interface.myRequest(url, data) if result['code'] != 0: return result['msg'] # 出租合同定价 data = result["obj"] for i in range(len(data)): data[i]['canEdit'] = True data[i]['rent_price'] = rent_price[i] # 自营公寓合租定价 url = "http://erp.ishangzu.com/isz_house/ApartmentController/confirmPricing.action" result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('自营房源合租定价接口执行失败!') return result['msg'] base.consoleLog('自营房源合租定价接口执行成功!') return
def cost_settlement(self): """ 费用结算 :return: """ base.consoleLog('费用结算') url = 'http://decorate.ishangzu.com/isz_decoration/NewDecorationProjectController/proCheck/costsettle' data = { "project_id": self.project_id, "remark": "" } result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('费用结算提交接口执行失败!') return result['msg'] base.consoleLog('费用结算提交接口执行成功!') return
def property_acceptance(self): """ 物业交割验收 :return: """ base.consoleLog('物业交割验收') idCardPhotos = interface.upLoadPhoto(self.url, base.get_conf('Img', 'picture_name'), base.get_conf('Img', 'file_path'), value='rsm') url = 'http://decorate.ishangzu.com/isz_decoration/NewDecorationProjectController/proCheck/profee' data = { "air_switch": "", "door_card": "", "door_key": "", "electricity_card": "", "electricity_meter_num": "", "electricity_meter_remain": "", "gas_card": "", "gas_meter_num": "", "gas_meter_remain": "", "project_id": self.project_id, "water_card": "", "water_card_remain": "", "water_meter_num": "", "attachments": [{ "attach_type": "PROPERTY_DELIVERY_ORDER", "imgs": [{ "url": idCardPhotos['src'], "img_id": idCardPhotos['img_id'], "create_name": "", "create_dept": "", "create_time": "", "sort": 0, "type": "" }] }], "resource": "PROJECT_CHECK" } result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('物业交割确认接口执行失败!') return result['msg'] base.consoleLog('物业交割确认接口执行成功!') return
def delivery(self): """ 竣工交付 :return: """ base.consoleLog('竣工交付') url = 'http://decorate.ishangzu.com/isz_decoration/NewDecorationProjectController/proComp/delivery' data = { "deliver_room_date": '%s 18:00:00' % self.now_times, "project_id": self.project_id, "remark": "" } result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('竣工交付接口执行失败!') return result['msg'] base.consoleLog('竣工交付接口执行成功!') return
def add_customer(self): """ 新增租客 :return: """ base.consoleLog('新增租客,手机号码:' + self.phone) rent_date = str(time.strftime('%Y-%m-%d', time.localtime(time.time()))) url = "http://isz.ishangzu.com/isz_customer/CustomerController/saveCustomer.action" data = { "customer_name": "crazytest", "phone": self.phone, "customer_status": "EFFECTIVE", "email": "*****@*****.**", "belong_did": base.get_conf("loginUser", "dep_id"), "belong_uid": base.get_conf("loginUser", "user_id"), "customer_from": "GANJICOM", "rent_class": "NOCLASS", "rent_type": "GATHERHOUSE", "rent_use": "RESIDENCE", "rent_fitment": "FITMENT_SIMPLE", "city_code": "330100", "rent_area_code": "330102", "rent_business_circle_ids": "35", "rent_rooms": "1", "rent_livings": "1", "rent_bathrooms": "1", "rent_from_price": "0.00", "rent_to_price": "6000.00", "rent_date": rent_date, "rent_people": "1", "area": "40", "gender": "MALE", "marriage": "UNMARRIED", "submit_channels": "ERP" } #新增租客 result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('新增租客接口执行失败!') return result['msg'] base.consoleLog('新增租客接口执行成功!') return
def volume_room(self): """ 量房评分 :return: """ base.consoleLog('量房评分') url = "http://decorate.ishangzu.com/isz_decoration/NewDecorationProjectController/survey/score" idCardPhotos = interface.upLoadPhoto(self.url, base.get_conf('Img', 'picture_name'), base.get_conf('Img', 'file_path'),value='rsm') data = { "grade": "3", "project_id": self.project_id, "reform_way_fact": "REFORM", "score_remark": "", "attachments": [{ "attach_type": "TOILET", "imgs": [] }, { "attach_type": "KITCHEN", "imgs": [] }, { "attach_type": "LIVING_ROOM", "imgs": [] }, { "attach_type": "ROOM", "imgs": [] }, { "attach_type": "OTHER", "imgs": [{ "url": idCardPhotos['src'], "img_id": idCardPhotos["img_id"], "create_name": "", "create_dept": "", "create_time": "", "sort": 0, "type": "OTHER" }] }]} result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('量房接口执行失败!') return result['msg'] base.consoleLog('量房接口执行成功!') return
def issue_reaccounting(self): """ 业绩重新核算 :return: """ base.consoleLog('业绩重新核算') url = 'http://erp.ishangzu.com/isz_achievement/issueAchieve/adjustAchieve/' sql = "SELECT achievement_issue_id from achievement_issue where apartment_contract_num='%s' and deleted=0" % self.contract_num achievement_issue_id = base.searchSQL(sql) for i in range(len(achievement_issue_id[0])): result = interface.myRequest(url+str(achievement_issue_id[0][i]), method='get') if result['code'] == 0: base.consoleLog('业绩重新核算成功~~') else: base.consoleLog(str(result)) return
def ES_apartment_contract(self): """ ES出租合同列表数据更新 :param number: :return: """ base.consoleLog('ES出租合同列表数据更新。刷新起始日:' + base.now_time(self.number) + " 00:00:01") url = "http://isz.ishangzu.com/isz_base/EsController/update.action" data = { "time": base.now_time(self.number) + " 00:00:01", "index": "apartment_contract_type" } result = interface.myRequest(url, str(data)) if result['code'] == 0: base.consoleLog("出租合同列表ES数据查询成功!") return else: base.consoleLog("出租合同列表ES数据查询不成功,结果返回:" + str(result)) return "出租合同列表ES数据查询不成功,结果返回:" + str(result)
def update_issue_audit_status(self): """ 更新业绩审核状态 :return: """ base.consoleLog('更新业绩审核状态。出租合同。' + self.contract_num) url = 'http://erp.ishangzu.com/isz_achievement/issueAchieve/audite' sql = "SELECT achievement_issue_id from achievement_issue where apartment_contract_num='%s' and deleted=0" % self.contract_num achievement_issue_id = base.searchSQL(sql) for i in range(len(achievement_issue_id[0])): data = {"achievement_issue_id": achievement_issue_id[0][i], "content": "审核业绩"} result = interface.myRequest(url, data) if result['code'] == 0: base.consoleLog('业绩状态更新成已审核~~') else: base.consoleLog(str(result)) return
def user_quit(self, valus=True): """ 提交用户离职 :return: """ base.consoleLog('用户离职。离职账号', self.user_phone) try: sql = "select user_id,update_time from sys_user where user_phone = '%s'" % self.user_phone user_id_update_time = base.searchSQL(sql) except BaseException as e: base.consoleLog('查询SQL报错。sql:' + sql + ' 报错信息:' + str(e), 'e') return if valus: user_status = "LEAVING" url = "http://isz.ishangzu.com/isz_base/UserController/saveUser.action" data = { "remark": "测试专用", "Operation_type": "DEPARTURE", "user_status": user_status, "user_id": user_id_update_time[0][0], "update_time": str(user_id_update_time[0][1]) } result = interface.myRequest(url, data) if result["code"] == 0 and valus: base.consoleLog("账号:" + self.user_phone + "提交离职成功!") else: try: sql = 'UPDATE sys_user set user_status = "INCUMBENCY" where user_phone = "%s"; ' % self.user_phone base.updateSQL(sql) base.consoleLog("账号:" + self.user_phone + "数据库更改在职成功!") except Exception as e: base.consoleLog("账号:" + self.user_phone + "数据库更改在职异常!" + str(e) + sql) base.consoleLog('用户离职离职接口执行完成。') return
def serach_apartment_cose_detail(self): """ 查询自营房源成本 :return: """ base.consoleLog('查询自营房源成本。房源编号,ID:' + self.apartment_code + ' , ' + self.apartment_id) url = 'http://erp.ishangzu.com/isz_house/ApartmentController/selectApartmentDetail.action' data = {"apartment_id": self.apartment_id} result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('查询自营房源成本接口执行失败!') return result['msg'] result = result['obj'] info = {} info['装修成本'] = float(result['fitment_cost']) info['资金成本'] = float(result['capital_cost']) info['租金成本'] = float(result['entrust_cost']) info['渠道成本'] = float(result['channel_cost']) info['物业能耗'] = float(result['propertyAndEnergyFee']) info['总成本'] = float(result['apartment_cost']) base.consoleLog('查询自营房源成本接口执行成功!') return info
def concealment_acceptance(self): """ 隐蔽验收 :return: """ base.consoleLog('隐蔽验收') idCardPhotos = interface.upLoadPhoto(self.url, base.get_conf('Img', 'picture_name'), base.get_conf('Img', 'file_path'), value='rsm') url = 'http://decorate.ishangzu.com/isz_decoration/NewDecorationProjectController/constructing/hideCheck' data = { "air_switch": None, "attachments": [{ "attach_type": "TOILET", "imgs": [{ "url": idCardPhotos['src'], "img_id": idCardPhotos['img_id'], "create_name": "", "create_dept": "", "create_time": "", "sort": 0, "type": "TOILET" }] }, { "attach_type": "KITCHEN", "imgs": [{ "url": idCardPhotos['src'], "img_id": idCardPhotos['img_id'], "create_name": "", "create_dept": "", "create_time": "", "sort": 1, "type": "KITCHEN" }] }, { "attach_type": "LIVING_ROOM", "imgs": [{ "url": idCardPhotos['src'], "img_id": idCardPhotos['img_id'], "create_name": "", "create_dept": "", "create_time": "", "sort": 2, "type": "LIVING_ROOM" }] }, { "attach_type": "BALCONY", "imgs": [{ "url": idCardPhotos['src'], "img_id": idCardPhotos['img_id'], "create_name": "", "create_dept": "", "create_time": "", "sort": 3, "type": "BALCONY" }] }, { "attach_type": "OTHER", "imgs": [] }], "check_remark": "", "closed_water_test_result": None, "curOneLevelNode": None, "curTwoLevelNode": None, "door_card": None, "door_key": None, "electricity_card": None, "electricity_meter_num": None, "electricity_meter_remain": None, "gas_card": None, "gas_meter_num": None, "gas_meter_remain": None, "grade": None, "hidden_check_date": '%s 09:00:00' % self.now_times, "landlordGoods": None, "project_id": self.project_id, "reform_way_fact": None, "reform_way_fact_name": "", "remark": None, "score_remark": None, "water_card": None, "water_card_remain": None, "water_meter_num": None } result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('隐蔽验收接口执行失败!') return result['msg'] base.consoleLog('隐蔽验收接口执行成功!') return
def serach_condition_info(self): """ 出租合同右键查询业绩信息 :return:出单条件所有字段 """ url = "http://erp.ishangzu.com/isz_achievement/issueAchieve/issueConditions/" + self.contract_id result = interface.myRequest(url, method='get') try: if result['code'] != 0: return result['msg'] except BaseException as e: base.consoleLog(str(e)) return result = result["obj"] issue_conditions = {} if result == None: base.consoleLog(str(result)) return data = [] # 处理业绩核算条件返回信息 for i in range(len(result['resultsAccountingConditionsList'])): condition_type_cn = [] condition_type_cn.append(result['resultsAccountingConditionsList'][i]['condition_type_cn']) condition_type_cn.append(result['resultsAccountingConditionsList'][i]['finish_time']) condition_type_cn.append(result['resultsAccountingConditionsList'][i]['is_finish']) data.append(condition_type_cn) dic = {} for i in range(len(data)): dic.setdefault(data[i][0], data[i]) issue_conditions['出单条件'] = dic data = [] #处理业绩分成角色 for i in range(len(result['resultsDividedRoleList'])): resultsDividedRoleList = [] resultsDividedRoleList.append(result['resultsDividedRoleList'][i]['divide_type_cn']) resultsDividedRoleList.append(result['resultsDividedRoleList'][i]['divide_dname']) resultsDividedRoleList.append(result['resultsDividedRoleList'][i]['divide_uname']) resultsDividedRoleList.append(result['resultsDividedRoleList'][i]['divide_proportion_view']) data.append(resultsDividedRoleList) dic = {} for i in range(len(data)): dic.setdefault(data[i][0], data[i]) issue_conditions['分成角色'] = dic data = [] # 处理业绩核算记录 for i in range(len(result['accountingRecordList'])): accountingRecordList = [] accountingRecordList.append(result['accountingRecordList'][i]['is_active_cn']) accountingRecordList.append(result['accountingRecordList'][i]['active_time']) accountingRecordList.append(result['accountingRecordList'][i]['divide_house_source_us_uname']) accountingRecordList.append(result['accountingRecordList'][i]['divide_house_source_us_dname']) accountingRecordList.append(result['accountingRecordList'][i]['apartment_contract_num']) accountingRecordList.append(result['accountingRecordList'][i]['house_rent_times_cn']) accountingRecordList.append(result['accountingRecordList'][i]['accounting_num_view']) accountingRecordList.append(result['accountingRecordList'][i]['apartment_contract_type_cn']) accountingRecordList.append(result['accountingRecordList'][i]['profit_diff']) accountingRecordList.append(result['accountingRecordList'][i]['adjust_achievement']) accountingRecordList.append(result['accountingRecordList'][i]['accounting_month']) data.append(accountingRecordList) dic = {} for i in range(len(data)): dic.setdefault(data[i][6], data[i]) issue_conditions['核算记录'] = dic base.consoleLog('出单条件返回值:' + str(issue_conditions)) return issue_conditions
def serach_issue_info(self): """ 同一个出租合同下所有出单业绩列表的详情字段 :return: """ base.consoleLog('出单业绩详情。合同号:' + self.contract_num) sql = "SELECT achievement_issue_id from achievement_issue where apartment_contract_id = '%s' and deleted=0" % self.contract_id achievement_issue_id = base.searchSQL(sql) # 同一个出租合同所有出单业绩详情 achievement_issue_info_list = [] url_ = 'http://erp.ishangzu.com/isz_achievement/issueAchieve/details/' for i in range(len(achievement_issue_id)): achievement_issue_info_list.append( interface.myRequest(url_ + str(achievement_issue_id[i][0]), method='get')['obj']) base.consoleLog('出单业绩详情查询接口执行完成!') # 每一条出单业绩对应的出租合同信息 apartment_contract_info = [] for i in range(len(achievement_issue_info_list)): data = {} data["合同提交日"] = achievement_issue_info_list[i]["apartment_contract_commit_date"] data["合同号"] = achievement_issue_info_list[i]["apartment_contract_num"] data["出租周期"] = achievement_issue_info_list[i]["apartment_rental_cycles"] data["核算周期"] = achievement_issue_info_list[i]["apartment_accounting_cycles"] data["月租金"] = achievement_issue_info_list[i]["apartment_rent_month"] data["付款方式"] = achievement_issue_info_list[i]["apartment_payment_type_cn"] data["付款周期"] = achievement_issue_info_list[i]["apartment_payment_cycle_cn"] data["承租类别"] = achievement_issue_info_list[i]["apartment_contract_type_cn"] data["客源方"] = achievement_issue_info_list[i]["apartment_customer_source_uname"] data["客源方部门"] = achievement_issue_info_list[i]["apartment_customer_source_dname"] apartment_contract_info.append(data) # 每一条出单业绩对应的委托合同信息 house_contract_info = [] for i in range(len(achievement_issue_info_list)): data = {} house_contract_num = [] house_rent_times_cn = [] house_rent_month_total = [] house_decoration_cycles = [] house_source_cn = [] house_apartment_type_cn = [] house_entrust_type_cn = [] house_contract_type_cn = [] house_source_us_uname = [] house_source_us_dname = [] for j in range(len(achievement_issue_info_list[i]['houseContractRelations'])): house_contract_num.append( achievement_issue_info_list[i]['houseContractRelations'][j]['house_contract_num']) house_rent_times_cn.append( achievement_issue_info_list[i]['houseContractRelations'][j]['house_rent_times_cn']) house_rent_month_total.append( achievement_issue_info_list[i]['houseContractRelations'][j]['house_rent_month_total']) house_decoration_cycles.append( achievement_issue_info_list[i]['houseContractRelations'][j]['house_decoration_cycles']) house_source_cn.append(achievement_issue_info_list[i]['houseContractRelations'][j]['house_source_cn']) house_apartment_type_cn.append( achievement_issue_info_list[i]['houseContractRelations'][j]['house_apartment_type_cn']) house_entrust_type_cn.append( achievement_issue_info_list[i]['houseContractRelations'][j]['house_entrust_type_cn']) house_contract_type_cn.append( achievement_issue_info_list[i]['houseContractRelations'][j]['house_contract_type_cn']) house_source_us_uname.append( achievement_issue_info_list[i]['houseContractRelations'][j]['house_source_us_uname']) house_source_us_dname.append( achievement_issue_info_list[i]['houseContractRelations'][j]['house_source_us_dname']) data["合同号"] = house_contract_num data["出租次数"] = house_rent_times_cn data["月总租金"] = house_rent_month_total data["核算装修期"] = house_decoration_cycles data["房屋来源"] = house_source_cn data["公寓类型"] = house_apartment_type_cn data["合同类型"] = house_entrust_type_cn data["委托类型"] = house_contract_type_cn data['房源方'] = house_source_us_uname data['房源方部门'] = house_source_us_dname house_contract_info.append(data) # 每一条出单的利润业绩 profit_info = [] for i in range(len(achievement_issue_info_list)): data = {} data["月租金成本"] = achievement_issue_info_list[i]["profit_rent_month"] data["月装修成本"] = achievement_issue_info_list[i]["profit_decoration_month"] data["月资金成本"] = achievement_issue_info_list[i]["profit_capital_month"] data["月渠道成本"] = achievement_issue_info_list[i]["profit_channel_month"] data["出租总价"] = achievement_issue_info_list[i]["profit_rent_total"] data["收房总价"] = achievement_issue_info_list[i]["profit_inhouse_total"] data["装修总价"] = achievement_issue_info_list[i]["profit_decoration_total"] data["成本总价"] = achievement_issue_info_list[i]["profit_cost_total"] data["差价业绩"] = achievement_issue_info_list[i]["profit_diff"] profit_info.append(data) # 每一条出单的核算业绩 adjust_info = [] for i in range(len(achievement_issue_info_list)): data = {} data["核算免租期"] = achievement_issue_info_list[i]["adjust_free_days"] data["委托年限"] = achievement_issue_info_list[i]["adjust_house_year"] data["委托年限加成"] = achievement_issue_info_list[i]["adjust_house_year_add"] data["委托付款周期"] = achievement_issue_info_list[i]["adjust_pay_cycle"] data["付款周期加成"] = achievement_issue_info_list[i]["adjust_pay_cycle_add"] data["业绩核算系数"] = achievement_issue_info_list[i]["adjust_ratio_percent"] data["核算业绩"] = achievement_issue_info_list[i]["adjust_achievement"] adjust_info.append(data) # 每一条出单业绩对应的业绩分成信息 divides_info = [] for i in range(len(achievement_issue_info_list)): data = {} create_time = [] divide_type_cn = [] divide_dname = [] divide_uname = [] divide_post = [] up_level_store_manager_name = [] up_level_dist_manager_name = [] accounting_time = [] divided_money = [] for j in range(len(achievement_issue_info_list[i]['divides'])): create_time.append(achievement_issue_info_list[i]['divides'][j]['create_time']) divide_type_cn.append(achievement_issue_info_list[i]['divides'][j]['divide_type_cn']) divide_dname.append(achievement_issue_info_list[i]['divides'][j]['divide_dname']) divide_post.append(achievement_issue_info_list[i]['divides'][j]['divide_post']) divide_uname.append(achievement_issue_info_list[i]['divides'][j]['divide_uname']) up_level_store_manager_name.append( achievement_issue_info_list[i]['divides'][j]['up_level_store_manager_name']) up_level_dist_manager_name.append( achievement_issue_info_list[i]['divides'][j]['up_level_dist_manager_name']) accounting_time.append(achievement_issue_info_list[i]['divides'][j]['accounting_month']) divided_money.append(achievement_issue_info_list[i]['divides'][j]['divided_money']) data["创建日期"] = create_time data["分成方"] = divide_type_cn data["部门"] = divide_dname data["员工"] = divide_uname data["岗位"] = divide_post data["上级店经理"] = up_level_store_manager_name data["上级区经理"] = up_level_dist_manager_name data['业绩金额'] = divided_money data["核发月份"] = accounting_time divides_info.append(data) issue_info = {} issue_info['出租合同信息'] = apartment_contract_info issue_info['委托合同信息'] = house_contract_info issue_info['利润业绩'] = profit_info issue_info['核算业绩'] = adjust_info issue_info['业绩分成'] = divides_info base.consoleLog('出单业绩详情返回值:' + str(issue_info)) return issue_info
def serach_issue_list(self, serach_tiao_jian, perPageSize=10000,value=True): """ 出单业绩列表搜索 :param serach_tiao_jian :param perPageSize: :param value True返回的数据包含第一行 :return:搜索结果,按列表每个字段集合返回 """ base.consoleLog('查询出单业绩详情。') null = None url = 'http://erp.ishangzu.com/isz_achievement/issueAchieve/list' data = { "query_apartment": serach_tiao_jian['楼盘名称房源编号'], "building_name": serach_tiao_jian['栋座'], "unit": serach_tiao_jian['单元'], "house_no": serach_tiao_jian['房号'], "contract_num": serach_tiao_jian['出租合同号'], "is_active": serach_tiao_jian['状态'], "apartment_contract_type": serach_tiao_jian['承租类别'], "contract_audit_status": serach_tiao_jian['合同复审状态'], "frist_pay_status": serach_tiao_jian['首期款收款状态'], "apartment_type": serach_tiao_jian['公寓类型'], "apartment_entrust_type": serach_tiao_jian['合同类型'], "audit_status": serach_tiao_jian['审核状态'], "rent_times": serach_tiao_jian['出租次数'], "divide_house_source_us_did": serach_tiao_jian['房源方部门'], "divide_house_source_us_uname": serach_tiao_jian['房源方'], "apartment_customer_source_did": serach_tiao_jian['客源方部门'], "apartment_customer_source_uname": serach_tiao_jian['客源方'], "contract_commit_date_start": serach_tiao_jian['合同提交日期起始'], "contract_commit_date_end": serach_tiao_jian['合同提交日期结束'], "active_time_start": serach_tiao_jian['生效日期起始'], "active_time_end": serach_tiao_jian['生效日期结束'], "accounting_month_start": serach_tiao_jian['核发月份起始'], "accounting_month_end": serach_tiao_jian['核发月份结束'], "contract_audit_time_start": serach_tiao_jian['复审日期起始'], "contract_audit_time_end": serach_tiao_jian['复审日期结束'], "orderArr": null, "sortArr": null, "pageNum": 1, "perPageSize": perPageSize } base.consoleLog(data) result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('出单业绩列表查询报错' + str(result)) return issue_info_list = {} list = result['obj']['rows'] base.consoleLog(list) # 处理返回的数据。按照返回的值分类。 property_name = [] apartment_code = [] apartment_contract_num = [] is_active_cn = [] apartment_contract_type_cn = [] contract_audit_status_cn = [] frist_pay_status_cn = [] apartment_type_cn = [] apartment_entrust_type_cn = [] audit_status_cn = [] house_rent_times_cn = [] house_source_us_dname = [] house_source_us_uname = [] apartment_customer_source_dname = [] apartment_customer_source_uname = [] apartment_contract_commit_date = [] active_time = [] accounting_month = [] contract_audit_time = [] profit_diff = [] adjust_achievement = [] if value: for i in range(len(list)): property_name.append(list[i]['property_name']) apartment_code.append(list[i]['apartment_code']) apartment_contract_num.append(list[i]['apartment_contract_num']) is_active_cn.append(list[i]['is_active_cn']) apartment_contract_type_cn.append(list[i]['apartment_contract_type_cn']) contract_audit_status_cn.append(list[i]['contract_audit_status_cn']) frist_pay_status_cn.append(list[i]['frist_pay_status_cn']) apartment_type_cn.append(list[i]['apartment_type_cn']) apartment_entrust_type_cn.append(list[i]['apartment_entrust_type_cn']) audit_status_cn.append(list[i]['audit_status_cn']) house_rent_times_cn.append(list[i]['house_rent_times_cn']) house_source_us_dname.append(list[i]['divide_house_source_us_dname']) house_source_us_uname.append(list[i]['divide_house_source_us_uname']) apartment_customer_source_dname.append(list[i]['apartment_customer_source_dname']) apartment_customer_source_uname.append(list[i]['apartment_customer_source_uname']) apartment_contract_commit_date.append(list[i]['apartment_contract_commit_date']) active_time.append(list[i]['active_time']) accounting_month.append(list[i]['accounting_month']) contract_audit_time.append(list[i]['contract_audit_time']) profit_diff.append(list[i]['profit_diff']) adjust_achievement.append(list[i]['adjust_achievement']) else: for i in range(1,len(list)): property_name.append(list[i]['property_name']) apartment_code.append(list[i]['apartment_code']) apartment_contract_num.append(list[i]['apartment_contract_num']) is_active_cn.append(list[i]['is_active_cn']) apartment_contract_type_cn.append(list[i]['apartment_contract_type_cn']) contract_audit_status_cn.append(list[i]['contract_audit_status_cn']) frist_pay_status_cn.append(list[i]['frist_pay_status_cn']) apartment_type_cn.append(list[i]['apartment_type_cn']) apartment_entrust_type_cn.append(list[i]['apartment_entrust_type_cn']) audit_status_cn.append(list[i]['audit_status_cn']) house_rent_times_cn.append(list[i]['house_rent_times_cn']) house_source_us_dname.append(list[i]['divide_house_source_us_dname']) house_source_us_uname.append(list[i]['divide_house_source_us_uname']) apartment_customer_source_dname.append(list[i]['apartment_customer_source_dname']) apartment_customer_source_uname.append(list[i]['apartment_customer_source_uname']) apartment_contract_commit_date.append(list[i]['apartment_contract_commit_date']) active_time.append(list[i]['active_time']) accounting_month.append(list[i]['accounting_month']) contract_audit_time.append(list[i]['contract_audit_time']) profit_diff.append(list[i]['profit_diff']) adjust_achievement.append(list[i]['adjust_achievement']) issue_info_list['楼盘地址'] = property_name issue_info_list['房源编号'] = apartment_code issue_info_list['出租合同号'] = apartment_contract_num issue_info_list['状态'] = is_active_cn issue_info_list['承租类别'] = apartment_contract_type_cn issue_info_list['合同复审状态'] = contract_audit_status_cn issue_info_list['首期款收款状态'] = frist_pay_status_cn issue_info_list['公寓类型'] = apartment_type_cn issue_info_list['合同类型'] = apartment_entrust_type_cn issue_info_list['审核状态'] = audit_status_cn issue_info_list['出租次数'] = house_rent_times_cn issue_info_list['房源方部门'] = house_source_us_dname issue_info_list['房源方'] = house_source_us_uname issue_info_list['客源方部门'] = apartment_customer_source_dname issue_info_list['客源方'] = apartment_customer_source_uname issue_info_list['合同提交日'] = apartment_contract_commit_date issue_info_list['生效日期'] = active_time issue_info_list['核发月份'] = accounting_month issue_info_list['复审日期'] = contract_audit_time issue_info_list['利润业绩'] = profit_diff issue_info_list['核算业绩'] = adjust_achievement base.consoleLog('出单业绩列表字段数据返回:' + str(issue_info_list)) return issue_info_list
def decoration_list(self): """ 硬装清单提交及验证 :return: """ base.consoleLog('硬装清单提交及验证') #制定物品清单 url = 'http://decorate.ishangzu.com/isz_decoration/NewDecorationStuffController/preview' commonData = [ { "acceptance_num": None, "acceptance_num_this": 0, "acceptance_time": None, "create_time": base.time_time('second'), "create_uid": base.get_conf('loginUser','user_id'), "data_type": "成品安装", "data_type_len": 26, "decoration_detial": "家具安装", "deleted": 0, "function_zone": "甲", "function_zone_len": 100, "hard_deliver_audit_status": None, "order_type": None, "predict_delivery_date": None, "project_id": self.project_id, "purchase_num": "10", "purchase_order_no": None, "remark": None, "remark_accept": None, "remark_detail": "", "remark_return": None, "replacement_order": None, "return_name": None, "return_num": None, "return_num_this": 0, "stuff_fees_change_reason": None, "stuff_list_id": None, "stuff_list_status": "DRAFT", "submit_time": None, "supplier_id": None, "supplier_name": None, "total_account": None, "total_paid": "100.00", "unit_id": None, "unit_name": "件", "unit_price": 10, "update_time": base.time_time('second'), "update_uid": base.get_conf('loginUser','user_id'), "zone_type": None, "type_index": 0, "fun_index": 0 }, { "acceptance_num": None, "acceptance_num_this": 0, "acceptance_time": None, "create_time": base.time_time('second'), "create_uid": base.get_conf('loginUser','user_id'), "data_type": "成品安装", "data_type_len": 26, "decoration_detial": "嵌入式天花灯-改造", "deleted": 0, "function_zone": "甲", "function_zone_len": 100, "hard_deliver_audit_status": None, "order_type": None, "predict_delivery_date": None, "project_id": self.project_id, "purchase_num": "11", "purchase_order_no": None, "remark": None, "remark_accept": None, "remark_detail": "", "remark_return": None, "replacement_order": None, "return_name": None, "return_num": None, "return_num_this": 0, "stuff_fees_change_reason": None, "stuff_list_id": None, "stuff_list_status": "DRAFT", "submit_time": None, "supplier_id": None, "supplier_name": None, "total_account": None, "total_paid": "264.00", "unit_id": None, "unit_name": "个", "unit_price": 24, "update_time": base.time_time('second'), "update_uid": base.get_conf('loginUser','user_id'), "zone_type": None, "fun_index": 1, "type_index": 1 }, { "acceptance_num": None, "acceptance_num_this": 0, "acceptance_time": None, "create_time": base.time_time('second'), "create_uid": base.get_conf('loginUser','user_id'), "data_type": "成品安装", "data_type_len": 26, "decoration_detial": "明装筒灯-改造", "deleted": 0, "function_zone": "甲", "function_zone_len": 100, "hard_deliver_audit_status": None, "order_type": None, "predict_delivery_date": None, "project_id": self.project_id, "purchase_num": "12", "purchase_order_no": None, "remark": None, "remark_accept": None, "remark_detail": "", "remark_return": None, "replacement_order": None, "return_name": None, "return_num": None, "return_num_this": 0, "stuff_fees_change_reason": None, "stuff_list_id": None, "stuff_list_status": "DRAFT", "submit_time": None, "supplier_id": None, "supplier_name": None, "total_account": None, "total_paid": "403.20", "unit_id": None, "unit_name": "个", "unit_price": 33.6, "update_time": base.time_time('second'), "update_uid": base.get_conf('loginUser','user_id'), "zone_type": None, "fun_index": 1, "type_index": 1 } ] result = interface.myRequest(url,commonData) if result['code'] != 0: return result['msg'] #提交硬装清单 url = 'http://decorate.ishangzu.com/isz_decoration/NewDecorationStuffController/saveStuffLists' sql = """SELECT b.address, a.config_order_no, b.contract_id, b.contract_num, b.create_time, b.entrust_end_date, b.entrust_start_date, b.house_code, b.housekeep_mange_uid, b.info_id, a.project_no, b.sign_date, b.city_code, b.city_name FROM decoration_house_info b INNER JOIN new_decoration_project a ON a.info_id = b.info_id AND a.project_id = '%s' """ % self.project_id projectInfo = base.searchSQL(sql,db='isz_decoration')[0] data = { "newStuffList": commonData, "project": { "address": projectInfo[0], "build_area": "120.00", "cable_laying_type": "INNERPIPEINNERLINE", "cable_laying_type_name": None, "city_code": "330100", "city_name": "杭州市", "closed_water_test_result": "Y", "complete_two_nodes": "[\"VOLUME_SCORE\",\"SURVEY_PROPERTY_DELIVERY\",\"WATER_CLOSED_TEST\",\"PROJECT_PLAN\",\"GOODS_CONFIG_LIST\"]", "complete_two_nodes_list": ["VOLUME_SCORE", "SURVEY_PROPERTY_DELIVERY", "WATER_CLOSED_TEST", "PROJECT_PLAN", "GOODS_CONFIG_LIST"], "config_list_status": "CHECKED", "config_list_status_name": "已验收", "config_order_no": projectInfo[1], "config_progress": "WAIT_DESIGN", "config_progress_name": "待设计", "config_submit_time": '%s 13:35:00' % self.now_times, "config_submit_uid": base.get_conf('loginUser','user_id'), "config_submit_uname": base.get_conf('loginUser','user_name'), "construct_uid": "1610", "construct_uname": "徐经纬", "construct_uname_phone": "徐经纬/13105715060", "contract_id": projectInfo[2], "contract_num": projectInfo[3], "contract_type": "NEWSIGN", "contract_type_name": "新签", "create_time": str(projectInfo[4]), "create_uid": "8AEF8688600F30F30160257579287F96", "current_one_node": "PROJECT_PLAN", "decoration_style": "WUSHE_BREEZE", "decoration_style_name": "随寓和风", "deleted": 0, "deliver_room_date": "1970-01-02 00:00:00.0", "dispach_remark": "测试", "entrust_end_date": str(projectInfo[5]), "entrust_start_date": str(projectInfo[6]), "entrust_type_fact": "SHARE", "entrust_type_fact_name": "合租", "grade": 20, "hidden_check_date": "1970-01-02 00:00:00.0", "house_code": projectInfo[7], "housekeep_mange_name": None, "housekeep_mange_uid": projectInfo[8], "info_id": projectInfo[9], "is_active": "Y", "is_active_name": "是", "one_level_nodes": "[\"PLACE_ORDER\",\"DISPATCH_ORDER\",\"SURVEY\",\"PROJECT_PLAN\",\"CONSTRUCTING\",\"PROJECT_CHECK\",\"PROJECT_COMPLETION\"]", "order_status_name": "进程中", "order_type_name": "新收配置订单", "overall_check_date": "1970-01-02 00:00:00.0", "phone": "18815286582", "place_order_date": "2018-03-20 20:47:38", "place_order_dep": "", "place_order_dep_name": None, "place_order_reason": "测试", "place_order_uid": base.get_conf('loginUser','user_id'), "place_order_uname": base.get_conf('loginUser','user_name'), "plumbing_type": "INNERPIPE", "plumbing_type_name": None, "predict_complete_date": "", "predict_days": 0, "predict_hidden_check_date": '%s 00:00:00' % base.now_time(2), "predict_overall_check_date": '%s 00:00:00' % base.now_time(2), "predict_stuff_check_date": '%s 00:00:00' % base.now_time(2), "predict_survey_date": '%s 09:00:00' % base.now_time(2), "project_id": self.project_id, "project_no": projectInfo[10], "project_order_status": "INPROCESS", "project_order_type": "NEW_COLLECT_ORDER", "reform_way": "OLDRESTYLE", "reform_way_fact": "OLDRESTYLE", "reform_way_fact_name": "老房全装", "reform_way_name": "老房全装", "remark": "", "room_toilet": "3/2", "sign_date": str(projectInfo[11]), "sign_name": None, "sign_uid": "8A2152435DC1AEAA015DDE96F9276279", "sign_user_phone": None, "start_time": '%s 00:00:00' % base.now_time(2), "stuff_check_date": "1970-01-02 00:00:00.0", "stuff_list_status": "DRAFT", "stuff_list_status_name": "待下单", "stuff_order_no": "", "stuff_submit_time": "1970-01-02 00:00:00.0", "stuff_submit_uid": "", "stuff_submit_uname": "", "supplier_id": "8A2152435FBAEFC3015FBAEFC3000000", "supplier_name": "测试专用硬装供应商", "supplier_uid": "8AB398CA5FBAF072015FBB26338A0002", "supplier_uname": "测试专用硬装员工", "supplier_uname_phone": "测试专用硬装员工/18815286582", "timeMap": None, "total_paid": 0, "two_level_nodes": "[\"VOLUME_SCORE\",\"SURVEY_PROPERTY_DELIVERY\",\"WATER_CLOSED_TEST\",\"DECORATION_CONFIG_LIST\",\"GOODS_CONFIG_LIST\",\"PROJECT_PLAN\",\"CONCEALMENT_ACCEPTANCE\",\"HARD_ACCEPTANCE\",\"ACCEPTANCE_PROPERTY_DELIVERY\",\"COST_SETTLEMENT\",\"OVERALL_ACCEPTANCE\",\"HOUSE_DELIVERY\",\"INDOOR_PICTURE\"]", "update_time": '%s 13:35:00' % self.now_times, "update_uid": "8AEF8688600F30F30160257579287F96", "wall_condition": "OLDHOUSE", "wall_condition_name": None } } result = interface.myRequest(url,data) if result['code'] != 0: return result['msg'] #装修清单验收 geturl = 'http://decorate.ishangzu.com/isz_decoration/NewDecorationStuffController/getSuffList/%s' % self.project_id result = interface.myRequest(geturl, method='get') if result['code'] != 0: return result['msg'] url = 'http://decorate.ishangzu.com/isz_decoration/NewDecorationStuffController/acceptanceAll' acceptance_time = base.time_time('second') data = result['obj']['newStuffList'] for stufflist in data: stufflist['acceptance_time'] = acceptance_time stufflist['acceptance_num_this'] = stufflist['purchase_num'] result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('硬装清单提交验收接口执行失败!') return result['msg'] base.consoleLog('硬装清单提交验收接口执行成功!') return
def serach_personal_summary_list(self, serach_tiao_jian, perPageSize=10000): """ 预估业绩-个人汇总查询 :param serach_tiao_jian: :param perPageSize: :return: """ base.consoleLog('预估业绩-个人汇总查询') url = 'http://erp.ishangzu.com/isz_achievement/rankAchieve/person/estimate' data = { "user_status": serach_tiao_jian['在职状态'], "house_apartment_type": serach_tiao_jian['公寓类型'], "house_entrust_type": serach_tiao_jian['合同类型'], "accounting_status": serach_tiao_jian['核发状态'], "current_depart_id": serach_tiao_jian['当前部门'], "divide_uname": serach_tiao_jian['姓名'], "contract_commit_date_start": serach_tiao_jian['提交日期起始'], "contract_commit_date_end": serach_tiao_jian['提交日期结束'], "accounting_month_start": serach_tiao_jian['核发月份起始'], "accounting_month_end": serach_tiao_jian['核发月份结束'], "orderArr": '', "sortArr": '', "pageNum": 1, "perPageSize": perPageSize } result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog( str(result)) return personal_summary = {} list = result['obj']['rows'] index = [] name = [] current_depart_name = [] user_status_cn = [] issue_achieve = [] issue_achieve_num = [] breach_achieve = [] loss_achieve = [] total_achieve = [] for i in range(len(list)): index.append(list[i]['index']) name.append(list[i]['name']) current_depart_name.append(list[i]['current_depart_name']) user_status_cn.append(list[i]['user_status_cn']) issue_achieve.append(list[i]['issue_achieve']) issue_achieve_num.append(list[i]['issue_achieve_num']) breach_achieve.append(list[i]['breach_achieve']) loss_achieve.append(list[i]['loss_achieve']) total_achieve.append(list[i]['total_achieve']) personal_summary['名次'] = index personal_summary['姓名'] = name personal_summary['当前部门'] = current_depart_name personal_summary['在职状态'] = user_status_cn personal_summary['出单业绩'] = issue_achieve personal_summary['单数'] = issue_achieve_num personal_summary['违约业绩'] = breach_achieve personal_summary['亏损业绩'] = loss_achieve personal_summary['总业绩'] = total_achieve return personal_summary
def serach_department_summary_list(self, serach_tiao_jian, perPageSize=10000): """ 预估业绩-部门汇总查询 :param serach_tiao_jian: :param perPageSize: :return: """ base.consoleLog('预估业绩-部门汇总查询') url = 'http://erp.ishangzu.com/isz_achievement/rankAchieve/depart/estimate' data = { "divide_level": serach_tiao_jian['部门层级'], "house_apartment_type": serach_tiao_jian['公寓类型'], "house_entrust_type": serach_tiao_jian['合同类型'], "accounting_status": serach_tiao_jian['核发状态'], "contract_commit_date_start": serach_tiao_jian['提交日期起始'], "apartment_contract_commit_date": serach_tiao_jian['提交日期结束'], "accounting_month_start": serach_tiao_jian['核发月份起始'], "accounting_month_end": serach_tiao_jian['核发月份结束'], "orderArr": serach_tiao_jian[''], "sortArr": serach_tiao_jian[''], "pageNum": 1, "perPageSize": perPageSize } result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog(str(result)) return department_summary = {} list = result['obj']['rows'] index = [] depart_name = [] manager_name = [] depart_num = [] issue_achieve = [] issue_achieve_num = [] breach_achieve = [] loss_achieve = [] total_achieve = [] for i in range(len(list)): index.append(list[i]['index']) depart_name.append(list[i]['depart_name']) manager_name.append(list[i]['manager_name']) depart_num.append(list[i]['depart_num']) issue_achieve.append(list[i]['issue_achieve']) issue_achieve_num.append(list[i]['issue_achieve_num']) breach_achieve.append(list[i]['breach_achieve']) loss_achieve.append(list[i]['loss_achieve']) total_achieve.append(list[i]['total_achieve']) department_summary['名次'] = index department_summary['部门名称'] = depart_name department_summary['负责人'] = manager_name department_summary['人数'] = depart_num department_summary['出单业绩'] = issue_achieve department_summary['单数'] = issue_achieve_num department_summary['违约业绩'] = breach_achieve department_summary['亏损业绩'] = loss_achieve department_summary['总业绩'] = total_achieve return department_summary
def overall_acceptance(self): """ 整体验收 :return: """ base.consoleLog('整体验收') idCardPhotos = interface.upLoadPhoto(self.url, base.get_conf('Img', 'picture_name'), base.get_conf('Img', 'file_path'), value='rsm') url = 'http://decorate.ishangzu.com/isz_decoration/NewDecorationProjectController/proCheck/wholeCheck' data = { "air_switch": None, "attachments": None, "card_attachs": [{ "attach_type": "CARDS", "imgs": [{ "url": idCardPhotos['src'], "img_id": idCardPhotos['img_id'], "create_name": "", "create_dept": "", "create_time": "", "sort": 0, "type": "" }] }], "closed_water_test_result": None, "curOneLevelNode": None, "curTwoLevelNode": None, "door_card": None, "door_key": None, "electricity_card": None, "electricity_meter_num": None, "electricity_meter_remain": None, "gas_card": None, "gas_meter_num": None, "gas_meter_remain": None, "grade": None, "landlordGoods": None, "newStuffList": None, "overall_check_date": '%s 14:00:00' % self.now_times, "project_id": self.project_id, "remark": "", "score_remark": None, "three_attachs": [{ "attach_type": "THREE", "imgs": [{ "url": idCardPhotos['src'], "img_id": idCardPhotos['img_id'], "create_name": "", "create_dept": "", "create_time": "", "sort": 0, "type": "" }] }], "water_card": None, "water_card_remain": None, "water_meter_num": None } result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog('整体验收接口执行失败!') return result['msg'] base.consoleLog('整体验收接口执行成功!') return
def serach_divide_into_list(self, serach_tiao_jian, perPageSize=10000): """ 预估业绩排行榜---业绩分成搜索 :param:serach_tiao_jian 查询条件 :param perPageSize 查询的最大条数 :return: """ base.consoleLog('查询预估业绩排行榜---业绩分成') url = 'http://erp.ishangzu.com/isz_achievement/rankAchieve/divide/estimate' data = { "query_apartment": serach_tiao_jian['楼盘名称房源编号'], "building_name": serach_tiao_jian['栋座'], "unit": serach_tiao_jian['单元'], "house_no": serach_tiao_jian['房号'], "contract_num": serach_tiao_jian['委托合同号出租合同号'], "is_active": serach_tiao_jian['状态'], "achievement_type": serach_tiao_jian['业绩类型'], "type": serach_tiao_jian['分类'], "house_apartment_type": serach_tiao_jian['公寓类型'], "house_entrust_type": serach_tiao_jian['合同类型'], "divide_did": serach_tiao_jian['分成部门'], "divide_uname": serach_tiao_jian['分成人'], "audit_status": serach_tiao_jian['审核状态'], "contract_commit_date_start": serach_tiao_jian['提交日期起始'], "contract_commit_date_end": serach_tiao_jian['提交日期结束'], "active_time_start": serach_tiao_jian['生效日期起始'], "active_time_end": serach_tiao_jian['生效日期结束'], "accounting_month_start": serach_tiao_jian['核发月份起始'], "accounting_month_end": serach_tiao_jian['核发月份结束'], "orderArr": '', "sortArr": '', "pageNum": 1, "perPageSize": perPageSize, "tableFilter": '' } base.consoleLog(data) result = interface.myRequest(url, data) if result['code'] != 0: base.consoleLog(str(result)) return divide_into = {} list = result['obj']['rows'] base.consoleLog(str(list)) # 处理返回的数据。按照返回的值分类 property_name = [] apartment_code = [] house_contract_num = [] apartment_contract_num = [] is_active = [] achievement_type_cn = [] type_cn = [] house_apartment_type_cn = [] house_entrust_type_cn = [] divide_dname = [] divide_uname = [] audit_status_cn = [] contract_commit_date = [] active_time = [] accounting_month = [] xxCycles = [] divide_type_cn = [] divided_money = [] for i in range(len(list)): property_name.append(list[i]['property_name']) apartment_code.append(list[i]['apartment_code']) house_contract_num.append(list[i]['house_contract_num']) apartment_contract_num.append(list[i]['apartment_contract_num']) is_active.append(list[i]['is_active_cn']) achievement_type_cn.append(list[i]['achievement_type_cn']) type_cn.append(list[i]['type_cn']) house_apartment_type_cn.append(list[i]['house_apartment_type_cn']) house_entrust_type_cn.append(list[i]['house_entrust_type_cn']) divide_dname.append(list[i]['divide_dname']) divide_uname.append(list[i]['divide_uname']) audit_status_cn.append(list[i]['audit_status_cn']) contract_commit_date.append(list[i]['contract_commit_date']) active_time.append(list[i]['active_time']) accounting_month.append(list[i]['accounting_month']) xxCycles.append(list[i]['xxCycles']) divide_type_cn.append(list[i]['divide_type_cn']) divided_money.append(list[i]['divided_money']) divide_into['物业地址'] = property_name divide_into['房源编号'] = apartment_code divide_into['委托合同号'] = house_contract_num divide_into['出租合同号'] = apartment_contract_num divide_into['状态'] = is_active divide_into['业绩类型'] = achievement_type_cn divide_into['分类'] = type_cn divide_into['公寓类型'] = house_apartment_type_cn divide_into['合同类型'] = house_entrust_type_cn divide_into['分成部门'] = divide_dname divide_into['分成人'] = divide_uname divide_into['审核状态'] = audit_status_cn divide_into['提交日期'] = contract_commit_date divide_into['生效日期'] = active_time divide_into['核发月份'] = accounting_month divide_into['核算周期'] = xxCycles divide_into['分成方'] = divide_type_cn divide_into['核算业绩'] = divided_money base.consoleLog('预估排行榜业绩分成数据返回: ' + str(divide_into)) return divide_into