qymljy 2 anos atrás
pai
commit
a9d504c2b1

+ 55 - 42
src/Form/projectChange/add.vue

@@ -4,7 +4,7 @@
     <el-drawer
         title="新建项目"
         :visible.sync="dialogFormVisible"
-        size="45%"
+        size="35%"
         direction="rtl"
         append-to-body
         @close="onClose">
@@ -16,23 +16,6 @@
                 <el-input v-model="form.projectname" placeholder="请输入项目名称"></el-input>
               </el-form-item>
             </el-col>
-<!--            <el-col :span="12">
-              <el-form-item label="项目编号" prop="projectnum">
-                <el-input v-model="form.projectnum" placeholder="请输入项目编号"></el-input>
-              </el-form-item>
-            </el-col>-->
-<!--            <el-col :span="12">
-              <el-form-item label="当前项目模板" prop="sa_projstagetempid">
-                <el-select v-model="form.sa_projstagetempid" placeholder="请选择当前项目模板" size="mini">
-                  <el-option
-                      v-for="item in projectPanl()"
-                      :key="item.sa_projstagetempid"
-                      :label="item.stagetempname"
-                      :value="item.sa_projstagetempid">
-                  </el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>-->
             <el-col :span="12">
               <el-form-item label="项目类型:" prop="projecttype">
                 <el-select v-model="form.projecttype" placeholder="请选择项目类型" size="mini">
@@ -66,9 +49,9 @@
                 <el-select v-model="form.grade" placeholder="请选择项目等级" size="mini">
                   <el-option
                       v-for="item in projectLead()"
-                      :key="item.rowindex"
+                      :key="item.value"
                       :label="item.value"
-                      :value="item.rowindex">
+                      :value="item.value">
                   </el-option>
                 </el-select>
               </el-form-item>
@@ -91,14 +74,8 @@
             </el-col>
             <el-col :span="12">
               <el-form-item label="预计签约月份:" prop="signdate_due">
-<!--                <el-date-picker
-                    style="width: 100%"
-                    v-model="form.signdate_due"
-                    type="date"
-                    placeholder="选择月份"
-                    @change="timeChange">
-                </el-date-picker>-->
                 <el-date-picker
+                    style="width: 100%"
                     v-model="form.signdate_due"
                     type="month"
                     placeholder="选择月"
@@ -127,21 +104,21 @@ export default {
       dialogFormVisible:false,
       projectAddress:[],
       form:{
-        "sa_projectid":0,
-        "projectname":"",
-        "projectnum":"",
-        "address":"",//可选
-        "grade":"",//可选
-        "budgetary":"",//可选
-        "remarks":"",//可选
-        "projecttype":"",//可选
-        "sa_projstagetempid":"",//可选
-        "signdate_due":"",//可选
-        "scale":"",//可选
-        "signamount_due":"",//可选
-        "province":"",
-        "city":"",
-        "county":"",
+        sa_projectid:0,
+        projectname:"",
+        projectnum:"",
+        address:"",//可选
+        grade:"",//可选
+        budgetary:"",//可选
+        remarks:"",//可选
+        projecttype:"",//可选
+        sa_projstagetempid:"",//可选
+        signdate_due:"",//可选
+        scale:"",//可选
+        signamount_due:"",//可选
+        province:"",
+        city:"",
+        county:"",
       },
       value:'',
       rules:{
@@ -199,6 +176,24 @@ export default {
         this.tool.showMessage(res,()=>{
           this.$emit('onSuccess')
           this.$refs['form'].resetFields();
+          this.value = ''
+          this.form={
+            sa_projectid:0,
+            projectname:"",
+            projectnum:"",
+            address:"",//可选
+            grade:"",//可选
+            budgetary:"",//可选
+            remarks:"",//可选
+            projecttype:"",//可选
+            sa_projstagetempid:"",//可选
+            signdate_due:"",//可选
+            scale:"",//可选
+            signamount_due:"",//可选
+            province:"",
+            city:"",
+            county:"",
+          }
           this.dialogFormVisible = false
         })
       })
@@ -219,6 +214,24 @@ export default {
     },
     onClose(){
       this.$refs['form'].resetFields()
+      this.value = ''
+      this.form={
+        sa_projectid:0,
+        projectname:"",
+        projectnum:"",
+        address:"",//可选
+        grade:"",//可选
+        budgetary:"",//可选
+        remarks:"",//可选
+        projecttype:"",//可选
+        sa_projstagetempid:"",//可选
+        signdate_due:"",//可选
+        scale:"",//可选
+        signamount_due:"",//可选
+        province:"",
+        city:"",
+        county:"",
+      }
       this.dialogFormVisible = false
     }
   }

+ 5 - 21
src/Form/projectChange/edit.vue

@@ -4,35 +4,18 @@
     <el-drawer
         title="编辑项目"
         :visible.sync="dialogFormVisible"
-        size="800px"
+        size="35%"
         direction="rtl"
         append-to-body
         @close="onClose">
       <div class="drawer__panel">
         <el-row :gutter="20">
-          <el-form :model="form" :rules="rules" ref="form" label-width="120px" label-position="right" size="mini">
+          <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-form-item>
             </el-col>
-<!--            <el-col :span="12">
-              <el-form-item label="项目编号" prop="projectnum">
-                <el-input v-model="form.projectnum" placeholder="请输入项目编号"></el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="当前项目模板" prop="sa_projstagetempid">
-                <el-select v-model="form.sa_projstagetempid" placeholder="请选择当前项目模板" size="mini">
-                  <el-option
-                      v-for="item in projectPanl()"
-                      :key="item.sa_projstagetempid"
-                      :label="item.stagetempname"
-                      :value="item.sa_projstagetempid">
-                  </el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>-->
             <el-col :span="12">
               <el-form-item label="项目类型:" prop="projecttype">
                 <el-select v-model="form.projecttype" placeholder="请选择项目类型" size="mini">
@@ -66,9 +49,9 @@
                 <el-select v-model="form.grade" placeholder="请选择项目等级" size="mini">
                   <el-option
                       v-for="item in projectLead()"
-                      :key="item.rowindex"
+                      :key="item.value"
                       :label="item.value"
-                      :value="item.rowindex">
+                      :value="item.value">
                   </el-option>
                 </el-select>
               </el-form-item>
@@ -92,6 +75,7 @@
             <el-col :span="24">
               <el-form-item label="预计签约月份:" prop="signdate_due">
                 <el-date-picker
+                    style="width: 100%"
                     v-model="form.signdate_due"
                     type="date"
                     placeholder="选择月份"

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

@@ -73,8 +73,10 @@ export default {
   },
   methods:{
     editBtn () {
-      this.dialogFormVisible = true
-      this.visible = false
+      console.log("页面进行编辑")
+     /*/!* this.dialogFormVisible = true*!/
+      this.visible = false*/
+      console.log(this.visible)
       this.form = Object.assign({},this.form,this.data)
     },
     onSubmit(){

+ 0 - 1
src/HDrpManagement/projectChange/components/TimeSelect.vue

@@ -3,7 +3,6 @@
     <span style="font-size:14px;">{{title && title}}</span>
     <el-date-picker
       v-model="time"
-      style="width: 100%;"
       type="daterange"
       start-placeholder="开始日期"
       end-placeholder="结束日期"

+ 130 - 67
src/HDrpManagement/projectChange/index.vue

@@ -6,7 +6,7 @@
       formPath="projectChange" 
       tableName="projectTable" 
       idName="sa_projectid" 
-      :apiId="{query:20221020143502,del:20221020144302}" 
+      :apiId="{query:20221020143502,del:''}"
       :options="options"
       :detailPath="{path:'/projectChangeDetail',param:{tabIndex:tabIndex}}">
       <template #titleRight>
@@ -21,43 +21,75 @@
         </el-dropdown>-->
       </template>
       <div slot="custom" style="display:flex">
-        <p style="margin: auto;font-size: 14px" class="inline-16">分类:</p>
-        <div style="width: 150px;margin-right: 20px">
-          <el-select class="inline-16" v-model="tabName" placeholder="项目状态" @change="onChangeTab" size="small">
-            <el-option
-                v-for="item in editableTabs"
-                :key="item.name"
-                :label="item.title"
-                :value="item.name">
-            </el-option>
-          </el-select>
-        </div>
-        <p style="margin: auto;font-size: 14px" class="inline-16">项目状态:</p>
-        <div style="width: 125px;margin-right: 20px">
-          <el-select class="inline-16" v-model="statusValue" placeholder="项目状态" @change="onChange" size="small">
-            <el-option
-                v-for="item in statusTab"
-                :key="item.value"
-                :label="item.label"
-                :value="item.value">
-            </el-option>
-          </el-select>
-        </div>
-        <p style="margin: auto;font-size: 14px" class="inline-16">创建时间:</p>
-        <div style="width: 220px;margin-right: 20px">
-          <time-select class="inline-16" @clearSelect="clearTime" @timeChange="timeChange"></time-select>
-        </div>
+        <label  class="search__label" style="margin: auto;width: 70px;">数据分类:</label>
+        <el-select class="inline-16" v-model="tabName" placeholder="请选择数据分类" @change="selectChange" size="small" clearable>
+          <el-option
+              v-for="item in editableTabs"
+              :key="item.name"
+              :label="item.title"
+              :value="item.name">
+          </el-option>
+        </el-select>
+        <label style="margin: auto;width: 70px;" class="search__label">项目类型:</label>
+        <el-select class="inline-16" v-model="selectParam.projecttype" placeholder="请选择项目类型" @change="selectChange" size="small" clearable>
+          <el-option
+              v-for="item in projectType"
+              :key="item.value"
+              :label="item.value"
+              :value="item.value">
+          </el-option>
+        </el-select>
+        <label style="margin: auto;width: 70px;" class="search__label">项目等级:</label>
+        <el-select class="inline-16" v-model="selectParam.grade" placeholder="请选择项目等级" @change="selectChange" size="small" clearable>
+          <el-option
+              v-for="item in projectLead"
+              :key="item.value"
+              :label="item.value"
+              :value="item.value">
+          </el-option>
+        </el-select>
+        <label style="margin: auto;width: 100px;" class="search__label">当前项目阶段:</label>
+        <el-select class="inline-16" v-model="selectParam.stagename" placeholder="请选择项目阶段" @change="selectChange" size="small" clearable>
+          <el-option
+              v-for="item in option.stageList"
+              :key="item.value"
+              :label="item.value"
+              :value="item.value">
+          </el-option>
+        </el-select>
+        <label style="margin: auto;width: 70px;" class="search__label">项目状态:</label>
+        <el-select class="inline-16" v-model="selectParam.status" placeholder="请选择项目状态" @change="selectChange" size="small" clearable>
+          <el-option
+              v-for="item in option.statusTab"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value">
+          </el-option>
+        </el-select>
+        <label class="search__label" style="margin: auto;width: 65px;">创建日期:</label>
+        <el-date-picker
+            style="margin-right: 24px !important;"
+            size="small"
+            @change="selectChange"
+            value-format="yyyy-MM-dd"
+            v-model="dateSelect"
+            type="daterange"
+            range-separator="至"
+            start-placeholder="开始日期"
+            end-placeholder="结束日期"
+            clearable>
+        </el-date-picker>
       </div>
       <template v-slot:tbList="scope">
-        <div
+<!--        <div
           v-if="scope.data.column.columnname == 'grade'"
         >
           <p v-if="scope.data.column.data[scope.data.column.columnname] !== ''">
             {{projectLead&&projectLead.find(item => item.rowindex==scope.data.column.data[scope.data.column.columnname]) && projectLead.find(item => item.rowindex==scope.data.column.data[scope.data.column.columnname]).value}}
           </p>
-          <p v-else>--</p>
-        </div>
-        <div v-else-if="scope.data.column.data[scope.data.column.columnname] && scope.data.column.columnname != 'operation'">{{scope.data.column.data[[scope.data.column.columnname]]}}</div>
+          <p v-else>&#45;&#45;</p>
+        </div>-->
+        <div v-if="scope.data.column.data[scope.data.column.columnname] && scope.data.column.columnname != 'operation'">{{scope.data.column.data[[scope.data.column.columnname]]}}</div>
         <div v-else>
           --
         </div>
@@ -69,10 +101,7 @@
 </template>
 
 <script>
-/*import TimeSelect from '@/SManagement/submitedit_one/components/TimeSelect'*/
-import TimeSelect from './components/TimeSelect'
 export default {
-  components:{TimeSelect},
   name: "index",
   provide () {
     return {
@@ -84,7 +113,7 @@ export default {
   },
   data() {
     return {
-      editableTabsValue:"0",
+      editableTabsValue:"我负责的",
       /* 企业列表 */
       enterpriseList:'',
       /* 企业列表 */
@@ -92,31 +121,49 @@ export default {
       projectLead:'',
       projectPanl:'',
       statusValue:"全部",
+      dateSelect:'',
       options:[],
-      statusTab:[
-        {
-          value:"",
-          label:"全部"
-        },
-        {
-          value:"跟进中",
-          label:"跟进中"
-        },
-        {
-          value:"已成交",
-          label:"已成交"
-        },
-        {
-          value:"已失败",
-          label:"已失败"
-        }
-      ],
-      tabName:"我负责的",
-      tabIndex:"",
-      editableTabs: [{
-        title: '全部',
-        name: "0",
-      }, {
+      option:{
+        statusTab:[
+          {
+            value:"跟进中",
+            label:"跟进中"
+          },
+          {
+            value:"已成交",
+            label:"已成交"
+          },
+          {
+            value:"已失败",
+            label:"已失败"
+          }
+        ],
+        stageList:[
+          {
+            value:"阶段一",
+            label:"阶段一"
+          },
+          {
+            value:"阶段二",
+            label:"阶段二"
+          },
+          {
+            value:"阶段三",
+            label:"阶段三"
+          },
+          {
+            value:"阶段四",
+            label:"阶段四"
+          },
+          {
+            value:"阶段五",
+            label:"阶段五"
+          }
+        ]
+      },
+      tabName:"1",
+      tabIndex:"1",
+      editableTabs: [ {
         title: '我负责的',
         name: "1",
       }, {
@@ -129,6 +176,14 @@ export default {
         title: '我下属参与的',
         name: "4",
       }],
+      selectParam: {
+        status:'',
+        projecttype:'',
+        grade:'',
+        startdate:'',
+        enddate:'',
+        stagename:''
+      },
     }
   },
   created () {
@@ -202,14 +257,22 @@ export default {
       this.$refs['basicLayout'].param.content.isExport = false
       this.$refs['basicLayout'].listData()
     },
-    onChange (val) {
-      console.log(val)
-      this.$refs['basicLayout'].param.content.type = this.editableTabsValue
-      this.$refs['basicLayout'].param.content.where.status = this.statusValue
-      this.$refs['basicLayout'].param.content.isExport = 0
-      this.$refs['basicLayout'].listData()
+    selectChange () {
+      console.log(this.projectType)
+      console.log(this.projectLead)
+      this.tabIndex = this.tabName
+      if (this.dateSelect !== '' && this.dateSelect !== null){
+        this.selectParam.startdate = this.dateSelect[0]
+        this.selectParam.enddate = this.dateSelect[1]
+      }else {
+        this.selectParam.startdate = ''
+        this.selectParam.enddate = ''
+      }
+      this.$refs.basicLayout.param.content.type = this.tabIndex
+      this.$refs.basicLayout.param.content.where = this.selectParam
+      this.$refs.basicLayout.listData()
     },
-    onChangeTab(val){
+    /*onChangeTab(val){
       console.log(val)
       this.tabIndex = val
       this.queryData(val)
@@ -223,7 +286,7 @@ export default {
       this.$refs['basicLayout'].param.content.where.startdate = time[0]
       this.$refs['basicLayout'].param.content.where.enddate = time[1]
       this.$refs['basicLayout'].listData()
-    }
+    }*/
   },
   mounted () {
     this.queryData(1)

+ 3 - 3
src/HDrpManagement/projectChange/modules/detail.vue

@@ -9,7 +9,7 @@
     :turnPageId="20221020143502" 
     idname="sa_projectid"
     tags=""
-    :tabs="['详细信息','阶段任务','缔约信息','产品配置单','报价单','竞争对手']"
+    :tabs="['详细信息','阶段任务','关联客户','产品配置单','报价单','竞争对手']"
     @pageChange="pageChange"
     @onEditSuccess="queryMainData($route.query.id)">
     <!-- 使用此插槽可不传[tags] -->
@@ -79,8 +79,8 @@
     <div slot="slot2" class="container normal-panel">
       <andEnterprise :rowData="mainData" v-if="flag === 1"/>
     </div>
-    <div slot="slot3" class="container normal-panel">
-      <ProjectSet />
+    <div slot="slot3" class="container normal-panel" >
+      <ProjectSet :data="mainData"  v-if="flag === 1"/>
     </div>
     <div slot="slot4" class="container normal-panel">
       <quotation />

+ 43 - 5
src/HDrpManagement/projectChange/modules/modules/andEnterprise/components/add.vue

@@ -1,8 +1,8 @@
 <template>
   <div>
-    <el-button size="mini" type="primary" @click="onshow">新增缔约信息</el-button>
+    <el-button size="mini" type="primary" @click="onshow">新增关联客户</el-button>
     <el-drawer
-        title="新增缔约信息"
+        title="新增关联客户"
         :visible.sync="visible"
         size="20%"
         direction="rtl"
@@ -29,16 +29,27 @@
         <el-button size="small" type="primary" @click="onSubmit" class="normal-btn-width">确 定</el-button>
       </div>
     </el-drawer>
+    <enterprise
+        :visible="visibleEnterprise"
+        :index="index"
+        :sa_projectid="form.sa_projectid"
+        v-if="visibleEnterprise"
+        @onEnterprise="onEnterprise">
+    </enterprise>
   </div>
 </template>
 
 <script>
+import enterprise from './enterprise'
 export default {
   name: "add",
   props:["data"],
+  components:{enterprise},
   data(){
     return {
       visible:false,
+      visibleEnterprise:false,
+      index:'',
       form:{
         sa_project_partiesid: 0,
         sa_projectid: '',
@@ -60,14 +71,41 @@ export default {
       this.visible = true
     },
     onSubmit(){
-
+      this.form.sa_projectid = this.data.sa_projectid
+      this.$refs['form'].validate(async (valid) => {
+        if (!valid) return false
+        const res = await this.$api.requested({
+          "id": 20221027143602,
+          "content": this.form
+        })
+        this.tool.showMessage(res,()=>{
+          this.$emit('addSuccess')
+          this.onClose()
+        })
+      })
     },
     onClose(){
-
+      this.visible = false
+      this.$refs.form.resetFields()
+      this.form={
+        sa_project_partiesid: 0,
+        sa_projectid: '',
+        sys_enterpriseid:'',
+        enterprisename:'',
+        remarks:""
+      }
     },
     enterpriseList(){
+      this.visibleEnterprise = true
+    },
+    /*客户列表*/
+    onEnterprise(data){
+      this.visibleEnterprise = false
+      console.log("企业信息",data)
+      this.form.sys_enterpriseid = data.sys_enterpriseid
+      this.form.enterprisename = data.enterprisename
 
-    }
+    },
   },
   mounted() {
 

+ 119 - 0
src/HDrpManagement/projectChange/modules/modules/andEnterprise/components/edit.vue

@@ -0,0 +1,119 @@
+<template>
+  <div >
+    <el-button size="mini" type="text" @click="onshow" >编辑</el-button>
+    <el-drawer
+        title="编辑关联客户"
+        :visible.sync="visible"
+        size="20%"
+        direction="rtl"
+        append-to-body
+        @close="onClose">
+      <div class="drawer__panel">
+        <el-row :gutter="20">
+          <el-form :model="form" :rules="rules" ref="form" label-width="90px" label-position="right" size="mini">
+            <el-col :span="24">
+              <el-form-item label="企业名称:" prop="enterprisename">
+                <el-input v-model="form.enterprisename" placeholder="请选择企业" @focus="enterpriseList"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item label="备注:" >
+                <el-input v-model="form.remarks" type="textarea" rows="5" placeholder="请输入备注信息"></el-input>
+              </el-form-item>
+            </el-col>
+          </el-form>
+        </el-row>
+      </div>
+      <div class="fixed__btn__panel">
+        <el-button size="small" @click="onClose" class="normal-btn-width">取 消</el-button>
+        <el-button size="small" type="primary" @click="onSubmit" class="normal-btn-width">确 定</el-button>
+      </div>
+    </el-drawer>
+    <enterprise
+        :visible="visibleEnterprise"
+        :index="index"
+        :sa_projectid="form.sa_projectid"
+        v-if="visibleEnterprise"
+        @onEnterprise="onEnterprise">
+    </enterprise>
+  </div>
+</template>
+
+<script>
+import enterprise from './enterprise'
+export default {
+  name: "edit",
+  props:["data"],
+  components:{enterprise},
+  data(){
+    return {
+      visible:false,
+      visibleEnterprise:false,
+      index:'',
+      form:{
+        sa_project_partiesid: 0,
+        sa_projectid: '',
+        sys_enterpriseid:'',
+        enterprisename:'',
+        remarks:""
+      },
+      rules:{
+        enterprisename:[
+          { required: true, message: '请选择企业', trigger: 'change'},
+        ],
+      }
+    }
+  },
+  methods:{
+    onshow(){
+      console.log("新增企业缔约信息")
+      console.log(this.data)
+      this.form = this.data
+      this.visible = true
+    },
+    onSubmit(){
+      this.form.sa_projectid = this.data.sa_projectid
+      this.$refs['form'].validate(async (valid) => {
+        if (!valid) return false
+        const res = await this.$api.requested({
+          "id": 20221027143602,
+          "content": this.form
+        })
+        this.tool.showMessage(res,()=>{
+          this.$emit('updateSuccess')
+          this.onClose()
+        })
+      })
+    },
+    onClose(){
+      this.visible = false
+      this.$refs.form.resetFields()
+      this.form={
+        sa_project_partiesid: 0,
+        sa_projectid: '',
+        sys_enterpriseid:'',
+        enterprisename:'',
+        remarks:""
+      }
+    },
+    enterpriseList(){
+      this.visibleEnterprise = true
+    },
+    /*客户列表*/
+    onEnterprise(data){
+      this.visibleEnterprise = false
+      console.log("企业信息",data)
+      this.form.sys_enterpriseid = data.sys_enterpriseid
+      this.form.enterprisename = data.enterprisename
+
+    },
+  },
+  mounted() {
+
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 140 - 0
src/HDrpManagement/projectChange/modules/modules/andEnterprise/components/enterprise.vue

@@ -0,0 +1,140 @@
+<template>
+  <div>
+    <el-dialog
+        title="新 建"
+        :visible.sync="dialogProjectVisible"
+        append-to-body
+        width="900px"
+        @close="onColes">
+      <div slot="title" style="font-size: 15px">
+        选择客户
+      </div>
+      <layout_table
+          ref="projectTable"
+          :layout="tablecols"
+          :data="list"
+          :opwidth="200"
+          :custom="false"
+          :height="320"
+          :checkbox="true"
+          :onRow="row"
+          @rowClick="rowClick"
+          @onRow="onRow"
+      >
+      </layout_table>
+      <div style="margin-top:16px;text-align:right">
+        <el-pagination
+            background
+            small
+            @size-change="handleSizeChange"
+            @current-change="handleCurrentChange"
+            :current-page="currentPage"
+            :page-size="params.content.pageSize"
+            layout="total, prev, pager, next, jumper"
+            :total="total">
+        </el-pagination>
+      </div>
+      <div class="dialog-footer">
+        <el-button size="small" @click="onColes" class="normal-btn-width">取 消</el-button>
+        <el-button size="small" type="warning" class="normal-btn-width btn-warning"  @click="onSubmit">确 定</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import layout_table from '../components/table'
+export default {
+  name: "enterprise",
+  props:["visible","index"],
+  data(){
+    return {
+      dialogProjectVisible:false,
+      bill_id:"",
+      tablecols:[],
+      list:[],
+      total:0,
+      currentPage:0,
+      row:"",
+      params:{
+        "id": 20220920083901,
+        "content": {
+          "pageNumber": 1,
+          "pageSize": 20,
+          "where": {
+            "condition": "",
+            "type":2,//1:经销商,2:客户,3:其他,不传查全部,4:查询项目缔约方,sa_projectid必传
+            "sa_projectid":""
+          }
+        }
+      }
+    }
+  },
+  components:{layout_table},
+  mounted() {
+    console.log(this.visible)
+    this.dialogProjectVisible = true
+    console.log(this.index)
+    this.listData()
+  },
+  methods:{
+    async listData(){
+        const res = await this.$api.requested(this.params)
+        this.list = res.data
+        this.total = res.total
+        console.log(this.list[0])
+        if (this.index !== ''){
+          this.toggleSelection([this.list[this.index]])
+        }
+    },
+    handleSizeChange(val) {
+      // console.log(`每页 ${val} 条`);
+      this.params.content.pageSize = val
+      this.listData()
+    },
+    handleCurrentChange(val) {
+      // console.log(`当前页: ${val}`);
+      this.params.content.pageNumber = val
+      this.listData()
+    },
+    onColes(){
+      this.dialogProjectVisible = false
+      this.$emit("onEnterprise")
+    },
+    onRow(row){
+
+      this.row = row
+    },
+    onSubmit(){
+
+      this.dialogProjectVisible = false
+      this.$emit("onEnterprise",this.row)
+
+    },
+    toggleSelection(rows) {
+      console.log("保存")
+      console.log(rows)
+      if (rows) {
+        rows.forEach(row => {
+          this.$refs.projectTable.$refs.tables.setCurrentRow(row);
+        });
+      } else {
+        this.$refs.projectTable.$refs.tables.clearSelection();
+      }
+    },
+    rowClick(row){
+      console.log("选中")
+      console.log(row)
+    }
+
+  },
+
+  created() {
+    this.tablecols = this.tool.tabelCol(this.$route.name).enterpriseTable.tablecols
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 100 - 0
src/HDrpManagement/projectChange/modules/modules/andEnterprise/components/table.vue

@@ -0,0 +1,100 @@
+<template>
+  <div>
+    <el-table ref="tables"
+              :row-class-name="tableClassName"
+              v-loading="loading" highlight-current-row
+              :data="data"
+              :header-cell-style="{background:'#EEEEEE',color:'#333'}" size="mini"
+              :height="height" @row-click="rowClick" style="width:100%"
+               border
+              @select="select"
+      >
+      <el-table-column
+          type="selection"
+          width="55" @handleSelectionChange="handleSelectionChange"  v-if="checkbox">
+      </el-table-column>
+      <el-table-column :show-overflow-tooltip="col.title == '来源' || col.title == '地址' || col.title == '备注'" v-for="col in layout" :key="col.tablecolid" :prop="col.columnname" :label="col.title" :width="col.width">
+        <template slot-scope="scope">
+          <!-- 自定义表格显示内容 -->
+          <slot v-if="custom" name="customcol" :column="{data:scope.row,columnname:col.columnname}"></slot>
+          <slot v-if="col.columnname === 'province'" name="province" :data="scope.row">
+            <p>{{scope.row[col.columnname]+'-'+scope.row.city+'-'+scope.row.county}}</p>
+          </slot>
+          <!-- 否则就是默认 -->
+          <span v-else>{{scope.row[col.columnname]}}</span>
+          <!-- 操作结构内容 -->
+          <slot v-if="col.columnname === 'operation'" name="opreation" :data="scope.row"></slot>
+        </template>
+      </el-table-column>
+    </el-table>
+  </div>
+</template>
+
+<script>
+import {mapGetters} from "vuex"
+export default {
+  /*
+    layout:表结构数据;
+    data:表渲染数据;
+    custom:是否启用自定义结构;
+    opwidth:操作列宽度
+  */
+  props:['layout','data','custom','height','checkbox','onRow'],
+  data () {
+    return {
+      list:[],
+      bill_id:""
+    }
+  },
+  computed:{
+    ...mapGetters({
+      loading:'loading'
+    })
+  },
+  methods:{
+    rowClick (row) {
+      this.$emit('rowClick',row)
+    },
+    tableClassName ({row,rowIndex}) {
+      row.index = rowIndex
+    },
+    select(selection, row){
+      console.log(row)
+      this.bill_id = row.id;
+      this.$emit("onRow",row)
+      // 清除 所有勾选项
+      this.$refs.tables.clearSelection()
+      // 当表格数据都没有被勾选的时候 就返回
+      // 主要用于将当前勾选的表格状态清除
+      if(selection.length === 0) return
+      this.$refs.tables.toggleRowSelection(row, true);
+    },
+    handleSelectionChange(val) {
+      if (val.length >= 2){
+        this.$refs.tables.clearSelection();
+      }
+      this.$emit('checkboxCallBack',val)
+    },
+    isCheck(row,rowIndex) {
+
+    },
+    setCurrentRow(row){
+      console.log("执行力")
+      console.log(row)
+      /*this.$refs.tables.setCurrentRow(row);*/
+    },
+    toggleRowSelection(row, selected){
+
+    }
+  },
+  mounted () {
+    // this.listData()
+    console.log("初始化输出")
+    console.log(this.onRow)
+  }
+}
+
+</script>
+<style>
+
+</style>

+ 34 - 0
src/HDrpManagement/projectChange/modules/modules/andEnterprise/components/toDel.vue

@@ -0,0 +1,34 @@
+<template>
+  <el-popconfirm
+      title="确定删除该关联客户嘛"
+      @confirm="onShow"
+  >
+    <el-button slot="reference" size="mini" type="text"  >删除</el-button>
+  </el-popconfirm>
+</template>
+
+<script>
+export default {
+  name: "toDel",
+  props:["data"],
+  methods:{
+    async onShow(){
+      console.log("确定操作")
+      console.log(this.data)
+      const res = await this.$api.requested({
+        "id": 20221027143802,
+        "content": {
+          "sa_project_partiesids": [this.data.sa_project_partiesid]
+        },
+      })
+      this.tool.showMessage(res, ()=>{
+        this.$emit("toDelSuccess")
+      })
+    }
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 45 - 9
src/HDrpManagement/projectChange/modules/modules/andEnterprise/index.vue

@@ -1,6 +1,37 @@
 <template>
   <div>
-    <basicLayout 
+    <div style="margin-top: -10px">
+      <add class="inline-16" :data="rowData" @addSuccess="onSuccess"></add>
+      <el-input
+          placeholder="请输入搜索内容"
+          suffix-icon="el-icon-search"
+          v-model="search"
+          style="width:200px"
+          size="small"
+          class="input-with-select inline-16"
+          @keyup.native.enter="queryClick"
+          @clear="clearData"
+          clearable>
+      </el-input>
+    </div>
+
+    <div style="margin-top: 20px">
+      <tableLayout :layout="tablecols" :data="list" :opwidth="200" :custom="true"  :height="tableHieght" >
+        <template v-slot:customcol="scope">
+          <div v-if="scope.column.columnname === 'province'">
+            <p>{{ scope.column.data.province + '-' + scope.column.data.city + '-' + scope.column.data.county}}</p>
+          </div>
+          <p v-else>{{scope.column.data[scope.column.columnname]}}</p>
+        </template>
+        <template v-slot:opreation="scope">
+          <edit class="inline-16" v-if="tool.checkAuth($route.name,'update')" :data="scope.data" @updateSuccess="onSuccess"></edit>
+          <to_del class="inline-16" :data="scope.data" @toDelSuccess="onSuccess"></to_del>
+<!--          <toVoid v-if="tool.checkAuth($route.name,'toVoid')" :data="scope.data" @toVoidSuccess="onSuccess"></toVoid>-->
+        </template>
+      </tableLayout>
+    </div>
+
+<!--    <basicLayout
       ref="basicLayout" 
       formPath="projectChange/andEnterprise" 
       tableName="andEnterpriseTable" 
@@ -12,7 +43,7 @@
       <div slot="custom"></div>
       <template v-slot:tbList="scope">
         <div v-if="!scope.data.column.data[scope.data.column.columnname]">
-          --
+          &#45;&#45;
         </div>
         <div v-else-if="scope.data.column.columnname == 'province'">
           {{`${scope.data.column.data['province']}、${scope.data.column.data['city']}、${scope.data.column.data['county']}`}}
@@ -22,10 +53,10 @@
         </div>
       </template>
       <template v-slot:opreation="scope">
-<!--        <edit v-if="tool.checkAuth($route.name,'update')" :data="scope.data" @updateSuccess="onSuccess"></edit>
-        <toVoid v-if="tool.checkAuth($route.name,'toVoid')" :data="scope.data" @toVoidSuccess="onSuccess"></toVoid>-->
+&lt;!&ndash;        <edit v-if="tool.checkAuth($route.name,'update')" :data="scope.data" @updateSuccess="onSuccess"></edit>
+        <toVoid v-if="tool.checkAuth($route.name,'toVoid')" :data="scope.data" @toVoidSuccess="onSuccess"></toVoid>&ndash;&gt;
       </template>
-    </basicLayout>
+    </basicLayout>-->
     <div style="margin-top:16px;text-align:right">
       <el-pagination
           background
@@ -44,8 +75,10 @@
 <script>
 /*import Contact from './components/Contact'*/
 import add from './components/add'
+import edit from './components/edit'
+import to_del from './components/toDel'
 export default {
-  components:{add},
+  components:{add,edit,to_del},
   name: "index",
   props:["rowData"],
   data() {
@@ -74,28 +107,31 @@ export default {
       param.content.sa_projectid = this.$route.query.id
     },*/
     async listData(){
-      console.log("输出99999999999999999")
       console.log(this.rowData)
       this.params.content.sa_projectid = this.rowData.sa_projectid
       const res = await this.$api.requested(this.params)
       this.list = res.data
       this.total = res.total
+      console.log(this.list)
     },
     handleSizeChange(val) {
       // console.log(`每页 ${val} 条`);
       this.params.content.pageSize = val
-      this.listData(data)
+      this.listData()
     },
     handleCurrentChange(val) {
       // console.log(`当前页: ${val}`);
       this.params.content.pageNumber = val
-      this.listData(data)
+      this.listData()
     },
     onSuccess(){
       this.listData()
     },
     clearData(){
+      console.log("执行")
       this.search = ""
+      this.params.content.where.condition = this.search
+      this.listData()
     },
     queryClick(){
       this.params.content.where.condition = this.search

+ 81 - 0
src/HDrpManagement/projectChange/modules/modules/projectSet/add.vue

@@ -0,0 +1,81 @@
+<template>
+  <div>
+    <el-button size="mini" type="primary" @click="dialogFormVisible = true" >新 建</el-button>
+    <el-dialog title="新 建" :visible.sync="dialogFormVisible" width="50%" append-to-body>
+      <div slot="title" style="font-size: 15px">
+        新增产品配置单
+      </div>
+      <el-row :gutter="20">
+        <el-form :model="form" :rules="rules" ref="form" label-width="120px" label-position="right" size="mini">
+          <el-col :span="24">
+            <el-form-item label="项目类型" prop="itemids">
+              <el-select v-model="form.itemids" placeholder="请选择项目类型" multiple size="small">
+                <el-option
+                  v-for="(item,index) in productList()"
+                  :key="item.itemid"
+                  :label="item.itemname"
+                  :value="item.itemid">
+                </el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+        </el-form>
+      </el-row>
+      <div class="dialog-footer">
+        <el-button size="small" @click="dialogFormVisible = false" class="normal-btn-width">取 消</el-button>
+        <el-button size="small" type="warning" @click="onSubmit" class="normal-btn-width btn-warning">确 定</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "add",
+  inject:['productList'],
+  components:{},
+  data(){
+    return {
+      dialogFormVisible:false,
+      projectAddress:[],
+      form:{
+        "sa_projectid": "",
+        "itemids": []
+      },
+      rules:{
+        itemids:[
+          { required: true, message: '请选择商品', trigger: 'blur'},
+        ]
+      }
+    }
+  },
+  methods:{
+    onSubmit(){
+      this.$refs['form'].validate(async (valid) => {
+        if (!valid) return false
+        this.form.sa_projectid = this.$route.query.id
+        const res = await this.$api.requested({
+          "id": "20221021145502",
+          "version":1,
+          "content": this.form
+        })
+        this.tool.showMessage(res,()=>{
+          this.$emit('onSuccess')
+          this.$refs['form'].resetFields();
+          this.dialogFormVisible = false
+        })
+      })
+    },
+  }
+}
+</script>
+
+<style scoped>
+/deep/.el-select {
+  height: 28px !important;
+  width: 100%;
+}
+/deep/.el-input__inner {
+  height: 28px !important;
+}
+</style>

+ 101 - 10
src/HDrpManagement/projectChange/modules/modules/projectSet/index.vue

@@ -1,7 +1,33 @@
 
 <template>
   <div>
-    <basicLayout 
+    <div style="margin-top: -10px">
+      <add class="inline-16" :data="data" @addSuccess="onSuccess"></add>
+      <el-input
+          placeholder="请输入搜索内容"
+          suffix-icon="el-icon-search"
+          v-model="search"
+          style="width:200px"
+          size="small"
+          class="input-with-select inline-16"
+          @keyup.native.enter="queryClick"
+          @clear="clearData"
+          clearable>
+      </el-input>
+    </div>
+    <div style="margin-top: 20px">
+      <tableLayout :layout="tablecols" :data="list" :opwidth="200" :custom="true"  :height="tableHieght" >
+        <template v-slot:customcol="scope">
+          <p >{{scope.column.data[scope.column.columnname]}}</p>
+        </template>
+        <template v-slot:opreation="scope">
+<!--          <edit class="inline-16" v-if="tool.checkAuth($route.name,'update')" :data="scope.data" @updateSuccess="onSuccess"></edit>
+          <to_del class="inline-16" :data="scope.data" @toDelSuccess="onSuccess"></to_del>-->
+          <!--          <toVoid v-if="tool.checkAuth($route.name,'toVoid')" :data="scope.data" @toVoidSuccess="onSuccess"></toVoid>-->
+        </template>
+      </tableLayout>
+    </div>
+<!--    <basicLayout
       ref="basicLayout" 
       formPath="projectChange/projectSet" 
       tableName="projectSetTable" 
@@ -14,29 +40,63 @@
         <div v-if="scope.data.column.columnname == 'itemclass'">
         </div>
         <div v-else>
-          {{scope.data.column.data[scope.data.column.columnname] || scope.data.column.columnname == 'operation' ? scope.data.column.data[[scope.data.column.columnname]] : '--'}}
+          {{scope.data.column.data[scope.data.column.columnname] || scope.data.column.columnname == 'operation' ? scope.data.column.data[[scope.data.column.columnname]] : '&#45;&#45;'}}
         </div>
       </template>
       <template v-slot:tbOpreation="scope">
-        <!-- <delete-btn 
+        &lt;!&ndash; <delete-btn
           ref="del" 
           :id="scope.data.data.itemid" 
           @deleteCreate="$refs.del.param.content.deletereason='无'" 
           @deleteSuccess="$refs.basicLayout.listData()" 
           nameId="20221021145602" 
           nameKey="sa_project_itemsids" 
-        ></delete-btn> -->
+        ></delete-btn> &ndash;&gt;
       </template>
-    </basicLayout>
+    </basicLayout>-->
+    <div style="margin-top:16px;text-align:right">
+      <el-pagination
+          background
+          small
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
+          :current-page="currentPage"
+          :page-size="params.content.pageSize"
+          layout="total, prev, pager, next, jumper"
+          :total="total">
+      </el-pagination>
+    </div>
   </div>
 </template>
 
 <script>
+import add from './add'
+import edit from "@/HDrpManagement/projectChange/modules/modules/andEnterprise/components/edit";
+import to_del from "@/HDrpManagement/projectChange/modules/modules/andEnterprise/components/toDel";
 export default {
+  props:["data"],
+  components:{add},
   data () {
     return {
+      tableHieght:"600px",
+      tablecols:[],
+      list:[],
+      total:0,
+      currentPage:0,
+      search:'',
       options:[],
-      productList:''
+      productList:'',
+      params:{
+        "id": 20221021145702,
+        "content": {
+          "sa_projectid": 2,
+          "pageNumber": 1,
+          "pageSize": 20,
+          "where": {
+            "condition": ""
+          }
+        },
+      }
     }
   },
   provide () {
@@ -44,11 +104,10 @@ export default {
       productList:() => this.productList
     }
   },
-  components:{},
   methods:{
-    list (vm) {  
+    /*list (vm) {
       vm.content.sa_projectid = this.$route.query.id
-    },
+    },*/
     /* 获取可选择商品 */
     async getProductList () {
       let res = await this.$api.requested({
@@ -65,12 +124,44 @@ export default {
       this.productList = res.data
       console.log(this.productList);
       
+    },
+    async listData(){
+      this.params.content.sa_projectid = this.data.sa_projectid
+      const res = await this.$api.requested(this.params)
+      this.list = res.data
+      this.total = res.total
+      console.log(this.list)
+    },
+    handleSizeChange(val) {
+      // console.log(`每页 ${val} 条`);
+      this.params.content.pageSize = val
+      this.listData()
+    },
+    handleCurrentChange(val) {
+      // console.log(`当前页: ${val}`);
+      this.params.content.pageNumber = val
+      this.listData()
+    },
+    onSuccess(){
+      this.listData()
+    },
+    clearData(){
+      console.log("执行")
+      this.search = ""
+      this.params.content.where.condition = this.search
+      this.listData()
+    },
+    queryClick(){
+      this.params.content.where.condition = this.search
+      this.listData()
     }
   },
   created() {
-    this.getProductList()
+    /*this.getProductList()*/
+    this.tablecols = this.tool.tabelCol(this.$route.name).projectSetTable.tablecols
   },
   mounted () {
+    this.listData()
   }
 }
 

+ 83 - 0
src/HDrpManagement/projectChange/modules/modules/projectSet/indexCopy.vue

@@ -0,0 +1,83 @@
+
+<template>
+  <div>
+    <basicLayout
+      ref="basicLayout" 
+      formPath="projectChange/projectSet" 
+      tableName="projectSetTable" 
+      idName="sa_projectid" 
+      :apiId="{query:20221021145702,del:20221021145602}"
+      :options="options"
+      @listCreate="list"
+      customTitle="产品配置单">
+      <template v-slot:tbList="scope">
+        <div v-if="scope.data.column.columnname == 'itemclass'">
+        </div>
+        <div v-else>
+          {{scope.data.column.data[scope.data.column.columnname] || scope.data.column.columnname == 'operation' ? scope.data.column.data[[scope.data.column.columnname]] : '--'}}
+        </div>
+      </template>
+      <template v-slot:tbOpreation="scope">
+        <!-- <delete-btn
+          ref="del" 
+          :id="scope.data.data.itemid" 
+          @deleteCreate="$refs.del.param.content.deletereason='无'" 
+          @deleteSuccess="$refs.basicLayout.listData()" 
+          nameId="20221021145602" 
+          nameKey="sa_project_itemsids" 
+        ></delete-btn> -->
+      </template>
+    </basicLayout>
+  </div>
+</template>
+
+<script>
+export default {
+  data () {
+    return {
+      options:[],
+      productList:''
+    }
+  },
+  provide () {
+    return {
+      productList:() => this.productList
+    }
+  },
+  components:{},
+  methods:{
+    list (vm) {  
+      vm.content.sa_projectid = this.$route.query.id
+    },
+    /* 获取可选择商品 */
+    async getProductList () {
+      let res = await this.$api.requested({
+        "id": 20221021171802,
+        "content": {
+            "sa_projectid": this.$route.query.id,
+            "pageNumber": 1,
+            "pageSize": 9999999999,
+            "where": {
+                "condition": ""
+            }
+        },
+      })
+      this.productList = res.data
+      console.log(this.productList);
+      
+    }
+  },
+  created() {
+    this.getProductList()
+  },
+  mounted () {
+  }
+}
+
+</script>
+<style scoped>
+/* /deep/.el-table__cell .cell {
+  display: flex;
+  justify-content: s;
+} */
+</style>

+ 62 - 4
src/HDrpManagement/projectChange/modules/modules/quotation/index.vue

@@ -1,7 +1,19 @@
 
 <template>
   <div>
-    <basicLayout 
+    <div style="margin-top: 20px">
+      <tableLayout :layout="tablecols" :data="list" :opwidth="200" :custom="true"  :height="tableHieght" >
+        <template v-slot:customcol="scope">
+          <p >{{scope.column.data[scope.column.columnname]}}</p>
+        </template>
+        <template v-slot:opreation="scope">
+          <!--          <edit class="inline-16" v-if="tool.checkAuth($route.name,'update')" :data="scope.data" @updateSuccess="onSuccess"></edit>
+                    <to_del class="inline-16" :data="scope.data" @toDelSuccess="onSuccess"></to_del>-->
+          <!--          <toVoid v-if="tool.checkAuth($route.name,'toVoid')" :data="scope.data" @toVoidSuccess="onSuccess"></toVoid>-->
+        </template>
+      </tableLayout>
+    </div>
+<!--    <basicLayout
       ref="basicLayout" 
       formPath="projectChange/quotation" 
       tableName="quotationTable" 
@@ -11,7 +23,7 @@
       customTitle="报价单">
       <template v-slot:tbList="scope">
         <div>
-          {{scope.data.column.data[scope.data.column.columnname] || scope.data.column.columnname == 'operation' ? scope.data.column.data[[scope.data.column.columnname]] : '--'}}
+          {{scope.data.column.data[scope.data.column.columnname] || scope.data.column.columnname == 'operation' ? scope.data.column.data[[scope.data.column.columnname]] : '&#45;&#45;'}}
         </div>
       </template>
       <template v-slot:tbOpreation="scope">
@@ -21,7 +33,19 @@
         <buillDetail class="inline-16" :rowData="scope.data.data"/>
         <delete-btn v-if="tool.checkAuth($route.name,'delete')" :id="scope.data.data.sa_quotedpriceid" nameId="20221020165503" nameKey="sa_quotedpriceids" @deleteSuccess="$refs.basicLayout.listData()" />
       </template>
-    </basicLayout>
+    </basicLayout>-->
+    <div style="margin-top:16px;text-align:right">
+      <el-pagination
+          background
+          small
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
+          :current-page="currentPage"
+          :page-size="params.content.pageSize"
+          layout="total, prev, pager, next, jumper"
+          :total="total">
+      </el-pagination>
+    </div>
   </div>
 </template>
 
@@ -30,6 +54,21 @@ import buillDetail from './modules/buillDetail'
 export default {
   data () {
     return {
+      tableHieght:"600px",
+      tablecols:[],
+      list:[],
+      total:0,
+      currentPage:0,
+      search:'',
+      params:{
+        "id": 20221020165103,
+        "version":1,
+        "content": {
+          "where":{
+            "status":""
+          }
+        }
+      },
       options:[
         {
           label:'全部',
@@ -91,10 +130,29 @@ export default {
         }
       })
       this.productList = res.data
-    }
+    },
+    async listData(){
+      this.params.content.sa_projectid = this.data.sa_projectid
+      const res = await this.$api.requested(this.params)
+      this.list = res.data
+      this.total = res.total
+      console.log(this.list)
+    },
+    handleSizeChange(val) {
+      // console.log(`每页 ${val} 条`);
+      this.params.content.pageSize = val
+      this.listData()
+    },
+    handleCurrentChange(val) {
+      // console.log(`当前页: ${val}`);
+      this.params.content.pageNumber = val
+      this.listData()
+    },
+
   },
   created() {
     this.getProductList()
+    this.tablecols = this.tool.tabelCol(this.$route.name).quotationTable.tablecols
   }
 }
 

+ 107 - 0
src/HDrpManagement/projectChange/modules/modules/quotation/indexCopy.vue

@@ -0,0 +1,107 @@
+
+<template>
+  <div>
+    <basicLayout 
+      ref="basicLayout" 
+      formPath="projectChange/quotation" 
+      tableName="quotationTable" 
+      idName="sa_quotedpriceid" 
+      :apiId="{query:20221020165103,del:20221020165503}"
+      :options="options"
+      customTitle="报价单">
+      <template v-slot:tbList="scope">
+        <div>
+          {{scope.data.column.data[scope.data.column.columnname] || scope.data.column.columnname == 'operation' ? scope.data.column.data[[scope.data.column.columnname]] : '--'}}
+        </div>
+      </template>
+      <template v-slot:tbOpreation="scope">
+        <el-button v-if="scope.data.data.status == '新建' && tool.checkAuth($route.name,'quotation_submit')" type="text" size="mini" @click="submit(scope.data.data)">提 交</el-button>
+        <el-button v-if="scope.data.data.status == '提交' && scope.data.data.status != '审核' && tool.checkAuth($route.name,'quotation_check')" type="text" size="mini" @click="check(scope.data.data)">审 核</el-button>
+        <el-button size="mini" type="text" class="inline-16" @click="$router.push({path:'/quotationDetail',query:{id:scope.data.data.sa_quotedpriceid,rowindex:scope.data.data.rowindex}})">详 情</el-button>
+        <buillDetail class="inline-16" :rowData="scope.data.data"/>
+        <delete-btn v-if="tool.checkAuth($route.name,'delete')" :id="scope.data.data.sa_quotedpriceid" nameId="20221020165503" nameKey="sa_quotedpriceids" @deleteSuccess="$refs.basicLayout.listData()" />
+      </template>
+    </basicLayout>
+  </div>
+</template>
+
+<script>
+import buillDetail from './modules/buillDetail'
+export default {
+  data () {
+    return {
+      options:[
+        {
+          label:'全部',
+          value:''
+        },
+        {
+          label:'新建',
+          value:'新建'
+        },{
+          label:'提交',
+          value:'提交'
+        },
+        {
+          label:'审核',
+          value:'审核'
+        }
+      ],
+      productList:''
+    }
+  },
+  provide () {
+    return {
+      productList:() => this.productList
+    }
+  },
+  components:{buillDetail},
+  methods:{
+    async submit (data) {
+      let res = await this.$api.requested({
+        "id": 20221020165303,
+        "version":1,
+        "content": { 
+            "sa_quotedpriceid":data.sa_quotedpriceid
+        }
+      })
+      this.tool.showMessage(res,() => {
+        this.$refs.basicLayout.listData()
+      })
+    },
+    async check (data) {
+      let res = await this.$api.requested({
+          "id": 20221020165403,
+          "version":1,
+          "content": { 
+            "sa_quotedpriceid":data.sa_quotedpriceid
+          }
+      })
+      this.tool.showMessage(res,() => {
+        this.$refs.basicLayout.listData()
+      })
+    },
+    /* 获取可添加的商品 */
+    async getProductList () {
+      let res = await this.$api.requested({
+        "id": 20221020164903,
+        "version":1,
+        "content": {
+            "sa_projectid":this.$route.query.id
+        }
+      })
+      this.productList = res.data
+    }
+  },
+  created() {
+    this.getProductList()
+  }
+}
+
+</script>
+<style scoped>
+/* /deep/.el-table__cell .cell {
+  display: flex;
+  justify-content: s;
+} */
+</style>

+ 5 - 5
src/HDrpManagement/projectStage/modules/stageDetail.vue

@@ -2,19 +2,19 @@
   <div>
     <el-button type="text" size="small" @click="onShow">详情</el-button>
     <el-drawer
-      title="我是标题"
+      title="编辑模板"
       :visible.sync="dialogStageVisible"
       direction="rtl"
       :modal="true"
       :show-close="false"
-      :withHeader="false"
+      :withHeader="save"
       append-to-body
       @close="onClose"
       size="50%">
       <div class="flex-align-center flex-between container" style="border-bottom:1px solid #f1f2f3">
-        <div style="font-size:20px">{{data.stagetempname}}</div>
+        <div style="font-size:20px" v-show="edit">{{data.stagetempname}}</div>
         <div>
-          <el-button class="inline-16" size="mini" @click="onEdit">编 辑</el-button>
+          <el-button class="inline-16" v-if="edit" size="mini" @click="onEdit">编 辑</el-button>
 <!--          <el-button  size="small">作 废</el-button>-->
           <to_void class="inline-16" v-if="edit" :data="form" @onSuccess="toVoidSuccess"></to_void>
           <is_used class="inline-16" v-if="edit" :data="form" @onSuccess="onSuccess"></is_used>
@@ -133,7 +133,7 @@
       </div>
       <div class="fixed__btn__panel" v-show="save">
         <el-button size="small" @click="onCancel" class="normal-btn-width">取 消</el-button>
-        <el-button size="small" type="primary" @click="onSubmit" class="normal-btn-width">确 定</el-button>
+        <el-button size="small" type="warning" @click="onSubmit" class="normal-btn-width">确 定</el-button>
       </div>
     </el-drawer>
   </div>

+ 3 - 6
src/SDrpManagement/salerPrivatecustomer/index.vue

@@ -18,10 +18,9 @@
               <el-dropdown-item v-for="(item,index) in editableTabs" :key="index" :command="item">{{item.title}}</el-dropdown-item>
             </el-dropdown-menu>
           </el-dropdown> -->
-          <label class="search__label" style="width: 32px">分类:</label>
-          <el-select class="inline-16" v-model="value" size="small" placeholder="请选择">
+          <label class="search__label" style="width: 70px">数据分类:</label>
+          <el-select class="inline-16" v-model="value" size="small" placeholder="请选择数据分类" @change="selectChange" clearable>
             <el-option
-              @click.native="handleCommand(item)"
               v-for="item in editableTabs"
               :key="item.index"
               :label="item.title"
@@ -107,9 +106,6 @@ export default {
       value:'1',
       editableTabsValue: "我负责的",
       editableTabs: [{
-        title: '全部',
-        name: "0",
-      },{
         title: '我负责的',
         name: "1",
       }, {
@@ -235,6 +231,7 @@ export default {
       this.option.industryData = res.data
     },
     selectChange(){
+      this.tabIndex = this.value
       if (this.dateSelect !== '' && this.dateSelect !== null){
         this.selectParam.startdate = this.dateSelect[0]
         this.selectParam.enddate = this.dateSelect[1]