Browse Source

功能完成,优化完成

zhang 4 years ago
parent
commit
cf20beac7f

+ 12 - 22
src/components/fankuijilu/fankuijilu.css

@@ -5,7 +5,6 @@
   justify-content: space-between;
   align-items: center;
   height: 50px;
-  font-size: 18px;
   /* padding: 32px 40px 53px 40px; */
 }
 
@@ -22,7 +21,7 @@
   /* margin-bottom: 40px; */
   width: 30px;
   height: 30px;
-  background: url(../../../static/images/money1.png) 0 0 no-repeat;
+  background: url(../../../static/images/record1.png) 0 0 no-repeat;
   background-size: 30px 30px;
 }
 
@@ -31,7 +30,7 @@
   /* height: 22px; */
   font-size: 18px;
   font-family: Microsoft YaHei-3970(82674968);
-  font-weight: 400;
+  font-weight: 500;
   color: #1A202B;
   /* line-height: 54px; */
 }
@@ -45,9 +44,16 @@
 }
 
 .third-row {
-	margin-top: 10px;
+  margin-top: 10px;
+  display: flex;
+  flex-direction: column;
 }
 
+>>>.el-col-24{
+  height: 100%;
+}
+
+
 >>>.demo-form-inline {
 	padding: 0;
 	margin: 0;
@@ -71,7 +77,7 @@
 >>>.el-form-item__label {
 	margin: 0;
 	padding: 0;
-	font-size: 20px;
+	font-size: 16px;
 	font-family: Microsoft YaHei-3970(82674968);
 	font-weight: 400;
 	color: #333333;
@@ -83,22 +89,10 @@
 	height: 40px;
 	border: 1px solid #4D4D4D;
 	border-radius: 4px;
-	font-size: 18px;
+	font-size: 16px;
   margin-right: 20px;
 }
 
-.loudonghao>>>.el-input__inner {
-	width: 181px;
-	height: 40px;
-	border: 1px solid #4D4D4D;
-	border-radius: 4px;
-	font-size: 18px;
-	font-family: Microsoft YaHei-3970(82674968);
-	font-weight: 400;
-	color: #333333;
-	line-height: 54px;
-}
-
 .el-button {
 	width: 68px;
 	height: 40px;
@@ -187,10 +181,6 @@
 	font-size: 24px;
 }
 
->>>.el-form-item__label {
-	font-size: 20px;
-}
-
 >>>.el-dialog__body .el-input__inner {
 	font-size: 18px;
 }

+ 10 - 9
src/components/fankuijilu/fankuijilu.vue

@@ -13,7 +13,7 @@
       <el-col :span="24" class="second-row">
         <el-form :inline="true" class="demo-form-inline">
           <el-form-item label="关键字:" class="shuibiaoId">
-            <el-input v-model="selectName" placeholder="请输入订单号或者姓名"></el-input>
+            <el-input v-model="selectName" placeholder="请输入姓名或电话"></el-input>
           </el-form-item>
           <el-form-item>
             <el-button type="primary" @click="onSubmit">搜索</el-button>
@@ -42,17 +42,17 @@
           </el-table-column>
         </el-table> -->
         <el-table ref="multipleTable" :data="tableData" tooltip-effect="dark" style="width: 100%" :stripe='stripe' highlight-current-row>
-          <el-table-column prop="id" label="学号" align="center"></el-table-column>
-          <el-table-column prop="stuName" label="姓名" align="center"></el-table-column>
-          <el-table-column prop="tel" label="联系方式"></el-table-column>
-          <el-table-column prop="time" label="时间" width="200"></el-table-column>
-          <el-table-column label="内容" id="content" align="center" widshow-overflow-tooltip>
+          <el-table-column prop="id" label="学号" align="center" width="220"></el-table-column>
+          <el-table-column prop="stuName" label="姓名" align="center" width="160"></el-table-column>
+          <el-table-column prop="tel" label="联系方式" width="200"></el-table-column>
+          <el-table-column prop="time" label="时间" width="230"></el-table-column>
+          <el-table-column label="内容" id="content" width="200" align="center" widshow-overflow-tooltip>
             <el-popover placement="top-start" trigger="hover" slot-scope="scope"
               :content="scope.row.content">
               <div slot="reference">{{ scope.row.content.substr(0,10) }}....</div>
             </el-popover>
           </el-table-column>
-          <el-table-column label="操作" align="center"id="state">
+          <el-table-column label="操作" align="center" id="state" width="160">
             <div slot-scope="scope" @click="handleEdit(scope.$index, scope.row)">
               <el-tag :type="scope.row.state === '未处理' ? 'danger' : 'success'" disable-transitions>{{scope.row.state}}
               </el-tag>
@@ -92,12 +92,12 @@
   export default {
     data() {
       return {
-        editdialogFormVisible: false, //弹框  
+        editdialogFormVisible: false, //弹框
         selectName: '', //搜索内容
         tableData: [], //所有传入数据
         pageSize: 10, //每页数量
         totalCount: 0, //搜索总数
-        index: 0, 
+        index: 0,
         stripe: true
       }
     },
@@ -134,6 +134,7 @@
         // console.log(this.selectName)
         this.tableData = []
         this.getTableData(this.$Api.fankui, 1, this.selectName)
+        this.$message.success("搜索成功")
       },
       //获取反馈数据列表
       getTableData(url, index, keyword) {

+ 9 - 2
src/components/index/Index.css

@@ -74,7 +74,7 @@
 .el-menu-item span {
   height: 20px;
   padding-left: 6px;
-  font-size: 18px;
+  font-size: 16px;
   font-family: Microsoft YaHei-3970(82674968);
   font-weight: 400;
   color: #FFFFFF;
@@ -109,6 +109,13 @@
   background-size: cover;
 }
 
+.el-menu-item .el-icon-shezhi {
+  width: 27px;
+  height: 27px;
+  background: url(../../../static/images/pay.png) center center no-repeat;
+  background-size: cover;
+}
+
 /* menu */
 
 /* top */
@@ -204,7 +211,7 @@
   padding: 32px 40px 53px 40px;
   /* width: 1600px; */
   width: calc(100% -49px);
-  height: 961px;
+  height: 1000px;
   background: #FFFFFF;
 }
 

+ 1 - 1
src/components/index/Index.vue

@@ -38,7 +38,7 @@
             <router-link to="shezhi" @click.native="refresh">
               <el-menu-item index="/index/shezhi">
                 <i class="el-icon-shezhi"></i>
-                <span slot="title">系统设置</span>
+                <span slot="title">缴费设置</span>
               </el-menu-item>
             </router-link>
           </el-menu>

+ 2 - 2
src/components/login/login.css

@@ -3,8 +3,8 @@
 	height: 100%;
 /* 	min-width: 1900px;
 	min-height: 1080px; */
-	max-width: 1920px;
-	max-height: 1080px;
+/* 	max-width: 1920px;
+	max-height: 1080px; */
 	background: url(../../../static/images/bg.png) no-repeat;
 	background-size: 100% 100%;
 	margin-bottom: 0;

+ 32 - 37
src/components/orderList/orderList.css

@@ -14,7 +14,7 @@
   flex-direction: row;
   justify-content: space-between;
   align-items: center;
-  width: 650px;
+  width: 130px;
 }
 
 #logo {
@@ -31,13 +31,13 @@
   /* height: 22px; */
   font-size: 18px;
   font-family: Microsoft YaHei-3970(82674968);
-  font-weight: 400;
+  font-weight: 500;
   color: #1A202B;
   /* line-height: 54px; */
 }
 
 >>>#first-right {
-  width: 210px;
+  width: 360px;
   display: flex;
   flex-direction: row;
   justify-content: space-between;
@@ -45,12 +45,13 @@
 }
 
 >>>.first-right-btn {
-  width: 150px;
+  width: 120px;
   height: 46px;
   font-size: 18px;
   border-radius: 5px;
-  padding-left: 18px;
+  padding-left: 11px;
   padding-top: 11px;
+  background: #F88A64;
 }
 
 .second-row {
@@ -62,7 +63,19 @@
 }
 
 .third-row {
-	margin-top: 10px;
+  margin-top: 10px;
+  display: flex;
+  flex-direction: column;
+}
+
+>>>.el-col-24{
+  height: 100%;
+}
+
+
+.submit{
+  width: 80px;
+  background: #F88A64;
 }
 
 >>>.demo-form-inline {
@@ -71,6 +84,15 @@
 	display: flex;
 	justify-content: space-between;
 	align-items: center;
+  width: 850px;
+}
+
+.selectDate>>>.el-input__inner {
+	width: 200px;
+	height: 40px;
+	border: 1px solid #4D4D4D;
+	border-radius: 4px;
+	font-size: 16px;
 }
 
 .el-form-item {
@@ -82,40 +104,21 @@
 	font-family: Microsoft YaHei-3970(82674968);
 	font-weight: 400;
 	color: #333333;
-	margin-right: 106px;
+  width: 250px;
+	/* margin-right: 106px; */
 }
 
 >>>.el-form-item__label {
 	margin: 0;
 	padding: 0;
-	font-size: 20px;
+	font-size: 16px;
 	font-family: Microsoft YaHei-3970(82674968);
 	font-weight: 400;
 	color: #333333;
 	line-height: 40px;
 }
 
-.selectDate>>>.el-input__inner {
-	width: 240px;
-	height: 40px;
-	border: 1px solid #4D4D4D;
-	border-radius: 4px;
-	font-size: 18px;
-}
-
-.order>>>.el-input__inner {
-	width: 280px;
-	height: 40px;
-	border: 1px solid #4D4D4D;
-	border-radius: 4px;
-	font-size: 18px;
-}
-
 .el-button {
-	margin: 0 60px 0 40px;
-	width: 150px;
-	height: 40px;
-	background: #F88A64;
 	border-radius: 4px;
 	font-size: 16px;
 }
@@ -199,10 +202,6 @@
 	font-size: 24px;
 }
 
->>>.el-form-item__label {
-	font-size: 20px;
-}
-
 >>>.el-dialog__body .el-input__inner {
 	font-size: 18px;
 }
@@ -284,16 +283,12 @@
 }
 
 .all-money{
-  font-size: 36px;
+  font-size: 28px;
 }
 .el-button--primary{
   border-color: #F88A64;
 }
 
-.el-button{
-  margin-left: 20px;
-}
-
 #show-btn{
   border:none;
 }

+ 23 - 19
src/components/orderList/orderList.vue

@@ -5,20 +5,9 @@
         <div id="first-left">
           <div id="logo"></div>
           <div class="tag">订单管理</div>
-          <div>
-            <el-select v-model="form.value" class="selectDate" placeholder="请选择查找银行" @change="selectBank">
-              <el-option v-for="item in form.options" :key="item.value" :label="item.label" :value="item.value">
-              </el-option>
-            </el-select>
-          </div>
-          <div>
-            <el-select v-model="formInline.value" class="selectDate" placeholder="请选择查找时间" @change="selectTime">
-              <el-option v-for="item in formInline.options" :key="item.value" :label="item.label" :value="item.value">
-              </el-option>
-            </el-select>
-          </div>
         </div>
         <div id="first-right">
+          <div class="total_balance">总金额:<span class="all-money">{{all_money.toFixed(2)}}</span> 元</div>
           <el-button type="primary" class="first-right-btn" @click="downLoadFile">导出已缴表单</el-button>
         </div>
       </el-col>
@@ -26,14 +15,25 @@
     <hr style="background-color: #CCCCCC;height: 1px;border: 0;margin-top: 32px;">
     <el-row>
       <el-col :span="24" class="second-row">
-        <div class="total_balance">总金额:<span class="all-money">{{all_money.toFixed(2)}}</span> 元</div>
         <el-form :inline="true" class="demo-form-inline">
-          <el-form-item label="关键字:" class="order">
+          <el-form-item label="关键字:" class="selectDate">
             <el-input v-model="selectOrder" placeholder="请输入订单号或者班级"></el-input>
           </el-form-item>
           <el-form-item>
-            <el-button type="primary" @click="onSubmit">查找</el-button>
+            <el-button type="primary" @click="onSubmit" class="submit">查找</el-button>
           </el-form-item>
+          <div>
+            <el-select v-model="form.value" class="selectDate" placeholder="请选择查找银行" @change="selectBank">
+              <el-option v-for="item in form.options" :key="item.value" :label="item.label" :value="item.value">
+              </el-option>
+            </el-select>
+          </div>
+          <div>
+            <el-select v-model="formInline.value" class="selectDate" placeholder="请选择查找时间" @change="selectTime">
+              <el-option v-for="item in formInline.options" :key="item.value" :label="item.label" :value="item.value">
+              </el-option>
+            </el-select>
+          </div>
         </el-form>
       </el-col>
     </el-row>
@@ -56,14 +56,14 @@
           </el-table-column>
           </el-table> -->
           <el-table ref="multipleTable" :data="tableData" tooltip-effect="dark" :stripe='stripe' style="width: 100%" highlight-current-row>
-          <el-table-column label="订单号" align="center" width="200">
+          <el-table-column label="订单号" align="center" width="220">
             <template slot-scope="scope">{{ scope.row.order }}</template>
           </el-table-column>
-          <el-table-column prop="id" label="学号" width="200"></el-table-column>
-          <el-table-column prop="stuName" label="姓名"></el-table-column>
+          <el-table-column prop="id" label="学号" width="180"></el-table-column>
+          <el-table-column prop="stuName" label="姓名" width="100"></el-table-column>
           <el-table-column prop="class" label="班级" width="160"></el-table-column>
           <el-table-column prop="money" label="金额(元)" width="100"></el-table-column>
-          <el-table-column prop="method" label="支付渠道"></el-table-column>
+          <el-table-column prop="method" label="支付渠道" width="120"></el-table-column>
           <el-table-column prop="time" label="时间" width="200"></el-table-column>
           <el-table-column label="状态" align="center" width="80">
             <template slot-scope="scope">
@@ -185,14 +185,17 @@
           this.bankValue = 1
           this.tableData = []
           this.getTableData(this.$Api.orderList, this.flag, this.index, this.selectOrder, this.timeValue, this.bankValue)
+          this.$message.success("已选择支付渠道为  建行支付")
         }else if(val == 'nongshang'){
           this.bankValue = 2
           this.tableData = []
           this.getTableData(this.$Api.orderList, this.flag, this.index, this.selectOrder, this.timeValue, this.bankValue)
+          this.$message.success("已选择支付渠道为  农商行支付")
         }else{
           this.bankValue = ''
           this.tableData = []
           this.getTableData(this.$Api.orderList, this.flag, this.index, this.selectOrder, this.timeValue, this.bankValue)
+          this.$message.success("已选择为所有支付")
         }
       },
       //选择时间
@@ -269,6 +272,7 @@
         this.tableData = []
         this.all_money = 0
         this.getTableData(this.$Api.orderList, this.flag, this.index, this.selectOrder, this.timeValue, this.bankValue)
+        this.$message.success("查找成功")
       },
       //获取订单数据
       getTableData(url, flag, index, key, dateStr, payMethod) {

+ 58 - 76
src/components/payNameList/payNameList.css

@@ -23,7 +23,7 @@
   /* margin-bottom: 40px; */
   width: 30px;
   height: 30px;
-  background: url(../../../static/images/name.png) 0 0 no-repeat;
+  background: url(../../../static/images/name1.png) 0 0 no-repeat;
   background-size: 30px 30px;
 }
 
@@ -32,18 +32,18 @@
   /* height: 22px; */
   font-size: 18px;
   font-family: Microsoft YaHei-3970(82674968);
-  font-weight: 400;
+  font-weight: 500;
   color: #000000;
   /* line-height: 54px; */
 }
 
-.font{
+.font {
   color: #4392F7;
   font-size: 18px;
 }
 
 >>>#first-right {
-  width: 210px;
+  width: 120px;
   display: flex;
   flex-direction: row;
   justify-content: space-between;
@@ -69,6 +69,8 @@
 
 .third-row {
   margin-top: 10px;
+  display: flex;
+  flex-direction: column;
 }
 
 >>>.demo-form-inline {
@@ -83,17 +85,10 @@
   margin-bottom: 0px;
 }
 
-.total_balance {
-  font-size: 20px;
-  font-family: Microsoft YaHei-3970(82674968);
-  font-weight: 400;
-  color: #333333;
-}
-
 >>>.el-form-item__label {
   margin: 0;
   padding: 0;
-  font-size: 20px;
+  font-size: 18px;
   font-family: Microsoft YaHei-3970(82674968);
   font-weight: 400;
   color: #333333;
@@ -101,35 +96,27 @@
 }
 
 .selectDate>>>.el-input__inner {
-	width: 240px;
-	height: 40px;
-	border: 1px solid #4D4D4D;
-	border-radius: 4px;
-	font-size: 18px;
-}
-
-.shuibiaoId>>>.el-input__inner {
   width: 240px;
   height: 40px;
   border: 1px solid #4D4D4D;
   border-radius: 4px;
-  font-size: 18px;
+  font-size: 16px;
 }
 
-.shuibiaoId{
-  width: 260px;
+>>>.el-col-24 {
+  height: 100%;
 }
 
-.loudonghao>>>.el-input__inner {
-  width: 181px;
+.selectName>>>.el-input__inner {
+  width: 240px;
   height: 40px;
   border: 1px solid #4D4D4D;
   border-radius: 4px;
-  font-size: 18px;
-  font-family: Microsoft YaHei-3970(82674968);
-  font-weight: 400;
-  color: #333333;
-  line-height: 54px;
+  font-size: 16px;
+}
+
+.selectName {
+  width: 260px;
 }
 
 >>>.el-table__header {
@@ -161,8 +148,6 @@
   color: #333333;
 }
 
-
-
 .el-pagination>>>.el-icon {
   width: 38px;
   height: 38px;
@@ -186,13 +171,13 @@
 .table-footer {
   display: flex;
   align-items: center;
-  justify-content: center;
-  /* justify-content: space-between; */
+  /* justify-content: center; */
+  justify-content: space-between;
 }
 
 .pages {
-  /* width: 1000px; */
-  width: 56%;
+  width: 1000px;
+  /* width: 56%; */
   display: flex;
   justify-content: center;
 }
@@ -211,10 +196,6 @@
   height: 60px; */
 }
 
->>>.el-form-item__label {
-  font-size: 20px;
-}
-
 >>>.el-dialog__body .el-input__inner {
   font-size: 16px;
 }
@@ -238,6 +219,7 @@
   font-weight: 400;
   color: #FFFFFF;
   height: 46px;
+  width: 150px;
 }
 
 .my-dialog {
@@ -255,6 +237,12 @@
   width: 130px;
 }
 
+.last-row>>>.el-dialog__body {
+  margin-left: 80px;
+}
+
+.forth-row>>>.el-dialog__body {}
+
 .right-tip {
   font-size: 20px;
   font-family: Microsoft YaHei-3970(82674968);
@@ -263,44 +251,13 @@
   line-height: 34px;
 }
 
-.dialog-pages {
-  display: flex;
-  justify-content: center;
-}
-
-.dialog-pages>>>.el-pager li.active {
-  color: #FFF;
-  font-weight: bold;
-  background-color: #298DEF
-}
-
-.dialog-pages .el-pagination>>>.el-icon {
-  width: 30px;
-  height: 30px;
-  line-height: 30px;
-  border: 1px solid #626262;
-  border-radius: 2px;
-  font-size: 16px;
-}
-
-.dialog-pages .el-pagination>>>.number,
-.dialog-pages .el-pagination>>>.more {
-  margin: 0 3px;
-  width: 30px;
-  height: 33px;
-  line-height: 33px;
-  border: 1px solid #626262;
-  border-radius: 2px;
-  font-size: 14px;
-}
-
 .el-divider__text,
 .el-link {
   font-size: 20px;
   color: #4392F7;
 }
 
-.show-btn{
+.show-btn {
   font-size: 14px;
   color: #5488FE;
   width: 60px;
@@ -311,20 +268,45 @@
   padding-left: 16px;
 }
 
->>>.el-dialog__body{
+>>>.el-dialog__body {
   font-size: 16px;
   padding: 40px 30px;
+  width: 460px;
 }
 
-.view-balance{
+.view-balance {
   margin-top: 29px;
   color: #808080;
   height: 17px;
 }
 
->>>.el-button--primary{
+>>>.el-button--primary {
   background-color: #F88A64;
   border-color: #F88A64;
 }
 
-/* dev-mgr */
+.upload-demo {
+  background-color: #F88A64;
+  border-color: #F88A64;
+  width: 150px;
+  color: #FFFFFF;
+  font-size: 16px;
+  width: 150px;
+  border-radius: 5px;
+}
+
+.my-dialog1 {
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+  margin-top: 150px;
+}
+
+.first {
+  width: 300px;
+  display: flex;
+  flex-direction: row;
+  justify-content: space-between;
+  align-items: center;
+  margin-bottom: 20px;
+}

+ 107 - 35
src/components/payNameList/payNameList.vue

@@ -1,5 +1,5 @@
 <template>
-  <div>
+  <div class="container">
     <el-row>
       <el-col :span="24" class="first-row">
         <div id="first-left">
@@ -7,12 +7,7 @@
           <div class="tag">缴费名单</div>
         </div>
         <div id="first-right">
-          <el-upload class="upload-demo" action="" accept=".xlsx" :http-request="uploadXLS" :show-file-list="false">
-            <el-button type="primary" class="first-right-btn">表格导入</el-button>
-          </el-upload>
-          <div class="first-right-text">
-            <el-link type="primary" @click="downLoadFile">模板下载</el-link>
-          </div>
+          <el-button class="upload-demo" @click="handleUpLoad">表格导入</el-button>
         </div>
       </el-col>
     </el-row>
@@ -21,7 +16,7 @@
       <el-col :span="24" class="second-row">
         <div class="total_balance">关键字:</div>
         <el-form :inline="true" class="demo-form-inline">
-          <el-form-item class="shuibiaoId">
+          <el-form-item class="selectName">
             <el-input v-model="selectName" placeholder="请输入姓名或学号"></el-input>
           </el-form-item>
           <el-form-item>
@@ -48,15 +43,15 @@
           </el-table> -->
         <el-table ref="multipleTable" :data="tableData" tooltip-effect="dark" style="width: 100%" :stripe='stripe'
           v-loading="loading" highlight-current-row>
-          <el-table-column label="学号" align="center" width="200">
+          <el-table-column label="学号" align="center" width="240">
             <template slot-scope="scope">{{ scope.row.id }}</template>
           </el-table-column>
-          <el-table-column prop="stuName" label="姓名"></el-table-column>
-          <el-table-column prop="institute" label="学院"></el-table-column>
-          <el-table-column prop="major" label="专业"></el-table-column>
-          <el-table-column prop="class" label="班级"></el-table-column>
-          <el-table-column prop="money" label="缴费余额(元)" widshow-overflow-tooltip></el-table-column>
-          <el-table-column label="操作" align="center">
+          <el-table-column prop="stuName" label="姓名" width="100"></el-table-column>
+          <el-table-column prop="institute" label="学院" width="220"></el-table-column>
+          <el-table-column prop="major" label="专业" width="180"></el-table-column>
+          <el-table-column prop="class" label="班级" width="180"></el-table-column>
+          <el-table-column prop="money" label="缴费余额(元)" width="150" widshow-overflow-tooltip></el-table-column>
+          <el-table-column label="操作" align="center" width="100">
             <el-button class="show-btn" slot-scope="scope" @click="handleEdit(scope.$index, scope.row)">详情
             </el-button>
           </el-table-column>
@@ -81,6 +76,29 @@
         </el-dialog>
       </el-col>
     </el-row>
+    <el-row>
+      <el-col :span="24" class="last-row">
+        <!-- 编辑对话框 -->
+        <el-dialog title="导入学生名单" :visible.sync="editdialogUpLoad" width="520px" top="0vh" class="my-dialog1">
+          <div class="first">
+            <el-upload class="upload-demo" action="" accept=".xlsx" :http-request="uploadXLS" :show-file-list="false">
+              <el-button type="primary" class="first-right-btn">导入学生名单</el-button>
+            </el-upload>
+            <div class="first-right-text">
+              <el-link type="primary" @click="downLoadFile">模板下载</el-link>
+            </div>
+          </div>
+          <div class="first">
+            <el-upload class="upload-demo" action="" accept=".xlsx" :http-request="deleteXLS" :show-file-list="false">
+              <el-button type="primary" class="first-right-btn">删除学生名单</el-button>
+            </el-upload>
+            <div class="first-right-text">
+              <el-link type="primary" @click="downLoadFile2">模板下载</el-link>
+            </div>
+          </div>
+        </el-dialog>
+      </el-col>
+    </el-row>
   </div>
 </template>
 
@@ -88,7 +106,8 @@
   export default {
     data() {
       return {
-        editdialogFormVisible: false, //对话框
+        editdialogFormVisible: false, //详情对话框
+        editdialogUpLoad: false, //表格导入对话框
         tableData: [], //主页数据
         payItemDetail: [], //详细数据
         user_info: {}, //用户登录信息
@@ -109,10 +128,15 @@
       this.getTableData(this.$Api.paylist)
     },
     methods: {
+      //表格导入
+      handleUpLoad() {
+        this.editdialogUpLoad = true
+      },
       //搜索
       onSubmit() {
         this.tableData = []
         this.getTableData(this.$Api.paylist, 1, this.selectName)
+        this.$message.success("搜索成功")
       },
       //分页
       handleCurrentChange(val) {
@@ -130,7 +154,7 @@
         for (var j = 0; j < detail.length; j++) {
           this.payItemDetail[j] = detail[j]
         }
-        console.log(this.payItemDetail)
+        // console.log(this.payItemDetail)
       },
       //判断登录状态
       determineIdentify() {
@@ -140,24 +164,6 @@
           })
         }
       },
-      //下载模板文件
-      downLoadFile() {
-        this.$confirm('是否下载缴费名单模板?', {
-          confirmButtonText: '确定',
-          cancelButtonText: '取消',
-        }).then(() => {
-          window.location.href = '../../../static/缴费名单模板.xlsx'
-          this.$message({
-            type: 'success',
-            message: '下载成功!'
-          });
-        }).catch(() => {
-          this.$message({
-            type: 'info',
-            message: '取消下载'
-          });
-        });
-      },
       //获取订单列表数据
       getTableData(url, index, key) {
         // console.log(index)
@@ -210,6 +216,7 @@
           .then(res => {
             // console.log(res)
             this.loading = false
+            this.editdialogUpLoad = false
             this.$message.success('文件上传成功!')
             let _this = this
             setTimeout(() => {
@@ -221,6 +228,71 @@
             this.$message.error('文件上传失败')
           })
       },
+      //下载增加模板文件
+      downLoadFile() {
+        this.$confirm('是否下载增加名单模板?', {
+          confirmButtonText: '确定',
+          cancelButtonText: '取消',
+        }).then(() => {
+          window.location.href = 'https://jtishfw.ncjti.edu.cn/jiaofei/static/images/增加名单模板.xlsx'
+          this.$message({
+            type: 'success',
+            message: '下载成功!'
+          });
+        }).catch(() => {
+          this.$message({
+            type: 'info',
+            message: '取消下载'
+          });
+        });
+      },
+      //导入删除文件
+      deleteXLS(param) {
+        console.log(param)
+        this.loading = true
+        let form = new FormData();
+        form.append('file', param.file);
+        this.$axios({
+            method: "delete",
+            url: this.$Api.deleteFile,
+            headers: {
+              'Content-type': 'multipart/form-data',
+              'admin_token': this.user_token
+            },
+            data: form
+          })
+          .then(res => {
+            this.loading = false
+            this.editdialogUpLoad = false
+            this.$message.success('文件上传成功!')
+            let _this = this
+            setTimeout(() => {
+              _this.$router.go(0)
+            }, 1500)
+            // this.$message.success('文件上传成功!')
+          })
+          .catch(err => {
+            this.$message.error('文件上传失败')
+          })
+      },
+      //下载删除模板文件
+      downLoadFile2() {
+        this.$confirm('是否下载删除名单模板?', {
+          confirmButtonText: '确定',
+          cancelButtonText: '取消',
+        }).then(() => {
+          window.location.href = 'https://jtishfw.ncjti.edu.cn/jiaofei/static/images/删除名单模板.xlsx'
+          this.$message({
+            type: 'success',
+            message: '下载成功!',
+          });
+        }).catch(() => {
+          this.$message({
+            type: 'info',
+            message: '取消下载'
+          });
+        });
+      },
     }
   }
 </script>

+ 66 - 4
src/components/shezhi/shezhi.css

@@ -10,7 +10,24 @@
   align-items: center;
   height: 50px;
   font-size: 18px;
-  width: 320px;
+  /* padding: 32px 40px 53px 40px; */
+}
+
+#first-left {
+  display: flex;
+  flex-direction: row;
+  align-items: center;
+  justify-content: space-between;
+  width: 130px;
+}
+
+#logo {
+  /* margin-top: 40px; */
+  /* margin-bottom: 40px; */
+  width: 30px;
+  height: 30px;
+  background: url(../../../static/images/pay1.png) 0 0 no-repeat;
+  background-size: 30px 30px;
 }
 
 .tag {
@@ -18,15 +35,60 @@
   /* height: 22px; */
   font-size: 18px;
   font-family: Microsoft YaHei-3970(82674968);
+  font-weight: 500;
+  color: #1A202B;
+  /* line-height: 54px; */
+}
+
+.second-row {
+  display: flex;
+  flex-direction: row;
+  justify-content: flex-start;
+  align-items: center;
+  height: 50px;
+  font-size: 16px;
+  width: 600px;
+  margin-top: 20px;
+}
+
+.text {
+  width: 95px;
+  font-size: 16px;
+  font-family: Microsoft YaHei-3970(82674968);
   font-weight: 400;
   color: #1A202B;
   /* line-height: 54px; */
 }
 
-.selectDate>>>.el-input__inner {
-	width: 240px;
+.el-input--suffix .el-input__inner{
+	width: 200px;
 	height: 40px;
 	border: 1px solid #4D4D4D;
 	border-radius: 4px;
-	font-size: 18px;
+	font-size: 16px;
+}
+
+.third-row{
+  display: flex;
+  flex-direction: row;
+  justify-content: flex-start;
+  align-items: flex-start;
+  height: 50px;
+  font-size: 16px;
+  width: 800px;
+  margin-top: 38px;
+}
+
+.selectGrade{
+  border: 1px solid #4D4D4D;
+  padding: 20px;
+  border-radius: 3px;
+}
+
+.el-checkbox{
+  color: #333333;
+}
+
+.el-checkbox__inner{
+  border-color: #B5B5B5;
 }

+ 130 - 15
src/components/shezhi/shezhi.vue

@@ -1,14 +1,36 @@
 <template>
   <div class="container">
-    <div class="first-row">
-      <div class="tag">订单管理</div>
-      <div>
-        <el-select v-model="form.value" class="selectDate" placeholder="请选择查找银行" @change="selectMethod">
-          <el-option v-for="item in form.options" :key="item.value" :label="item.label" :value="item.value">
-          </el-option>
-        </el-select>
+    <el-row>
+      <el-col :span="24" class="first-row">
+        <div id="first-left">
+          <div id="logo"></div>
+          <div class="tag">缴费设置</div>
+        </div>
+      </el-col>
+    </el-row>
+    <hr style="background-color: #CCCCCC;height: 1px;border: 0;margin-top: 32px;">
+    <el-row>
+      <div class="second-row">
+        <div class="text">支付方式:</div>
+        <div class="selectBank">
+          <el-select v-model="form.value" class="selectDate" placeholder="请选择查找银行" @change="selectMethod">
+            <el-option v-for="item in form.options" :key="item.value" :label="item.label" :value="item.value">
+            </el-option>
+          </el-select>
+        </div>
       </div>
-    </div>
+      <div class="third-row">
+        <div class="text">缴费年级:</div>
+        <div class="selectGrade">
+          <!-- <el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">全选
+          </el-checkbox>
+          <div style="margin: 15px 0;"></div> -->
+          <el-checkbox-group v-model="checkedGrade" @change="handleCheckedGradesChange">
+            <el-checkbox v-for="grade in grades" :label="grade" :key="grade">{{grade}}</el-checkbox>
+          </el-checkbox-group>
+        </div>
+      </div>
+    </el-row>
   </div>
 </template>
 
@@ -23,21 +45,76 @@
             label: '建行支付'
           }, {
             value: 'nongshang',
-            label: '农商行支付'
+            label: '江西农商行支付'
           }],
           value: ''
         }, //银行列表
         user_token: '', //token
-        user_info: '',
-        method: ''
+        user_info: {}, //用户登录信息
+        method: '', //支付方式
+        checkedGrade: [], //选择年级
+        grades: [], //可选择的年级
+        checkAll: false, //是否选择所有
+        isIndeterminate: true,
+        temGrades: [], //上一次选择的数组
+        gradeChange: '', //上一次选择的值
+        selectId: 0, //上一次修改的id
+        flag: 0, //是否支付,1为支付,2为不支付
+        enablePay: [], //是否支付数组
       }
     },
     created: function() {
       this.user_info = JSON.parse(sessionStorage.getItem('usr_info'))
       this.user_token = this.user_info.token
       this.getTableData(this.$Api.payMethod)
+      // console.log(this.temGrades)
+      this.getGradeList(this.$Api.getGradesList)
     },
     methods: {
+      //获取下标
+      getArrayIndex(arr, obj) {
+        var i = arr.length
+        while (i--) {
+          if (arr[i] === obj) {
+            return i + 1;
+          }
+        }
+        return -1;
+      },
+      // //比较并获取选择的复选框1
+      // getChange(arr1, arr2) {
+      //   console.log('arr1' + arr1)
+      //   console.log('arr2' + arr2)
+
+      //   for (var i = 0; i < arr1.length; i++) {
+      //     if (arr2.indexOf(arr1[i]) == -1) {
+      //       console.log('arr' + arr1[i])
+      //       this.gradeChange = arr1[i]
+      //     }
+      //   }
+      //   console.log('change' + this.gradeChange)
+      // },
+      //比较并获取选择的复选框
+      arrSubtraction(a, b) {
+        if (Array.isArray(a) && Array.isArray(b)) {
+          return a.filter((i) => !b.includes(i));
+        }
+        throw new new TypeError("arguments must be array")();
+      },
+      //选择年级
+      handleCheckedGradesChange(value) {
+        if (value.length > this.temGrades.length) {
+          this.gradeChange = this.arrSubtraction(value, this.temGrades)[0]
+          this.flag = 1
+        } else {
+          this.gradeChange = this.arrSubtraction(this.temGrades, value)[0]
+          this.flag = 2
+        }
+        console.log(this.gradeChange)
+        this.selectId = this.getArrayIndex(this.grades, this.gradeChange)
+        this.setPayLimit(this.$Api.payLimit, this.selectId, this.flag)
+        this.temGrades = value
+      },
       //确定支付方式
       selectMethod(val) {
         // console.log(val)
@@ -49,7 +126,7 @@
         // console.log(this.$Api.setPayMethod)
         this.setPayMethod(this.$Api.setPayMethod, this.method)
       },
-      //获取订单数据
+      //获取当前支付方式
       getTableData(url) {
         this.$axios.get(url + '?' + this.$qs.stringify({}), {
           headers: {
@@ -59,25 +136,63 @@
         }).then(res => {
           // console.log(res)
           if (res.data.data[0].currentPay == "1") {
-            console.log(res.data.data[0].payMethodName)
+            // console.log(res.data.data[0].payMethodName)
             this.form.value = res.data.data[0].payMethodName
           } else if (res.data.data[1].currentPay == "1") {
-            console.log(res.data.data[1].payMethodName)
+            // console.log(res.data.data[1].payMethodName)
             this.form.value = res.data.data[1].payMethodName
           }
         }).catch(err => {
           console.log(err)
         })
       },
+      //重新设置支付方式
       setPayMethod(url, method) {
         this.$axios.defaults.headers.common['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8';
         this.$axios.defaults.headers.common['admin_token'] = this.user_token;
         this.$axios.put(url + method + '/currentPay')
           .then(res => {
             // console.log(res)
-            this.$message.success("支付方式已设置成" + (this.method == 1 ? '建行支付' : '农商行支付'))
+            this.$message.success("支付方式已设置成" + (this.method == 1 ? '建行支付' : '江西农商行支付'))
+          }).catch(err => {
+            console.log(err)
+          })
+      },
+      //获取年级列表
+      getGradeList(url) {
+        this.$axios.get(url, {
+          headers: {
+            'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8',
+            'admin_token': this.user_token
+          }
+        }).then(res => {
+          // console.log(res.data.data.length)
+          for (var i = 0; i < res.data.data.length; i++) {
+            this.grades.push(res.data.data[i].gradeName)
+            this.enablePay.push(res.data.data[i].enablePay)
+            if (this.enablePay[i] == '1') {
+              this.checkedGrade[i] = this.grades[i]
+              this.temGrades[i] = this.grades[i]
+            }
+          }
+        }).catch(err => {
+          console.log(err)
+        })
+      },
+      //设置支付限制
+      setPayLimit(url, settingId, enablePay) {
+        this.$axios.defaults.headers.common['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8';
+        this.$axios.defaults.headers.common['admin_token'] = this.user_token;
+        this.$axios.put(url + settingId + '/' + enablePay)
+          .then(res => {
+            // console.log(res)
+            // console.log(this.selectId)
+            this.enablePay[this.selectId - 1] = this.flag.toString()
+            console.log(this.enablePay)
+            this.$message.success("年级已设置成功")
           }).catch(err => {
             console.log(err)
+            this.$message.success("设置失败")
           })
       }
     },

+ 13 - 33
src/components/wrongOrder/wrongOrder.css

@@ -13,6 +13,7 @@
   display: flex;
   flex-direction: row;
   justify-content: space-between;
+  align-items: center;
   width: 130px;
 }
 
@@ -30,7 +31,7 @@
   /* height: 22px; */
   font-size: 18px;
   font-family: Microsoft YaHei-3970(82674968);
-  font-weight: 400;
+  font-weight: 500;
   color: #1A202B;
   /* line-height: 54px; */
 }
@@ -44,7 +45,13 @@
 }
 
 .third-row {
-	margin-top: 10px;
+  margin-top: 10px;
+  display: flex;
+  flex-direction: column;
+}
+
+>>>.el-col-24{
+  height: 100%;
 }
 
 >>>.demo-form-inline {
@@ -59,18 +66,10 @@
 	margin-bottom: 0px;
 }
 
-.total_balance {
-	font-size: 16px;
-	font-family: Microsoft YaHei-3970(82674968);
-	font-weight: 400;
-	color: #333333;
-	margin-right: 106px;
-}
-
 >>>.el-form-item__label {
 	margin: 0;
 	padding: 0;
-	font-size: 20px;
+	font-size: 16px;
 	font-family: Microsoft YaHei-3970(82674968);
 	font-weight: 400;
 	color: #333333;
@@ -82,22 +81,10 @@
 	height: 40px;
 	border: 1px solid #4D4D4D;
 	border-radius: 4px;
-	font-size: 18px;
+	font-size: 16px;
   margin-right: 20px;
 }
 
-.loudonghao>>>.el-input__inner {
-	width: 181px;
-	height: 40px;
-	border: 1px solid #4D4D4D;
-	border-radius: 4px;
-	font-size: 18px;
-	font-family: Microsoft YaHei-3970(82674968);
-	font-weight: 400;
-	color: #333333;
-	line-height: 54px;
-}
-
 .el-button {
 	width: 68px;
 	height: 40px;
@@ -108,7 +95,7 @@
 }
 
 >>>.el-table__header {
-	font-size: 18px;
+	font-size: 16px;
 	font-family: Microsoft YaHei-3970(82674968);
 	font-weight: 400;
 }
@@ -142,6 +129,7 @@
 	width: 50px;
 	height: 35px;
 	font-size: 16px;
+  position: unset;
 }
 
 .el-pagination>>>.el-icon {
@@ -186,14 +174,6 @@
 	font-size: 24px;
 }
 
->>>.el-form-item__label {
-	font-size: 20px;
-}
-
->>>.el-dialog__body .el-input__inner {
-	font-size: 18px;
-}
-
 .dialog-footer{
   display: flex;
   justify-content: space-around;

+ 9 - 9
src/components/wrongOrder/wrongOrder.vue

@@ -53,27 +53,27 @@
         </el-table> -->
         <el-table ref="multipleTable" :data="tableData" tooltip-effect="dark" style="width: 100%" :stripe='stripe'
           @selection-change="handleSelectionChange" highlight-current-row>
-          <el-table-column label="订单号" align="center">
+          <el-table-column label="订单号" align="center" width="200">
             <template slot-scope="scope">{{ scope.row.order }}</template>
           </el-table-column>
-          <el-table-column prop="id" label="学号" ></el-table-column>
-          <el-table-column prop="stuName" label="姓名"></el-table-column>
-          <el-table-column prop="class" label="班级"></el-table-column>
-          <el-table-column prop="money" label="金额(元)"></el-table-column>
-          <el-table-column prop="time" label="时间"></el-table-column>
-          <el-table-column label="学校状态" align="center">
+          <el-table-column prop="id" label="学号" width="170"></el-table-column>
+          <el-table-column prop="stuName" label="姓名" width="90"></el-table-column>
+          <el-table-column prop="class" label="班级" width="150"></el-table-column>
+          <el-table-column prop="money" label="金额(元)" width="100"></el-table-column>
+          <el-table-column prop="time" label="时间" width="200"></el-table-column>
+          <el-table-column label="学校状态" align="center" width="90">
             <template slot-scope="scope">
               <el-tag :type="scope.row.school_state === '支付失败' ? 'danger' : 'success'" disable-transitions>{{scope.row.school_state}}
               </el-tag>
             </template>
           </el-table-column>
-          <el-table-column label="银行状态" align="center">
+          <el-table-column label="银行状态" align="center" width="90">
             <template slot-scope="scope">
               <el-tag :type="scope.row.bank_state === '支付失败' ? 'danger' : 'success'" disable-transitions>{{scope.row.bank_state}}
               </el-tag>
             </template>
           </el-table-column>
-          <el-table-column label="操作">
+          <el-table-column label="操作" width="80">
             <el-button id="show-btn" slot-scope="scope" @click="handleEdit(scope.$index, scope.row)">
               {{scope.row.state}}
             </el-button>

+ 16 - 7
src/interface/index.js

@@ -1,6 +1,6 @@
 // 配置主机地址和端口号(可以有多个,需要测试那个环境字节打开那个base即可)
-// let base = "https://jtishfw.ncjti.edu.cn/jiaofei/backendApi/"
- let base = "http://192.168.161.230:9999/"
+let base = "https://jtishfw.ncjti.edu.cn/jiaofei/backendApi/"
+ // let base = "http://192.168.161.230:9999/"
 
 
 // 在线api接口路径,需要和项目后台确认
@@ -10,9 +10,12 @@ let online_url = {
     login: base + "tuitionpayment/admininfo/login",
 
     //学生缴费列表
-    paylist:base + "tuitionpayment/payableinfo/list",
-    //文件上传
-    upLoadFile:base + "tuitionpayment/payableinfo/importByExcel",
+    paylist: base + "tuitionpayment/payableinfo/list",
+    //增加名单文件上传
+    upLoadFile: base + "tuitionpayment/payableinfo/importByExcel",
+
+    //删除名单文件上传
+    deleteFile: base + 'tuitionpayment/payableinfo/payableInfo',
 
     //订单列表
     orderList: base + "tuitionpayment/payorder/list",
@@ -27,9 +30,15 @@ let online_url = {
 
     //支付方式列表
     payMethod: base + "payMethodSetting/list",
-    
+
     //设置支付方式
-    setPayMethod: base + "payMethodSetting/"
+    setPayMethod: base + "payMethodSetting/",
+
+    //获取年级列表
+    getGradesList: base + "enablePayLimit/list",
+
+    //设置支付限制
+    payLimit: base + "enablePayLimit/setting/"
 
 }
 

BIN
static/images/name.png


BIN
static/images/name1.png


BIN
static/images/pay.png


BIN
static/images/pay1.png


BIN
static/images/record1.png


BIN
static/images/删除名单模板.xlsx


BIN
static/images/增加名单模板.xlsx


BIN
static/缴费名单模板.xlsx