Преглед на файлове

订单管理,订单明细导出,通告详情修改

qymljy преди 2 години
родител
ревизия
82bc7439bc

+ 2 - 1
src/Form/marketing2/agent/add.vue

@@ -75,7 +75,7 @@
           </el-col>
           <el-col :span="12">
             <el-form-item label="上级经销商:">
-              <selectAgent ref="agent" @selectAgent="selectAgent"></selectAgent>
+              <selectAgent ref="agent" @selectAgent="selectAgent" :title="title"></selectAgent>
             </el-form-item>
           </el-col>
           <el-col :span="12">
@@ -125,6 +125,7 @@ selectAgent
 export default {
   data () {
     return {
+      title:'选择上级经销商',
       rules: {
         enterprisename: [
           { required: true, message: '请输入企业名称', trigger: 'blur' },

+ 8 - 0
src/Form/projectChange/edit.vue

@@ -146,14 +146,22 @@ export default {
       if (this.form.enddate_due !== ''){
         if (value > this.form.enddate_due){
           callback(new Error('预计开工时间不能晚于预计完工时间'))
+        }else {
+          callback();
         }
+      }else {
+        callback();
       }
     }
     var enddateTime = (rule,value,callback) =>{
       if (this.form.begdate_due !== ''){
         if (value < this.form.begdate_due){
           callback(new Error('预计完工时间不能早于预计开工时间'))
+        }else {
+          callback();
         }
+      }else {
+        callback();
       }
     }
     return {

+ 8 - 5
src/HDrpManagement/competitor/detail/modules/addressManage/modules/add.vue

@@ -8,7 +8,7 @@
         direction="rtl"
         :show-close="false"
         append-to-body
-        @close="dialogFormVisible = false">
+        @close="onCancel">
       <div class="drawer__panel">
         <el-row :gutter="20">
           <el-form :model="form" :rules="rules"  ref="form"  size="mini" label-position="right" label-width="75px">
@@ -57,7 +57,7 @@
             <el-col :span="24">
               <el-form-item  label="是否默认:" >
                 <el-radio v-model="form.isdefault" label="1">是</el-radio>
-                <el-radio v-model="form.isdefault" label="2">否</el-radio>
+                <el-radio v-model="form.isdefault" label="0">否</el-radio>
 
               </el-form-item>
             </el-col>
@@ -65,7 +65,7 @@
         </el-row>
       </div>
       <div class="fixed__btn__panel">
-        <el-button size="small" @click="dialogFormVisible = false" class="normal-btn-width">取 消</el-button>
+        <el-button size="small" @click="onCancel" class="normal-btn-width">取 消</el-button>
         <el-button size="small" :disabled="value.length === 0 && form.address === ''" type="primary" @click="onSubmit" class="normal-btn-width">确 定</el-button>
       </div>
     </el-drawer>
@@ -142,9 +142,10 @@ export default {
             address: "",
             remarks: "",
             workaddress: 1,
-            isdefault: 1,
+            isdefault: '1',
             isprimary: 1
           }
+          this.value = ''
           this.dialogFormVisible = false
           if (this.typeData !== ''){
             this.setTag(res.data.contactsid)
@@ -194,6 +195,7 @@ export default {
     onCancel(){
       this.dialogFormVisible = false
       this.$refs['form'].resetFields()
+      this.value = ''
       this.form = {
         contactsid: 0,
         sys_enterpriseid: "",
@@ -210,9 +212,10 @@ export default {
         address: "",
         remarks: "",
         workaddress: 1,
-        isdefault: 1,
+        isdefault: '1',
         isprimary: 1
       }
+      this.typeData = []
     }
   }
 }

+ 72 - 0
src/HDrpManagement/orderManage/details/export_excel.vue

@@ -0,0 +1,72 @@
+<template>
+  <div>
+    <el-button type="primary" size="small" @click="submit()" plain style="margin-bottom: 10px;margin-top: -10px">导 出</el-button>
+  </div>
+</template>
+
+<script>
+export default {
+  props:['tablecols','param','excelTitle','total'],
+  data () {
+    return {}
+  },
+  methods:{
+    async submit () {
+      let data = {}
+      // 如果传入了total,需要赋值保证数量准确性
+      if (this.total) {
+        this.param.content.pageSize = this.total
+      }
+      data = JSON.parse(JSON.stringify(this.param))
+
+      data.content.isAll = true
+      const res = await this.$api.requested(data)
+      console.log(res,"res111")
+      let table = JSON.parse(JSON.stringify(this.tablecols))
+      table.forEach((e,index) => {
+        // 由于表格数据结构问题这里需要判断一下
+       /* console.log(res)*/
+        console.log(index)
+        if (e.title === '省市县') {
+          table[index].title = '省'
+          table.splice(index + 1,0,{title:'市',columnname:'city'},{title:'县',columnname:'county'})
+        }else if(e.title === '型号/规格'){
+          res.data.forEach(e => {
+            e.model = e.model + '/' + e.spec
+          })
+        }else if(e.title === '需求日期'){
+          res.data.forEach(e => {
+            if (e.delivery === 0){
+              e.needdate = '不管控交期'
+            }else {
+              e.needdate = e.needdate
+            }
+          })
+        }else if(e.title === '回复交期'){
+          res.data.forEach(e => {
+            if (e.delivery === 0){
+              e.deliverydate = '不管控交期'
+            }else {
+              e.deliverydate = e.deliverydate
+            }
+          })
+        }else if(e.title === '小计'){
+          res.data.forEach(e => {
+            e.totalprice = e.price * e.qty
+          })
+        }
+      });
+      let hd = table.map(e=>{
+        return e.title
+      })
+      let ft = table.map(e=>{
+        return e.columnname
+      })
+      this.tool.exportExcel(hd,ft,res.data,this.excelTitle)
+    }
+  }
+}
+
+</script>
+<style>
+</style>

+ 45 - 4
src/HDrpManagement/orderManage/details/tabs/productlist.vue

@@ -1,5 +1,7 @@
 <template>
   <div>
+    <excel :tablecols="columnTitle" :param="param" :total="total" :excelTitle="excelTitle"></excel>
+<!--    <el-button type="primary" plain size="small" @click="export1" >导出</el-button>-->
     <el-table
       ref="multipleTable"
       :data="tableData"
@@ -24,6 +26,7 @@
         width="180">
       </el-table-column>
       <el-table-column
+          prop="model"
         label="型号/规格"
         width="150">
         <template slot-scope="scope">
@@ -31,6 +34,7 @@
         </template>
       </el-table-column>
       <el-table-column
+          prop="qty"
         label="数量"
         width="180">
         <template slot-scope="scope">
@@ -79,8 +83,9 @@
         </template>
       </el-table-column>
       <el-table-column
-        label="回复交期"
-        width="200">
+          prop="deliverydate"
+          label="回复交期"
+          width="200">
         <template slot="header" slot-scope="scope">
           <div>
             <el-date-picker
@@ -135,14 +140,16 @@
         </template>
       </el-table-column>
       <el-table-column
-        label="小计">
+        label="小计"
+        prop="totalprice">
         <template slot-scope="scope">
           <p style="color:red;font-weight:500">¥&nbsp;{{tool.formatAmount(scope.row.price * scope.row.qty,2)}}</p>
         </template>
       </el-table-column>
       <el-table-column
         label="备注"
-        width="300">
+        width="300"
+        prop="remarks">
         <template slot-scope="scope">
           <el-input v-if="type === 'edit'" v-model="scope.row.remarks" placeholder="输入订单备注" size="mini" @change="rowChange(scope.row,scope.$index)"></el-input>
           <p v-else>{{scope.row.remarks}}</p>
@@ -172,10 +179,16 @@
 <script>
 export default {
   props:['data','type'],
+  components:{
+    excel:() =>  import('../export_excel'),
+  },
   data () {
     return {
       dataRefresh:true,
       tableData:[],
+      tablecols:[],
+      columnTitle:[],
+      excelTitle:'订单明细',
       param:{
         "id": 20221109093902,
         "content": {
@@ -309,9 +322,37 @@ export default {
         },
       })
     },
+    /*async export1() {
+      if(!Object.keys(this.$refs.multipleTable.tableData).length > 0) return
+      let res = await this.$api.requested({
+        "id": 20221109093902,
+        "content": {
+          "sa_orderid": this.$route.query.id, //订单ID
+          "pageNumber": 1,
+          "pageSize": 20,
+          "where": {
+            "condition": ""
+          }
+        }
+      })
+      this.tool.showMessage(res,() => {
+        /!* window.open(res.msg,'_self')*!/
+        window.open(res.data,'_self')
+      })
+    }*/
   },
   mounted () {
     this.listData()
+    console.log("表结构")
+    this.columnTitle  = []
+    this.$refs.multipleTable.$children.forEach(obj => {
+
+      let columnChild = {'columnname':obj.prop,'filter':0,'rowindex':'','sequence':'','title':obj.label,'width':obj.width}
+      // 存到columnTitle数组中
+      this.columnTitle.push(columnChild)
+
+    })
+    console.log(this.columnTitle)
   }
 }
 

+ 1 - 0
src/HDrpManagement/projectChange/modules/modules/andEnterprise/index.vue

@@ -142,6 +142,7 @@ export default {
   },
   created() {
     this.tablecols = this.tool.tabelCol(this.$route.name).andEnterpriseTable.tablecols
+    console.log(this.tablecols,"tablecols")
     this.enterpriseType()
   },
 }

+ 1 - 1
src/HDrpManagement/projectChange/modules/modules/productSet/index.vue

@@ -7,7 +7,7 @@
       <el-input
           size="small"
           style="width: 200px;"
-          suffix-icon="el-icon-search"
+          :suffix-icon="params.content.where.condition?params.content.where.condition.length > 0?'':'':'el-icon-search'"
           v-model="params.content.where.condition"
           placeholder="产品名称,编号"
           @keyup.enter.native="listData(params.content.pageNumber= 1)"

+ 1 - 1
src/HManagement/marketing2/agent/details/modules/address/list.vue

@@ -9,7 +9,7 @@
         <p v-else>{{scope.column.data[scope.column.columnname]}}</p>
       </template>
        <template v-slot:opreation="scope">
-        <edit-contact :mainData="mainData" :row="scope.data" @onAddSuccess="listData"></edit-contact>
+        <edit-contact :mainData="mainData" :row="scope.data" @onAddSuccess="listData" class="inline-16"></edit-contact>
         <el-popconfirm
           title="确定删除吗?"
           @confirm="deleteContacts(scope.data)">

+ 16 - 8
src/SDrpManagement/QuotedPrice/detail/modules/productInventory/index.vue

@@ -110,7 +110,8 @@
         <el-table-column
             prop="num"
             label="数量"
-            width="180">
+            width="80"
+            fixed="right">
           <template slot-scope="scope">
             <p><span>{{scope.row.qty}}</span></p>
           </template>
@@ -118,7 +119,8 @@
         <el-table-column
             prop="marketprice"
             label="牌价"
-            width="100">
+            width="80"
+            fixed="right">
           <template slot-scope="scope">
             <p><span>{{scope.row.marketprice?scope.row.marketprice:'--'}}</span></p>
           </template>
@@ -126,7 +128,8 @@
         <el-table-column
             prop="discountrate"
             label="折扣(%)"
-            width="100">
+            width="80"
+            fixed="right">
           <template slot-scope="scope">
             <div v-if="scope.row.discountDifferenceAmount > 0">
               <p><span :style="[setTopColor]">{{scope.row.discountrate}}</span></p>
@@ -140,7 +143,8 @@
         <el-table-column
             prop="mindiscountrate"
             label="最低授权折扣(%)"
-            width="130">
+            width="80"
+            fixed="right">
           <template slot-scope="scope">
             <p><span>{{scope.row.mindiscountrate}}</span></p>
           </template>
@@ -148,7 +152,8 @@
         <el-table-column
             prop="price"
             label="单价"
-            width="100">
+            width="80"
+            fixed="right">
           <template slot-scope="scope">
             <div v-if="scope.row.discountDifferenceAmount > 0">
               <p><span :style="[setTopColor]">{{scope.row.price}}</span></p>
@@ -161,7 +166,8 @@
         <el-table-column
             prop="discountDifferenceAmount"
             label="授权折扣差额"
-            width="130">
+            width="80"
+            fixed="right">
           <template slot-scope="scope">
             <p><span>{{scope.row.discountDifferenceAmount}}</span></p>
           </template>
@@ -169,7 +175,8 @@
         <el-table-column
             prop="amount"
             label="金额"
-            width="100">
+            width="80"
+            fixed="right">
           <template slot-scope="scope">
             <p><span>{{scope.row.amount}}</span></p>
           </template>
@@ -177,7 +184,8 @@
         <el-table-column
             prop="specialoffer"
             label="是否特价"
-            width="100">
+            width="80"
+            fixed="right">
           <template slot-scope="scope">
             <i class="el-icon-check" v-if="scope.row.specialoffer === 1"  style="color: red;font-size: 20px"></i>
             <p v-else>--</p>

+ 3 - 3
src/SManagement/notice/notice_detail/NoticeDetail.vue

@@ -33,7 +33,7 @@
         <div class="handle">
           <p>总体</p>
           <el-rate v-model="send.content.score" :disabled="!commentData.leavemessage == false" :colors="scoreColor"></el-rate>
-          <p>满意</p>
+          <p>{{send.content.score === 1?'很不满意':send.content.score === 2?'不满意':send.content.score === 3?'一般':send.content.score === 4?'满意':send.content.score === 5?'很满意':'未评分'}}</p>
         </div>
         <p>{{detailData.readpersoncount}}人评分</p>
       </div>
@@ -42,7 +42,7 @@
         <div class="comment-panl">
           <el-input type="textarea" :rows="4" placeholder="请填写留言" resize="none" :disabled="!commentData.leavemessage == false" v-model="send.content.leavemessage">
           </el-input>
-          <el-button type="success" size="small" :disabled="!commentData.leavemessage == false" @click.native="sendComment()">发表</el-button>
+          <el-button :type="!commentData.leavemessage?'success':''" size="small" :disabled="!commentData.leavemessage == false" @click.native="sendComment()">提交</el-button>
         </div>
       </div>
     </div>
@@ -300,7 +300,7 @@ export default {
   min-height: 64px;
 }
 .normal-card .comments .text-box .comment-panl .el-button {
-  background: #52c41a;
+  /*background: #52c41a;*/
   margin-top: 10px;
 }
 .file-see img,video {

+ 5 - 5
src/components/delete_btn/index.vue

@@ -18,11 +18,11 @@ export default {
   data () {
     return {
       param: {
-        "id":this.nameId,
-        "version":1,
-        "content": {
-            [this.nameKey]:[this.id]
-        }
+        "id":this.nameId,
+        "content":{
+          "sa_contractid": this.$route.query.id,
+          [this.nameKey]:[this.id]
+        }
       }
     }
   },

+ 10 - 7
src/components/financialInfo/modules/add.vue

@@ -11,25 +11,25 @@
       <div class="drawer__panel">
         <el-form :model="form" ref="form" :rules="rules" :status-icon="false"	 size="mini" label-position="right" label-width="100px" class="demo-form-inline">
           <el-form-item label="抬头" prop="enterprisename">
-            <el-input v-model="form.enterprisename" placeholder="抬头"></el-input>
+            <el-input v-model="form.enterprisename" placeholder="请填写抬头"></el-input>
           </el-form-item>
           <el-form-item label="开票地址" prop="address">
-            <el-input v-model="form.address" placeholder="开票地址"></el-input>
+            <el-input v-model="form.address" placeholder="请填写开票地址"></el-input>
           </el-form-item>
           <el-form-item label="税号" prop="taxno">
-            <el-input v-model="form.taxno" placeholder="统一社会信用代码"></el-input>
+            <el-input v-model="form.taxno" placeholder="请填写税号"></el-input>
           </el-form-item>
           <el-form-item label="开户行" prop="bank">
-            <el-input v-model="form.bank" placeholder="统一社会信用代码"></el-input>
+            <el-input v-model="form.bank" placeholder="请填写开户行"></el-input>
           </el-form-item>
           <el-form-item label="开户账号" prop="bankcardno">
-            <el-input v-model="form.bankcardno" placeholder="开户账号"></el-input>
+            <el-input v-model="form.bankcardno" placeholder="请填写开户账号"></el-input>
           </el-form-item>
           <el-form-item label="联系电话" prop="phonenumber">
-            <el-input v-model="form.phonenumber" placeholder="手机号(电话)"></el-input>
+            <el-input v-model="form.phonenumber" placeholder="请填写手机号(电话)"></el-input>
           </el-form-item>
           <el-form-item label="备注" prop="remarks">
-            <el-input v-model="form.remarks" placeholder="备注"></el-input>
+            <el-input v-model="form.remarks" placeholder="请填写备注"></el-input>
           </el-form-item>
           <el-form-item>
             <el-button icon="el-icon-place" type="text">设置为默认</el-button>
@@ -72,6 +72,9 @@ export default {
         bank: [
           { required: true, message: '请输入开户行', trigger: 'blur' },
         ],
+        taxno: [
+          { required: true, message: '请输入税号', trigger: 'blur' },
+        ],
         bankcardno: [
           { required: true, message: '请输入开户账号', trigger: 'blur' },
         ],

+ 15 - 3
src/components/selectAgent/index.vue

@@ -1,7 +1,7 @@
 <template>
   <div>
-    <el-input v-model="value.enterprisename" readonly placeholder="选择经销商" suffix-icon="el-icon-arrow-down" autocomplete="off" @focus="onShow(dialogTableVisible=true)"></el-input>
-    <el-dialog title="选择人员" append-to-body :visible.sync="dialogTableVisible" width="80%">
+    <el-input v-model="value.enterprisename" readonly :placeholder="placeholder" suffix-icon="el-icon-arrow-down" autocomplete="off" @focus="onShow(dialogTableVisible=true)"></el-input>
+    <el-dialog :title="titleData" append-to-body :visible.sync="dialogTableVisible" width="80%">
       <div class="flex">
         <!-- 营销区域列表 -->
         <areaTree ref="arealist" style="width:200px" @onClick="onClick">
@@ -26,6 +26,7 @@ import areaTree from './area/list.vue'
 
 import agent from './agent/list.vue'
 export default {
+  props:["title"],
   components:{
     areaTree,
     agent
@@ -33,7 +34,9 @@ export default {
   data () {
     return {
       dialogTableVisible:false,
+      placeholder:"选择经销商",
       areaInfo:{},
+      titleData:'选择人员',
       value:{
         enterprisename:'',
         parentid:''
@@ -42,7 +45,11 @@ export default {
   },
   
   methods:{
-    onShow () {},
+    onShow () {
+      if (this.title !== ''){
+        this.titleData = this.title
+      }
+    },
     onClick (data) {
       console.log(this.value.enyerprisename)
       this.areaInfo = data
@@ -60,6 +67,11 @@ export default {
     onSalerSuccess () {
       this.$refs.saler.query_saler(this.areaInfo.sa_saleareaid)
     }
+  },
+  mounted() {
+    if (this.title !== ''){
+      this.placeholder = this.title
+    }
   }
 }