소스 검색

代码上传

zhangqiOMG 2 년 전
부모
커밋
ad1545b15c

+ 51 - 0
src/HDrpManagement/invoiceapp/index.vue

@@ -0,0 +1,51 @@
+
+<template>
+  <div>
+    <basicLayout 
+      ref="basicLayout" 
+      :oldFormPath="{
+        add:'HDrpManagement/invoiceapp/modules'
+      }"
+      tableName="invoiceTable" 
+      idName="sa_invoiceapplyid" 
+      :apiId="{query:20221216143103,del:20221216143203}"
+      :options="options"
+      :detailPath="{
+        path:'/invoiceDetail'
+      }"
+      >
+      <div slot="custom"></div>
+      <template v-slot:tbList="scope">
+        <div>
+          {{scope.data.column.data[[scope.data.column.columnname]]}}
+        </div>
+      </template>
+      <template v-slot:tbOpreation="scope">
+      </template>
+    </basicLayout>
+  </div>
+</template>
+
+<script>
+/**
+ * @basicLayout 提供this.$ref['basicLayout'].listData()方法查询列表信息
+ * @param {string} formPath 新建,编辑组件所在文件夹名称,以后所有列表新增修改文件统一放入Form文件夹下面,并创建与开发应用相同的名称的子文件夹
+ * @param {string} tableName 开发端配置的表格名称
+ * @param {String} idName 数据主id名称
+ * @param {object} apiId:{query:查询的接口id,del:删除的接口id} 
+ * @param {Array} options:{label:描述,value:值} 
+ */
+export default {
+  data () {
+    return {
+      options:[]
+      
+    }
+  },
+  methods:{
+  }
+}
+
+</script>
+<style>
+</style>

+ 211 - 0
src/HDrpManagement/invoiceapp/modules/add.vue

@@ -0,0 +1,211 @@
+<template>
+  <div>
+    <el-button size="small" type="primary" @click="drawer = true">新 建</el-button>
+    <el-drawer
+      title="新建开票申请单"
+      :visible.sync="drawer"
+      direction="rtl"
+      :show-close="false"
+      append-to-body
+      size="700px"
+      @close="onClose">
+      <div class="drawer__panel">
+        <el-row :gutter="20">
+          <el-form :model="form" :rules="rules" ref="form" class="demo-form-inline" size="small" label-position="right" label-width="80px">
+            <el-col :span="12">
+              <p class="normal-title normal-margin">经销商信息</p>
+              <el-form-item label="经销商" prop="enterprisename">
+                <el-popover
+                  placement="bottom"
+                  trigger="click"
+                  v-model="visible">
+                  <invoiceCanUseAgent ref="UseAgent" @selectRow="selectRow"></invoiceCanUseAgent>
+                  <el-input readonly slot="reference" v-model="form.enterprisename" @focus="queryAgent" suffix-icon="el-icon-arrow-down" placeholder="经销商"></el-input>
+                </el-popover>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <p class="normal-title normal-margin">财务信息</p>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="税号" prop="taxno">
+                <el-popover
+                  placement="bottom"
+                  trigger="click"
+                  :disabled="form.enterprisename === ''"
+                  v-model="visible1">
+                  <invoiceCanUseTax :sys_enterpriseid="form.sys_enterpriseid" ref="UseTax" @selectTaxRow="selectTaxRow"></invoiceCanUseTax>
+                  <el-input readonly :disabled="form.enterprisename === ''" slot="reference" v-model="form.taxno" @focus="queryTax" suffix-icon="el-icon-arrow-down" placeholder="选择税号"></el-input>
+                </el-popover>
+              </el-form-item>
+              <el-form-item label="开票单位">
+                <el-input readonly v-model="form.invo_enterprisename" placeholder="开票单位"></el-input>
+              </el-form-item>
+              <el-form-item label="开票地址">
+                <el-input readonly v-model="form.address" placeholder="开票地址"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="联系电话">
+                <el-input readonly v-model="form.phonenumber" placeholder="联系电话"></el-input>
+              </el-form-item>
+              <el-form-item label="开户行">
+                <el-input readonly v-model="form.bank" placeholder="开户行"></el-input>
+              </el-form-item>
+              <el-form-item label="开户账号">
+                <el-input readonly v-model="form.bankcardno" placeholder="开户账号"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item label="备注">
+                <el-input v-model="form.remarks" type="textarea" :aotusize="{minRows:4}" placeholder="备注"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+               <p class="normal-title normal-margin">开票信息</p>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="发票种类">
+                <el-select style="width:100%" v-model="form.invoiceline" placeholder="请选择">
+                  <el-option label="s/专用发票" value="s"></el-option>
+                  <el-option label="p/普通发票(电票)" value="p"></el-option>
+                </el-select>
+              </el-form-item>
+               <el-form-item label="发票限额" prop="quota">
+                <el-input v-model="form.quota" placeholder="发票限额"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="复核人">
+                <el-input v-model="form.invoicechecker" placeholder="发票复核人"></el-input>
+              </el-form-item>
+              <el-form-item label="收款人">
+                <el-input v-model="form.invoicepayee" placeholder="发票收款人"></el-input>
+              </el-form-item>
+              <el-form-item label="开票员">
+                <el-input v-model="form.invoiceclerk" placeholder="发票开票员"></el-input>
+              </el-form-item>
+            </el-col>
+          </el-form>
+        </el-row>
+      </div>
+      <div class="fixed__btn__panel">
+        <el-button size="small" @click="drawer = false" class="normal-btn-width">取 消</el-button>
+        <el-button size="small" type="primary" @click="onSubmit" class="normal-btn-width">保 存</el-button>
+      </div>
+    </el-drawer>
+
+  </div>
+</template>
+
+<script>
+import invoiceCanUseAgent from '@/template/invoiceCanUseAgent/index.vue'
+import invoiceCanUseTax from '@/template/invoiceCanUseTax/index.vue'
+
+export default {
+  data () {
+    var checktaxno = (rule, value, callback) => {
+      if (this.form.enterprisename === '') return callback(new Error('请先选择经销商'));
+      if (!value) {
+        return callback(new Error('请选择税号'));
+      }
+      callback();
+    };
+    return {
+      drawer:false,
+      visible:false,
+      visible1:false,
+      form:{
+        enterprisename:'',
+        taxno:'',
+        sa_invoiceapplyid:0,
+        remarks:'',
+        byhand:false,
+        invoiceline:'p'
+      },
+      value:'',
+      rules:{
+        enterprisename: [
+          { required: true, message: '请选择经销商', trigger: 'change' },
+        ],
+        taxno: [
+          { validator: checktaxno,trigger: 'change' }
+        ],
+        quota:[
+          { required: true, message: '发票限额不能为空', trigger: 'blur' },
+        ],
+      }
+    }
+  },
+  components:{
+    invoiceCanUseAgent,
+    invoiceCanUseTax
+  },
+  methods:{
+    onClose () {
+      this.form = {
+        enterprisename:'',
+        taxno:'',
+        sa_invoiceapplyid:0,
+        remarks:'',
+        byhand:false,
+        invoiceline:'p'
+      }
+    },
+    onSubmit () {
+      this.$refs['form'].validate(async (valid) => {
+        if (valid) {
+           const res = await this.$api.requested({
+            "id": "20221216142903",
+            "version":1,
+            "content": this.form
+          })
+          this.tool.showMessage(res,()=>{
+            this.$emit('onSuccess')
+            this.drawer = false
+            this.form = {
+              enterprisename:'',
+              taxno:'',
+              sa_invoiceapplyid:0,
+              remarks:'',
+              byhand:false,
+              invoiceline:'p'
+            }
+          })
+        } else {
+          return false;
+        }
+      });
+     
+    },
+    // 选择经销商
+    selectRow (row) {
+      this.visible = false
+      this.form.enterprisename = row.enterprisename
+      this.form.sys_enterpriseid = row.sys_enterpriseid
+    },
+    // 选择开票信息
+    selectTaxRow (row) {
+      this.visible1 = false
+      this.form.invo_enterprisename = row.enterprisename
+      this.form.taxno = row.taxno
+      this.form.address = row.address
+      this.form.phonenumber = row.phonenumber
+      this.form.bank = row.bank
+      this.form.bankcardno = row.bankcardno
+    },
+    // 查询经销商
+    queryAgent () {
+      this.$refs['UseAgent'].listData()
+    },
+
+    // 查询开票信息
+    queryTax () {
+      this.$refs['UseTax'].listData()
+    }
+  }
+}
+
+</script>
+<style>
+</style>

+ 102 - 0
src/HDrpManagement/invoiceapp/modules/addorderline.vue

@@ -0,0 +1,102 @@
+<template>
+  <div>
+    <el-button v-if="tool.checkAuth($route.name,'addorderline')" style="margin-bottom:10px" size="small" type="primary" @click="onShow">添加订单行</el-button>
+    <el-dialog title="可添加订单" append-to-body :visible.sync="dialogTableVisible">
+      <el-table :data="list" size="mini" border>
+        <el-table-column prop="sonum" label="订单号"></el-table-column>
+        <el-table-column prop="enterprisename" show-overflow-tooltip label="企业名称"></el-table-column>
+        <el-table-column prop="itemno" show-overflow-tooltip label="产品编号"></el-table-column>
+        <el-table-column prop="itemname" label="产品名称"></el-table-column>
+        <el-table-column prop="spec" label="型号">
+          <template slot-scope="scope">
+            {{scope.row.model}}
+          </template>
+        </el-table-column>
+        <el-table-column prop="qty" label="订单数量"></el-table-column>
+        <!-- <el-table-column prop="qty" label="发货数量"></el-table-column> -->
+        <el-table-column prop="writeoffamount" label="已核销金额"></el-table-column>
+        <el-table-column prop="invoiceamount" label="已开票金额"></el-table-column>
+        <el-table-column prop="remarks" show-overflow-tooltip label="备注"></el-table-column>
+        <el-table-column label="操作" width="90">
+          <template slot-scope="scope">
+            <el-button size="small" type="text" @click="addOrderLine(scope.row)">选择</el-button>
+          </template>
+        </el-table-column>
+      </el-table>
+      <div class="container" style="text-align:right">
+        <el-pagination
+          background
+          small
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
+          :current-page="currentPage"
+          :page-sizes="[20, 50, 100, 200]"
+          layout="total,sizes, prev, pager, next, jumper"
+          :total="total">
+        </el-pagination>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+export default {
+  props:['sys_enterpriseid'],
+  data () {
+    return {
+      dialogTableVisible:false,
+      list:[],
+      param:{
+        "id": "20221217085103",
+        "content": {
+          "sys_enterpriseid":0,
+          "sa_invoiceapplyid":0,
+          "where":{
+            "condition":"",
+            "sonum":"",
+            "begindate":"",
+            "enddate":""
+          }
+        }
+      },
+      list:[],
+      total:0,
+      currentPage:0
+    }
+  },
+  methods:{
+    onShow () {
+      console.log(11)
+      this.dialogTableVisible = true
+      this.listData()
+    },
+    async listData () {
+      this.param.content.sa_invoiceapplyid = this.$route.query.id
+      this.param.content.sys_enterpriseid = this.sys_enterpriseid
+      const res = await this.$api.requested(this.param)
+      this.list = res.data
+      this.total = res.total
+      this.currentPage = res.pageNumber
+    },
+    handleSizeChange(val) {
+      // console.log(`每页 ${val} 条`);
+      this.param.content.pageSize = val
+      this.listData()
+    },
+    handleCurrentChange(val) {
+      // console.log(`当前页: ${val}`);
+      this.param.content.pageNumber = val
+      this.listData()
+    },
+    addOrderLine (row) {
+      
+    }
+  },
+  mounted () {
+    this.listData()
+  }
+}
+
+</script>
+<style>
+</style>

+ 133 - 0
src/HDrpManagement/invoiceapp/modules/detail.vue

@@ -0,0 +1,133 @@
+<template>
+  <div>
+    <basicDetails
+        ref="details"
+        :titleText="`${mainData.billno}`"
+        :oldFormPath="{edit:'HDrpManagement/invoiceapp/modules'}"
+        :editData="mainData"
+        :mainAreaData="mainAreaData"
+        turnPageId="20221216143103"
+        idname="userid"
+        ownertable="sys_users"
+        tags=""
+        :tabs="['申请开票订单明细','蓝票信息','红票信息']"
+        @pageChange="pageChange"
+        @onEditSuccess="queryMainData($route.query.id)">
+      <div slot="tags">
+      </div>
+      <div slot="customOperation" >
+      </div>
+      <div slot="slot0" >
+        <invoiceOrder :sys_enterpriseid="mainData.sys_enterpriseid"></invoiceOrder>
+      </div>
+      <div slot="slot1" >
+      </div>
+    </basicDetails>
+  </div>
+</template>
+
+<script>
+import invoiceOrder from './invoiceOrder.vue'
+export default {
+  name: "detail",
+  data() {
+    return {
+      mainData:{},
+      mainAreaData:{}
+    }
+  },
+  components:{
+    invoiceOrder
+  },
+  methods:{
+    async queryMainData(id) {
+      const res = await this.$api.requested({
+        "id":20221216143003,
+        "content": {
+          "sa_invoiceapplyid": this.$route.query.id
+        }
+      })
+      this.mainData = res.data
+      this.changeDataStructure()
+    },
+    changeDataStructure() {
+      this.mainAreaData = [
+        {
+          label:'经销商',
+          value:this.mainData.agententerprisename
+        },
+        {
+          label:'税号',
+          value:this.mainData.taxno
+        },
+        {
+          label:'开票单位',
+          value:this.mainData.enterprisename
+        },
+         {
+          label:'开票地址',
+          value:this.mainData.address
+        },
+        {
+          label:'联系方式',
+          value:this.mainData.phonenumber
+        },
+        {
+          label:'开户行及账号',
+          value:this.mainData.bank + this.mainData.bankcardno
+        },
+        {
+          label:'发票限额',
+          value:this.mainData.quota
+        },
+        {
+          label:'状态',
+          value:this.mainData.status
+        },
+        {
+          label:'发票种类',
+          value:this.mainData.invoiceline === 's'?'专用发票':'普通发票(电票)'
+        },
+        {
+          label:'备注',
+          value:this.mainData.remarks
+        },
+        {
+          label:'复核人',
+          value:this.mainData.invoicechecker
+        },
+        {
+          label:'开票人',
+          value:this.mainData.invoiceclerk
+        },
+        {
+          label:'收款人',
+          value:this.mainData.invoicepayee
+        },
+        
+      ]
+    },
+    // 监听切换数据,上一页,下一页
+    pageChange (id,rowindex,tabIndex) {
+      this.flag = false
+      tabIndex = this.$route.query.tabIndex
+      this.$router.replace({path:'/customerDetail',query:{id:id,rowindex:rowindex,tabIndex:tabIndex}})
+      this.queryMainData(id)
+    },
+    onSuccess(){
+      this.visible = false
+      this.queryMainData(this.$route.query.id)
+      this.$emit('onSuccess')
+    }
+  },
+  mounted () {
+    this.queryMainData(this.$route.query.id)
+  },
+  created() {
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 192 - 0
src/HDrpManagement/invoiceapp/modules/edit.vue

@@ -0,0 +1,192 @@
+<template>
+  <div>
+    <el-button size="mini" type="primary" @click="drawer = true">编 辑</el-button>
+    <el-drawer
+      title="新建开票申请单"
+      :visible.sync="drawer"
+      direction="rtl"
+      :show-close="false"
+      append-to-body
+      size="700px">
+      <div class="drawer__panel">
+        <el-row :gutter="20">
+          <el-form :model="form" :rules="rules" class="demo-form-inline" size="small" label-position="right" label-width="80px">
+            <el-col :span="12">
+              <p class="normal-title normal-margin">经销商信息</p>
+              <el-form-item label="经销商">
+                <el-popover
+                  placement="bottom"
+                  trigger="click"
+                  v-model="visible">
+                  <invoiceCanUseAgent ref="UseAgent" @selectRow="selectRow"></invoiceCanUseAgent>
+                  <el-input readonly slot="reference" v-model="form.enterprisename" @focus="queryAgent" placeholder="经销商"></el-input>
+                </el-popover>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <p class="normal-title normal-margin">财务信息</p>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="税号">
+                <el-popover
+                  placement="bottom"
+                  trigger="click"
+                  v-model="visible1">
+                  <invoiceCanUseTax :sys_enterpriseid="form.sys_enterpriseid" ref="UseTax" @selectTaxRow="selectTaxRow"></invoiceCanUseTax>
+                  <el-input readonly slot="reference" v-model="form.taxno" @focus="queryTax" placeholder="税号"></el-input>
+                </el-popover>
+              </el-form-item>
+              <el-form-item label="开票单位">
+                <el-input readonly v-model="form.invo_enterprisename" placeholder="开票单位"></el-input>
+              </el-form-item>
+              <el-form-item label="开票地址">
+                <el-input readonly v-model="form.address" placeholder="开票地址"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="联系电话">
+                <el-input readonly v-model="form.phonenumber" placeholder="联系电话"></el-input>
+              </el-form-item>
+              <el-form-item label="开户行">
+                <el-input readonly v-model="form.bank" placeholder="开户行"></el-input>
+              </el-form-item>
+              <el-form-item label="开户账号">
+                <el-input readonly v-model="form.bankcardno" placeholder="开户账号"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item label="备注">
+                <el-input v-model="form.remarks" type="textarea" :aotusize="{minRows:4}" placeholder="备注"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+               <p class="normal-title normal-margin">开票信息</p>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="发票种类">
+                <el-select style="width:100%" v-model="value" placeholder="请选择">
+                  <el-option label="s/专用发票" value="s"></el-option>
+                  <el-option label="p/普通发票(电票)" value="p"></el-option>
+                </el-select>
+              </el-form-item>
+               <el-form-item label="发票限额">
+                <el-input v-model="form.quota" placeholder="开户账号"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="复核人">
+                <el-input v-model="form.invoicechecker" placeholder="发票复核人"></el-input>
+              </el-form-item>
+              <el-form-item label="收款人">
+                <el-input v-model="form.invoicepayee" placeholder="发票收款人"></el-input>
+              </el-form-item>
+              <el-form-item label="开票员">
+                <el-input v-model="form.invoiceclerk" placeholder="发票开票员"></el-input>
+              </el-form-item>
+            </el-col>
+          </el-form>
+        </el-row>
+      </div>
+      <div class="fixed__btn__panel">
+        <el-button size="small" @click="drawer = false" class="normal-btn-width">取 消</el-button>
+        <el-button size="small" type="primary" @click="onSubmit" class="normal-btn-width">保 存</el-button>
+      </div>
+    </el-drawer>
+
+  </div>
+</template>
+
+<script>
+import invoiceCanUseAgent from '@/template/invoiceCanUseAgent/index.vue'
+import invoiceCanUseTax from '@/template/invoiceCanUseTax/index.vue'
+
+export default {
+  data () {
+    var checkAge = (rule, value, callback) => {
+      if (!value) {
+        return callback(new Error('年龄不能为空'));
+      }
+      setTimeout(() => {
+        if (!Number.isInteger(value)) {
+          callback(new Error('请输入数字值'));
+        } else {
+          if (value < 18) {
+            callback(new Error('必须年满18岁'));
+          } else {
+            callback();
+          }
+        }
+      }, 1000);
+    };
+    return {
+      drawer:false,
+      visible:false,
+      visible1:false,
+      form:{
+        sa_invoiceapplyid:0,
+        remarks:'',
+        byhand:false,
+      },
+      value:'',
+      rules:{
+        enterprisename: [
+          { required: true, message: '请输入活动名称', trigger: 'blur' },
+        ],
+        taxno: [
+          { required: true, message: '请选择活动区域', trigger: 'change' }
+        ],
+      }
+    }
+  },
+  components:{
+    invoiceCanUseAgent,
+    invoiceCanUseTax
+  },
+  methods:{
+    async onSubmit () {
+      const res = await this.$api.requested({
+        "id": "20221216142903",
+        "version":1,
+        "content": this.form
+      })
+      this.tool.showMessage(res,()=>{
+        this.$emit('onSuccess')
+        this.drawer = false
+        this.form = {
+          sa_invoiceapplyid:0,
+          remarks:'',
+          byhand:false,
+        }
+      })
+    },
+    // 选择经销商
+    selectRow (row) {
+      this.visible = false
+      this.form.enterprisename = row.enterprisename
+      this.form.sys_enterpriseid = row.sys_enterpriseid
+    },
+    // 选择开票信息
+    selectTaxRow (row) {
+      this.visible1 = false
+      this.form.invo_enterprisename = row.enterprisename
+      this.form.taxno = row.taxno
+      this.form.address = row.address
+      this.form.phonenumber = row.phonenumber
+      this.form.bank = row.bank
+      this.form.bankcardno = row.bankcardno
+    },
+    // 查询经销商
+    queryAgent () {
+      this.$refs['UseAgent'].listData()
+    },
+
+    // 查询开票信息
+    queryTax () {
+      this.$refs['UseTax'].listData()
+    }
+  }
+}
+
+</script>
+<style>
+</style>

+ 79 - 0
src/HDrpManagement/invoiceapp/modules/invoiceOrder.vue

@@ -0,0 +1,79 @@
+<template>
+  <div>
+    <addorderline :sys_enterpriseid="sys_enterpriseid"></addorderline>
+    <el-table :data="list" size="mini" border>
+      <el-table-column prop="sonum" label="订单号"></el-table-column>
+      <el-table-column prop="enterprisename" label="企业名称"></el-table-column>
+      <el-table-column prop="remarks" label="备注"></el-table-column>
+      <el-table-column label="操作" width="90">
+        <template slot-scope="scope">
+          <el-button size="small" type="text" @click="createDispatch(scope.row)">选择</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    <div class="container" style="text-align:right">
+      <el-pagination
+        background
+        small
+        @size-change="handleSizeChange"
+        @current-change="handleCurrentChange"
+        :current-page="currentPage"
+        :page-sizes="[20, 50, 100, 200]"
+        layout="total,sizes, prev, pager, next, jumper"
+        :total="total">
+      </el-pagination>
+    </div>
+  </div>
+</template>
+
+<script>
+import addorderline from './addorderline.vue'
+export default {
+  props:['sys_enterpriseid'],
+  components:{
+    addorderline
+  },
+  data () {
+    return {
+      list:[],
+      param:{
+        "id": "20221217091303",
+        "content": {
+          "sa_invoiceapplyid":0,
+          "where":{
+            "condition":""
+          }
+        }
+      },
+      list:[],
+      total:0,
+      currentPage:0
+    }
+  },
+  methods:{
+    async listData () {
+      this.param.content.sa_invoiceapplyid = this.$route.query.id
+      const res = await this.$api.requested(this.param)
+      this.list = res.data
+      this.total = res.total
+      this.currentPage = res.pageNumber
+    },
+    handleSizeChange(val) {
+      // console.log(`每页 ${val} 条`);
+      this.param.content.pageSize = val
+      this.listData()
+    },
+    handleCurrentChange(val) {
+      // console.log(`当前页: ${val}`);
+      this.param.content.pageNumber = val
+      this.listData()
+    },
+  },
+  mounted () {
+    this.listData()
+  }
+}
+
+</script>
+<style>
+</style>

+ 1 - 1
src/HDrpManagement/logistics/modules/edit.vue

@@ -2,7 +2,7 @@ ed<template>
   <div>
     <el-button :disabled="data.status !=='新建'" type="primary" size="mini" @click="onShow(drawer = true)">编 辑</el-button>
     <el-drawer
-    title="创建物流单"
+    title="编辑物流单"
     :visible.sync="drawer"
     direction="rtl"
     size="80%"

+ 18 - 8
src/HDrpManagement/orderManage/details/index.vue

@@ -11,15 +11,15 @@
         ownertable="sa_order"
         delApiId="20221108152102"
         tags=""
-        :statusCheck="[{key:'status',value:'审核'},{key:'status',value:'提交'}]"
+        :statusCheck="[{key:'status',value:'审核'},{key:'status',value:'提交'},{key:'status',value:'关闭'}]"
         :tabs="['基本信息','订单明细','订单进度']"
         @pageChange="pageChange"
         @onEditSuccess="queryMainData($route.query.id)">
-      <div slot="customOperation" class="inline-16">
-        <el-button v-if="tool.checkAuth($route.name,'examine')" :disabled="mainData.status !== '提交'" type="primary" size="mini" @click="onSubmit('审核')">审 核</el-button>
-        <el-button v-if="tool.checkAuth($route.name,'reback')" :disabled="mainData.status !== '提交'" type="primary" size="mini" @click="dialogVisible = true">退 回</el-button>
-        <el-button v-if="tool.checkAuth($route.name,'submit')" :disabled="mainData.status !== '新建'"  type="primary" size="mini" @click="onSubmit('提交')">提 交</el-button>
-        <el-button v-if="tool.checkAuth($route.name,'close')" type="primary" size="mini">关 闭</el-button>
+        <div slot="customOperation" class="inline-16">
+          <el-button v-if="tool.checkAuth($route.name,'examine')" :disabled="mainData.status !== '提交'" type="primary" size="mini" @click="onSubmit('审核')">审 核</el-button>
+          <el-button v-if="tool.checkAuth($route.name,'reback')" :disabled="mainData.status !== '提交'" type="primary" size="mini" @click="dialogVisible = true">退 回</el-button>
+          <el-button v-if="tool.checkAuth($route.name,'submit')" :disabled="mainData.status !== '新建'"  type="primary" size="mini" @click="onSubmit('提交')">提 交</el-button>
+          <el-button v-if="tool.checkAuth($route.name,'close')" :disabled="mainData.status !== '审核'" type="primary" size="mini" @click="closeOrder">关 闭</el-button>
       </div>
       <div slot="slot0" >
         <default-info :mainData="mainData"></default-info>
@@ -148,8 +148,18 @@ export default {
         this.dialogVisible = false
       })
     },
-    
-
+    async closeOrder () {
+      const res = await this.$api.requested({
+        "id": 20221108164502,
+        "content": {
+          "sa_orderids":[this.$route.query.id]
+        },
+      })
+      this.tool.showMessage(res,()=>{
+        this.queryMainData()
+        this.dialogVisible = false
+      })
+    }
   },
   mounted () {
     this.queryMainData(this.$route.query.id)

+ 2 - 2
src/components/normal-basic-layout/index.vue

@@ -32,7 +32,7 @@
         </div>
         <div class="flex-align-stretch" style="min-width:800px">
           <slot name="custom"></slot>
-          <el-input style="width:200px;" placeholder="搜索" :suffix-icon="param.content.where.condition?param.content.where.condition.length > 0?'':'':'el-icon-search'" v-model="param.content.where.condition" @keyup.native.enter="listData(param.content.pageNumber = 1)" @clear="listData(param.content.pageNumber = 1)" size="small" class="input-with-select inline-16 layout_search__panel" clearable>
+          <el-input v-if="!hideSearch" style="width:200px;" placeholder="搜索" :suffix-icon="param.content.where.condition?param.content.where.condition.length > 0?'':'':'el-icon-search'" v-model="param.content.where.condition" @keyup.native.enter="listData(param.content.pageNumber = 1)" @clear="listData(param.content.pageNumber = 1)" size="small" class="input-with-select inline-16 layout_search__panel" clearable>
           </el-input>
         </div>
       </div>
@@ -83,7 +83,7 @@
 import {mapGetters} from 'vuex'
 export default {
   componentName:'normalTable',
-  props:['tableName','idName','tableData','apiId','formPath','oldFormPath','options','autoQuery','detailPath','customTitle','hidePagination'],
+  props:['tableName','idName','tableData','apiId','formPath','oldFormPath','options','autoQuery','detailPath','customTitle','hidePagination','hideSearch'],
   components:{
     tableTemp: () => import('./modules/table.vue'),
     setColumn: () => import('./modules/setColumn.vue'),

+ 23 - 0
src/router/HDrpManagement.js

@@ -500,6 +500,29 @@ const HDrpManagement = [
       },
     ]
   },
+  {
+    path: '/invoiceapp',
+    name:'invoiceapp',
+    meta: {
+      title: '开票申请',
+      ast_nav: true,
+      keeproute: true,
+    },
+    component: () => import(/* webpackChunkName: "about" */ '@/HDrpManagement/invoiceapp/index'),
+    children: [
+      {
+        path: '/invoiceDetail',
+        name:'invoiceapp',
+        meta: {
+          title: '开票申请单详情',
+          ast_nav: true,
+          keeproute: true,
+        },
+        component: () => import(/* webpackChunkName: "about" */ '@/HDrpManagement/invoiceapp/modules/detail')
+      },
+    ]
+  },
+  
   
 ];
 export default HDrpManagement;

+ 104 - 0
src/template/invoiceCanUseAgent/index.vue

@@ -0,0 +1,104 @@
+<template>
+  <div> 
+    <div class="flex-align-center flex-between mt-10">
+      <el-input style="width:200px" size="small"  suffix-icon="el-icon-search" v-model="param.content.where.condition" placeholder="搜索" @keyup.enter.native="listData(param.content.pageNumber = 1)" @clear="listData(param.content.pageNumber = 1)" clearable></el-input>
+    </div>
+    <div>
+      <el-table
+        ref="multipleTable"
+        :data="tableData"
+        style="width: 100%"
+        size="mini"
+        border>
+        <el-table-column
+          prop="enterprisename"
+          label="经销商名称"
+          width="180">
+        </el-table-column>
+        <el-table-column
+          prop="agentnum"
+          label="经销商编号"
+          width="180">
+        </el-table-column>
+         <el-table-column
+          prop="contact"
+          label="联系人"
+          width="90">
+        </el-table-column>
+        <el-table-column
+          label="地址"
+          width="180">
+          <template slot-scope="scope">
+            {{scope.row.province}}{{scope.row.city}}{{scope.row.county}}{{scope.row.address}}
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="操作"
+          width="90">
+          <template slot-scope="scope">
+            <el-button type="text" size="small" @click="selectRow(scope.row)">选 择</el-button>
+          </template>
+        </el-table-column>
+      </el-table>
+      <div style="margin-top:16px;text-align:right">
+        <el-pagination
+          background
+          small
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
+          :current-page="currentPage"
+          :page-size="param.content.pageSize"
+          layout="total, prev, pager, next, jumper"
+          :total="total">
+        </el-pagination>
+      </div>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  data () {
+    return {
+      param:{
+        "id": "20221216145803",
+        "content": {
+          "pageNumber":1,
+          "pageSize":20,
+          "where":{
+            "condition":""
+          }
+        }
+      },
+      tableData: [],
+      total:0,
+      currentPage:0
+    }
+  },
+  methods:{
+    async listData () {
+      const res = await this.$api.requested(this.param)
+      this.tableData = res.data
+      this.total = res.total
+      this.currentPage = res.pageNumber
+    },
+    handleSizeChange(val) {
+      // console.log(`每页 ${val} 条`);
+      this.param.content.pageSize = val
+      this.listData()
+    },
+    handleCurrentChange(val) {
+      // console.log(`当前页: ${val}`);
+      this.param.content.pageNumber = val
+      this.listData()
+    },
+    selectRow (row) {
+      this.$emit('selectRow',row)
+    }
+  },
+  mounted () {}
+}
+
+</script>
+<style>
+</style>

+ 107 - 0
src/template/invoiceCanUseTax/index.vue

@@ -0,0 +1,107 @@
+<template>
+  <div> 
+    <div class="flex-align-center flex-between mt-10">
+      <el-input style="width:200px" size="small"  suffix-icon="el-icon-search" v-model="param.content.where.condition" placeholder="搜索" @keyup.enter.native="listData(param.content.pageNumber = 1)" @clear="listData(param.content.pageNumber = 1)" clearable></el-input>
+    </div>
+    <div>
+      <el-table
+        ref="multipleTable"
+        :data="tableData"
+        style="width: 100%"
+        size="mini"
+        border>
+        <el-table-column
+          prop="enterprisename"
+          label="经销商名称"
+          width="180">
+        </el-table-column>
+        <el-table-column
+          prop="agentnum"
+          label="经销商编号"
+          width="180">
+        </el-table-column>
+         <el-table-column
+          prop="contact"
+          label="联系人"
+          width="90">
+        </el-table-column>
+        <el-table-column
+          label="地址"
+          width="180">
+          <template slot-scope="scope">
+            {{scope.row.province}}{{scope.row.city}}{{scope.row.county}}{{scope.row.address}}
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="操作"
+          width="90">
+          <template slot-scope="scope">
+            <el-button type="text" size="small" @click="selectRow(scope.row)">选 择</el-button>
+          </template>
+        </el-table-column>
+      </el-table>
+      <div style="margin-top:16px;text-align:right">
+        <el-pagination
+          background
+          small
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
+          :current-page="currentPage"
+          :page-size="param.content.pageSize"
+          layout="total, prev, pager, next, jumper"
+          :total="total">
+        </el-pagination>
+      </div>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  props:['sys_enterpriseid'],
+  data () {
+    return {
+      param:{
+        "id": "20221217135803",
+        "content": {
+          "pageNumber":1,
+          "pageSize":20,
+          "sys_enterpriseid":0,
+          "where":{
+            "condition":''
+          }
+        }
+      },
+      tableData: [],
+      total:0,
+      currentPage:0
+    }
+  },
+  methods:{
+    async listData () {
+      this.param.content.sys_enterpriseid = this.sys_enterpriseid
+      const res = await this.$api.requested(this.param)
+      this.tableData = res.data
+      this.total = res.total
+      this.currentPage = res.pageNumber
+    },
+    handleSizeChange(val) {
+      // console.log(`每页 ${val} 条`);
+      this.param.content.pageSize = val
+      this.listData()
+    },
+    handleCurrentChange(val) {
+      // console.log(`当前页: ${val}`);
+      this.param.content.pageNumber = val
+      this.listData()
+    },
+    selectRow (row) {
+      this.$emit('selectTaxRow',row)
+    }
+  },
+  mounted () {}
+}
+
+</script>
+<style>
+</style>

+ 1 - 1
src/template/logisyticCanUseDisBill/index.vue

@@ -2,7 +2,7 @@
   <div>
     <div class="flex-align-center flex-between mt-10">
       <el-input style="width:200px" size="small"  suffix-icon="el-icon-search" v-model="params.content.where.condition" placeholder="产品名称,编号" @keyup.enter.native="listData(params.content.pageNumber = 1)" @clear="listData(params.content.pageNumber = 1)" clearable></el-input>
-      <el-button type="primary" size="small" :disabled="tableSelectData.length === 0" @click="onConfirm">添加选中商品</el-button>
+      <el-button type="primary" size="small" :disabled="tableSelectData.length === 0" @click="onConfirm">添加选中发货单</el-button>
     </div>
     <el-table
       :data="tableData"

+ 0 - 1
src/template/orderCanUseProduct/index.vue

@@ -94,7 +94,6 @@ export default {
       this.tableData = res.data
       this.total = res.total
       this.currentPage = res.pageNumber
-      console.log(res.data,'canuse')
     },
     handleSizeChange(val) {
       // console.log(`每页 ${val} 条`);