Jelajahi Sumber

#14060 Add dateRange to filter
#14081 add params in api
#14082 Manually add a remarks field

vbea 2 tahun lalu
induk
melakukan
0d5e380e80

+ 4 - 1
Strides-Admin/src/views/company/AssignmentSite.vue

@@ -107,7 +107,8 @@ export default {
       type: Object,
       default: () => ({})
     },
-    countryCode: String
+    countryCode: String,
+    groupPk: String | Number
   },
   data() {
     return {
@@ -116,6 +117,7 @@ export default {
         pageNo: 1,
         pageVo: {
           criteria: "",
+          groupPk: "",
           countryCode: "",
           userGroupDiscountId: "",
           assignmentStatus: ""
@@ -145,6 +147,7 @@ export default {
       handler(n, o) {
         console.log("watch.visible", n, this.item);
         if (n) {
+          this.filter.pageVo.groupPk = this.groupPk;
           this.filter.pageVo.countryCode = this.countryCode;
           this.filter.pageVo.userGroupDiscountId = this.item.userGroupDiscountId;
           this.filter.pageVo.assignmentStatus = "";

+ 1 - 0
Strides-Admin/src/views/company/discounts.vue

@@ -66,6 +66,7 @@
     </el-table>
     <AssignmentSite
       :countryCode="countryCode"
+      :groupPk="group"
       :visible="assignment.visible"
       :item="assignment.item"
       @hide="hideAssignment"/>

+ 14 - 5
Strides-Admin/src/views/financial/TopUp.vue

@@ -1,13 +1,13 @@
 <template>
   <div class="app-container">
       <div class="filter-view">
-        <el-date-picker
+        <!-- <el-date-picker
           v-model="filter.pageVo.date"
           type="month"
           format="yyyy-MM"
           value-format="yyyy-MM"
           placeholder="Date"
-          @change="handleFilter"/>
+          @change="handleFilter"/> -->
         <el-select
           class="filter-view-item"
           v-model="filter.pageVo.type"
@@ -32,7 +32,15 @@
             :label="item"
             :value="item" />
         </el-select>
-        <div style="flex: 1; max-width: 250px;">
+        <el-date-picker
+          v-model="filter.pageVo.dateRange"
+          type="daterange"
+          range-separator="-"
+          start-placeholder="Start Date"
+          end-placeholder="End Date"
+          value-format="yyyy-MM-dd"
+          @change="handleFilter"/>
+        <div style="flex: 1; max-width: 300px;">
           <el-input
             clearable
             v-model="filter.pageVo.criteria"
@@ -41,14 +49,14 @@
             @keyup.enter.native="handleFilter"
             @change="handleFilter"/>
         </div>
-        <div>
+        <!-- <div>
           <el-button
             type="primary"
             icon="el-icon-search"
             @click="handleFilter">
             Search
           </el-button>
-        </div>
+        </div> -->
       </div>
     </el-form>
     <el-table
@@ -161,6 +169,7 @@ export default {
           date: "",
           sitePk: "",
           criteria: "",
+          dateRange: [],
           chargeBoxId: "",
           paymentStatus: ""
         }

+ 9 - 0
Strides-Admin/src/views/financial/index.vue

@@ -13,6 +13,14 @@
           :label="item"
           :value="item" />
       </el-select>
+      <el-date-picker
+        v-model="filter.pageVo.dateRange"
+        type="daterange"
+        range-separator="-"
+        start-placeholder="Start Date"
+        end-placeholder="End Date"
+        value-format="yyyy-MM-dd"
+        @change="toSearch"/>
       <div style="flex: 1; max-width: 420px;">
         <el-input
           clearable
@@ -184,6 +192,7 @@ export default {
           sitePk: "",
           criteria: "",
           userType: "",
+          dateRange: [],
           chargeBoxId: ""
         }
       },

+ 1 - 0
Strides-Admin/src/views/site2/index.vue

@@ -104,6 +104,7 @@
             v-for="(item,index) in row.dynamicRates"
             :key="index"
             style="cursor: alias;"
+            title="Click to view rates"
             @click="viewRateDialog(row)">
             {{item}}
           </div>

+ 11 - 12
Strides-Admin/src/views/transaction/transactions.vue

@@ -32,6 +32,16 @@
               :label="item.name"
               :value="item.value"/>
           </el-select>
+          <div>
+            <el-date-picker
+              v-model="filter.dateRange"
+              type="daterange"
+              range-separator="-"
+              start-placeholder="Start Date"
+              end-placeholder="End Date"
+              value-format="yyyy-MM-dd"
+              @change="handleFilter"/>
+          </div>
           <div style="flex: 1; max-width: 500px;">
             <el-input
               class="filter-view-item"
@@ -42,24 +52,13 @@
               @change="handleFilter"
               clearable/>
           </div>
-          <div>
+          <!-- <div>
             <el-button
               type="primary"
               icon="el-icon-search"
               @click="handleFilter">
               Search
             </el-button>
-          </div>
-          <!-- <div>
-            <el-date-picker
-              v-model="filter.dateRange"
-              type="daterange"
-              range-separator="To"
-              start-placeholder="Start Date"
-              end-placeholder="End Date"
-              value-format="yyyy-MM-dd"
-              @change="handleFilter">
-            </el-date-picker>
           </div> -->
         </div>
       </el-form>

+ 6 - 2
Strides-Admin/src/views/user/hisTopUp.vue

@@ -49,7 +49,7 @@ export default {
       columns: [{
         prop: "transactionId",
         label: "Transaction ID",
-        width: 120
+        width: 130
       },{
         prop: "topUpType",
         label: "Top Up Type",
@@ -61,7 +61,7 @@ export default {
       },{
         prop: "creationTime",
         label: "Creation Time",
-        width: 140
+        width: 130
       },{
         prop: "paymentStatus",
         label: "Payment Status",
@@ -74,6 +74,10 @@ export default {
         prop: "updateTime",
         label: "Update Time",
         width: 120
+      },{
+        prop: "remarks",
+        label: "Remarks",
+        width: 120
       }]
     }
   },

+ 17 - 2
Strides-Admin/src/views/user/views/TopUp.vue

@@ -34,6 +34,14 @@
           maxlength="5"
           :placeholder="userInfo.currencySymbol"/>
       </el-form-item>
+      <el-form-item
+        label="Remarks:"
+        prop="remarks">
+        <el-input
+          class="input-text"
+          v-model="remarks"
+          maxlength="5"/>
+      </el-form-item>
       <div class="flexcc" style="padding-top: 20px;">
         <el-button
           class="cancel-button"
@@ -68,6 +76,7 @@ export default {
   data() {
     return {
       amount: "",
+      remarks: "",
       rules: {
         amount: [{
           required: true,
@@ -77,7 +86,12 @@ export default {
           pattern: /^[1-9]+\d*\.?\d*$/,
           trigger: 'blur',
           message: 'Please type a correct number'
-        }]
+        }],
+        remarks: {
+          required: true,
+          trigger: 'blur',
+          message: 'Please type remarks'
+        }
       },
       loading: false
     };
@@ -101,7 +115,8 @@ export default {
       this.loading = true;
       api.userTopup({
         userPk: this.userInfo.userPk,
-        amount: this.amount
+        amount: this.amount,
+        remarks: this.remarks
       }).then(res => {
         this.loading = false;
         this.$message({