MCPcopy Create free account
hub / github.com/aaPanel/BaoTa / multi_set_project

Method multi_set_project

class/projectModel/javaModel.py:4711–4789  ·  view source on GitHub ↗

@name 批量设置项目 @author baozi<2023-3-2> @param get { project_names: list[string] <项目名称>所组成的列表 } @return dict

(self, get)

Source from the content-addressed store, hash-verified

4709 if os.path.exists(log_file): os.remove(log_file)
4710
4711 def multi_set_project(self, get):
4712 ''&#x27;
4713 @name 批量设置项目
4714 @author baozi<2023-3-2>
4715 @param get<dict_obj>{
4716 project_names: list[string] <项目名称>所组成的列表
4717 }
4718 @return dict
4719 ''&#x27;
4720 project_names = get.project_names
4721 set_type = get.operation
4722 if set_type not in ["start", "stop"]:
4723 return public.returnMsg(False, "操作信息错误")
4724 if isinstance(project_names, list):
4725 pjnames = [i.strip() for i in project_names]
4726 else:
4727 pjnames = []
4728
4729 projects = public.M('sites').where(
4730 f'project_type=? AND name in ({",".join(["?"] * len(pjnames))})',
4731 ('Java', *pjnames)
4732 ).select()
4733 if not projects:
4734 return public.returnMsg(False, "未选中要启动的站点")
4735
4736 neizhi_projects = {'7': False, '8': False, '9': False}
4737 _check = self.get_tomcat_version(None)
4738 if not _check["tomcat7"]["status"]: neizhi_projects.pop("7")
4739 if not _check["tomcat8"]["status"]: neizhi_projects.pop("8")
4740 if not _check["tomcat9"]["status"]: neizhi_projects.pop("9")
4741 springboot_projects = []
4742 duli_projects = []
4743 error_list = []
4744 for project in projects:
4745 project['project_config'] = json.loads(project['project_config'])
4746 if project['project_config']['java_type'] == 'neizhi':
4747 if project['project_config']['tomcat_version'] in neizhi_projects:
4748 neizhi_projects[project['project_config']['tomcat_version']] = True
4749 else:
4750 error_list.append(
4751 {
4752 "project_name": project["name"], "msg": "启动失败,没有安装Tomcat{}".format(
4753 project['project_config']['tomcat_version']
4754 )
4755 }
4756 )
4757 pjnames.remove(project["name"])
4758
4759 if project['project_config']['java_type'] == 'duli':
4760 duli_projects.append(project)
4761
4762 if project['project_config']['java_type'] == 'springboot':
4763 springboot_projects.append(project)
4764
4765 for tomcat_version, flag in neizhi_projects.items():
4766 if flag:
4767 _get = public.dict_obj()
4768 _get.type = set_type

Callers

nothing calls this directly

Calls 15

get_tomcat_versionMethod · 0.95
start_tomcatMethod · 0.95
pendent_tomcat_startMethod · 0.95
returnMsgMethod · 0.80
selectMethod · 0.45
whereMethod · 0.45
MMethod · 0.45
joinMethod · 0.45
popMethod · 0.45
loadsMethod · 0.45

Tested by

no test coverage detected