瀏覽代碼

项目商机、报价单调整

qymljy 2 年之前
父節點
當前提交
cdc3aca0d5

+ 4 - 2
src/Form/projectChange/edit.vue

@@ -14,7 +14,7 @@
           <el-form :model="form" :rules="rules" ref="form" label-width="130px" label-position="right" size="mini">
             <el-col :span="12">
               <el-form-item label="项目名称:" prop="projectname">
-                <el-input v-model="form.projectname" placeholder="请输入项目名称"></el-input>
+                <el-input v-model="form.projectname" placeholder="请输入项目名称" :disabled="data.putFlag !== 0"></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="12">
@@ -60,6 +60,7 @@
             <el-col :span="12">
               <el-form-item label="项目地址:" prop="province">
                 <el-cascader
+                    :disabled="data.putFlag !== 0"
                     style="width:100%"
                     v-model="form.province"
                     :options="basicData.data().areaData"
@@ -70,7 +71,7 @@
 
             <el-col :span="12">
               <el-form-item label="详细地址:" prop="address">
-                <el-input v-model="form.address" placeholder="请输入详细地址"></el-input>
+                <el-input v-model="form.address" placeholder="请输入详细地址" :disabled="data.putFlag !== 0"></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="24">
@@ -154,6 +155,7 @@ export default {
     },
     editBtn () {
       this.dialogFormVisible = true
+      console.log(this.data,"res项目商机数据")
       this.form = Object.assign({},this.form,this.data)
       this.form.province = [this.form.province,this.form.city,this.form.county]
       /*this.form.grade = parseInt(this.form.grade)*/

+ 11 - 22
src/HDrpManagement/projectChange/components/putPeople.vue

@@ -1,14 +1,14 @@
 <template>
   <div>
-    <div v-if="flag === 0">
+    <div v-if="flag === 0 && tool.checkAuth($route.name,'putSubmit')" class="inline-16">
       <el-popconfirm
           title="确定进行提交报备操作吗?"
           @confirm="onSubmit"
       >
-        <el-button size="mini"  slot="reference">提交报备</el-button>
+        <el-button  size="mini"  slot="reference">提交报备</el-button>
       </el-popconfirm>
     </div>
-    <div v-else-if="flag === 1">
+    <div v-else-if="flag === 1 && tool.checkAuth($route.name,'putCheck')" class="inline-16">
       <el-popconfirm
           title="确定进行报备审核操作吗?"
           @confirm="onCheck"
@@ -16,12 +16,12 @@
         <el-button size="mini"  slot="reference">报备审核</el-button>
       </el-popconfirm>
     </div>
-    <div v-else-if="flag === 2" >
+    <div v-if="flag !== 0 && tool.checkAuth($route.name,'putBack') " class="inline-16">
       <el-popconfirm
           title="确定进行取消审核操作吗?"
           @confirm="onUnCheck"
       >
-        <el-button size="mini" slot="reference">取消审核</el-button>
+        <el-button size="mini" slot="reference">报备驳回(退回)</el-button>
       </el-popconfirm>
     </div>
 
@@ -56,22 +56,9 @@ export default {
         },
       })
       this.tool.showMessage(res,()=>{
-        this.$emit('putSuccess')
+        this.flag = 1
+        this.$emit('putSuccess',this.flag)
       })
-      /*this.$refs['form'].validate(async (valid) => {
-        if (!valid) return false
-        this.form.sa_projectid = this.rowData.sa_projectid
-        const res = await this.$api.requested({
-          "id": "20221021092302",
-          "version":1,
-          "content": this.form
-        })
-        this.tool.showMessage(res,()=>{
-          this.$emit('onSuccess')
-          this.$refs['form'].resetFields();
-          this.dialogFormVisible = false
-        })
-      })*/
     },
     async onCheck(){
       const res = await this.$api.requested({
@@ -82,7 +69,8 @@ export default {
         },
       })
       this.tool.showMessage(res,()=>{
-        this.$emit('putSuccess')
+        this.flag = 2
+        this.$emit('putSuccess',this.flag)
       })
     },
     async onUnCheck(){
@@ -94,7 +82,8 @@ export default {
         },
       })
       this.tool.showMessage(res,()=>{
-        this.$emit('putSuccess')
+        this.flag = 0
+        this.$emit('putSuccess',this.flag)
       })
     },
     async tagData(){

+ 18 - 5
src/HDrpManagement/projectChange/modules/detail.vue

@@ -16,10 +16,10 @@
 <!--    <tagPanl slot="tags" :data="tagObj" ownertable="sa_project" :id="mainData.sa_projectid" @onSuccess="queryMainData"/>-->
     <div slot="customOperation">
       <!-- 此区域提供了自定义操作按钮 -->
-      <div style="margin-right: 10px" class="inline-16">
+      <div  style="display: inline-block !important;">
         <putPeople
-            @putSuccess="queryMainData"
-            v-if="tool.checkAuth($route.name,'put') && flagTag !== ''"
+            @putSuccess="putSuccess"
+            v-if="flagTag !== ''"
             :rowData="mainData"
             :flagTag="flagTag"
             style="width:100%;"
@@ -33,7 +33,7 @@
             style="width:100%;"
         />
       </div>-->
-      <div style="margin-right: 10px" class="inline-16">
+      <div >
         <Del
             :id="mainData.sa_projectid"
             :nameId="20221020144302"
@@ -106,7 +106,10 @@ export default {
       nowStage:'',
       flagTag:'',
       flag:0,
-      mainData:'',
+      put:{
+        putFlag:0,
+      },
+      mainData: {},
       mainAreaData:'',
       /* 企业列表 */
       enterpriseList:'',
@@ -153,6 +156,7 @@ export default {
             "sa_projectid":this.$route.query.id
         }
       })
+
       this.mainData = res.data
       console.log(this.mainData,"重新刷新数据");
       /* 获取标签数据 */
@@ -198,6 +202,8 @@ export default {
       }
       this.$refs.details.$refs.tag.queryTag()
       console.log(this.flagTag,'报备标签状态')
+      this.put.putFlag = this.flagTag
+      this.mainData = Object.assign({},this.put,this.mainData)
     },
     /*修改项目阶段*/
     async setStage(val){
@@ -416,6 +422,13 @@ export default {
       res.data.forEach(e=>{
         this.totalPrice = this.totalPrice + e.amount
       })
+    },
+    /*报备结果*/
+    putSuccess(val){
+      console.log(val)
+      this.put.putFlag = val
+      this.queryMainData(this.$route.query.id)
+
     }
   },
   mounted () {

+ 28 - 10
src/HManagement/personalTarget/personalTargetStatistics/index.vue

@@ -11,15 +11,10 @@
       <div class="container normal-panel">
         <el-form size="small" inline label-position="right" label-width="50px">
           <el-form-item label="年度:">
-            <el-date-picker
-                class="inline-24"
-                :clearable=false
-                v-model="year"
-                type="year"
-                placeholder="选择年"
-                value-format="yyyy"
-                @change="queryData">
-            </el-date-picker>
+            <el-select placeholder="请选择" class="inline-24" v-model="year" size="small" @change="yearChange"  >
+              <el-option v-for="item in yearData" :key="item.year" :label="item.year" :value="item.year">
+              </el-option>
+            </el-select>
           </el-form-item>
           <el-form-item label="考核指标:"  label-width="80px">
             <el-select placeholder="请选择" class="inline-24" v-model="target" size="small" @change="change"  @clear="$emit('clearTarget')">
@@ -514,6 +509,7 @@ export default {
       tableData:[],
       currentPage:0,
       target:'1',
+      yearData:[],
       options: [
         { label: '开票金额', value: '1' },
         { label: '订单金额', value: '2' },
@@ -569,12 +565,34 @@ export default {
       })
       window.open(res.msg)
     },
+    async yearList(){
+      const res = await this.$api.requested({
+        "classname": "sysmanage.develop.optiontype.optiontype",
+        "method": "optiontypeselect",
+        "content": {
+          "pageNumber": 1,
+          "pageSize": 20,
+          "typename": "targetyearofpersonal",
+          "parameter": {
+            "siteid": "YOSTEST2"
+          }
+        }
+      })
+      this.yearData = res.data
+      console.log(this.yearData,'人员目标年度')
+    },
+    yearChange(data){
+      this.year = data
+      this.queryData()
+    },
     change(data) {
-      this.$emit('targetChange',data)
+      this.param.content.type = data
+      this.queryData()
     }
   },
   mounted () {
     this.queryData()
+    this.yearList()
   }
 }
 

+ 28 - 10
src/HManagement/projectTarget/projectTargetStatistics/index.vue

@@ -11,15 +11,10 @@
       <div class="container normal-panel">
         <el-form size="small" inline label-position="right" label-width="50px" >
           <el-form-item label="年度:">
-            <el-date-picker
-                class="inline-24"
-                :clearable=false
-                v-model="year"
-                type="year"
-                placeholder="选择年"
-                value-format="yyyy"
-                @change="queryData">
-            </el-date-picker>
+            <el-select placeholder="请选择" class="inline-24" v-model="year" size="small" @change="yearChange"  >
+              <el-option v-for="item in yearData" :key="item.year" :label="item.year" :value="item.year">
+              </el-option>
+            </el-select>
           </el-form-item>
           <el-form-item label="考核指标:"  label-width="80px">
             <el-select placeholder="请选择" class="inline-24" v-model="target" size="small" @change="change"  @clear="$emit('clearTarget')">
@@ -527,6 +522,7 @@ export default {
   data () {
     return {
       tableData:[],
+      yearData:[],
       year:String((new Date()).getFullYear()),
       condition:'',
       total:0,
@@ -580,12 +576,34 @@ export default {
       })
       window.open(res.msg)
     },
+    async yearList(){
+      const res = await this.$api.requested({
+        "classname": "sysmanage.develop.optiontype.optiontype",
+        "method": "optiontypeselect",
+        "content": {
+          "pageNumber": 1,
+          "pageSize": 20,
+          "typename": "targetyearofproject",
+          "parameter": {
+            "siteid": "YOSTEST2"
+          }
+        }
+      })
+      this.yearData = res.data
+      console.log(this.yearData,'人员目标年度')
+    },
+    yearChange(data){
+      this.year = data
+      this.queryData()
+    },
     change(data) {
-      this.$emit('targetChange',data)
+      this.param.content.type = data
+      this.queryData()
     }
   },
   mounted () {
     this.queryData()
+    this.yearList()
   }
 }
 

+ 46 - 0
src/SDrpManagement/QuotedPrice/detail/components/deApprove.vue

@@ -0,0 +1,46 @@
+<template>
+  <div>
+    <el-button slot="reference" size="mini" style="width:100%" @click="onShow" type="primary">反 审</el-button>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "deApprove",
+  props:["sa_quotedpriceid"],
+  methods:{
+    onShow() {
+      this.$confirm('此操作将修改报价单的审核状态, 是否继续?', '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning'
+      }).then(() => {
+        this.onCheck()
+      }).catch(() => {
+        this.$message({
+          type: 'info',
+          message: '已取消反审'
+        });
+      });
+    },
+    async onCheck(){
+      const res = await this.$api.requested({
+        "id": 20221020165403,
+        "version":1,
+        "content": {
+          "sa_quotedpriceid":this.sa_quotedpriceid,
+          "ischeck":false
+        }
+      })
+      this.tool.showMessage(res,()=>{
+        console.log(res)
+        this.$emit("onDeApprove")
+      })
+    }
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 2 - 1
src/SDrpManagement/QuotedPrice/detail/components/examineTo.vue

@@ -46,7 +46,8 @@ export default {
         "id": 20221020165403,
         "version":1,
         "content": {
-          "sa_quotedpriceid":this.sa_quotedpriceid
+          "sa_quotedpriceid":this.sa_quotedpriceid,
+          "ischeck":true
         }
       })
       this.tool.showMessage(res,()=>{

+ 4 - 1
src/SDrpManagement/QuotedPrice/detail/index.vue

@@ -23,6 +23,7 @@
         <!-- 此区域提供了自定义操作按钮 -->
         <submit_to class="inline-16" v-if="tool.checkAuth($route.name,'submit') && mainData.status === '新建'" :sa_quotedpriceid="mainData.sa_quotedpriceid" @onSubmit="onSuccess"></submit_to>
         <toVoid class="inline-16" v-if="tool.checkAuth($route.name,'toVoid') && mainData.status === '新建'" :data="mainData.sa_quotedpriceid" ></toVoid>
+        <deApprove class="inline-16" v-if="tool.checkAuth($route.name,'deApprove') && mainData.status === '审核'" :sa_quotedpriceid="mainData.sa_quotedpriceid" @onDeApprove="onSuccess"></deApprove>
         <copyTo class="inline-16" v-if="tool.checkAuth($route.name,'copyTo') && mainData.status === '新建'" :data="mainData.sa_quotedpriceid" ></copyTo>
         <examine_to class="inline-16" v-if="tool.checkAuth($route.name,'toExamine') && mainData.status === '提交'" :sa_quotedpriceid="mainData.sa_quotedpriceid" @onExamine="onSuccess"></examine_to>
       </div>
@@ -51,6 +52,7 @@ import productInventory from './modules/productInventory/index'
 import toVoid from './components/toVoid'
 import historicalQuotation from './modules/historicalQuotation/index'
 import copyTo from "@/SDrpManagement/QuotedPrice/detail/components/copyTo";
+import deApprove from './components/deApprove'
 export default {
   name: "index",
   data(){
@@ -72,7 +74,8 @@ export default {
     productInventory,
     toVoid,
     historicalQuotation,
-    copyTo
+    copyTo,
+    deApprove
   },
   methods:{
     async queryMainData(id){

+ 2 - 2
src/SDrpManagement/QuotedPrice/modules/ProjectQuotationAdd.vue

@@ -571,10 +571,10 @@ export default {
     this.form.type = this.typeData
     if (this.typeData === '项目报价'){
       this.isQuotedPrice = true
-      this.title = '新建项目报价'
+      this.title = '新建项目报价'
     }else {
       this.isQuotedPrice = false
-      this.title = '新建客户报价'
+      this.title = '新建客户报价'
     }
     const date = new Date()
     console.log(date)

+ 23 - 2
src/SManagement/personal_target/index.vue

@@ -8,6 +8,7 @@
         <div class="container normal-panel">
           <select-panel
               :placeholder="placeholder"
+              :yearData="yearData"
               @yearChange="yearChange"
               @targetChange="targetChange"
               @clearTarget="targetClear"
@@ -49,6 +50,7 @@ export default {
   name: '',
   data() {
     return {
+      yearData:[],
       tablecols:'',
       placeholder:'请输入姓名/部门',
       list:'',
@@ -79,8 +81,24 @@ export default {
       this.$router.push('/sm_personalTarget')
       this.$store.dispatch('DrawerShowChange',false)
     },
-    yearChange(time) {
-      this.$refs.table.year = time
+    yearChange(data) {
+      this.$refs.table.year = data
+    },
+    async yearList(){
+      const res = await this.$api.requested({
+        "classname": "sysmanage.develop.optiontype.optiontype",
+        "method": "optiontypeselect",
+        "content": {
+          "pageNumber": 1,
+          "pageSize": 20,
+          "typename": "targetyearofpersonal",
+          "parameter": {
+            "siteid": "YOSTEST2"
+          }
+        }
+      })
+      this.yearData = res.data
+      console.log(this.yearData,'人员目标年度')
     },
     targetChange(data) {
       this.$refs.table.params.content.type = data
@@ -111,6 +129,9 @@ export default {
       })
     }
   },
+  mounted() {
+    this.yearList()
+  }
 };
 </script>
 

+ 16 - 6
src/SManagement/project_target/components/selectPanel.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="select">
-    <div class="year">
+<!--    <div class="year">
       <span class="search__label">年度:</span>
       <el-date-picker 
         v-model="year" 
@@ -10,10 +10,17 @@
         @change="yearChange"
         :clearable="false">
       </el-date-picker>
+    </div>-->
+    <div class="year">
+      <span class="search__label">年度:</span>
+      <el-select placeholder="请选择" v-model="year" size="small" @change="yearChange"  >
+        <el-option v-for="item in yearData" :key="item.year" :label="item.year" :value="item.year">
+        </el-option>
+      </el-select>
     </div>
     <div class="target">
       <span class="search__label">考核指标:</span>
-      <el-select placeholder="请选择" v-model="target" size="small" @change="change"  @clear="$emit('clearTarget')">
+      <el-select placeholder="请选择" v-model="target" size="small" @change="change"  >
         <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
         </el-option>
       </el-select>
@@ -28,7 +35,7 @@
 import Search from '@/components/search/index1'
 export default {
   name: '',
-  props:["placeholder"],
+  props:["placeholder","yearData"],
   data () {
     return {
       year: String(new Date().getFullYear()),
@@ -48,9 +55,9 @@ export default {
   watch: {
   },
   methods: {
-    yearChange(time) {
+    /*yearChange(time) {
       this.$emit('yearChange',time == null ? '' : time.getFullYear())
-    },
+    },*/
     searchActive() {
       this.$emit('searchActive',this.search)
     },
@@ -59,10 +66,13 @@ export default {
     },
     change(data) {
       this.$emit('targetChange',data)      
+    },
+    yearChange(data){
+      this.$emit('yearChange',data)
     }
   },
   mounted() {
-
+    console.log(this.yearData,"年份可选数据")
   }
 };
 </script>

+ 29 - 3
src/SManagement/project_target/components/table.vue

@@ -1,6 +1,14 @@
 <template>
   <div>
-    <select-panel :placeholder="placeholder" @searchActive="searchActive" @clearData="clearData" @targetChange="targetChange" @clearTarget="clearTarget" @yearChange="yearChange" style="margin-bottom:16px"/>
+    <select-panel
+        :placeholder="placeholder"
+        :yearData="yearData"
+        @searchActive="searchActive"
+        @clearData="clearData"
+        @targetChange="targetChange"
+        @clearTarget="clearTarget"
+        @yearChange="yearChange"
+        style="margin-bottom:16px"/>
     <el-table
       :data="tableData"
       style="width: 100%"
@@ -501,6 +509,7 @@ export default {
   props:["data"],
   data () {
     return {
+      yearData:[],
       tableData:[],
       currentPage:0,
       total:0,
@@ -562,8 +571,24 @@ export default {
       this.queryData()
     },
     /* 年度更改 */
-    yearChange(time) {
-      this.year = time
+    yearChange(data) {
+      this.year = data
+    },
+    async yearList(){
+      const res = await this.$api.requested({
+        "classname": "sysmanage.develop.optiontype.optiontype",
+        "method": "optiontypeselect",
+        "content": {
+          "pageNumber": 1,
+          "pageSize": 20,
+          "typename": "targetyearofproject",
+          "parameter": {
+            "siteid": "YOSTEST2"
+          }
+        }
+      })
+      this.yearData = res.data
+      console.log(this.yearData,'人员目标年度')
     },
     searchActive(data) {
       this.params.content.where.condition = data
@@ -584,6 +609,7 @@ export default {
   },
   mounted () {
     /*this.queryData()*/
+    this.yearList()
   },
   created() {
     this.queryData()