Ver código fonte

新增需求

fengxu 1 ano atrás
pai
commit
e27164195d
2 arquivos alterados com 244 adições e 122 exclusões
  1. 240 119
      cokingCoal/js/humanResources.js
  2. 4 3
      cokingCoal/js/request.js

+ 240 - 119
cokingCoal/js/humanResources.js

@@ -121,16 +121,16 @@ let app = new Vue({
                 headerHeight: 55,
                 rowNum: 5,
                 data: [
-                    ["<span class='yellow'>01</span>", "<span class='yellow'>西山煤电</span>", "<span class='yellow'>30个</span>"],
-                    ["<span class='red'>02</span>", "<span class='red'>山煤国际</span>", "<span class='red'>25个</span>"],
-                    ["<span class='green'>03</span>", "<span class='green'>汾西矿业</span>", "<span class='green'>20个</span>"],
-                    ["04", "汾西矿业", "10个"],
-                    ["05", "汾西矿业", "8个"],
-                    ["<span class='yellow'>01</span>", "<span class='yellow'>西山煤电</span>", "<span class='yellow'>30个</span>"],
-                    ["<span class='red'>02</span>", "<span class='red'>山煤国际</span>", "<span class='red'>25个</span>"],
-                    ["<span class='green'>03</span>", "<span class='green'>汾西矿业</span>", "<span class='green'>20个</span>"],
-                    ["06", "汾西矿业", "4个"],
-                    ["07", "山煤国际", "4个"],
+                    // ["<span class='yellow'>01</span>", "<span class='yellow'>西山煤电</span>", "<span class='yellow'>30个</span>"],
+                    // ["<span class='red'>02</span>", "<span class='red'>山煤国际</span>", "<span class='red'>25个</span>"],
+                    // ["<span class='green'>03</span>", "<span class='green'>汾西矿业</span>", "<span class='green'>20个</span>"],
+                    // ["04", "汾西矿业", "10个"],
+                    // ["05", "汾西矿业", "8个"],
+                    // ["<span class='yellow'>01</span>", "<span class='yellow'>西山煤电</span>", "<span class='yellow'>30个</span>"],
+                    // ["<span class='red'>02</span>", "<span class='red'>山煤国际</span>", "<span class='red'>25个</span>"],
+                    // ["<span class='green'>03</span>", "<span class='green'>汾西矿业</span>", "<span class='green'>20个</span>"],
+                    // ["06", "汾西矿业", "4个"],
+                    // ["07", "山煤国际", "4个"],
                 ],
                 align: ["center", "center", "center", "center", "center"],
                 headerBGC: "#69c1ff2d",
@@ -316,6 +316,7 @@ let app = new Vue({
             },
             vitaEcharts: null,
             newList: [],
+            allTimeList: [],
             showMark: false,
             showSelect: false,
             showMonth: false,
@@ -413,7 +414,7 @@ let app = new Vue({
     beforeCreate() {
         // 跳转地址
         let AddUrl = location.protocol + "//" + location.host + "/ierp"
-        // return
+        return
         if (!window.location.search) {
             // alert("链接已失效,请重新打开")
             window.location.href = AddUrl
@@ -442,13 +443,16 @@ let app = new Vue({
         let date = new Date()
         let year = date.getFullYear()
         let month
-        if (date.getMonth() <= 9) {
-            month = "0" + date.getMonth()
+        if (date.getMonth() - 1 < 10) {
+            month = "0" + (date.getMonth() - 1)
+            this.timeList1 = [year + "-" + month, year + "-" + date.getMonth()]
+            this.timeList2 = [year + "-" + month, year + "-" + date.getMonth()]
+
         } else {
             month = date.getMonth()
+            this.timeList1 = [year + "-" + (month - 1), year + "-" + date.getMonth()]
+            this.timeList2 = [year + "-" + (month - 1), year + "-" + date.getMonth()]
         }
-        this.timeList1 = [(year - 1) + "-" + month, year + "-" + month]
-        this.timeList2 = [(year - 1) + "-" + month, year + "-" + month]
 
         this.newList = listToChange(yearList, monthList)
         this.employmentList3.data = employmentList
@@ -545,8 +549,12 @@ let app = new Vue({
                 if (item.flag) {
                     if (index == 0) {
                         that.leftFlag = true
+                        that.timeList2 = [that.allTimeList[1][1], that.allTimeList[1][0]]
+                        that.getPositionAll()
                     } else {
                         that.leftFlag = false
+                        that.timeList2 = [that.allTimeList[0][1], that.allTimeList[0][0]]
+                        that.getRecruitType()
                         setTimeout(() => {
                             let leftChange = that.$refs.leftChange
                             that.initThreeBig(leftChange)
@@ -663,8 +671,12 @@ let app = new Vue({
                                 if (item.flag) {
                                     if (index == 0) {
                                         that.leftFlag = true
+                                        that.timeList2 = [that.allTimeList[1][1], that.allTimeList[1][0]]
+                                        that.getPositionAll()
                                     } else {
                                         that.leftFlag = false
+                                        that.timeList2 = [that.allTimeList[0][1], that.allTimeList[0][0]]
+                                        that.getRecruitType()
                                         setTimeout(() => {
                                             let leftChange = that.$refs.leftChange
                                             that.initThreeBig(leftChange)
@@ -698,8 +710,12 @@ let app = new Vue({
                         if (item.flag) {
                             if (index == 0) {
                                 that.leftFlag = true
+                                that.timeList2 = [that.allTimeList[1][1], that.allTimeList[1][0]]
+                                that.getPositionAll()
                             } else {
                                 that.leftFlag = false
+                                that.timeList2 = [that.allTimeList[0][1], that.allTimeList[0][0]]
+                                that.getRecruitType()
                                 setTimeout(() => {
                                     let leftChange = that.$refs.leftChange
                                     that.initThreeBig(leftChange)
@@ -2166,9 +2182,19 @@ let app = new Vue({
         },
         handleClick(from, type) {
             this.handleMark()
+            let that = this;
             this.from = from
             this.type = type
-            let that = this;
+            this.newList = []
+            if (that.from == "timeList2" && that.leftFlag) {
+                this.newList = that.allTimeList[1]
+            } else if (that.from == "timeList2" && !that.leftFlag) {
+                this.newList = that.allTimeList[0]
+            } else if (that.from == "timeList1") {
+                this.newList = that.allTimeList[2]
+            }
+
+            // let that = this;
             if (from == "timeList1" && type == 1) {
                 that.markStyle = {
                     right: "1%",
@@ -2200,18 +2226,21 @@ let app = new Vue({
             this.showMonth = false
         },
         handleOption(item) {
+            let that = this
             this[this.from][this.type] = item
             this.handleMark()
             if (this.from == "timeList2") {
-                this.getPositionAll()
+                if (that.from == "timeList2" && that.leftFlag) {
+                    this.getPositionAll()
+                } else {
+                    that.getRecruitType()
+                }
             }
             if (this.from == "timeList1") {
                 this.getDelivcvAndApply()
             }
-            console.log(this.from);
         },
         handleMonthOption(item) {
-            console.log(item);
             this.monthItem = item
             this.handleMark()
         },
@@ -2356,8 +2385,14 @@ let app = new Vue({
                 that.leftIndex = index
                 if (index == 0) {
                     that.leftFlag = true
+                    that.timeList2 = [that.allTimeList[1][1], that.allTimeList[1][0]]
+                    that.getPositionAll()
+
                 } else {
                     that.leftFlag = false
+                    that.timeList2 = [that.allTimeList[0][1], that.allTimeList[0][0]]
+                    that.getRecruitType()
+
                     setTimeout(() => {
                         let leftChange = that.$refs.leftChange
                         that.initThreeBig(leftChange)
@@ -2369,8 +2404,12 @@ let app = new Vue({
                         if (item.flag) {
                             if (index == 0) {
                                 that.leftFlag = true
+                                that.timeList2 = [that.allTimeList[1][1], that.allTimeList[1][0]]
+                                that.getPositionAll()
                             } else {
                                 that.leftFlag = false
+                                that.timeList2 = [that.allTimeList[0][1], that.allTimeList[0][0]]
+                                that.getRecruitType()
                                 setTimeout(() => {
                                     let leftChange = that.$refs.leftChange
                                     that.initThreeBig(leftChange)
@@ -2405,75 +2444,77 @@ let app = new Vue({
             fetchPostMethods("/ierp/kapi/v2/mdnb/mdnb_control/PostDetail", data).then(res => {
                 let list = []
                 let a = []
-                if (res.data.length != 0) {
-                    res.data.forEach((item, index) => {
-                        list.push([item[0], item[1], item[2], item[3], item[4]])
-                        a[index] = []
-                        let arr = item[5].split("&")
-                        if (arr[0].length == 2) {
-                            arr.shift()
-                        }
-                        arr.forEach(i => {
-                            let infos = i.split("\r")
-                            let obj = {
-                                title: infos[0],
-                                content: infos[1]
+                if (res) {
+
+                    if (res.data.length != 0) {
+                        res.data.forEach((item, index) => {
+                            list.push([item[0], item[1], item[2], item[3], item[4]])
+                            a[index] = []
+                            let arr = item[5].split("&")
+                            if (arr[0].length == 2) {
+                                arr.shift()
                             }
-                            a[index].push(obj)
+                            arr.forEach(i => {
+                                let infos = i.split("\r")
+                                let obj = {
+                                    title: infos[0],
+                                    content: infos[1]
+                                }
+                                a[index].push(obj)
+                            })
                         })
-                    })
-                    that.config1.data = list
-                    that.recruitInfoList.push(...a)
-                    that.isShowInfoList = true
-                    that.itemClass = "item_content_99"
-                    if (that.config1.data.length <= that.config1.rowNum) {
-                        that.listChange = setInterval(() => {
-                            // that.configDataIndex
-                            if (that.configDataIndex >= that.config1.data.length) {
-                                that.configDataIndex = 1
-                                that.itemClass = "item_content_99"
-                                that.funChangeList(0)
-                                that.recruitInfoIndex = 0
-                                return
-                            }
-                            that.itemClass = "item_content_" + (that.configDataIndex + 5)
-                            that.funChangeList(that.configDataIndex)
-                            that.recruitInfoIndex = that.configDataIndex
-                            that.configDataIndex += 1
-                        }, that.config1.waitTime)
-                    } else {
-                        setTimeout(() => {
-                            // that.classChange = true
-                            that.itemClass = "item_content_6"
-                            setTimeout(() => {
-                                let itemContent = document.getElementById("itemContent")
-                                if (itemContent) {
-                                    let target = itemContent.getElementsByClassName("row-item")
-                                    let targetList = target.item(0)
-                                    targetList.style.background = "#302e2d50"
-                                    targetList.style.color = "#E1AF27"
+                        that.config1.data = list
+                        that.recruitInfoList.push(...a)
+                        that.isShowInfoList = true
+                        that.itemClass = "item_content_99"
+                        if (that.config1.data.length <= that.config1.rowNum) {
+                            that.listChange = setInterval(() => {
+                                // that.configDataIndex
+                                if (that.configDataIndex >= that.config1.data.length) {
+                                    that.configDataIndex = 1
+                                    that.itemClass = "item_content_99"
+                                    that.funChangeList(0)
+                                    that.recruitInfoIndex = 0
+                                    return
                                 }
+                                that.itemClass = "item_content_" + (that.configDataIndex + 5)
+                                that.funChangeList(that.configDataIndex)
+                                that.recruitInfoIndex = that.configDataIndex
+                                that.configDataIndex += 1
+                            }, that.config1.waitTime)
+                        } else {
+                            setTimeout(() => {
+                                // that.classChange = true
+                                that.itemClass = "item_content_6"
+                                setTimeout(() => {
+                                    let itemContent = document.getElementById("itemContent")
+                                    if (itemContent) {
+                                        let target = itemContent.getElementsByClassName("row-item")
+                                        let targetList = target.item(0)
+                                        targetList.style.background = "#302e2d50"
+                                        targetList.style.color = "#E1AF27"
+                                    }
 
-                            }, 0)
-                        }, 5000);
-                    }
-                    that.funChangeList(0)
-                    // console.log(that.recruitInfoList);
-
-                } else {
-                    that.config1.data = list
-                    that.itemClass = "item_content_6"
-                    that.listChange && clearInterval(that.listChange)
-                    setTimeout(() => {
-                        let itemContent = document.getElementById("itemContent")
-                        if (itemContent) {
-                            let target = itemContent.getElementsByClassName("row-item")
-                            let targetList = target.item(0)
-                            targetList.style.background = "#302e2d50"
-                            targetList.style.color = "#E1AF27"
+                                }, 0)
+                            }, 5000);
                         }
+                        that.funChangeList(0)
+
+                    } else {
+                        that.config1.data = list
+                        that.itemClass = "item_content_6"
+                        that.listChange && clearInterval(that.listChange)
+                        setTimeout(() => {
+                            let itemContent = document.getElementById("itemContent")
+                            if (itemContent) {
+                                let target = itemContent.getElementsByClassName("row-item")
+                                let targetList = target.item(0)
+                                targetList.style.background = "#302e2d50"
+                                targetList.style.color = "#E1AF27"
+                            }
 
-                    }, 0)
+                        }, 0)
+                    }
                 }
                 setTimeout(() => {
                     that.isShowInfoList = true
@@ -2545,29 +2586,31 @@ let app = new Vue({
                 let stationList = []
                 let timeList = []
                 let dataList = []
-                res.data.forEach(item => {
-                    if (item.key == "头像地址") {
-                        imageList.push(...item.value)
-                    }
-                    if (item.key == "姓名") {
-                        nameList.push(...item.value)
-                    }
-                    if (item.key == "投递岗位") {
-                        stationList.push(...item.value)
-                    }
-                    if (item.key == "申请时间") {
-                        timeList.push(...item.value)
-                    }
-                })
-                nameList.forEach((item, index) => {
-                    dataList.push(["<img class='list_img' src='" + imageList[index] + "' alt=''>", item, stationList[index], timeList[index]])
-                })
-                this.configMark.data = dataList
-                this.isChangeList = true
-                delete imageList
-                delete nameList
-                delete stationList
-                delete timeList
+                if (res) {
+                    res.data.forEach(item => {
+                        if (item.key == "头像地址") {
+                            imageList.push(...item.value)
+                        }
+                        if (item.key == "姓名") {
+                            nameList.push(...item.value)
+                        }
+                        if (item.key == "投递岗位") {
+                            stationList.push(...item.value)
+                        }
+                        if (item.key == "申请时间") {
+                            timeList.push(...item.value)
+                        }
+                    })
+                    nameList.forEach((item, index) => {
+                        dataList.push(["<img class='list_img' src='" + imageList[index] + "' alt=''>", item, stationList[index], timeList[index]])
+                    })
+                    this.configMark.data = dataList
+                    this.isChangeList = true
+                    delete imageList
+                    delete nameList
+                    delete stationList
+                    delete timeList
+                }
             })
 
         },
@@ -2596,10 +2639,12 @@ let app = new Vue({
                         if (item.key == "录用人数") {
                             admissionList.y3 = item.value
                         }
+                        if (item.key == "开始时间") {
+                            that.allTimeList[2] = that.getYearMonth(item.value)
+                        }
                     })
-
+                    this.initDownholeEcharts(pageBtm, { x: admissionList.x, y1: admissionList.y1, y2: admissionList.y2, y3: admissionList.y3 })
                 }
-                this.initDownholeEcharts(pageBtm, { x: admissionList.x, y1: admissionList.y1, y2: admissionList.y2, y3: admissionList.y3 })
 
             })
         },
@@ -2624,24 +2669,85 @@ let app = new Vue({
         getRecruitType() {
             let that = this;
             let data = {
-                flag: that.dataFlag
+                flag: that.dataFlag,
+                start: that.timeList2[0],
+                end: that.timeList2[1],
             }
             that.recruitTypeList = []
             fetchPostMethods("/ierp/kapi/v2/mdnb/mdnb_control/RecruitType", data).then(res => {
                 if (res) {
                     res.data.forEach(item => {
-                        if(item.key == "一线"){
+                        if (item.key == "一线") {
                             that.recruitTypeList[2] = item.value
-                        } else if(item.key == "地面"){
+                            that.recruitTypeMax += item.value
+
+                        } else if (item.key == "地面") {
                             that.recruitTypeList[0] = item.value
-                        } else if(item.key == "辅助"){
+                            that.recruitTypeMax += item.value
+
+                        } else if (item.key == "辅助") {
                             that.recruitTypeList[1] = item.value
+                            that.recruitTypeMax += item.value
+                        } else if (item.key == "开始时间") {
+                            that.allTimeList[0] = that.getYearMonth(item.value)
                         }
-                        that.recruitTypeMax += item.value
                     })
+                    let leftChange = that.$refs.leftChange
+                    that.initThreeBig(leftChange)
+
+                    that.leftTime && clearInterval(that.leftTime)
+                    that.leftTime = setInterval(() => {
+                        that.leftList.forEach((item, index) => {
+                            item.flag = !item.flag
+                            if (item.flag) {
+                                if (index == 0) {
+                                    that.leftFlag = true
+                                    that.timeList2 = [that.allTimeList[1][1], that.allTimeList[1][0]]
+                                    that.getPositionAll()
+                                } else {
+                                    that.leftFlag = false
+                                    that.timeList2 = [that.allTimeList[0][1], that.allTimeList[0][0]]
+                                    that.getRecruitType()
+                                    setTimeout(() => {
+                                        let leftChange = that.$refs.leftChange
+                                        that.initThreeBig(leftChange)
+                                    })
+                                }
+                            }
+                        })
+                    }, 15000)
                 }
             })
         },
+        getYearMonth(date) {
+            // 获取指定日期的年份和月份
+            let targetDate = new Date(date);
+            let targetYear = targetDate.getFullYear();
+            let targetMonth = targetDate.getMonth() + 1; // 月份从0开始计数,需要加1
+
+            // 获取当前日期的年份和月份
+            let currentDate = new Date();
+            let currentYear = currentDate.getFullYear();
+            let currentMonth = currentDate.getMonth() + 1; // 月份从0开始计数,需要加1
+
+            // 定义结果数组
+            let result = [];
+
+            // 循环遍历年份和月份,从目标日期到当前日期
+            for (let year = targetYear; year <= currentYear; year++) {
+                // 起始月份为目标年份的起始月份,结束月份为当前年份的结束月份
+                let startMonth = (year === targetYear) ? targetMonth : 1;
+                let endMonth = (year === currentYear) ? currentMonth : 12;
+
+                // 循环遍历月份,并将年份和月份添加到结果中
+                for (let month = startMonth; month <= endMonth; month++) {
+                    let formattedMonth = month.toString().padStart(2, '0'); // 格式化为两位数的月份
+                    result.push(`${year}-${formattedMonth}`);
+                }
+            }
+            // 输出全部的年月
+            return result.reverse()
+        },
         getFailReason() {
             let that = this;
             let data = {
@@ -2958,14 +3064,18 @@ let app = new Vue({
                 start: that.timeList2[0],
                 end: that.timeList2[1],
             }
-            this.leftTime && clearInterval(this.leftTime)
-            that.leftFlag = false
-            that.config2.data = []
-            let lastList = []
-            let topList = []
-            let mainList = []
+            // this.leftTime && clearInterval(this.leftTime)
+
             fetchPostMethods("/ierp/kapi/v2/mdnb/mdnb_control/PositionAll", data).then(res => {
+                that.leftFlag = false
+                that.config2.data = []
+                let lastList = []
+                let topList = []
+                let mainList = []
                 if (res) {
+                    if (res.date) {
+                        that.allTimeList[1] = that.getYearMonth(res.date.value)
+                    }
                     res.data.forEach((item, index) => {
                         if (index <= 8) {
                             item.unshift("0" + (index + 1))
@@ -2987,10 +3097,15 @@ let app = new Vue({
                         }
                         res.data.splice(0, 3)
                         mainList.push(...spArr(res.data, 2))
+
                         mainList.forEach(item => {
                             item.unshift(...topList)
+                            if (item.length < 5) {
+                                item.push(["", "", ""])
+                            }
                             lastList.push(...item)
                         })
+
                     } else if (res.data.length <= 5 && res.data.length >= 3) {
                         for (let i = 0; i < 3; i++) {
                             let color;
@@ -3018,8 +3133,10 @@ let app = new Vue({
                             lastList.push(["<span class='" + color + "'>" + res.data[i][0] + "</span>", "<span class='" + color + "'>" + res.data[i][1] + "</span>", "<span class='" + color + "'>" + res.data[i][2] + "</span>"])
                         }
                     }
+
                     that.config2.data = lastList
-                    setTimeout(() => {
+                    that.leftTime && clearInterval(that.leftTime)
+                    that.leftTime = setTimeout(() => {
                         that.leftFlag = true
                         that.leftTime = setInterval(() => {
                             that.leftList.forEach((item, index) => {
@@ -3027,8 +3144,12 @@ let app = new Vue({
                                 if (item.flag) {
                                     if (index == 0) {
                                         that.leftFlag = true
+                                        that.timeList2 = [that.allTimeList[1][1], that.allTimeList[1][0]]
+                                        that.getPositionAll()
                                     } else {
                                         that.leftFlag = false
+                                        that.timeList2 = [that.allTimeList[0][1], that.allTimeList[0][0]]
+                                        that.getRecruitType()
                                         setTimeout(() => {
                                             let leftChange = that.$refs.leftChange
                                             that.initThreeBig(leftChange)

+ 4 - 3
cokingCoal/js/request.js

@@ -13,16 +13,17 @@ function isLocalEnv() {
 }
 
 
-window.apiType = "sit"  // dev 本地测试 ,  sit  线上测试  uat  客户测试环境 prod  正式环境
+window.apiType = "uat"  // dev 本地测试 ,  sit  线上测试  uat  客户测试环境 prod  正式环境
 // if(window.location.search){
 //   apiType = window.location.search.split("=")[1]
 // }
 window.fetchUrl = ""
 // window.fetchUrl = "http://172.21.9.236:8081"
-window.user = "18035133443"
+window.user = "18335173447"
+// window.user = "18035133443"
 
 if (window.apiType == "dev") {
-  window.fetchUrl = "http://192.168.1.11:8080"
+  window.fetchUrl = "http://192.168.1.12:8080"
 } else if (window.apiType == "sit") {
   window.fetchUrl = "http://172.21.9.236:8081"
 } else if (window.apiType == "uat") {