mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-18 23:36:46 +08:00
Merge branch 'develop' of ssh://gitlab.dongwu-inc.com:10022/BOE/fe-manage into develop
This commit is contained in:
11
.env
Normal file
11
.env
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
VITE_BASE=/manage
|
||||||
|
VITE_BASE_API=/
|
||||||
|
VITE_PROXY_URL=http://111.231.196.214:30001/
|
||||||
|
VITE_LOGIN_URL=https://u-pre.boe.com/web
|
||||||
|
|
||||||
|
|
||||||
|
VITE_BOE_ONLINE_CLASS_URL=https://u-pre.boe.com/pc/course/studyindex?id=
|
||||||
|
VITE_BOE_CASS_DETAIL_URL=https://u-pre.boe.com/pc/case/detail?id=
|
||||||
|
VITE_BOE_TEST_DETAIL_URL=https://u-pre.boe.com/web/quizsummary?detailId=
|
||||||
|
|
||||||
|
VITE_BOE_API_URL=https://u-pre.boe.com
|
||||||
9
.env.boe
Normal file
9
.env.boe
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
VITE_BASE=/manage
|
||||||
|
VITE_BASE_API=/manageApi
|
||||||
|
|
||||||
|
|
||||||
|
VITE_BOE_ONLINE_CLASS_URL=https://u-pre.boe.com/pc/course/studyindex?id=
|
||||||
|
VITE_BOE_CASS_DETAIL_URL=https://u-pre.boe.com/pc/case/detail?id=
|
||||||
|
VITE_BOE_TEST_DETAIL_URL=https://u-pre.boe.com/web/quizsummary?detailId=
|
||||||
|
|
||||||
|
VITE_BOE_API_URL=https://u-pre.boe.com
|
||||||
8
.env.prod
Normal file
8
.env.prod
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
VITE_BASE=/fe-student-release
|
||||||
|
VITE_BASE_API=/manageApi-release
|
||||||
|
|
||||||
|
VITE_BOE_ONLINE_CLASS_URL=https://u.boe.com/pc-release/course/studyindex?id=
|
||||||
|
VITE_BOE_CASS_DETAIL_URL=https://u.boe.com/pc-release/case/detail?id=
|
||||||
|
VITE_BOE_TEST_DETAIL_URL=https://u.boe.com/web/quizsummary?detailId=
|
||||||
|
|
||||||
|
VITE_BOE_API_URL=https://u.boe.com
|
||||||
10
.env.release
Normal file
10
.env.release
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
VITE_BASE=/fe-student-release
|
||||||
|
VITE_BASE_API=/manageApi-release
|
||||||
|
VITE_LOGIN_URL=https://u.boe.com/web
|
||||||
|
|
||||||
|
|
||||||
|
VITE_BOE_ONLINE_CLASS_URL=https://u.boe.com/pc-release/course/studyindex?id=
|
||||||
|
VITE_BOE_CASS_DETAIL_URL=https://u.boe.com/pc-release/case/detail?id=
|
||||||
|
VITE_BOE_TEST_DETAIL_URL=https://u.boe.com/web/quizsummary?detailId=
|
||||||
|
|
||||||
|
VITE_BOE_API_URL=https://u.boe.com
|
||||||
9
.env.test
Normal file
9
.env.test
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
VITE_BASE=/fe-student
|
||||||
|
VITE_BASE_API=/manageApi
|
||||||
|
|
||||||
|
|
||||||
|
VITE_BOE_ONLINE_CLASS_URL=https://u.boe.com/pc-release/course/studyindex?id=
|
||||||
|
VITE_BOE_CASS_DETAIL_URL=https://u-pre.boe.com/pc/case/detail?id=
|
||||||
|
VITE_BOE_TEST_DETAIL_URL=https://u-pre.boe.com/web/quizsummary?detailId=
|
||||||
|
|
||||||
|
VITE_BOE_API_URL=https://u-pre.boe.com
|
||||||
@@ -5,7 +5,10 @@
|
|||||||
"scripts": {
|
"scripts": {
|
||||||
"serve": "vue-cli-service serve",
|
"serve": "vue-cli-service serve",
|
||||||
"build": "vue-cli-service build",
|
"build": "vue-cli-service build",
|
||||||
"lint": "vue-cli-service lint"
|
"build:boe": "vue-cli-service build --mode boe",
|
||||||
|
"build:release": "vue-cli-service build --mode release",
|
||||||
|
"build:prod": "vue-cli-service build --mode prod",
|
||||||
|
"build:test": "vue-cli-service build --mode test"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@wangeditor/editor": "^5.1.23",
|
"@wangeditor/editor": "^5.1.23",
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ export default defineComponent({
|
|||||||
const store = useStore();
|
const store = useStore();
|
||||||
const isLogin = ref(false);
|
const isLogin = ref(false);
|
||||||
// console.log("router", router.getRoutes(), route);
|
// console.log("router", router.getRoutes(), route);
|
||||||
console.log("版本0.9.13------------");
|
console.log("版本0.9.14------------");
|
||||||
const routes = computed(() => {
|
const routes = computed(() => {
|
||||||
return router.getRoutes().filter((e) => e.meta?.isLink);
|
return router.getRoutes().filter((e) => e.meta?.isLink);
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -2,12 +2,13 @@
|
|||||||
* @Author: lixg lixg@dongwu-inc.com
|
* @Author: lixg lixg@dongwu-inc.com
|
||||||
* @Date: 2022-11-21 14:32:52
|
* @Date: 2022-11-21 14:32:52
|
||||||
* @LastEditors: lixg lixg@dongwu-inc.com
|
* @LastEditors: lixg lixg@dongwu-inc.com
|
||||||
* @LastEditTime: 2022-12-14 09:04:31
|
* @LastEditTime: 2022-12-14 20:56:10
|
||||||
* @FilePath: /fe-manage/src/api/config.js
|
* @FilePath: /fe-manage/src/api/config.js
|
||||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
*/
|
*/
|
||||||
import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
|
import router from "@/router";
|
||||||
// import { getCookie } from '../api/method'
|
// import { getCookie } from '../api/method'
|
||||||
// const Qs = require("qs");
|
// const Qs = require("qs");
|
||||||
|
|
||||||
@@ -16,7 +17,7 @@ import axios from "axios";
|
|||||||
|
|
||||||
axios.defaults.withCredentials = true;
|
axios.defaults.withCredentials = true;
|
||||||
const http = axios.create({
|
const http = axios.create({
|
||||||
baseURL: "/manageApi",
|
baseURL: process.env.VITE_BASE_API,
|
||||||
timeout: 1000 * 15,
|
timeout: 1000 * 15,
|
||||||
// headers: { "Content-Type": "multipart/form-data" },
|
// headers: { "Content-Type": "multipart/form-data" },
|
||||||
headers: { "Content-Type": "application/json" },
|
headers: { "Content-Type": "application/json" },
|
||||||
@@ -56,8 +57,7 @@ http.interceptors.response.use(
|
|||||||
return response;
|
return response;
|
||||||
} else {
|
} else {
|
||||||
if (code === 1000) {
|
if (code === 1000) {
|
||||||
// window.open("https://u-pre.boe.com/web/", '_self');
|
process.env.NODE_ENV === 'development' ? router.push({ path: 'login' }) : (window.location.href = process.env.VITE_LOGIN_URL)
|
||||||
// window.open("http://111.231.196.214:12013/manage/login", '_self');
|
|
||||||
}
|
}
|
||||||
console.log("api %o", msg);
|
console.log("api %o", msg);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -277,6 +277,9 @@ const organizationalTree = []
|
|||||||
|
|
||||||
//嵌套页面
|
//嵌套页面
|
||||||
const iframeUrl = "https://u-pre.boe.com/pc/iframe"
|
const iframeUrl = "https://u-pre.boe.com/pc/iframe"
|
||||||
|
//学员端路由
|
||||||
|
const studentUrl = 'https://u-pre.boe.com/pc/loading'
|
||||||
|
|
||||||
//二维码
|
//二维码
|
||||||
const codeUrl = "https://u-pre.boe.com"
|
const codeUrl = "https://u-pre.boe.com"
|
||||||
export {
|
export {
|
||||||
@@ -292,5 +295,6 @@ export {
|
|||||||
commonData,
|
commonData,
|
||||||
organizationalTree,
|
organizationalTree,
|
||||||
iframeUrl,
|
iframeUrl,
|
||||||
|
studentUrl,
|
||||||
codeUrl,
|
codeUrl,
|
||||||
}
|
}
|
||||||
@@ -61,7 +61,7 @@
|
|||||||
import { reactive, toRefs } from "vue";
|
import { reactive, toRefs } from "vue";
|
||||||
import DownLoad from "../components/drawers/DownLoad";
|
import DownLoad from "../components/drawers/DownLoad";
|
||||||
import * as api from "../api/index1";
|
import * as api from "../api/index1";
|
||||||
|
import { studentUrl } from "../api/method";
|
||||||
export default {
|
export default {
|
||||||
name: "NavTop",
|
name: "NavTop",
|
||||||
components: {
|
components: {
|
||||||
@@ -81,7 +81,7 @@ export default {
|
|||||||
{
|
{
|
||||||
id: 2,
|
id: 2,
|
||||||
name: "学员",
|
name: "学员",
|
||||||
go: "https://u.boe.com/pc/uc/study/courses",
|
go: studentUrl,
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
|
||||||
|
|||||||
@@ -54,7 +54,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mi_btns" style="margin-left:0px;">
|
<div class="mi_btns" style="margin-left: 0px">
|
||||||
<div class="btn btn1">
|
<div class="btn btn1">
|
||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<div class="btnText" @click="searchProjectList()">搜索</div>
|
<div class="btnText" @click="searchProjectList()">搜索</div>
|
||||||
@@ -225,8 +225,9 @@
|
|||||||
import { reactive, toRefs } from "vue";
|
import { reactive, toRefs } from "vue";
|
||||||
import { RouterEditTask } from "@/api/indexTask";
|
import { RouterEditTask } from "@/api/indexTask";
|
||||||
import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
import * as apiProj from "../../api/index.js";
|
// import * as apiProj from "../../api/index.js";
|
||||||
import dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
|
import * as indexAudit from "../../api/indexAudit";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "AddProject",
|
name: "AddProject",
|
||||||
@@ -400,8 +401,8 @@ export default {
|
|||||||
// TODO 这里后续需要给接口或者改动
|
// TODO 这里后续需要给接口或者改动
|
||||||
// 获取所有,确定分页位置
|
// 获取所有,确定分页位置
|
||||||
const getCurrentPage = () => {
|
const getCurrentPage = () => {
|
||||||
apiProj
|
indexAudit
|
||||||
.getProjectList({
|
.auditlist({
|
||||||
createName: state.inputV1,
|
createName: state.inputV1,
|
||||||
manager: state.inputV2,
|
manager: state.inputV2,
|
||||||
name: state.inputV3,
|
name: state.inputV3,
|
||||||
@@ -450,8 +451,8 @@ export default {
|
|||||||
status: 3,
|
status: 3,
|
||||||
});
|
});
|
||||||
|
|
||||||
apiProj
|
indexAudit
|
||||||
.getProjectList({
|
.auditlist({
|
||||||
createName: state.inputV3,
|
createName: state.inputV3,
|
||||||
manager: state.inputV2,
|
manager: state.inputV2,
|
||||||
name: state.inputV1,
|
name: state.inputV1,
|
||||||
@@ -991,7 +992,6 @@ export default {
|
|||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
</a-tree-select>
|
</a-tree-select>
|
||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
import {computed, defineEmits, defineProps, onMounted, ref} from "vue";
|
import {computed, defineEmits, defineProps} from "vue";
|
||||||
import {useStore} from "vuex";
|
import {useStore} from "vuex";
|
||||||
|
|
||||||
const store = useStore();
|
const store = useStore();
|
||||||
@@ -33,16 +33,12 @@ const props = defineProps({
|
|||||||
})
|
})
|
||||||
const emit = defineEmits({})
|
const emit = defineEmits({})
|
||||||
|
|
||||||
const options = ref([])
|
const options = computed(() => store.state.orgtreeList)
|
||||||
|
|
||||||
const id = computed(() => {
|
const id = computed(() => {
|
||||||
return props.value
|
return props.value
|
||||||
})
|
})
|
||||||
|
|
||||||
onMounted(() => {
|
|
||||||
options.value = [...store.state.orgtreeList]
|
|
||||||
})
|
|
||||||
|
|
||||||
function change(key, obj) {
|
function change(key, obj) {
|
||||||
emit('update:name', obj[0])
|
emit('update:name', obj[0])
|
||||||
emit('update:value', key)
|
emit('update:value', key)
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ const routes = [
|
|||||||
...routesConfig
|
...routesConfig
|
||||||
]
|
]
|
||||||
const router = createRouter({
|
const router = createRouter({
|
||||||
history: createWebHistory("/manage/"),
|
history: createWebHistory(process.env.VITE_BASE),
|
||||||
routes,
|
routes,
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -36,12 +36,19 @@
|
|||||||
class="nameimg"
|
class="nameimg"
|
||||||
src="../../assets/images/basicinfo/asterisk.png"
|
src="../../assets/images/basicinfo/asterisk.png"
|
||||||
/>
|
/>
|
||||||
<div class="inname">项目名称</div>
|
<div class="inname">
|
||||||
|
{{ ptojectType == 3 ? "班级名称" : "项目名称" }}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="in">
|
<div class="in">
|
||||||
<NameInput placeholder="请输入项目名称" v-model:value="projectInfo.name"
|
<NameInput
|
||||||
v-model:validate="projectInfo.validate" :maxlength="30" show-count
|
placeholder="请输入项目名称"
|
||||||
:id="projectInfo.projectId"></NameInput>
|
v-model:value="projectInfo.name"
|
||||||
|
v-model:validate="projectInfo.validate"
|
||||||
|
:maxlength="30"
|
||||||
|
show-count
|
||||||
|
:id="projectInfo.projectId"
|
||||||
|
></NameInput>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="name flex-top">
|
<div class="name flex-top">
|
||||||
@@ -256,8 +263,7 @@
|
|||||||
class="btn1"
|
class="btn1"
|
||||||
style="margin-left: 20px"
|
style="margin-left: 20px"
|
||||||
>确定
|
>确定
|
||||||
</a-button
|
</a-button>
|
||||||
>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -324,6 +330,8 @@ export default {
|
|||||||
state.viewDetail = routers.query.viewDetail;
|
state.viewDetail = routers.query.viewDetail;
|
||||||
getProjectInfo();
|
getProjectInfo();
|
||||||
getTemplate();
|
getTemplate();
|
||||||
|
state.ptojectType = routers.query.ptojectType;
|
||||||
|
// console.log("routers.query.ptojectType", routers.query.ptojectType);
|
||||||
});
|
});
|
||||||
|
|
||||||
watch(routers.query, () => {
|
watch(routers.query, () => {
|
||||||
@@ -364,11 +372,12 @@ export default {
|
|||||||
let res = d.data.data;
|
let res = d.data.data;
|
||||||
if (res.rows && res.rows.length > 0) {
|
if (res.rows && res.rows.length > 0) {
|
||||||
let i = res.rows.length;
|
let i = res.rows.length;
|
||||||
state.auditDescription = res.rows[i - 1].description ? res.rows[i - 1].description : "-";
|
state.auditDescription = res.rows[i - 1].description
|
||||||
|
? res.rows[i - 1].description
|
||||||
|
: "-";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -457,7 +466,11 @@ export default {
|
|||||||
message.warning('项目名称重复,请修改名称!');
|
message.warning('项目名称重复,请修改名称!');
|
||||||
return;
|
return;
|
||||||
}*/
|
}*/
|
||||||
const offName = await validateName({name:state.projectInfo.name, type:1, id:state.projectInfo.projectId}).then(res => {
|
const offName = await validateName({
|
||||||
|
name: state.projectInfo.name,
|
||||||
|
type: 1,
|
||||||
|
id: state.projectInfo.projectId,
|
||||||
|
}).then((res) => {
|
||||||
return res.data.data == 1;
|
return res.data.data == 1;
|
||||||
});
|
});
|
||||||
if (offName) {
|
if (offName) {
|
||||||
|
|||||||
@@ -1591,6 +1591,7 @@ export default {
|
|||||||
parentId: value.record.projectId,
|
parentId: value.record.projectId,
|
||||||
parentName:
|
parentName:
|
||||||
value.record.parentName + "——" + value.record.name,
|
value.record.parentName + "——" + value.record.name,
|
||||||
|
ptojectType: 3,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
}}
|
}}
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -210,7 +210,6 @@ import { ref, onMounted, watch } from "vue";
|
|||||||
import {message} from "ant-design-vue";
|
import {message} from "ant-design-vue";
|
||||||
import {useRouter, useRoute} from "vue-router";
|
import {useRouter, useRoute} from "vue-router";
|
||||||
import * as api from "../../api/indexTemplate";
|
import * as api from "../../api/indexTemplate";
|
||||||
// import ProjectClass from "@/components/project/ProjectClass";
|
|
||||||
import TrainClass from "@/components/project/TrainClass";
|
import TrainClass from "@/components/project/TrainClass";
|
||||||
import OrgClass from "@/components/project/OrgClass";
|
import OrgClass from "@/components/project/OrgClass";
|
||||||
import ProjectManager from "@/components/project/ProjectManagerNew";
|
import ProjectManager from "@/components/project/ProjectManagerNew";
|
||||||
@@ -221,7 +220,7 @@ const router = useRouter();
|
|||||||
const store = useStore();
|
const store = useStore();
|
||||||
const projectInfo = ref({});
|
const projectInfo = ref({});
|
||||||
const projectPic = ref([]);
|
const projectPic = ref([]);
|
||||||
const courseSyncFlag = ref(false);
|
const courseSyncFlag = ref(false)
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
getDetail();
|
getDetail();
|
||||||
projectPic.value = store.state.projectPic.map((e) => ({
|
projectPic.value = store.state.projectPic.map((e) => ({
|
||||||
@@ -245,7 +244,7 @@ const getDetail = () =>
|
|||||||
projectInfo.value.beginTime,
|
projectInfo.value.beginTime,
|
||||||
projectInfo.value.endTime,
|
projectInfo.value.endTime,
|
||||||
];
|
];
|
||||||
projectInfo.value.courseSyncFlag = !!projectInfo.value.courseSyncFlag;
|
projectInfo.value.courseSyncFlag = !!projectInfo.value.courseSyncFlag
|
||||||
});
|
});
|
||||||
|
|
||||||
const backPage = () => {
|
const backPage = () => {
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
*/
|
*/
|
||||||
const {defineConfig} = require("@vue/cli-service");
|
const {defineConfig} = require("@vue/cli-service");
|
||||||
|
|
||||||
module.exports = defineConfig({
|
module.exports = defineConfig({
|
||||||
publicPath: "/manage",
|
publicPath: "/manage",
|
||||||
// transpileDependencies: true,
|
// transpileDependencies: true,
|
||||||
@@ -14,7 +15,7 @@ module.exports = defineConfig({
|
|||||||
port: 8080,
|
port: 8080,
|
||||||
proxy: {
|
proxy: {
|
||||||
"/manageApi": {
|
"/manageApi": {
|
||||||
target:"http://111.231.196.214:30001/",
|
target: process.env.VITE_PROXY_URL,
|
||||||
changeOrigin: true, //表示是否改变原域名
|
changeOrigin: true, //表示是否改变原域名
|
||||||
// secure: false,
|
// secure: false,
|
||||||
// ws: false, //表示WebSocket协议
|
// ws: false, //表示WebSocket协议
|
||||||
|
|||||||
Reference in New Issue
Block a user