Просмотр исходного кода

保司费用清单、结算单页面增加默认日期

@dongkboy 2 лет назад
Родитель
Сommit
b57173a964

+ 63 - 19
src/views/FinancialManagement/CarInsurance/CompanySettlement/DocGenerate.vue

@@ -63,7 +63,8 @@
           >
             <el-form-item label="出单时间:">
               <el-date-picker
-                class="widths" style="width: 220px;"
+                class="widths"
+                style="width: 220px"
                 v-model="dateTime"
                 type="daterange"
                 @change="DateChange"
@@ -109,8 +110,16 @@
       >
       </kt-common-table>
     </el-main>
-    <el-dialog :visible.sync="dialogVisible" width="30%" class="saomazhifucodeClass">
-      <el-result icon="success" title="生成成功" :subTitle="'结算单号:'+docOrderid">
+    <el-dialog
+      :visible.sync="dialogVisible"
+      width="30%"
+      class="saomazhifucodeClass"
+    >
+      <el-result
+        icon="success"
+        title="生成成功"
+        :subTitle="'结算单号:' + docOrderid"
+      >
       </el-result>
     </el-dialog>
   </div>
@@ -140,11 +149,11 @@ export default {
         startDate: "",
         endDate: "",
       },
-      dateTime: "",
+      dateTime: [],
       companyList: [],
       institutionOptions: [],
       dialogVisible: false,
-      docOrderid:"",
+      docOrderid: "",
       // 右侧列表查询数据Start
       pageResult: [],
       columns: [
@@ -162,7 +171,12 @@ export default {
         },
         { prop: "agreementId", label: "协议号", minWidth: 160 },
         { prop: "licenseno", label: "车牌号", minWidth: 160 },
-        { prop: "payDate", label: "出单日期", minWidth: 160 , formatter: this.timeFormatter,},
+        {
+          prop: "payDate",
+          label: "出单日期",
+          minWidth: 160,
+          formatter: this.timeFormatter,
+        },
         { prop: "taxamount", label: "车船税", minWidth: 160 },
         { prop: "noTaxPremium", label: "不含税保费", minWidth: 160 },
         { prop: "commissionFeerate", label: "手续费费用比例", minWidth: 160 },
@@ -175,6 +189,10 @@ export default {
     };
   },
   created() {
+    let monthtime=this.lastMonth();
+    this.pageRequest.startDate=monthtime[0];
+    this.pageRequest.endDate=monthtime[1];
+    this.dateTime=monthtime;
     this.companyquery(); //公司数据
     this.deptQuery(); //机构数据
   },
@@ -185,7 +203,7 @@ export default {
       this.$api.settlement
         .iscompanyTosettledQuery(this.pageRequest)
         .then((res) => {
-          if (res.code=='200') {
+          if (res.code == "200") {
             this.pageResult = res.data;
           } else {
             this.$message({
@@ -331,15 +349,41 @@ export default {
       return datetime;
     },
     handleTableSettled(ids) {
-      this.$api.settlement
-        .docGenerate(ids)
-        .then((res) => {
-          if(res.code=='200'){
-            this.docOrderid=res.msg;
-            this.dialogVisible = true;
-            this.onSubmit();
-          }
-        });
+      this.$api.settlement.docGenerate(ids).then((res) => {
+        if (res.code == "200") {
+          this.docOrderid = res.msg;
+          this.dialogVisible = true;
+          this.onSubmit();
+        }
+      });
+    },
+    lastMonth() {
+      // 获取当前日期
+      var currentDate = new Date();
+      // 获取上个月的年份和月份
+      var year = currentDate.getFullYear();
+      var month = currentDate.getMonth() - 1;
+      // 如果当前是1月份,则年份减1,月份变为12月
+      if (month < 0) {
+        year--;
+        month = 11;
+      }
+      // 获取上个月的最后一天
+      var lastDayOfLastMonth = new Date(year, month + 1, 0);
+      // 格式化为两位数的字符串
+      var formatNumber = function (num) {
+        return num < 10 ? "0" + num : num;
+      };
+      // 上月1日的日期字符串
+      var startDate = year + "-" + formatNumber(month + 1) + "-01";
+      // 上月最后一日的日期字符串
+      var endDate =
+        year +
+        "-" +
+        formatNumber(month + 1) +
+        "-" +
+        formatNumber(lastDayOfLastMonth.getDate());
+        return [startDate,endDate]
     },
   },
 };
@@ -354,7 +398,7 @@ export default {
   width: 300px;
 }
 /deep/ .saomazhifucodeClass .el-dialog__body,
-  .saomazhifucodeClass .el-dialog__header {
-    padding: 0;
-  }
+.saomazhifucodeClass .el-dialog__header {
+  padding: 0;
+}
 </style>

+ 171 - 71
src/views/FinancialManagement/CarInsurance/CompanySettlement/ExpensesList.vue

@@ -1,49 +1,116 @@
 <template>
-	<div>
-    <div class="retrieval p-2 ">
-      <el-form :inline="true" :model="pageRequest" class="demo-form-inline  flex  a-start u-f-sa" size="small" label-width="90px">
-      <el-row>
-        <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
-          <el-form-item label="保险公司:">
-            <el-select v-model="pageRequest.companyId" filterable  class="widths" clearable>
-              <el-option v-for="val in companyList" :key='val.id' :label="val.name" :value="val.id" ></el-option>
-            </el-select>
-          </el-form-item>
-
-        </el-col>
-        <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
-          <el-form-item label="出单时间:">
-            <el-date-picker class="widths" style="width: 220px;"
-      v-model="dateTime"
-      type="daterange"
-      @change="DateChange"
-      range-separator="至"
-      value-format="yyyy-MM-dd"
-      start-placeholder="开始日期"
-      end-placeholder="结束日期">
-    </el-date-picker>
-          </el-form-item>
-        </el-col>
-        <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
-          <el-form-item label="车牌号:">
-            <el-input v-model="pageRequest.licenseno" placeholder="请输入车牌号" class="widths" clearable></el-input>
-          </el-form-item>
-        </el-col>
-        <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
-          <el-form-item label="协议号:">
-            <el-input v-model="pageRequest.agreementId" placeholder="请输入协议号" class="widths" clearable></el-input>
-          </el-form-item>
-        </el-col>
-      </el-row>
-    <el-button type="primary" size="small" @click="onSubmit">查询</el-button>
-
-    </el-form>
+  <div>
+    <div class="retrieval p-2">
+      <el-form
+        :inline="true"
+        :model="pageRequest"
+        class="demo-form-inline flex a-start u-f-sa"
+        size="small"
+        label-width="90px"
+      >
+        <el-row>
+          <el-col
+            :xs="xscell"
+            :sm="smcell"
+            :md="mdcell"
+            :lg="lgcell"
+            :xl="xlcell"
+          >
+            <el-form-item label="保险公司:">
+              <el-select
+                v-model="pageRequest.companyId"
+                filterable
+                class="widths"
+                clearable
+              >
+                <el-option
+                  v-for="val in companyList"
+                  :key="val.id"
+                  :label="val.name"
+                  :value="val.id"
+                ></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col
+            :xs="xscell"
+            :sm="smcell"
+            :md="mdcell"
+            :lg="lgcell"
+            :xl="xlcell"
+          >
+            <el-form-item label="出单时间:">
+              <el-date-picker
+                class="widths"
+                style="width: 220px"
+                v-model="dateTime"
+                type="daterange"
+                @change="DateChange"
+                range-separator="至"
+                value-format="yyyy-MM-dd"
+                start-placeholder="开始日期"
+                end-placeholder="结束日期"
+              >
+              </el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col
+            :xs="xscell"
+            :sm="smcell"
+            :md="mdcell"
+            :lg="lgcell"
+            :xl="xlcell"
+          >
+            <el-form-item label="车牌号:">
+              <el-input
+                v-model="pageRequest.licenseno"
+                placeholder="请输入车牌号"
+                class="widths"
+                clearable
+              ></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col
+            :xs="xscell"
+            :sm="smcell"
+            :md="mdcell"
+            :lg="lgcell"
+            :xl="xlcell"
+          >
+            <el-form-item label="协议号:">
+              <el-input
+                v-model="pageRequest.agreementId"
+                placeholder="请输入协议号"
+                class="widths"
+                clearable
+              ></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-button type="primary" size="small" @click="onSubmit"
+          >查询</el-button
+        >
+      </el-form>
     </div>
-		<el-main ref="elMain" style="padding: 0px;">
-      <kt-common-table  permsDelete="sys:user:delete" :showOperation="false"  :showBatchDelete="false" :showBatchSettled="false" :showBatchPrint="false" permsButton1="sys:user:edit" permsButton2="sys:user:edit" permsButton3="sys:user:edit" :data="pageResult" :columns="columns" @findPage="findPage"    @handleSettled="handleTableSettled" @handlePrint="handlePrint" >
-        </kt-common-table>
-		</el-main>
-	</div>
+    <el-main ref="elMain" style="padding: 0px">
+      <kt-common-table
+        permsDelete="sys:user:delete"
+        :showOperation="false"
+        :showBatchDelete="false"
+        :showBatchSettled="false"
+        :showBatchPrint="false"
+        permsButton1="sys:user:edit"
+        permsButton2="sys:user:edit"
+        permsButton3="sys:user:edit"
+        :data="pageResult"
+        :columns="columns"
+        @findPage="findPage"
+        @handleSettled="handleTableSettled"
+        @handlePrint="handlePrint"
+      >
+      </kt-common-table>
+    </el-main>
+  </div>
 </template>
 <script>
 import KtCommonTable from "@/views/Core/KtCommonTable.vue"; //表格组件
@@ -65,14 +132,14 @@ export default {
         //查询的默认条件
         pageNum: 1,
         pageSize: 20,
-        companyId:"",
-        agreementId:"",
-        startDate:"",
-        endDate:"",
-        licenseno:"",
+        companyId: "",
+        agreementId: "",
+        startDate: "",
+        endDate: "",
+        licenseno: "",
       },
-      dateTime:"",
-      companyList:[],
+      dateTime:  [ "", "" ],
+      companyList: [],
       //////////////////////////////////
       dataForm: {
         ordernos: "",
@@ -107,35 +174,42 @@ export default {
         { prop: "commissionFeevalue", label: "手续费费用", minWidth: 100 },
         { prop: "otherFeevalue", label: "其他费用", minWidth: 100 },
         { prop: "allFeeValue", label: "总费用", minWidth: 100 },
-        { prop: "finalFeeValue", label: "已结算费用", minWidth: 100 },
+        { prop: "finalFeeValue", label: "是否生成结算单", minWidth: 100, formatter: this.docFormatter, },
       ],
     };
   },
   created() {
+    let monthtime=this.currentMonth();
+    this.pageRequest.startDate=monthtime[0];
+    this.pageRequest.endDate=monthtime[1];
+    this.dateTime=monthtime
     this.companyquery();
   },
   mounted() {},
   methods: {
-    onSubmit(){
-      this.$api.settlement.iscompanyCostQuerypage(this.pageRequest).then(res=>{
-        if (res.code=='200') {
-          this.pageResult=res.data;
-        }else{
-          this.$message({
-          message: '无数据',
-          type: 'warning'
+    onSubmit() {
+      this.$api.settlement
+        .iscompanyCostQuerypage(this.pageRequest)
+        .then((res) => {
+          if (res.code == "200") {
+            this.pageResult = res.data;
+          } else {
+            this.$message({
+              message: "无数据",
+              type: "warning",
+            });
+          }
         });
-        }
-      })
     },
-    companyquery(){
-      this.$api.letter.gainTopList().then(res=>{
-      this.companyList=res.data
-    })
+    companyquery() {
+      this.$api.letter.gainTopList().then((res) => {
+        this.companyList = res.data;
+      });
     },
-    DateChange(e){
-      this.pageRequest.startDate=e[0];
-      this.pageRequest.endDate=e[1]
+    DateChange(e) {
+      console.log(e)
+      this.pageRequest.startDate = e[0];
+      this.pageRequest.endDate = e[1];
     },
 
     handlePrint() {
@@ -154,6 +228,15 @@ export default {
         window.URL.revokeObjectURL(url);
       });
     },
+    docFormatter(row,column){
+      let name="";
+      if(row.finalFeeValue>0){
+        name="是"
+      }else{
+        name="否"
+      }
+      return name;
+    },
     //-- formatter begin--
     agreetypeFormatter(row, column) {
       //协议类型
@@ -217,7 +300,7 @@ export default {
     },
 
     handleTableSettled(ids) {
-      console.log(ids)
+      console.log(ids);
       this.dialogVisible = true;
       this.dataForm.ordernos = ids;
     },
@@ -241,6 +324,24 @@ export default {
         this.dataForm[key] = "";
       }
     },
+    //当月
+    currentMonth(){
+  // 获取当前日期
+  let currentDate = new Date();
+    // 当前日期的年、月、日
+    var year = currentDate.getFullYear();
+    var month = currentDate.getMonth() + 1;
+    var day = currentDate.getDate();
+    // 格式化为两位数的字符串
+    var formatNumber = function (num) {
+      return num < 10 ? "0" + num : num;
+    };
+    // 当月1日的日期字符串
+    var startDate = year + "-" + formatNumber(month) + "-01";
+    // 当日的日期字符串
+    var endDate = year + "-" + formatNumber(month) + "-" + formatNumber(day);
+      return [startDate,endDate]
+    }
   },
 };
 </script>
@@ -254,5 +355,4 @@ export default {
 .widths1 {
   width: 300px;
 }
-
 </style>