ソースを参照

Merge branch 'master' of http://47.100.37.243:10080/wutt/manHourHousekeeper into master

seyason 2 年 前
コミット
a10715faf6

+ 36 - 3
fhKeeper/formulahousekeeper/inva_4_tivo/css/projectt.css

@@ -362,7 +362,13 @@ html {font-size: 10px; -webkit-text-size-adjust:none; -webkit-tap-highlight-colo
     position: absolute;
     top: -3.75rem;
     left: 2.1875rem;
-    background: red;
+    /* background: red; */
+    overflow: hidden;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    background: #fff;
+    border: 1px solid #bdbdbd;
 }
 .userEvaluationRightConTex {
 
@@ -370,11 +376,11 @@ html {font-size: 10px; -webkit-text-size-adjust:none; -webkit-tap-highlight-colo
 .userEvaluationRightConTex p{
     font-size: 1.75rem;
     color: #333;
-    margin-top: 5rem;
+    margin-top: 3.75rem;
     margin-bottom: 1.125rem;
 }
 .userEvaluationRightConTex span {
-    font-size: 1rem;
+    font-size: .875rem;
     color: #666666;
     line-height: 1.5625rem;
 }
@@ -382,6 +388,33 @@ html {font-size: 10px; -webkit-text-size-adjust:none; -webkit-tap-highlight-colo
     width: 46.25rem;
 }
 
+.kehusab {
+    width: 10rem;
+    padding: -2.5rem 0 0 0;
+    display: flex;
+    justify-content: space-between;
+    margin-top: -60px;
+    margin-bottom: 40px;
+}
+.kehuLefts, .kehuRights {
+    width: 3.75rem;
+    height: 3.75rem;
+    border-radius: 50%;
+    background: #fff;
+    text-align: center;
+    line-height: 4.375rem;
+    display: inline-block;
+    position: relative;
+    cursor:pointer;
+}
+.kehusab img {
+    width: 1.25rem;
+    height: 1.25rem;
+}
+.kehusab .zhis {
+    cursor: not-allowed !important;
+}
+
 /* 产品定价 */
 .pricings {
     width: 100%;

BIN
fhKeeper/formulahousekeeper/inva_4_tivo/image/ions/jingyi.png


+ 13 - 14
fhKeeper/formulahousekeeper/inva_4_tivo/js/index.js

@@ -58,7 +58,7 @@ if(document.documentElement.clientWidth < 1900) {
 $(window).scroll(function () {
     // 当前滚动的高度
     let currentTop = $(window).scrollTop()
-    if(currentTop < 2) {
+    if(currentTop < 2) { 
         $('#all').removeClass('hanAll')
         $('#abc').addClass('abc')
         $("#loGo").attr("src", './image/logo.png')
@@ -170,33 +170,32 @@ $('#consulting').hover(function () {
 })
 
 let nums = 0
+let mobiledistance = 0
 // 客户点击
 $(function() {
     kehuFlg()
     $('#kehuLeft').click(function() {
-        if(nums > 0 ) {
+        if(nums > 0 && nums <= 5) {
             nums--
-            let conImgLeft = $('.conImg').css('left')
-            let num = conImgLeft.replace("px","");
-            $('.conImg').stop(true,false).animate({
-                'left': (+num + 510) + 'px'
-            }, 400)
-            kehuFlg()
+            zuoyouClick()
         }
     })
     $('#kehuRight').click(function() {
         if(nums < 5) {
             nums++
-            let conImgLeft = $('.conImg').css('left')
-            let num = conImgLeft.replace("px","");
-            $('.conImg').stop(true,false).animate({
-                'left': (+num - 510) + 'px'
-            }, 400)
-            kehuFlg()
+            zuoyouClick()
         }
     })
 })
 
+function zuoyouClick() {
+    mobiledistance = '-' + (nums * 510) + 'px'
+    $('.conImg').stop(true,false).animate({
+        'left': mobiledistance
+    }, 400)
+    kehuFlg()
+}
+
 function kehuFlg() {
     if(nums == 0) {
         $('#kehuLeft').find('img').attr("src", './image/ions/zuos.png')

+ 47 - 1
fhKeeper/formulahousekeeper/inva_4_tivo/js/project.js

@@ -81,4 +81,50 @@ $('#product').hover(function () {
 },function () {
     fls = true
     $("#product").hide()
-})
+})
+
+// 用户评价点击事件
+let numberClick = 0
+// 移动的距离
+let mobiledistance = 0
+$(function() {
+    kehuFlg()
+    $('#kehuRight').click(function() {
+        if(numberClick < 4) {
+            numberClick++
+            zuoyouClick()
+        }
+    })
+    $('#kehuLeft').click(function() {
+        if(numberClick > 0 && numberClick <= 4) {
+            numberClick--
+            zuoyouClick()
+        }
+    })
+})
+
+function zuoyouClick() {
+    console.log(numberClick)
+    mobiledistance = '-' + (numberClick * 396) + 'px'
+    $('.userEvaluationRight').stop(true,false).animate({
+        'left': mobiledistance
+    }, 400)
+    kehuFlg()
+}
+
+function kehuFlg() {
+    if(numberClick == 0) {
+        $('#kehuLeft').find('img').attr("src", './image/ions/zuos.png')
+        $('#kehuLeft').addClass("zhis")
+    } else {
+        $('#kehuLeft').find('img').attr("src", './image/ions/zuo.png')
+        $('#kehuLeft').removeClass("zhis")
+    }
+    if(numberClick >= 4) {
+        $('#kehuRight').find('img').attr("src", './image/ions/yous.png')
+        $('#kehuRight').addClass("zhis")
+    } else {
+        $('#kehuRight').find('img').attr("src", './image/ions/you.png')
+        $('#kehuRight').removeClass("zhis")
+    }
+} 

+ 46 - 19
fhKeeper/formulahousekeeper/inva_4_tivo/project.html

@@ -6,6 +6,7 @@
     <meta name="keywords" content="工时管理,项目工时管理,项目成本管理,工时统计,项目成本统计,工时记录表,工时统计表" />
     <meta name="description" content="工时管家是专业的工时管理和项目管理软件。提供工时填报,审核和工时统计功能。引进现代工时管理和项目管理的理念,核算项目投入成本准确便捷,企业IPO项目成本分摊好帮手"/>
     <title>工时管理|工时记录表|项目成本管理-工时管家是强大易用的项目工时管理系统。工时填报|工时统计|手机移动填报|核算项目成本|企业IPO利器!</title>
+    <link rel="icon" href="image/favicon.png">
     <link rel="stylesheet" href="css/tongyong.css">
     <link rel="stylesheet" href="css/reset.css">
     <link rel="stylesheet" href="css/projectt.css">
@@ -236,39 +237,65 @@
                 <div>Read more</div>
             </div>
             <div class="inBlock userKongz">
-                <div class="userEvaluationRight">
+                <div class="userEvaluationRight" style="left: 0px;">
                     <div class="userEvaluationRightCon">
-                        <div class="userEvaluationRightConIMg"></div>
+                        <div class="userEvaluationRightConIMg">
+                            <img src="./image/ions/xinchun.png" alt="" style="width: 50%;height: 50%">
+                        </div>
+                        <div class="userEvaluationRightConTex">
+                            <p>财务总监</p>
+                            <span>在项目管理的软件上,我们做过多种尝试<br/>
+                                在经历「自研产品」之后,我们选择了项目管家<br/>
+                                其核心功能:项目管理、项目预算、费用报销、项目工时管理、满足公司的实际需求。<br/>
+                                操作简单、易用、且速度快</span>
+                        </div>
+                    </div>
+                    <div class="userEvaluationRightCon">
+                        <div class="userEvaluationRightConIMg">
+                            <img src="./image/ions/haotian.png" alt="" style="width: 50%;height: 50%">
+                        </div>
+                        <div class="userEvaluationRightConTex">
+                            <p>闫经理</p>
+                            <span>一个项目管理的好坏更多体现在项目经理的管理水平
+                                但是优秀的项目管理工具是提高项目经理管理效率的法宝
+                                项目帮助我们将时间和精力更多的放在任务本身
+                                能够熟练的使用项目管理工具能够极大的方便我们的工作</span>
+                        </div>
+                    </div>
+                    <div class="userEvaluationRightCon">
+                        <div class="userEvaluationRightConIMg">
+                            <img src="./image/ions/tanggu.png" alt="" style="width: 50%;height: 50%">
+                        </div>
                         <div class="userEvaluationRightConTex">
-                            <p>Multi-casting</p>
-                            <span>Media, a company specializing in <br/>
-                                digital advertising business, expressed <br/>
-                                the desire to lead the paradigm shift <br/>
-                                of the advertisement market</span>
+                            <p>总经理</p>
+                            <span>项目管理平台软件可以同时处理许多个项目的信息并妥善进行管理,这让企业项目的运营不至于忙中出错,简洁明了的操作界面让学习的门槛大为降低,同时内置的记录、提醒、数据可视化等功能也能帮助管理者更好地推动项目的运作,对于保障企业项目运行会有很大的帮助。</span>
                         </div>
                     </div>
                     <div class="userEvaluationRightCon">
-                        <div class="userEvaluationRightConIMg"></div>
+                        <div class="userEvaluationRightConIMg">
+                            <img src="./image/ions/chengdu.png" alt="" style="width: 50%;height: 50%">
+                        </div>
                         <div class="userEvaluationRightConTex">
-                            <p>Multi-casting</p>
-                            <span>Media, a company specializing in <br/>
-                                digital advertising business, expressed <br/>
-                                the desire to lead the paradigm shift <br/>
-                                of the advertisement market</span>
+                            <p>项目主管</p>
+                            <span>项目管理软件最方便的地方就在于可以电脑和手机端,这样在同步起来是非常的方便的,保证了血统的办公,同时在支持项目相关文件的上传,也可以防止文件的丢失。</span>
                         </div>
                     </div>
                     <div class="userEvaluationRightCon">
-                        <div class="userEvaluationRightConIMg"></div>
+                        <div class="userEvaluationRightConIMg">
+                            <img src="./image/ions/jingyi.png" alt="" style="width: 50%;height: 50%">
+                        </div>
                         <div class="userEvaluationRightConTex">
-                            <p>Multi-casting</p>
-                            <span>Media, a company specializing in <br/>
-                                digital advertising business, expressed <br/>
-                                the desire to lead the paradigm shift <br/>
-                                of the advertisement market</span>
+                            <p>王经理</p>
+                            <span>项目管理软件可以展现强大的项目的管理的功能,其中团队的个人的任务的进展的具体的情况是可以同步的,可以不用一个一个的去工作的进度,还有目标的完成的具体的情况</span>
                         </div>
                     </div>
                 </div>
             </div>
+            <!-- 左右箭头 -->
+            <div class="kehusab">
+                <div class="kehuLefts" id="kehuLeft"><img src="./image/ions/zuo.png" alt=""></div>
+                <div class="kehuRights" id="kehuRight"><img src="./image/ions/you.png" alt=""></div>
+            </div>
         </div>
     </div>
     

+ 5 - 1
fhKeeper/formulahousekeeper/timesheet/src/views/corpreport/list.vue

@@ -103,7 +103,7 @@
           </el-select>
 
           <!-- 待审核筛选切换 -->
-          <el-radio-group v-model="stateKey" size="small" v-if="ins == 10 && user.timeType.reportWorkflow == 1" style="margin-left:10px;margin-top:-3.33px" @change="getAuditRateList">
+          <el-radio-group v-model="stateKey" size="small" v-if="ins == 10 && user.timeType.reportWorkflow == 1" style="margin-left:10px;margin-top:-3.33px" @change="stateKeySel">
             <el-radio-button :label="1">项目待审核</el-radio-button>
             <el-radio-button :label="0">部门待审核</el-radio-button>
           </el-radio-group>
@@ -1203,6 +1203,10 @@ export default {
       this.selUserList = this.userList
       this.getList();
     },
+    stateKeySel(){
+      this.page = 1
+      this.getAuditRateList()
+    },
     // 获取人员工时统计表
     getPersonnelList() {
       let parameter = {

+ 57 - 3
fhKeeper/formulahousekeeper/timesheet/src/views/project/cost.vue

@@ -76,6 +76,12 @@
                     </el-select>
                 </el-form-item>
 
+                <el-form-item label="部门选择" v-if="radio == '项目'">
+                    <el-cascader v-model="exportParam.deptId" :options="departmentList" placeholder="请选择部门"
+                        :props="{ checkStrictly: true, expandTrigger: 'hover' }" clearable filterable style="width:350px;"
+                    ></el-cascader>
+                </el-form-item>
+
                 <el-form-item prop="projectCategoryId" label="项目分类" v-if="radio == '项目分类'">
                     <el-select v-model="exportParam.projectCategoryId" placeholder="全部项目分类"  clearable style="width:350px;" filterable="true">
                         <el-option v-for="item in categoryList"  :key="item.id" :label="item.name" :value="item.id">
@@ -131,6 +137,7 @@
                 <el-form-item v-if="(radio == '项目' || radio == '部门' || radio == '项目分类') && exportParam.type == '0'">
                     <el-checkbox v-model="exportParam.projectSum" >含单个项目数据汇总</el-checkbox>
                 </el-form-item>
+
             </el-form>
             <div slot="footer" class="dialog-footer">
                 <el-button type="primary" @click="exportProjectData" style="width:100%;" >导出</el-button>
@@ -174,7 +181,8 @@
                 theCustomListPlant: '',
                 customId: '',
                 customName: '',
-                customList: []
+                customList: [],
+                departmentList: []
             };
         },
         methods: {
@@ -242,6 +250,9 @@
                 if (this.radio == '人员') {
                     // this.exportParam.userIds = [];
                 }
+                if (this.radio == '项目') {
+                    this.exportParam.deptId = []
+                }
             },
             //获取我的项目列表
             getMyProjectList() {
@@ -259,7 +270,7 @@
                 },
                 error => {
                     this.$message({
-                        message: error,
+                        message: error, 
                         type: "error"
                     });
                 });
@@ -321,6 +332,11 @@
                     param.customId = this.theCustomListId
                     param.fieldName = this.theCustomListPlant
                 }
+                if(this.exportParam.deptId) {
+                    if(this.exportParam.deptId.length > 0) {
+                        param.deptId = this.exportParam.deptId[this.exportParam.deptId.length - 1]
+                    }
+                }
                 this.http.post(url, param,
                     res => {
                         this.listLoading = false;
@@ -1163,7 +1179,44 @@
                         type: 'error'
                     })
                 })
-            }
+            },
+            // 获取部门
+            getDepartmentList() {
+                this.http.post( this.port.manage.depList, {},
+                    res => {
+                    if (res.code == "ok") {
+                        let dptlist = JSON.parse(JSON.stringify(res.data));
+                        this.departmentList = this.changeArr(dptlist);
+                    } else {
+                        this.$message({
+                            message: res.msg,
+                            type: "error"
+                        });
+                    }
+                    },error => {
+                    this.$message({
+                        message: error,
+                        type: "error"
+                    });
+                });
+            },
+            changeArr(arr) {
+                for (var i = 0; i < arr.length; i++) {
+                    if(arr[i].id != -1 && arr[i].id != 0) {
+                        if (arr[i].children != null && arr[i].children.length>0) {
+                            arr[i].children = this.changeArr(arr[i].children);
+                        }
+                        arr[i].id && (arr[i].value = arr[i].id);
+                        delete arr[i].id;
+                    }
+                }
+                for(var i in arr) {
+                    if(arr[i].id == -1 || arr[i].id == 0) {
+                        arr.splice(i,1)
+                    }    
+                }
+                return arr;
+            },
         },
         created() {
             this.myChart = null
@@ -1217,6 +1270,7 @@
             if(this.user.timeType.userCustomStatic) {
                 this.getZDY()
             }
+            this.getDepartmentList()
         },
         beforeDestroy () {
             var myChart = echarts.init(document.getElementById("container"));

+ 1 - 2
fhKeeper/formulahousekeeper/timesheet/src/views/project/gantt.vue

@@ -191,8 +191,7 @@ export default {
     gantt.ext.tooltips.attach({
       selector: '.gantt_grid [' + gantt.config.task_attribute + ']',
       onmouseenter: (event,node) => {
-        if(node.innerText.lenght > 19){
-          console.log('onmouseenter',event,node);
+        if(node.textContent.length > 19){
           let sdom = document.createElement('span')
           sdom.innerText = node.innerText
           sdom.className = 'tooltiptext'

+ 1 - 1
fhKeeper/formulahousekeeper/timesheet/src/views/project/info.vue

@@ -293,7 +293,7 @@
 
                 <el-form-item label="所属部门" v-if="user.timeType.projectWithDept">
                     <el-cascader v-model="addForm.deptId" :options="departmentList" placeholder="请选择部门"
-                        :props="{ checkStrictly: true }" clearable filterable @change="cascaderChange"
+                        :props="{ checkStrictly: true, expandTrigger: 'hover' }" clearable filterable @change="cascaderChange"
                     ></el-cascader>
                 </el-form-item>
 

+ 2 - 2
fhKeeper/formulahousekeeper/timesheet/src/views/project/list.vue

@@ -47,7 +47,7 @@
                 <el-form-item v-if="user.timeType.projectWithDept">
                     <span style="margin-left:5px;margin-right:5px;color:#606266;">部门</span>
                     <el-cascader v-model="deptId" :options="departmentList" placeholder="请选择部门"
-                        :props="{ checkStrictly: true }" :show-all-levels="false" clearable filterable @change="searchClfList" size="small"
+                        :props="{ checkStrictly: true, expandTrigger: 'hover' }" :show-all-levels="false" clearable filterable @change="searchClfList" size="small"
                     ></el-cascader>
                 </el-form-item>
                 
@@ -387,7 +387,7 @@
 
                 <el-form-item label="所属部门" v-if="user.timeType.projectWithDept">
                     <el-cascader v-model="addForm.deptId" :options="departmentList" placeholder="请选择部门"
-                        :props="{ checkStrictly: true }" clearable filterable @change="cascaderChange" style="width: 100%"
+                        :props="{ checkStrictly: true, expandTrigger: 'hover' }" clearable filterable @change="cascaderChange" style="width: 100%"
                     ></el-cascader>
                 </el-form-item>
 

+ 1 - 1
fhKeeper/formulahousekeeper/timesheet/src/views/task/list.vue

@@ -29,7 +29,7 @@
                 <el-form-item label="所属部门" v-if="user.timeType.projectWithDept">
                     <!-- <span style="margin-left:5px;margin-right:5px;color:#606266;">部门</span> -->
                     <el-cascader v-model="deptId" :options="departmentList" placeholder="请选择部门"
-                        :props="{ checkStrictly: true }" :show-all-levels="false" clearable filterable @change="hiddens"
+                        :props="{ checkStrictly: true, expandTrigger: 'hover' }" :show-all-levels="false" clearable filterable @change="hiddens"
                     ></el-cascader>
                 </el-form-item>
 

+ 1 - 1
fhKeeper/formulahousekeeper/timesheet_h5/src/views/edit/index.vue

@@ -444,7 +444,7 @@
             },
             // 获取项目
             getPeoject() {
-                this.$axios.post("/project/getProjectList", {})
+                this.$axios.post("/project/getProjectList", {forReport: 1})
                 .then(res => {
                     if(res.code == "ok") {
                         for(var i in res.data) {