GroupUnreviewed.vue 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196
  1. <template>
  2. <div class="groupunreviewed-all">
  3. <div class="groupunreviewed-title">团组未审核数据</div>
  4. <div class="groupunreviewed-haed">
  5. <el-date-picker @change="datechange" style="width:350px" v-model="value" type="daterange" align="left"
  6. unlink-panels range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"
  7. :picker-options="pickerOptions">
  8. </el-date-picker>
  9. <div>
  10. <el-button type="primary">审核通过</el-button>
  11. <el-button type="danger">审核不通过</el-button>
  12. </div>
  13. </div>
  14. <div class="tree-box">
  15. <el-tree
  16. @check="handleSelectionChange"
  17. :data="groupstableData"
  18. ref="tree"
  19. show-checkbox
  20. :default-expand-all="false"
  21. :default-checked-keys="defaultarr"
  22. node-key="id"
  23. :props="defaultProps"
  24. highlight-current>
  25. <span class="custom-tree-node" slot-scope="{ data }">
  26. <span>{{data.groupName?'(团组:'+data.groupName+')':'' }}</span>
  27. <span>
  28. {{ data.applicant?'申请人:'+data.applicant:''}}
  29. </span>
  30. <span>
  31. {{ data.payType?'【'+data.payType+'】':''}}
  32. </span>
  33. <span>
  34. {{ data.moduleName?'['+data.moduleName+']':''}}
  35. </span>
  36. <span>
  37. {{ data.priceName?data.priceName:''}}
  38. </span>
  39. <span>
  40. {{ data.payee?'(收款方:'+data.payee+')':'' }}
  41. </span>
  42. <span>
  43. {{ data.payCurrCode?' : '+data.payCurrCode+' ':'' }}
  44. </span>
  45. <span>
  46. {{ data.paymentAmount!=undefined?' '+twonumder(data.paymentAmount):'' }}
  47. </span>
  48. <span>
  49. {{ data.cnyTotalAmount!=undefined?'&nbsp;&nbsp;&nbsp;付款金额&nbsp;&nbsp;&nbsp;CNY '+twonumder(data.cnyTotalAmount):'' }}
  50. </span>
  51. <span>
  52. {{ data.cnySubTotalAmount!=undefined?' 、 CNY '+twonumder(data.cnySubTotalAmount=data.paymentAmount*data.payRate)+'&nbsp;&nbsp;&nbsp;汇率:':'' }}
  53. </span>
  54. <!-- <span>
  55. {{data.groupName?'(团组:'+data.groupName+')':'' }}
  56. </span>
  57. <el-input-number v-if="data.payRate!=undefined" style="width:100px" @blur="inputblur(data.id,data.payRate,data.hotelSubId)" :precision="4" placeholder="公务翻译费" v-model="data.payRate" :controls='false'>
  58. </el-input-number> -->
  59. </span>
  60. </el-tree>
  61. </div>
  62. </div>
  63. </template>
  64. <script>
  65. export default {
  66. data () {
  67. return {
  68. pickerOptions: {
  69. shortcuts: [{
  70. text: '最近一个月',
  71. onClick(picker) {
  72. const end = new Date();
  73. const start = new Date();
  74. start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
  75. picker.$emit('pick', [start, end]);
  76. }
  77. }, {
  78. text: '最近三个月',
  79. onClick(picker) {
  80. const end = new Date();
  81. const start = new Date();
  82. start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
  83. picker.$emit('pick', [start, end]);
  84. }
  85. }, {
  86. text: '最近六个月',
  87. onClick(picker) {
  88. const end = new Date();
  89. const start = new Date();
  90. start.setTime(start.getTime() - 3600 * 1000 * 24 * 180);
  91. picker.$emit('pick', [start, end]);
  92. }
  93. }, {
  94. text: '最近一年',
  95. onClick(picker) {
  96. const end = new Date();
  97. const start = new Date();
  98. start.setTime(start.getTime() - 3600 * 1000 * 24 * 365);
  99. picker.$emit('pick', [start, end]);
  100. }
  101. }]
  102. },
  103. value:[],
  104. defaultarr:[],//团组勾选中
  105. groupstableData:[],//团组付款申请
  106. defaultProps: {
  107. children: 'childList',
  108. label: 'groupName'
  109. },
  110. }
  111. },
  112. methods:{
  113. //两位小数
  114. twonumder(val){
  115. return val.toFixed(2)
  116. },
  117. //处理日期
  118. datetime(val){
  119. var date=new Date(val);
  120. var y=date.getFullYear();
  121. var m=date.getMonth()+1>=10?date.getMonth()+1:'0'+(date.getMonth()+1).toString();
  122. var d=date.getDate()>=10?date.getDate():'0'+(date.getDate()).toString();
  123. return y+'-'+m+'-'+d
  124. },
  125. //切换时间
  126. datechange(){
  127. if(this.value==null){
  128. return
  129. }
  130. this.GroupUnAuditFeeList(this.datetime(this.value[0]),this.datetime(this.value[1]))
  131. },
  132. //获取团组未审核数据
  133. GroupUnAuditFeeList(beginDt,endDt){
  134. var that = this;
  135. var url = "/api/Financial/GroupUnAuditFeeList?beginDt="+beginDt+"&endDt="+endDt
  136. this.$axios({
  137. method: 'get',
  138. url: url,
  139. headers: {
  140. Authorization: 'Bearer '
  141. },
  142. }).then(function (res) {
  143. if (res.data.code == 200) {
  144. that.groupstableData=res.data.data.dataList
  145. } else {
  146. that.$message.error(res.data.msg);
  147. }
  148. })
  149. },
  150. //勾选
  151. handleSelectionChange(data,node) {
  152. for(let i=0;i<node.checkedNodes.length;i++){
  153. for(let j=0;j<node.checkedKeys.length;j++){
  154. if(node.checkedNodes[i].id==node.checkedKeys[j]){
  155. this.hotelSubIdarr.push(node.checkedNodes[i].hotelSubId)
  156. }
  157. }
  158. }
  159. this.defaultarr=node.checkedKeys
  160. },
  161. }
  162. }
  163. </script>
  164. <style>
  165. .groupunreviewed-all{
  166. background-color: #fff;
  167. padding: 10px;
  168. box-shadow: 0 0 5px #0005;
  169. border-radius: 10px;
  170. height: 100%;
  171. min-height: 840px;
  172. min-width: 1400px;
  173. }
  174. .groupunreviewed-title{
  175. color: #555;
  176. margin-bottom: 5px;
  177. }
  178. .groupunreviewed-haed{
  179. display: flex;
  180. justify-content: space-between;
  181. }
  182. .tree-box{
  183. margin-top: 10px;
  184. border: 1px solid #EBEEF5;
  185. padding: 10px;
  186. }
  187. </style>