diff --git a/src/api/index.js b/src/api/index.js index 1297c5d5..acd6f5c5 100644 --- a/src/api/index.js +++ b/src/api/index.js @@ -1,5 +1,5 @@ import http from "./config"; -import qs from 'qs'; +// import qs from 'qs'; /** @@ -37,39 +37,27 @@ import qs from 'qs'; // 接口-请求 -// 根据投票ID获取题干信息 -export const getStemInfo = (stemId) => http.post('/vote/queryStemByStemId', qs.stringify({ stemId: stemId })); - -// 测试方法 -// import * as api from '../../api/index' -// api.getStemInfo(4).then(res => { -// console.log(res) -// }).catch(err => { -// console.log(err) -// }) - -// 获取字典列表 -export const getList = (pageno, pagesize) => http.post('/dict/getList', { - "dictCode": "", - "pageNo": pageno, - "pageSize": pagesize -}) - -// 测试方法 -// import * as api from '../../api/index' -// api.getList(0,0).then(res => { -// console.log(res) -// }).catch(err => { -// console.log(err) -// }) - -// 根据活动ID获取活动信息接口 -export const getActivityList = (activityId) => http.get('/activity', { params: { "activityId": activityId } }) - -// 测试方法 -// import * as api from '../../api/index' -// api.getActivityList(4).then(res => { -// console.log(res) -// }).catch(err => { -// console.log(err) -// }) \ No newline at end of file +// 创建编辑单层项目 +export const createProject = (obj) => http.post('/admin/project/edit', { + "attach": obj.attach, + "beginTime": obj.beginTime, + "boeFlag": obj.boeFlag, + "category": obj.category, + "courseSyncFlag": obj.courseSyncFlag, + "endTime": obj.endTime, + "level": obj.level, + "manager": obj.manager, + "managerId": obj.managerId, + "name": obj.name, + "notice": obj.notice, + "noticeFlag": obj.noticeFlag, + "parentId": obj.parentId, + "picUrl": obj.picUrl, + "projectId": obj.projectId, + "remark": obj.remark, + "sourceBelongId": obj.sourceBelongId, + "status": obj.status, + "systemId": obj.systemId, + "templateId": obj.templateId, + "type": obj.type +}) \ No newline at end of file diff --git a/src/api/index1.js b/src/api/index1.js index 8baf22aa..819f4120 100644 --- a/src/api/index1.js +++ b/src/api/index1.js @@ -45,6 +45,12 @@ export const createLearnPath = (obj) => http.post('/admin/router/edit', obj, { }); // 获取学习路径图列表 export const getLearnPath = (obj) => http.post('/admin/router/list', obj); +//删除学习路径图 +export const deleteLearnPath = (obj) => http.post('/admin/router/handle', obj, { + headers: { + 'token': '123' + } +}); //获取关卡 export const getChapter = (obj) => http.post('/admin/router/detail', { params: obj }); diff --git a/src/api/method.js b/src/api/method.js new file mode 100644 index 00000000..ca7d2367 --- /dev/null +++ b/src/api/method.js @@ -0,0 +1,168 @@ +function formatNumber(n) { + n = n.toString(); + return n[1] ? n : "0" + n; +} +function toDate(number, format) { + var formateArr = ["Y", "M", "D", "h", "m", "s"]; + var returnArr = []; + + if (number === 0) { + return 0; + } else { + var date = new Date(number * 1000); + } + returnArr.push(date.getFullYear()); + returnArr.push(formatNumber(date.getMonth() + 1)); + returnArr.push(formatNumber(date.getDate())); + + returnArr.push(formatNumber(date.getHours())); + returnArr.push(formatNumber(date.getMinutes())); + returnArr.push(formatNumber(date.getSeconds())); + + for (var i in returnArr) { + format = format.replace(formateArr[i], returnArr[i]); + } + return format; +} +function getWeek(date) { + //date:'Y-M-D' + let time = new Date(date).getDay() + let week; + if (time == 0) week = "星期日" + if (time == 1) week = "星期一" + if (time == 2) week = "星期二" + if (time == 3) week = "星期三" + if (time == 4) week = "星期四" + if (time == 5) week = "星期五" + if (time == 6) week = "星期六" + return week; +} + +/************************************将数字搞成带逗号的那种*********************************************/ +function autoComma(number) { + // let number = parseInt(numb) + if (number) { + let newNum = ""; //中间变量 + let arr = []; + let arr1 = []; + let num = ""; //最终结果 + let isDecimal = false; //是不是小数 + let decimal = 0; //小数点所在位置 + let decimalNum = ""; //小数点和以后的数据 + let negative = false; //是不是负数 + // 判断百万级别或者上亿级别 + let thousand = false; + let Billion = false; + + if ( + (number >= 10000 || number <= -10000) && + number < 100000000 && + number > -100000000 + ) { + thousand = true; + number = number / 10000; + } + if (number >= 100000000 || number <= -100000000) { + thousand = false; + Billion = true; + number = number / 100000000; + } + + if (number < 0) { + number = Math.abs(number); + negative = true; + } + let numStr = JSON.stringify(number); + // 如果传入的是小数,逗号的添加位置和整数是有区别滴 + for (let i = 0; i < numStr.length; i++) { + if (numStr[i] === ".") { + isDecimal = true; + decimal = i; + decimalNum = numStr.slice(decimal, numStr.length); + // 保留两位小数 + if (decimalNum.length > 2) { + decimalNum = decimalNum.slice(0, 3); + } + numStr = numStr.slice(0, decimal); + } + } + for (let i = 0; i < numStr.length; i++) { + arr.push(numStr[numStr.length - i - 1]); + } + for (let i = 0; i < arr.length; i++) { + if ((i + 1) % 3 === 0 && i + 1 !== 0 && i + 1 < arr.length) { + newNum += arr[i]; + newNum = newNum + ","; + } else { + newNum += arr[i]; + } + } + for (let i = 0; i < newNum.length; i++) { + arr1.push(newNum[newNum.length - i - 1]); + } + for (let i = 0; i < arr1.length; i++) { + num += arr1[i]; + } + if (isDecimal) { + if (negative) { + // num = '-' + num + decimalNum + // return num + if (thousand) { + num = "-" + num + decimalNum + "万"; + return num; + } else if (Billion) { + num = "-" + num + decimalNum + "亿"; + return num; + } else { + num = "-" + num + decimalNum; + return num; + } + } else { + // num = num + decimalNum + // return num + if (thousand) { + num = num + decimalNum + "万"; + return num; + } else if (Billion) { + num = num + decimalNum + "亿"; + return num; + } else { + num = num + decimalNum; + return num; + } + } + } else { + if (negative) { + // num = '-' + num + // return num + if (thousand) { + num = "-" + num + "万"; + return num; + } else if (Billion) { + num = "-" + num + "亿"; + return num; + } else { + num = "-" + num; + return num; + } + } else { + if (thousand) { + num = num + "万"; + return num; + } else if (Billion) { + num = num + "亿"; + return num; + } else { + return num; + } + } + } + } else { + return 0; + } +} +export { + toDate, + getWeek, + autoComma, +} \ No newline at end of file diff --git a/src/assets/images/leveladd/in.png b/src/assets/images/leveladd/in.png new file mode 100644 index 00000000..413c902b Binary files /dev/null and b/src/assets/images/leveladd/in.png differ diff --git a/src/assets/images/leveladd/zip.png b/src/assets/images/leveladd/zip.png new file mode 100644 index 00000000..891acca1 Binary files /dev/null and b/src/assets/images/leveladd/zip.png differ diff --git a/src/assets/images/taskpage/nostu.png b/src/assets/images/taskpage/nostu.png new file mode 100644 index 00000000..df1844f3 Binary files /dev/null and b/src/assets/images/taskpage/nostu.png differ diff --git a/src/components/drawers/ActiveAttendance.vue b/src/components/drawers/ActiveAttendance.vue index 8d882211..89b87e35 100644 --- a/src/components/drawers/ActiveAttendance.vue +++ b/src/components/drawers/ActiveAttendance.vue @@ -8,7 +8,7 @@ >
-
【活动】考勤
+
{{ title }}
-
+
批量签到
批量签退
-
+
导出数据
@@ -203,6 +203,96 @@
+ + +
+
+
+
+
+ 提示 +
+
+
+ 您确定要签到吗 +
+
+
+
取消
+
+
+
确定
+
+
+
+
+
+ + +
+
+
+
+
+ 提示 +
+
+
+ 您确定要签退吗 +
+
+
+
取消
+
+
+
确定
+
+
+
+
+
+ + +
+
+
+
+
+ 提示 +
+
+
+ 您确定要请假吗 +
+
+
+
取消
+
+
+
确定
+
+
+
+
+
diff --git a/src/views/projectcenter/ProjectManage.vue b/src/views/projectcenter/ProjectManage.vue index 7f65f904..9ab6c056 100644 --- a/src/views/projectcenter/ProjectManage.vue +++ b/src/views/projectcenter/ProjectManage.vue @@ -45,16 +45,19 @@ style="width: 270px" />
+
+
+ +
搜索
+
+
+ +
重置
+
+
+
-
- -
搜索
-
-
- -
重置
-
创建项目
@@ -339,7 +342,7 @@
项目名称:
分类:
@@ -373,7 +376,7 @@
项目经理:
@@ -389,7 +392,7 @@
资源归属:
@@ -453,7 +456,7 @@
子项目名称:
@@ -469,7 +472,7 @@
分类:
@@ -485,7 +488,7 @@
子项目经理:
@@ -501,7 +504,7 @@
资源归属:
@@ -743,6 +746,14 @@ export default { components: { ProjOwnerShip, ProjPowerList, ProjCheckShip, ProjManageShip }, setup() { const state = reactive({ + value1: "", + value2: "", + value3: "", + value4: "", + value5: "", + value6: "", + value7: "", + value8: "", projectNameList: [ { id: 1, @@ -2580,10 +2591,6 @@ export default { margin-right: 20px; margin-bottom: 20px; } - } - .btns { - display: flex; - // flex-wrap: wrap; .btn { padding: 0px 26px 0px 26px; height: 38px; @@ -2595,6 +2602,7 @@ export default { justify-content: center; margin-right: 14px; flex-shrink: 0; + cursor: pointer; .search { background-size: 100%; } @@ -2606,11 +2614,34 @@ export default { margin-left: 5px; } } + .btnn { + padding: 0px 26px 0px 26px; + height: 38px; + background: #409EFF; + border-radius: 8px; + border: 1px solid rgba(64, 158, 255, 1); + display: flex; + align-items: center; + justify-content: center; + margin-right: 14px; + flex-shrink: 0; + cursor: pointer; + .search { + background-size: 100%; + } + .btnText { + font-size: 14px; + font-weight: 400; + color: #FFFFFF; + line-height: 36px; + margin-left: 5px; + } + } .btn1 { .search { width: 15px; height: 17px; - background-image: url("../../assets/images/courseManage/search1.png"); + background-image: url("../../assets/images/courseManage/search0.png"); } } .btn2 { @@ -2620,16 +2651,8 @@ export default { background-image: url("../../assets/images/courseManage/reset1.png"); } } - .btn3 { - margin-right: 0px; - .search { - width: 17px; - height: 18px; - background-image: url("../../assets/images/courseManage/add1.png"); - } - } .btn1:hover { - background: rgba(64, 158, 255, 1); + background: rgba(64, 158, 255, 0.76); .search { background-image: url("../../assets/images/courseManage/search0.png"); } @@ -2637,23 +2660,55 @@ export default { color: #ffffff; } } + .btn1:active { + background: #0982ff; + } .btn2:hover { - background: rgba(64, 158, 255, 1); + background: rgba(64, 158, 255, 0.1); + } + .btn2:active { + background: rgba(64, 158, 255, 0.2); + } + } + .btns { + display: flex; + // flex-wrap: wrap; + .btn { + padding: 0px 26px 0px 26px; + height: 38px; + background: #409EFF; + border-radius: 8px; + border: 1px solid rgba(64, 158, 255, 1); + display: flex; + align-items: center; + cursor: pointer; + justify-content: center; + margin-right: 14px; + flex-shrink: 0; .search { - background-image: url("../../assets/images/courseManage/reset0.png"); + background-size: 100%; } .btnText { - color: #ffffff; + font-size: 14px; + font-weight: 400; + color: #FFFFFF; + line-height: 36px; + margin-left: 5px; + } + } + .btn3 { + margin-right: 0px; + .search { + width: 17px; + height: 18px; + background-image: url("../../assets/images/courseManage/add0.png"); } } .btn3:hover { - background: rgba(64, 158, 255, 1); - .search { - background-image: url("../../assets/images/courseManage/add0.png"); - } - .btnText { - color: #ffffff; - } + background: rgba(64, 158, 255, 0.76); + } + .btn3:active { + background: #0982ff; } } } diff --git a/src/views/projectcenter/TaskAdd.vue b/src/views/projectcenter/TaskAdd.vue index a595be6c..0c25dc6f 100644 --- a/src/views/projectcenter/TaskAdd.vue +++ b/src/views/projectcenter/TaskAdd.vue @@ -15,7 +15,7 @@
添加阶段
-
+
{{ item.tit }}
{{ item.name }}
@@ -340,11 +340,6 @@ display: flex; align-items: center; justify-content: space-between; - background: linear-gradient( - 0deg, - rgba(78, 166, 255, 0) 0%, - rgba(78, 166, 255, 0.2) 100% - ); " >
@@ -845,6 +840,8 @@ export default { cC: false, cancelModal: false, //确认取消阶段弹窗 deleteModal: false, //确认删除弹窗 + isactive: -1, + isActive:false, }); const selectProjectName = (value, index) => { console.log("value", value, index); @@ -1066,6 +1063,10 @@ export default { const closeDelete = () => { state.deleteModal = false; }; + const changebgc = (index) => { + state.isactive = index; + state.isActive = !state.isActive; + } return { ...toRefs(state), selectProjectName, @@ -1095,6 +1096,7 @@ export default { closeCancel, showDelete, closeDelete, + changebgc, }; }, }; @@ -1222,6 +1224,13 @@ export default { .ant-modal { .ant-modal-body { padding: 0 !important; + .modalHeader { + background: linear-gradient( + 0deg, + rgba(78, 166, 255, 0) 0%, + rgba(78, 166, 255, 0.2) 100% + ); + } .modalMain { .ant-input-textarea-show-count { position: relative; @@ -1518,6 +1527,10 @@ export default { right: 16px; } } + .bgcactive{ + opacity:1; + transition:all .5s; + } } } } diff --git a/src/views/projectcenter/TaskPage.vue b/src/views/projectcenter/TaskPage.vue index 2470c57a..d63b9397 100644 --- a/src/views/projectcenter/TaskPage.vue +++ b/src/views/projectcenter/TaskPage.vue @@ -56,6 +56,7 @@
@@ -74,6 +75,7 @@
@@ -214,13 +216,13 @@
任务大纲
- +
-
@@ -429,7 +436,7 @@ 创建任务
点击创建项目任务
-
+
@@ -451,7 +458,7 @@ " >
姓名:
- +
小组名称:
@@ -477,7 +484,7 @@ >
部门:
@@ -490,7 +497,7 @@ >
学员:
@@ -551,6 +558,9 @@ onChange: onSelectChange, }" /> +
+
+
小组名称:
@@ -1024,7 +1034,7 @@ - + @@ -1152,7 +1162,7 @@
小组名称:
@@ -1168,7 +1178,7 @@
小组长:
@@ -1190,12 +1200,13 @@ :closable="close" wrapClassName="canclestu" centered="true" + @cancel="closeModal1" >
-
+
提示
@@ -1214,6 +1225,38 @@
+ +
+ +
+
+
+
+
+ 提示 +
+
+ 您是否取消此学员优学员称号? +
+
+
+
取消
+
+
+
确定
+
+
+
+
+
+
+
@@ -1501,6 +1545,62 @@
+ + +
+
+
+
+
+ 直播管理 +
+
+
+
+
+
+
下载二维码
+
200*200
+
400*400
+
800*800
+
+
+
+
+ + +
+
+
+
+
+ 活动管理 +
+
+
+
+
+
+
下载二维码
+
200*200
+
400*400
+
800*800
+
+
+
+