Эх сурвалжийг харах

费用管理模块功能完善

haizhouwang 2 жил өмнө
parent
commit
bba4d9445d

+ 0 - 9
src/views/FinancialManagement/ExpenseManagement/ExpenseApplyFor.vue

@@ -870,15 +870,6 @@ export default {
     addUserFn() {
       this.dialogFormVisible = true;
     },
-    //选择收款单位信息事件
-    collectionChange(e) {
-      console.log(e);
-      if (e.length > 0) {
-        let obj = this.collectionData
-          .find((item) => item.bankCardNum == e[0])
-          .children.find((item) => item.bankCardNum == e[1]);
-      }
-    },
     //获取所有账户信息
     getAllUser() {
       this.$api.expense.getAccountByAccountName().then((res) => {

+ 2 - 4
src/views/FinancialManagement/ExpenseManagement/ExpenseComponent.vue

@@ -79,7 +79,7 @@
             </el-form-item>
           </el-col>
         </el-row>
-        <el-row v-if="type == 1&&formData.outerFlag == 0">
+        <el-row v-if="type == 1 && formData.outerFlag == 0">
           <el-col :span="12">
             <el-form-item label="开票员" prop="biller">
               <el-input v-model="formData.biller" autocomplete="off"></el-input>
@@ -96,7 +96,7 @@
             </el-form-item>
           </el-col>
         </el-row>
-        <el-row v-if="formData.outerFlag == 0&&formDataId && type == 1">
+        <el-row v-if="formData.outerFlag == 0 && formDataId && type == 1">
           <el-col :span="12">
             <el-form-item label="剩余开票额度" prop="ssd">
               <el-input-number
@@ -497,7 +497,6 @@ export default {
         ],
         establishTime: [
           {
-            type: "date",
             required: true,
             message: "请选择成立日期",
             trigger: "change",
@@ -505,7 +504,6 @@ export default {
         ],
         biller: [
           {
-            type: "date",
             required: true,
             message: "开票员不能为空",
             trigger: "change",

+ 25 - 14
src/views/FinancialManagement/ExpenseManagement/ExpenseManagement.vue

@@ -349,6 +349,19 @@
           <el-col :span="12"> </el-col>
         </el-row>
         <el-row>
+          <el-col :span="12">
+            <el-form-item label="支付方式" prop="payMethod">
+              <el-select v-model="inComeFormData.payMethod" multiple placeholder="">
+                <el-option
+                  v-for="item in payment_methodsData"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                >
+                </el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
           <el-col :span="12">
             <el-form-item label="备注" prop="remark">
               <el-select v-model="inComeFormData.remark" placeholder="">
@@ -385,6 +398,7 @@ export default {
   created() {
     this.business("account_quality"); //账户性质字典;
     this.business("use_funds"); //备注字典
+    this.business("payment_methods"); //支付方式字典
   },
   mounted() {
     // this.findPage();
@@ -395,9 +409,10 @@ export default {
       /**
        * 账户收入模块
        */
-      incomeDialogVisible: false, //收入弹出框状态
-      collectionData: [], //收入form表单  转账方下拉菜单数组
-      use_fundsData: [], //收入form表单  备注字典数据
+      incomeDialogVisible: false, //收入 弹出框状态
+      collectionData: [], //收入  转账方下拉菜单数组
+      use_fundsData: [], //收入  备注字典数据
+      payment_methodsData: [], //收入  支付方式字典数据
       inComeFormData: {
         //收入form表单
         collectionMessage: "", //收款名字
@@ -406,15 +421,17 @@ export default {
         bigApplyAmount: "", //大写金额
         remark: "", //备注
         company: "", //转账方
+        payMethod: [], //转账方
       },
       inComeFormRules: {
-        //收入form表单规则
+        //收入规则
         company: [
           { required: true, message: "转账方不能为空", trigger: "change" },
         ],
         remark: [{ required: true, message: "请选择备注", trigger: "change" }],
+        payMethod: [{ required: true, message: "请选择支付方式", trigger: "change" }],
       },
-      enterCardId: "", //点击收入按钮当条数据收入id
+      enterCardId: "", //收入id
       /**
        * 账户模块
        */
@@ -742,6 +759,7 @@ export default {
           bigApplyAmount: "", //大写金额
           remark: "", //备注
           company: "", //转账方
+          payMethod: [], //支付方式
         };
       }
     },
@@ -749,7 +767,6 @@ export default {
   methods: {
     //展开事件
     handleRowChange(e, row) {
-      console.log(e, row);
       if (row.length > 0) {
         //展开
         if (
@@ -785,7 +802,6 @@ export default {
     //获取所有外部账户信息
     getAllUser() {
       this.$api.expense.getAccountByAccountName().then((res) => {
-        console.log(res);
         if (res.code == 200) {
           let arr = [];
           let outArr = res.data.filter((item) => item.outerFlag == 1);
@@ -822,6 +838,8 @@ export default {
       let obj = JSON.parse(JSON.stringify(this.inComeFormData));
       obj.enterCardId = this.enterCardId;
       obj.fundFlow = obj.company + "→" + obj.collectionMessage;
+      obj.payMethod = obj.payMethod.join(',')
+      obj.revenueOutlay = '0'
       this.$refs.inComeFormData.validate((valid) => {
         if (valid) {
           this.$api.expense.insertAccountOperate(obj).then((res) => {
@@ -839,7 +857,6 @@ export default {
     },
     //点击页面收入按钮
     handleTableIncome(row, rows) {
-      console.log(row, rows);
       if (row.outerFlag == 1) {
         this.$message.error("请选择内部账户");
         return;
@@ -852,7 +869,6 @@ export default {
     },
     //点击页面支出按钮
     handleTableExpend(row) {
-      console.log(row);
       if (row.outerFlag == 1) {
         this.$message.error("请选择内部账户");
         return;
@@ -936,7 +952,6 @@ export default {
       this.$api.expense
         .getAccount(obj)
         .then((res) => {
-          console.log(res);
           if (res.code == 200) {
             res.data.records.forEach((element) => {
               //转化营业性质
@@ -1046,7 +1061,6 @@ export default {
     resetForm() {
       this.dialogFormVisible = false;
       this.formDataId = "";
-      console.log(this.type);
       if (this.type == 1) {
         this.accountFormData = {
           outerFlag: "0", //账户类别
@@ -1128,7 +1142,6 @@ export default {
       this.type = 1; //账户类型
       this.formDataId = row.accountId;
       this.$api.expense.getAccountById(this.formDataId).then((res) => {
-        console.log(res);
         if (res.code == 200) {
           this.accountFormData = JSON.parse(JSON.stringify(res.data[0]));
         } else {
@@ -1184,7 +1197,6 @@ export default {
         //新增修改卡信息
         let params = JSON.parse(JSON.stringify(this.accountCardFormData));
         delete params.certExpirationDate;
-        console.log(params);
         //修改
         if (this.formDataId) {
           this.$api.expense.updateAccountCard(params).then((res) => {
@@ -1205,7 +1217,6 @@ export default {
           //新增
         } else {
           this.$api.expense.insertAccountCard(params).then((res) => {
-            console.log(res);
             if (res.code == 200) {
               this.$message({
                 message: "添加成功",

+ 99 - 42
src/views/FinancialManagement/ExpenseManagement/PaymentManagement.vue

@@ -75,15 +75,15 @@
       :columns="columns"
       :showBatchDelete="false"
       :showOperation="true"
-      editButtonName="编辑"
       button3Name="撤销"
       button3Icon="fa fa-trash"
       button3Background="#f56c6c"
       @handleButton3="handleTableDelete"
       @findPage="findPage"
       :isshowpagination="true"
-      @handleEdit="handleDetail"
     ></kt-common-table>
+    <!-- editButtonName="编辑"
+    @handleEdit="handleDetail" -->
     <!-- 新增编辑弹框 -->
     <el-dialog
       class="dialog detailtTable"
@@ -285,6 +285,21 @@
               </el-form-item>
             </el-col>
           </el-row>
+          <el-row>
+            <el-col :span="12">
+              <el-form-item label="支付方式" prop="payMethod">
+                <el-select v-model="formData.payMethod" multiple placeholder="">
+                  <el-option
+                    v-for="item in payment_methodsData"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                  >
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+          </el-row>
         </el-form>
       </div>
       <div slot="footer" class="dialog-footer">
@@ -299,7 +314,7 @@
         <script>
 import KtCommonTable from "@/views/Core/KtCommonTable.vue"; //表格组件
 import KtButton from "@/views/Core/KtButton"; // 按钮权限组件
-import CommonUtil from "@/utils/comutil.js";
+import { toChies } from "../../../utils/moneyTransition";
 
 export default {
   name: "InvoiceInformation",
@@ -308,6 +323,7 @@ export default {
     // this.business("subjects"); //开票科目
     this.business("invoice_type"); //开票类型
     this.business("use_funds"); //备注
+    this.business("payment_methods"); //支付方式字典
   },
   mounted() {
     this.getAllUser();
@@ -317,10 +333,11 @@ export default {
       subjectsData: [], //开票科目数据
       invoice_typeData: [], //发票类型数据
       use_fundsData: [], //备注数据
+      payment_methodsData: [], //支付方式数据
       title: "开票新增",
       loading: true,
       detailDialog: false,
-      operationWidth: 200, //操作列宽度
+      operationWidth: 100, //操作列宽度
       queryFrom: {
         //查询条件
       },
@@ -331,58 +348,66 @@ export default {
         // 列表查询条件
         pageNo: 1,
         pageSize: 10,
-        invoiceTime:'',//开票日期
-        invoiceBy:'',//开票方
-        biller:'',//开票员
-        invoiceType:'',//开票类型
+        invoiceTime: "", //开票日期
+        invoiceBy: "", //开票方
+        biller: "", //开票员
+        invoiceType: "", //开票类型
       },
       columns: [
-        { prop: "biller", label: "开票员", type: "text" },
-        { prop: "invoiceSubjects", label: "开票科目", type: "text" },
-        { prop: "invoiceBy", label: "开票方", type: "text" },
-        { prop: "otherUnit", label: "对方单位名称", type: "text" },
-        { prop: "invoiceId", label: "发票号码", type: "text" },
-        { prop: "invoiceNum", label: "发票数", type: "text" },
-        { prop: "invoiceTime", label: "开票日期", type: "text" },
+        { prop: "invoiceId", label: "发票号码", type: "text", minWidth: 160 },
+        { prop: "invoiceNum", label: "发票数", type: "text", minWidth: 60 },
+        { prop: "invoiceBy", label: "开票方", type: "text", minWidth: 180 },
+        { prop: "otherUnit", label: "对方单位名称", type: "text", minWidth: 180 },
         {
-          prop: "rate",
-          label: "税率",
+          prop: "invoiceTypeName",
+          label: "发票类型",
           type: "text",
+          minWidth: 80
         },
         {
-          prop: "tax",
-          label: "额",
+          prop: "invoiceMoney",
+          label: "开票金额",
           type: "text",
+          minWidth: 100
         },
+        { prop: "invoiceTime", label: "开票日期", type: "text",minWidth: 100 },
         {
-          prop: "noHasTax",
-          label: "不含税金额",
+          prop: "payoutTime",
+          label: "进账日期",
           type: "text",
+          minWidth: 100
         },
+        { prop: "biller", label: "开票员", type: "text",minWidth: 70 },
+        { prop: "invoiceSubjects", label: "开票科目", type: "text",minWidth: 120 },
         {
-          prop: "invoiceTypeName",
-          label: "发票类型",
+          prop: "payoutMoney",
+          label: "进账金额",
           type: "text",
+          minWidth: 100
         },
         {
-          prop: "invoiceMoney",
-          label: "开票金额",
+          prop: "notPayoutMoney",
+          label: "未进账金额",
           type: "text",
+          minWidth: 100
         },
         {
-          prop: "payoutMoney",
-          label: "进账金额",
+          prop: "rate",
+          label: "税率(%)",
           type: "text",
+          minWidth: 70
         },
         {
-          prop: "notPayoutMoney",
-          label: "未进账金额",
+          prop: "tax",
+          label: "额",
           type: "text",
+          minWidth: 100
         },
         {
-          prop: "payoutTime",
-          label: "进账日期",
+          prop: "noHasTax",
+          label: "不含税金额",
           type: "text",
+          minWidth: 100
         },
       ],
       detailData: [],
@@ -397,7 +422,7 @@ export default {
         biller: "", //开票员
         invoiceBy: "", //开票方
         invoiceMoney: "", //开票金额
-        invoiceNum: "", //发票数
+        invoiceNum: 1, //发票数
         invoiceSubjects: "", //开票科目
         invoiceTime: "", //开票日期
         invoiceType: "", //发票类型
@@ -407,6 +432,7 @@ export default {
         payoutTime: "", //进账日期
         rate: 0, //税率
         remark: "", //备注
+        payMethod: [], //支付方式
       },
       rules: {
         //内部表单规则
@@ -435,12 +461,9 @@ export default {
           { required: true, message: "进账金额不能为空", trigger: "blur" },
         ],
         rate: [{ required: true, message: "税率不能为空", trigger: "blur" }],
-        remark: [
-          {
-            required: true,
-            message: "请选择备注",
-            trigger: "change",
-          },
+        remark: [{ required: true, message: "请选择备注", trigger: "change" }],
+        payMethod: [
+          { required: true, message: "请选择支付方式", trigger: "change" },
         ],
         payoutTime: [
           {
@@ -458,8 +481,36 @@ export default {
         ],
       },
       collectionData: [], //所以内部账户信息列表
+      formDataId: "", //编辑数据id
     };
   },
+  watch: {
+    detailDialog(n) {
+      if (!n) {
+        this.formData = {
+          bankCardNum: "", //卡号
+          biller: "", //开票员
+          invoiceBy: "", //开票方
+          invoiceMoney: "", //开票金额
+          invoiceNum: 1, //发票数
+          invoiceSubjects: "", //开票科目
+          invoiceTime: "", //开票日期
+          invoiceType: "", //发票类型
+          notPayoutMoney: 0, //未进账金额
+          otherUnit: "", //对方单位
+          payoutMoney: 0, //进账金额
+          payoutTime: "", //进账日期
+          rate: 0, //税率
+          remark: "", //备注
+          payMethod: [], //支付方式
+        };
+        this.formDataId = "";
+        this.$nextTick(() => {
+          this.$refs.formData.clearValidate();
+        });
+      }
+    },
+  },
   methods: {
     //撤销开票数据
     handleTableDelete(index) {
@@ -481,10 +532,11 @@ export default {
         })
         .catch(() => {});
     },
-    //选择收款单位change事件
+    //选择开票方change事件
     companyChange(item) {
       this.formData.bankCardNum = item.bankCardNum;
       this.formData.biller = item.biller;
+      this.formData.accountId = item.accountId;
     },
     //获取所有内部账户信息
     getAllUser() {
@@ -540,7 +592,12 @@ export default {
     //新增编辑开票信息
     submitInfo() {
       let params = JSON.parse(JSON.stringify(this.formData));
-      params.invoiceBy = this.formData.invoiceBy.accountName;
+      params.invoiceBy = this.formData.invoiceBy.accountName; //开票方
+      params.payMethod = params.payMethod.join(","); //支付方式
+      params.bigApplyAmount = toChies(params.invoiceMoney); //大写金额
+      params.company = params.otherUnit; //单位
+      params.fundFlow =
+        params.otherUnit + "→" + this.formData.invoiceBy.nameValue; //资金流向
       this.$refs.formData.validate((valid) => {
         if (valid) {
           if (this.formDataId) {
@@ -727,7 +784,7 @@ export default {
   box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
 }
 /deep/ .el-dialog__body {
-  height: 400px;
+  height: 450px;
   /* overflow-y: auto; */
 }
 .addremove-box {
@@ -754,7 +811,7 @@ export default {
 .detailtTable >>> .el-dialog {
   margin-top: 10vh !important;
 }
-.ktTable >>> .el-input-number--small {
+.frame >>> .el-input-number--small {
   width: 100%;
 }
 </style>