#
Junjie
2026-01-24 7732d4f464f0670349402e47caeec04c17a9a8c7
#
5个文件已修改
37 ■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/ApkBuildTaskController.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/OpenController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/ApkBuildTaskService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/ApkBuildTaskServiceImpl.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/apkBuild/apkBuild.html 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/ApkBuildTaskController.java
@@ -89,8 +89,10 @@
    public R triggerBuild(@RequestBody JSONObject param) {
        try {
            String buildType = param.getString("buildType");
            String androidTarget = param.getString("android_target");
            String repoAlias = param.getString("repoAlias");
            String branch = param.getString("branch");
            String serverUrl = param.getString("server_url");
            if (Cools.isEmpty(buildType)) {
                buildType = "release";
@@ -102,7 +104,7 @@
                branch = "master";
            }
            ApkBuildTask task = apkBuildTaskService.triggerBuild(buildType, repoAlias, branch);
            ApkBuildTask task = apkBuildTaskService.triggerBuild(buildType, androidTarget, repoAlias, branch, serverUrl);
            return R.ok(task);
        } catch (Exception e) {
            return R.error("打包任务创建失败: " + e.getMessage());
src/main/java/com/zy/asrs/controller/OpenController.java
@@ -17,7 +17,6 @@
import com.zy.asrs.utils.Utils;
import com.zy.common.utils.RedisUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.usermodel.charts.LineChartData;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
import org.springframework.beans.factory.annotation.Autowired;
src/main/java/com/zy/asrs/service/ApkBuildTaskService.java
@@ -18,7 +18,7 @@
     * @param branch    分支名称
     * @return 创建的任务实体
     */
    ApkBuildTask triggerBuild(String buildType, String repoAlias, String branch) throws Exception;
    ApkBuildTask triggerBuild(String buildType, String androidTarget, String repoAlias, String branch, String serverUrl) throws Exception;
    /**
     * 刷新指定任务的状态
src/main/java/com/zy/asrs/service/impl/ApkBuildTaskServiceImpl.java
@@ -47,7 +47,7 @@
    private String adbPath;
    @Override
    public ApkBuildTask triggerBuild(String buildType, String repoAlias, String branch) throws Exception {
    public ApkBuildTask triggerBuild(String buildType, String androidTarget, String repoAlias, String branch, String serverUrl) throws Exception {
        // 检查是否有正在进行中的任务(状态0=等待中,1=打包中)
        List<ApkBuildTask> pendingTasks = this.baseMapper.selectPendingTasks();
        if (!pendingTasks.isEmpty()) {
@@ -61,8 +61,10 @@
        // 构建请求JSON
        JSONObject requestBody = new JSONObject();
        requestBody.put("build_type", buildType);
        requestBody.put("android_target", androidTarget);
        requestBody.put("repo_alias", repoAlias);
        requestBody.put("branch", branch);
        requestBody.put("server_url", serverUrl);
        // 发送打包请求
        Map<String, Object> headers = new HashMap<>();
src/main/webapp/views/apkBuild/apkBuild.html
@@ -252,12 +252,22 @@
                        <el-radio label="debug">Debug</el-radio>
                    </el-radio-group>
                </el-form-item>
                <el-form-item label="目标类型" prop="android_target">
                    <el-select v-model="buildForm.android_target" placeholder="请选择目标类型" style="width: 100%;">
                        <el-option label="TV" value="tv"></el-option>
                        <el-option label="PDA" value="pda"></el-option>
                    </el-select>
                </el-form-item>
                <el-form-item label="仓库别名" prop="repoAlias">
                    <el-input v-model="buildForm.repoAlias" placeholder="请输入仓库别名"></el-input>
                </el-form-item>
                <el-form-item label="分支名称" prop="branch">
                    <el-input v-model="buildForm.branch" placeholder="请输入分支名称"></el-input>
                    <div class="form-tip">默认为 master 分支</div>
                </el-form-item>
                <el-form-item label="服务器地址" prop="server_url">
                    <el-input v-model="buildForm.server_url" placeholder="请输入 server_url"></el-input>
                    <div class="form-tip">TV 包必填</div>
                </el-form-item>
            </el-form>
            <div slot="footer" class="dialog-footer">
@@ -399,10 +409,13 @@
                buildSubmitting: false,
                buildForm: {
                    buildType: 'release',
                    android_target: 'tv',
                    repoAlias: 'zy-monitor',
                    branch: 'master'
                    branch: 'master',
                    server_url: ''
                },
                buildRules: {
                    android_target: [{ required: true, message: '请选择目标类型', trigger: 'change' }],
                    repoAlias: [{ required: true, message: '请输入仓库别名', trigger: 'blur' }]
                },
@@ -419,6 +432,7 @@
            created() {
                this.loadData();
                this.buildForm.server_url = this.getServerUrl();
            },
            beforeDestroy() {
@@ -429,6 +443,10 @@
                // 获取请求头
                getHeaders() {
                    return { 'token': localStorage.getItem('token') };
                },
                getServerUrl() {
                    const { protocol, host } = window.location;
                    return `${protocol}//${host}/monitor`;
                },
                // 加载数据
@@ -590,8 +608,10 @@
                showBuildDialog() {
                    this.buildForm = {
                        buildType: 'release',
                        android_target: 'tv',
                        repoAlias: 'zy-monitor',
                        branch: 'master'
                        branch: 'master',
                        server_url: this.getServerUrl()
                    };
                    this.buildDialogVisible = true;
                },
@@ -759,4 +779,4 @@
    </script>
</body>
</html>
</html>