コード例 #1
0
 def get_bind_service_account_list(self, page_settings, user_sn=0):
     self.__reset_return_value()
     html = ""
     page_settings["user_sn"] = user_sn
     page_settings["bind_service_tab"] = 12
     if int(user_sn) > 0:
         vcms_db_agent = VcmsDbAgent()
         user_info = vcms_db_agent._get_account_data(int(user_sn))
         page_settings["company_sn"] = int(user_info["company_sn"])
         company_service_info = vcms_db_agent._get_company_service_data(
             int(user_info["company_sn"]))
         user_service_info = vcms_db_agent._get_user_service_data(
             int(user_sn))
         enabled_service = {}
         for k1, v1 in user_service_info.items():
             if int(v1["enabled"]) == 1:
                 enabled_service[int(v1["company_service_sn"])] = v1
         for k1, v1 in company_service_info.items():
             if k1 in enabled_service:
                 company_service_info[k1]["user_enabled"] = 1
             else:
                 company_service_info[k1]["user_enabled"] = 0
         page_settings["company_service_list"] = company_service_info
         html = render_template("tab_ui/vcms_bind_service_account.tpl",
                                data=page_settings)
     return html
コード例 #2
0
 def set_bind_service_account(self, page_settings, parameter_dict):
     self.__reset_return_value()
     data_check = {"service_sn_1_error": page_settings["empty_cnt_error"]}
     company_sn = parameter_dict.get("company_sn")
     user_sn = parameter_dict.get("user_sn")
     error_data = 0
     vcms_db_agent = VcmsDbAgent()
     if company_sn is not None and company_sn != "":
         data_check["service_sn_1_error"] = ""
         if re.compile("^[0-9]*$").match(company_sn) is None:
             error_data += 1
             data_check["service_sn_1_error"] = page_settings[
                 "invalid_company_sn_error"]
         else:
             company_info = vcms_db_agent._get_all_company_data()
             if int(company_sn) not in company_info:
                 error_data += 1
                 data_check["service_sn_1_error"] = page_settings[
                     "empty_company_sn_error"]
     else:
         error_data += 1
         data_check["service_sn_1_error"] = page_settings[
             "company_sn_error"]
     if user_sn is not None and user_sn != "":
         if re.compile("^[\d]*$").match(user_sn) is None:
             error_data += 1
             data_check["service_sn_1_error"] = page_settings[
                 "user_sn_format_error"]
         else:
             user_info = vcms_db_agent._get_account_data(user_sn)
             if "admin_id" not in user_info:
                 error_data += 1
                 data_check["service_sn_1_error"] = page_settings[
                     "none_user_sn_error"]
             else:
                 company_sn = int(user_info["company_sn"])
     else:
         error_data += 1
     self.return_value["data"] = data_check
     if error_data == 0:
         if "company_service_sn" in parameter_dict:
             company_service_info = vcms_db_agent._get_company_service_data(
                 int(company_sn))
             user_permission = vcms_db_agent._get_user_service_data(
                 int(user_sn))
             user_permission_list = {}
             for k, v in user_permission.items():
                 user_permission_list[int(v["company_service_sn"])] = v
             vcms_db_agent._upd_all_user_service_permission_data(
                 int(user_sn), 0)
             for row in parameter_dict.getlist("company_service_sn"):
                 if int(row) in user_permission_list:
                     vcms_db_agent._upd_user_service_permission_data(
                         int(user_sn), int(row), 1)
                 else:
                     service_sn = company_service_info[int(
                         row)]["service_sn"]
                     vcms_db_agent._add_user_service_permission_data(
                         int(company_sn), int(user_sn), int(row),
                         int(service_sn))
         else:
             vcms_db_agent._upd_all_user_service_permission_data(
                 int(user_sn), 0)
         self.return_value["data"] = self.get_bind_service_account_list(
             page_settings, int(user_sn))
         self.return_value["message"] = page_settings["success_text"]
         self.return_value["code"] = 1
     return self.return_value