telephone-clients 3.0.105-27 → 3.0.105-29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/package.json +1 -1
  2. package/src/components/workorder/RepairDetails.vue +1 -0
  3. package/src/filiale/tongchuan/pc/WorkorderCheckDistributePlan.vue +1 -1
  4. package/src/filiale/wenxi/pc/NewTelAgentVoiceReport.vue +13 -7
  5. package/src/filiale/yangchunboneng/pc/OtherCharge.vue +340 -0
  6. package/src/filiale/yangchunboneng/pc/RepairsWork.vue +875 -0
  7. package/src/filiale/yangchunboneng/telephone.js +15 -0
  8. /package/src/filiale/{furuike/android/CompletedRepair.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/android/CompletedRepair.vue"} +0 -0
  9. /package/src/filiale/{furuike/android/FaultAll.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/android/FaultAll.vue"} +0 -0
  10. /package/src/filiale/{furuike/android/Materials.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/android/Materials.vue"} +0 -0
  11. /package/src/filiale/{furuike/android/RepairFirstVnew.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/android/RepairFirstVnew.vue"} +0 -0
  12. /package/src/filiale/{furuike/android/RepairOrderVnew.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/android/RepairOrderVnew.vue"} +0 -0
  13. /package/src/filiale/{furuike/pc/Auxfunc.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/Auxfunc.vue"} +0 -0
  14. /package/src/filiale/{furuike/pc/CallRcords.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/CallRcords.vue"} +0 -0
  15. /package/src/filiale/{furuike/pc/ChangemeterInfo.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/ChangemeterInfo.vue"} +0 -0
  16. /package/src/filiale/{furuike/pc/ComplainWork.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/ComplainWork.vue"} +0 -0
  17. /package/src/filiale/{furuike/pc/DeviceInfo.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/DeviceInfo.vue"} +0 -0
  18. /package/src/filiale/{furuike/pc/DisableInforMation.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/DisableInforMation.vue"} +0 -0
  19. /package/src/filiale/{furuike/pc/FailureEdit.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/FailureEdit.vue"} +0 -0
  20. /package/src/filiale/{furuike/pc/HandplanInfo.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/HandplanInfo.vue"} +0 -0
  21. /package/src/filiale/{furuike/pc/InfoTable.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/InfoTable.vue"} +0 -0
  22. /package/src/filiale/{furuike/pc/InstructInfo.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/InstructInfo.vue"} +0 -0
  23. /package/src/filiale/{furuike/pc/LineReport.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/LineReport.vue"} +0 -0
  24. /package/src/filiale/{furuike/pc/MaterialWorkOrder/MaterialWork.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/MaterialWorkOrder/MaterialWork.vue"} +0 -0
  25. /package/src/filiale/{furuike/pc/MaterialWorkOrder/MaterialWorkOrderManage.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/MaterialWorkOrder/MaterialWorkOrderManage.vue"} +0 -0
  26. /package/src/filiale/{furuike/pc/MaterialWorkOrder/WorkOrderMaterial.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/MaterialWorkOrder/WorkOrderMaterial.vue"} +0 -0
  27. /package/src/filiale/{furuike/pc/MetereadInfo.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/MetereadInfo.vue"} +0 -0
  28. /package/src/filiale/{furuike/pc/MetterInfo.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/MetterInfo.vue"} +0 -0
  29. /package/src/filiale/{furuike/pc/NewRepairPaper.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/NewRepairPaper.vue"} +0 -0
  30. /package/src/filiale/{furuike/pc/ProblemList.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/ProblemList.vue"} +0 -0
  31. /package/src/filiale/{furuike/pc/QueryVisitHistory.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/QueryVisitHistory.vue"} +0 -0
  32. /package/src/filiale/{furuike/pc/RecordListLeft.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/RecordListLeft.vue"} +0 -0
  33. /package/src/filiale/{furuike/pc/ReminderOrder.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/ReminderOrder.vue"} +0 -0
  34. /package/src/filiale/{furuike/pc/RepairList.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/RepairList.vue"} +0 -0
  35. /package/src/filiale/{furuike/pc/RepairsWork.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/RepairsWork.vue"} +0 -0
  36. /package/src/filiale/{furuike/pc/SecuritycheckInfo.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/SecuritycheckInfo.vue"} +0 -0
  37. /package/src/filiale/{furuike/pc/Seekwork.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/Seekwork.vue"} +0 -0
  38. /package/src/filiale/{furuike/pc/SellInfo.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/SellInfo.vue"} +0 -0
  39. /package/src/filiale/{furuike/pc/TableReport.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/TableReport.vue"} +0 -0
  40. /package/src/filiale/{furuike/pc/TelFindUser.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/TelFindUser.vue"} +0 -0
  41. /package/src/filiale/{furuike/pc/TelLossList.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/TelLossList.vue"} +0 -0
  42. /package/src/filiale/{furuike/pc/TelePhoneUpload.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/TelePhoneUpload.vue"} +0 -0
  43. /package/src/filiale/{furuike/pc/TextServer.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/TextServer.vue"} +0 -0
  44. /package/src/filiale/{furuike/pc/VoiceServer.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/VoiceServer.vue"} +0 -0
  45. /package/src/filiale/{furuike/pc/WorkCenter.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/WorkCenter.vue"} +0 -0
  46. /package/src/filiale/{furuike/pc/WorkHistory.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/WorkHistory.vue"} +0 -0
  47. /package/src/filiale/{furuike/pc/WorkListAllNew.vue → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/pc/WorkListAllNew.vue"} +0 -0
  48. /package/src/filiale/{furuike/telephone.js → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/telephone.js"} +0 -0
  49. /package/src/filiale/{furuike/telephoneAndroid.js → furuike(/345/274/203/347/224/250-/347/224/250/345/257/214/347/221/236/345/205/213/345/210/206/346/224/257)/telephoneAndroid.js"} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "telephone-clients",
3
- "version": "3.0.105-27",
3
+ "version": "3.0.105-29",
4
4
  "description": "呼叫模块前台组件",
5
5
  "main": "src/index.js",
6
6
  "directories": {
@@ -507,6 +507,7 @@
507
507
  for (let k = 0; k < this.Detail.details.length; k++) {
508
508
  if (this.Detail.details[k].f_project == this.repairdetails[a].details[i].f_project) {
509
509
  this.Detail.details[k].f_content = this.Detail.details[k].f_content?this.Detail.details[k].f_content:f_item_value
510
+ break
510
511
  }
511
512
  }
512
513
  }
@@ -356,7 +356,7 @@ export default {
356
356
  if (this.f_created_date) {
357
357
  args.condition += ` and f_created_date >= ${this.f_created_date}`
358
358
  }
359
- args.condition += ` and tap.userid = '${this.$login.f.name}' `
359
+ args.condition += ` and ( tap.userid = '${this.$login.f.name}' or tswo.f_operator = '微信公众号') `
360
360
  args.condition = ' and ' + args.condition
361
361
  return this.model.search(args.condition, args.model)
362
362
  }
@@ -80,7 +80,7 @@
80
80
  <td class="tdcenter bg-info" width="100" height="30" >未接听数</td>
81
81
  <td class="tdcenter bg-info" width="100" height="30" >呼出</td>
82
82
  <td class="tdcenter bg-info" width="100" height="30">接线率</td>
83
- <td class="tdcenter bg-info" width="100" height="30">派工单总数</td>
83
+ <td class="tdcenter bg-info" width="100" height="30">工单总数</td>
84
84
  <td class="tdcenter bg-info" width="100" height="30">工单类型</td>
85
85
  <td class="tdcenter bg-info" width="100" height="30">数量</td>
86
86
  <td class="tdcenter bg-info" width="100" height="30">报修类型</td>
@@ -102,8 +102,14 @@
102
102
  <td class="tdcenter bg-info" width="100" height="30"></td>
103
103
  </tr>
104
104
  <tr>
105
- <td class="tdcenter bg-info" width="100" height="30" rowspan="5">维修</td>
106
- <td class="tdcenter bg-info" width="100" height="30" rowspan="5">{{row.baoxiudan}}</td>
105
+ <td class="tdcenter bg-info" width="100" height="30">置换通气单</td>
106
+ <td class="tdcenter bg-info" width="100" height="30" >{{row.zhihuantongqis}}</td>
107
+ <td class="tdcenter bg-info" width="100" height="30"></td>
108
+ <td class="tdcenter bg-info" width="100" height="30"></td>
109
+ </tr>
110
+ <tr>
111
+ <td class="tdcenter bg-info" width="100" height="30" rowspan="4">维修</td>
112
+ <td class="tdcenter bg-info" width="100" height="30" rowspan="4">{{row.baoxiudan}}</td>
107
113
  <td class="tdcenter bg-info" width="100" height="30">服务</td>
108
114
  <td class="tdcenter bg-info" width="100" height="30">{{row.fuwus}}</td>
109
115
  </tr>
@@ -111,10 +117,10 @@
111
117
  <td class="tdcenter bg-info" width="100" height="30">整改</td>
112
118
  <td class="tdcenter bg-info" width="100" height="30">{{row.zhenggais}}</td>
113
119
  </tr>
114
- <tr>
115
- <td class="tdcenter bg-info" width="100" height="30">置换通气</td>
116
- <td class="tdcenter bg-info" width="100" height="30">{{row.zhihuantongqis}}</td>
117
- </tr>
120
+ <!-- <tr>-->
121
+ <!-- <td class="tdcenter bg-info" width="100" height="30">置换通气</td>-->
122
+ <!-- <td class="tdcenter bg-info" width="100" height="30">{{row.zhihuantongqis}}</td>-->
123
+ <!-- </tr>-->
118
124
  <tr>
119
125
  <td class="tdcenter bg-info" width="100" height="30">换表</td>
120
126
  <td class="tdcenter bg-info" width="100" height="30">{{row.huanbiaos}}</td>
@@ -0,0 +1,340 @@
1
+ <template>
2
+ <div class="flex-row">
3
+ <div class="span" style="overflow-y: auto;">
4
+ <validator name='v'>
5
+ <form novalidate class="form-horizontal">
6
+ <!-- <div class="row" style="margin-top:10px;">-->
7
+ <!-- -->
8
+ <!-- </div>-->
9
+ <div style="margin-top:10px;" v-for="row in model.otherdetail">
10
+ <div class="row">
11
+ <div class="col-sm-4 form-group" :class="{'has-success':row.f_brand_spec,'select-error':!row.f_brand_spec}">
12
+ <label for="f_brand_spec" class="font_normal_body ">收费类型</label>
13
+ <v-select id="f_brand_spec"
14
+ placeholder='材料'
15
+ v-model="row.f_brand_spec"
16
+ :value.sync="row.f_brand_spec"
17
+ :options='brandspec'
18
+ close-on-select clear-button>
19
+ </v-select>
20
+ </div>
21
+ <div class="col-sm-4 form-group" :class="{'has-success':row.f_unitprice,'has-error':!row.f_unitprice}">
22
+ <label style="" for="f_unitprice" class=" font_normal_body">*单&emsp;&emsp;价</label>
23
+ <input class="input_search" style="width:60%" type="number" min="1" @blur.prevent="getcollection()"
24
+ v-validate:f_unitprice='{required: true, dctest: [0, ">" ] }'
25
+ v-model="row.f_unitprice"
26
+ placeholder="单价" v-next-el='sl'>
27
+ </div>
28
+ <div class="col-sm-3 form-group" :class="{'has-success':row.f_number,'has-error':!row.f_number}">
29
+ <label style="" for="f_number" class="font_normal_body">*数&emsp;&emsp;量</label>
30
+ <input class="input_search" style="width:60%" type="number" min='1' @blur.prevent="getcollection()"
31
+ v-validate:f_number='{required: true, dctest: [0, ">" ] }'
32
+ v-model="row.f_number"
33
+ placeholder="数量" v-next-el='sk' v-el:sl>
34
+ </div>
35
+ <div class="form-group" style="display: flow-root;width: min-content">
36
+ <button type="button" class="glyphicon glyphicon-minus btn-danger" @click.stop="delthisdetail($index)"></button>
37
+ <button type="button" class="glyphicon glyphicon-plus btn-success" @click.stop="addadetail()"></button>
38
+ </div>
39
+ </div>
40
+ <!-- <div class="row" style="margin-top:10px;" v-if="row.f_brand_spec[0]=='其他费用'">-->
41
+ <!-- <div class="col-sm-4 form-group" :class="[$v.f_fee_type.required ? 'has-error' : 'has-success']">-->
42
+ <!-- <input v-validate:f_fee_type='{required: true}' v-model="row.f_fee_type" v-show="false"/>-->
43
+ <!-- <label for="f_fee_type" class="font_normal_body ">其他收费类型</label>-->
44
+ <!-- <v-select id="f_fee_type"-->
45
+ <!-- v-model="row.f_fee_type"-->
46
+ <!-- placeholder='请选择'-->
47
+ <!-- :value.sync="row.f_fee_type"-->
48
+ <!-- :options='feetype'-->
49
+ <!-- close-on-select clear-button>-->
50
+ <!-- </v-select>-->
51
+ <!-- </div>-->
52
+
53
+ <!-- <div class="col-sm-4 form-group">-->
54
+ <!-- <label for="f_fee_time" class="font_normal_body">本次购买时间</label>-->
55
+ <!-- <v-select id="f_fee_time"-->
56
+ <!-- v-model="row.f_fee_time"-->
57
+ <!-- placeholder='请选择'-->
58
+ <!-- :value.sync="row.f_fee_time"-->
59
+ <!-- :options='feetime'-->
60
+ <!-- close-on-select clear-button>-->
61
+ <!-- </v-select>-->
62
+ <!-- </div>-->
63
+ <!-- </div>-->
64
+
65
+ </div>
66
+
67
+
68
+ <div class="row" style="margin-top:10px;">
69
+ <div class="col-sm-4 form-group">
70
+ <label for="f_paytype" class="font_normal_body" title="参数名称:付款方式">收款方式</label>
71
+ <v-select id="f_payment"
72
+ v-model="f_payment"
73
+ placeholder='请选择'
74
+ :value.sync="model.f_payment"
75
+ :options='paytype'
76
+ close-on-select clear-button>
77
+ </v-select>
78
+ </div>
79
+ <div class="col-sm-4 form-group">
80
+ <label for="f_print" class="font_normal_body">&nbsp;打印格式</label>
81
+ <v-select id="print"
82
+ v-model="f_print"
83
+ placeholder='请选择'
84
+ :value.sync="model.f_print"
85
+ :options='printstyle'
86
+ close-on-select clear-button>
87
+ </v-select>
88
+ </div>
89
+ <div class="col-sm-4 form-group">
90
+ <label for="f_collection" class="font_normal_body">&nbsp;收&emsp;&emsp;款</label>
91
+ <label for="f_collection" class="font_normal_body">{{model.f_collection}}</label>
92
+ </div>
93
+ </div>
94
+ <div class="row" style="margin-top:10px;" v-if="model.f_payment[0].includes('POS')">
95
+ <div class="col-sm-4 form-group">
96
+ <label for="f_voucher_number" class="font_normal_body">&nbsp;&nbsp;&nbsp;凭证号</label>
97
+ <input type="text" class="input_search" style="width:60%" v-model="model.f_voucher_number" placeholder="凭证号">
98
+ </div>
99
+ </div>
100
+ <div class="row" style="margin-top:10px;">
101
+ <div class="col-sm-4 ">
102
+ <label for="f_voucher_number" class="font_normal_body">服务人员</label>
103
+ <v-select v-model="model.f_service_person"
104
+ placeholder='请选择'
105
+ :value.sync="model.f_service_person"
106
+ :options='services'
107
+ close-on-select clear-button>
108
+ </v-select>
109
+ </div>
110
+ <div class="col-sm-12 " >
111
+ <label for="f_comments" class=" font_normal_body">&nbsp;备&emsp;&emsp;注</label>
112
+ <input type="text" class="input_search" style="width:80%" v-model="model.f_comments" rows="1" placeholder="备注"></input>
113
+ </div>
114
+ </div>
115
+ </form>
116
+ <validate-bill v-if="hasValidateBill" :data="model" @validate-bill="validateBill"></validate-bill>
117
+ <print-bill :show="print" :data='row' :bill-config='config' :bill-data='billData' v-on:toggle="close" @printok="printok" v-ref:printbill></print-bill>
118
+ <!-- <print-other-charge-bill :show="print" v-ref:printbill :row='row' :logic='model' v-on:success="close" v-on:toggle="close"></print-other-charge-bill> -->
119
+ <!-- <tax-other-bill :show="taxprint" v-ref:taxprintbill :row='row' :logic='model' v-on:success="close" v-on:toggle="close"></tax-other-bill> -->
120
+ <div style="text-align:right;height: 25%;">
121
+ <payment-code-button :clickable="!$v.valid || validateOk"
122
+ :payment.sync="model.f_payment" :payment-data="paytype"
123
+ @confirm-payment="confirm()">
124
+ </payment-code-button>
125
+ <button class="button_search btn-gn" @click="confirm()" :disabled='!$v.valid || validateOk || !model.f_collection'>确认</button>
126
+ <button class="button_clear btn-gn" @click="clean()">取消</button>
127
+ </div>
128
+ </validator>
129
+
130
+ </div>
131
+
132
+ <payment-code v-ref:paymentcode :payment="model.f_payment" :row="row" :money="model.f_collection"></payment-code>
133
+ </div>
134
+ <upload :blodid="blodid" v-if="config.showupload" isremark="true" fusetype="其他收费"></upload>
135
+ </template>
136
+
137
+
138
+ <script>
139
+
140
+ let otherChargeGen = async function (self) {
141
+ try {
142
+ // 加入扫码盒付款码支付流水号
143
+ self.model.f_serial_id = self.$refs.paymentcode.paymentCodeReturnData.f_out_trade_no
144
+ let resid = await self.$LogicService.otherCharge(self.model, self.row)
145
+ console.log('其他收费返回id', resid)
146
+
147
+ if (self.config.dispatch) {
148
+ await self.$showMessage(`是否添加派工单`, ['confirm', 'cancel']).then((res) => {
149
+ if (res === 'confirm') {
150
+ console.log('其他收费xinxi', self.model)
151
+ console.log('其他收费xinxi', self.row)
152
+ let batch = {
153
+ sf_id: resid.data,
154
+ f_userinfo_code: self.row.f_userinfo_code,
155
+ f_dispathch_name: self.row.f_user_name,
156
+ f_phone: self.row.f_user_phone,
157
+ f_dispathch_address: self.row.f_address,
158
+ f_dispathch_type: '安装',
159
+ f_source: '其他收费',
160
+ f_remarks: self.model.f_comments,
161
+ f_operator_date: self.$login.toStandardTimeString(),
162
+ f_orgid: self.$login.f.orgid,
163
+ f_dispathch_state: '待分配'
164
+ }
165
+ console.log('111:', batch)
166
+ self.$resetpost('rs/logic/savePatch', batch).then((res1) => {
167
+ // this.params.rows.splice(index, 1)
168
+ console.log('更新成功!', res1.data.id)
169
+ })
170
+ }
171
+ })
172
+ }
173
+ if (self.config.hasPrint) {
174
+ if (self.model.f_print[0] != '电子发票') {
175
+ if (self.config.hasBillManage) {
176
+ self.row.id = resid.data
177
+ self.row.f_bill_type = '其他收费'
178
+ self.row.f_bill_style = self.model.f_print[0]
179
+ self.print = true
180
+ } else {
181
+ self.row.id = resid.data
182
+ self.print = true
183
+ }
184
+ } else if (self.model.f_print[0] === '国税发票') {
185
+ // TODO
186
+ self.$dispatch('success')
187
+ } else if (self.model.f_print[0] === '电子发票') {
188
+ self.$CommonService.openEticket(resid.data, '其他收费')
189
+ self.$dispatch('success')
190
+ }
191
+ } else {
192
+ self.$dispatch('success')
193
+ }
194
+ } catch (error) {
195
+ self.$showAlert(error, 'danger', 0)
196
+ self.$dispatch('refresh')
197
+ }
198
+ }
199
+
200
+ let asyncOtherCharge = async function (self) {
201
+ await self.$getConfig(self, 'OtherCharge')
202
+ self.model.f_print = self.config.printType instanceof Array ? self.config.printType : [self.config.printType]
203
+ self.model.f_payment = [self.config.payment]
204
+ self.model.f_brand_spec = [self.config.brandspec]
205
+
206
+ self.model.f_use_type = self.config.billType
207
+ self.model.f_bill_type = self.model.f_print
208
+ self.hasValidateBill = self.config.hasBillManage
209
+ }
210
+ export default {
211
+ title: '其他收费',
212
+ data () {
213
+ return {
214
+ config: {
215
+ showupload: false,
216
+ hasPrint: false, // 默认打票
217
+ dispatch: false, // 是否派工
218
+ hasBillManage: false, // 默认不启用发票管理
219
+ billType: '其他费用', // 票据类型(燃气费,其他费用,调用的发票代码不同)
220
+ printType: '普通收据', // 收据/电子票/专用发票/国税发票
221
+ payment: '现金缴费', // 付款方式
222
+ brandspec: '材料费' // 收费类型
223
+ },
224
+ model: {
225
+ f_print: [],
226
+ f_payment: '现金缴费',
227
+ f_number: 0,
228
+ f_unitprice: 0,
229
+ f_collection: 0,
230
+ f_comments: '',
231
+ f_voucher_number: '',
232
+ f_service_person: '',
233
+ // 用户其他费用信息
234
+ t_userfees: '',
235
+ f_fee_type: [],
236
+ f_fee_time: ['12'],
237
+ otherdetail: [{f_brand_spec: ['材料费']}]
238
+ },
239
+ blodid: '',
240
+ print: false,
241
+ taxprint: false,
242
+ billData: {
243
+ url: 'rs/report/otherCharge_bill',
244
+ bill: ''
245
+ },
246
+
247
+ // 启用发票管理需要对票号进行验证
248
+ hasValidateBill: false,
249
+ validateOk: false,
250
+
251
+ brandspec: this.$appdata.getParam('品名及规格'),
252
+ printstyle: this.$appdata.getParam('打印格式'),
253
+ paytype: this.$appdata.getParam('付款方式'),
254
+ feetype: this.$appdata.getParam('其他费用'),
255
+ services: this.$appdata.getParam('服务人员')
256
+ }
257
+ },
258
+ props: ['row'],
259
+ ready () {
260
+ this.blodid = this.row.f_userinfo_id
261
+ // this.model.f_unitprice = this.$appdata.getSingleValue('置换气费')
262
+ asyncOtherCharge(this)
263
+ },
264
+ watch: {
265
+ 'model.otherdetail' (val) {
266
+ },
267
+ 'model.f_fee_type' (val) {
268
+ if (val[0]) {
269
+ this.userfees(this.row.f_userinfo_id, val[0])
270
+ }
271
+ }
272
+ },
273
+ methods: {
274
+ async confirm () {
275
+ // 先调用付款码支付组件流程
276
+ let ss = await this.$refs.paymentcode.flowPath()
277
+ this.$refs.paymentcode.paymentCodeShow = false
278
+ console.log('付款码操作返回', ss)
279
+ if (!ss.result) return
280
+
281
+ otherChargeGen(this)
282
+ },
283
+ clean () {
284
+ this.$dispatch('refresh', this.row)
285
+ },
286
+ close () {
287
+ this.taxprint = false
288
+ this.print = false
289
+ this.clean()
290
+ },
291
+ printok () {
292
+ this.$dispatch('success')
293
+ },
294
+ validateBill (val) {
295
+ this.validateOk = !val.isOk
296
+ this.billData.bill = val.bill
297
+ },
298
+ getcollection () {
299
+ let money = 0
300
+ this.model.otherdetail.forEach((item) => {
301
+ if (item.f_unitprice && item.f_number) {
302
+ money += ((item.f_unitprice - 0) * (item.f_number - 0)) - 0
303
+ }
304
+ })
305
+
306
+ if (money != 0) {
307
+ this.model.f_collection = money.toFixed(4)
308
+ }
309
+ },
310
+ addadetail () {
311
+ this.model.otherdetail.push({f_brand_spec: ['材料费']})
312
+ },
313
+ delthisdetail (index) {
314
+ if (this.model.otherdetail.length > 1) {
315
+ this.model.otherdetail.splice(index, 1)
316
+ this.getcollection()
317
+ }
318
+ },
319
+ async userfees (userinfoid, feetype) {
320
+ this.model.t_userfees = await this.$resetpost('rs/sql/saleSingleTable', {
321
+ data: {
322
+ tablename: 't_userfees',
323
+ condition: `f_userinfo_id=${userinfoid} and f_fee_type='${feetype}'`
324
+ }
325
+ }, {resolveMsg: null, rejectMsg: '查询客户其他费用失败!'})
326
+ }
327
+ },
328
+ computed: {
329
+ feetime () {
330
+ return [{label: '一个月', value: '1'}, {label: '三个月', value: '3'}, {label: '六个月', value: '6'}, {
331
+ label: '一年',
332
+ value: '12'
333
+ }]
334
+ }
335
+ }
336
+ }
337
+ </script>
338
+
339
+ <style>
340
+ </style>