safecheck-client 3.0.34-7 → 3.0.34-70

Sign up to get free protection for your applications and to get access to all the features.
Files changed (149) hide show
  1. package/package.json +1 -1
  2. package/src/App-/345/215/225/351/241/265/351/235/242/346/211/223/345/214/205/347/224/250.vue +55 -0
  3. package/src/App.vue +31 -31
  4. package/src/assets/123.png +0 -0
  5. package/src/assets/f8632d3c8c4c1cb68e99da754cab1a7.png +0 -0
  6. package/src/components/LoadData.vue +62 -0
  7. package/src/components/NewDefectList/DefectListNew.vue +1 -0
  8. package/src/components/android/AndroidDefectDeal.vue +1 -0
  9. package/src/components/android/AndroidDefectDealBeforeSafe.vue +502 -0
  10. package/src/components/android/AreaSelect.vue +198 -0
  11. package/src/components/android/BuildingSelect.vue +192 -0
  12. package/src/components/android/CheckPlanSelect.vue +229 -0
  13. package/src/components/android/PaperFeedback.vue +1514 -1481
  14. package/src/components/android/PaperFeedbackTemp.vue +1470 -1470
  15. package/src/components/android/QRCode/QRCodeBinding.vue +300 -0
  16. package/src/components/android/QRCode/QRCodePage.vue +212 -0
  17. package/src/components/android/SafePlanItem.vue +509 -509
  18. package/src/components/android/SafecheckDevices.vue +1298 -1298
  19. package/src/components/android/SafecheckDevicesTemp.vue +1333 -1333
  20. package/src/components/android/SafecheckOrderV.vue +8 -12
  21. package/src/components/android/UserinfoSelect.vue +702 -0
  22. package/src/components/android/examples/SafeListExamples.vue +96 -0
  23. package/src/components/android/examples/UserExamples.vue +130 -0
  24. package/src/components/android/userinfo/SafecheckUserInfo.vue +776 -776
  25. package/src/components/rongcheng/AddPlanItem.vue +4 -0
  26. package/src/components/rongcheng/AspiratedUserInfo.vue +1 -1
  27. package/src/components/rongcheng/CheckSearchUser.vue +40 -14
  28. package/src/components/rongcheng/PaperStatem.vue +6 -1
  29. package/src/components/rongcheng/PhoneDevicesInfo.vue +16 -1
  30. package/src/components/rongcheng/PhoneUpUserinfo.vue +0 -92
  31. package/src/components/rongcheng/SafecheckOrderV.vue +12 -3
  32. package/src/components/rongcheng/SafecheckOrderVCli.vue +9 -0
  33. package/src/components/safecheckNew/android/SafecheckOrderV.vue +2731 -2731
  34. package/src/filiale/baiyin/android/AndroidDefectDeal.vue +4 -4
  35. package/src/filiale/baiyin/android/SafecheckOrderV.vue +2785 -0
  36. package/src/filiale/baiyin/android.js +1 -0
  37. package/src/filiale/baiyin/pc/CheckSearchUser.vue +2 -2
  38. package/src/filiale/baiyin/pc/DefectListNew.vue +3 -3
  39. package/src/filiale/baiyin/pc/PaperList.vue +7 -7
  40. package/src/filiale/bayan/android/PaperFeedback.vue +1651 -1651
  41. package/src/filiale/bayan/android/SafecheckDevices.vue +1303 -1303
  42. package/src/filiale/bayan/android/SafecheckOrderV.vue +52 -29
  43. package/src/filiale/bayan/android/SafecheckUserInfo.vue +863 -863
  44. package/src/filiale/bayan/pc/PaperList.vue +1 -0
  45. package/src/filiale/dexin/android/SafecheckDevices.vue +1305 -1305
  46. package/src/filiale/fugou/pc/CheckBookSearchUser.vue +35 -15
  47. package/src/filiale/hanzhong/android/PaperFeedback.vue +1477 -1477
  48. package/src/filiale/hanzhong/android/SafecheckDevices.vue +1313 -1313
  49. package/src/filiale/hanzhong/android/SafecheckUserInfo.vue +786 -786
  50. package/src/filiale/huaran/android/SafecheckOrderV.vue +2803 -0
  51. package/src/filiale/huaran/android.js +12 -0
  52. package/src/filiale/huaran/pc/CheckBook.vue +313 -0
  53. package/src/filiale/huaran/pc/CheckBookAll.vue +69 -0
  54. package/src/filiale/huaran/pc/CheckBookArea.vue +170 -0
  55. package/src/filiale/huaran/pc/CheckBookCompany.vue +166 -0
  56. package/src/filiale/huaran/pc/CheckBookDetails.vue +196 -0
  57. package/src/filiale/huaran/pc/CheckBookEntry.vue +61 -0
  58. package/src/filiale/huaran/pc/CheckBookList.vue +386 -0
  59. package/src/filiale/huaran/pc/CheckBookSearchArea.vue +564 -0
  60. package/src/filiale/huaran/pc/CheckBookSearchUnit.vue +229 -0
  61. package/src/filiale/huaran/pc/CheckBookSearchUser.vue +604 -0
  62. package/src/filiale/huaran/pc/CheckBookUser.vue +112 -0
  63. package/src/filiale/huaran/pc/PaperList.vue +822 -0
  64. package/src/filiale/huaran/pc/PlanManage.vue +887 -0
  65. package/src/filiale/huaran/pc/checkPlanList.vue +419 -0
  66. package/src/filiale/huaran/pc/checkUserList.vue +867 -0
  67. package/src/filiale/huaran/pc.js +27 -0
  68. package/src/filiale/jiaxian/android/AddPlanItem.vue +447 -0
  69. package/src/filiale/jiaxian/android/PhoneUpUserinfo.vue +1229 -0
  70. package/src/filiale/jiaxian/android/SafecheckDevices.vue +1298 -1298
  71. package/src/filiale/jiaxian/android/SafecheckOrderV.vue +2807 -0
  72. package/src/filiale/jiaxian/android/SafecheckUserInfo.vue +784 -0
  73. package/src/filiale/jiaxian/android.js +4 -0
  74. package/src/filiale/jingyang/android/AddPlanItem.vue +458 -458
  75. package/src/filiale/jingyang/android/CurrentCreate.vue +1080 -1080
  76. package/src/filiale/jingyang/android/PaperFeedback.vue +1493 -1493
  77. package/src/filiale/jingyang/android/SafecheckOrderV.vue +2734 -2734
  78. package/src/filiale/jingyang/android/SafecheckUserInfo.vue +781 -781
  79. package/src/filiale/jingyang/android.js +15 -15
  80. package/src/filiale/kelai/pc/CheckPlanAreaList.vue +15 -7
  81. package/src/filiale/pingxiang/android/PaperFeedback.vue +1399 -1399
  82. package/src/filiale/qingjian/android/SafecheckDevices.vue +1269 -1269
  83. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +800 -800
  84. package/src/filiale/qingtongxia/android/AddPlanItem.vue +450 -0
  85. package/src/filiale/qingtongxia/android/CurrentCreate.vue +1053 -0
  86. package/src/filiale/qingtongxia/android/PhoneUpUserinfo.vue +1230 -0
  87. package/src/filiale/qingtongxia/android/SafecheckUserInfo.vue +782 -0
  88. package/src/filiale/qingtongxia/android.js +14 -10
  89. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +2696 -2696
  90. package/src/filiale/ruihua/android/SafecheckOrderV.vue +2747 -0
  91. package/src/filiale/ruihua/android/SafecheckUserInfo.vue +804 -0
  92. package/src/filiale/ruihua/android.js +11 -0
  93. package/src/filiale/shanxian/pc/checkUserList.vue +4 -4
  94. package/src/filiale/shiquan/android/SafecheckDevices.vue +1269 -1269
  95. package/src/filiale/siyang/android/AddPlanItem.vue +446 -0
  96. package/src/filiale/siyang/android/SafecheckUserInfo.vue +789 -789
  97. package/src/filiale/siyang/android.js +1 -0
  98. package/src/filiale/siyang/pc/CheckBookSearchArea.vue +645 -0
  99. package/src/filiale/siyang/pc/CheckPlanAreaList.vue +512 -0
  100. package/src/filiale/siyang/pc/CheckSearchUser.vue +982 -0
  101. package/src/filiale/siyang/pc/HiddenSituation.vue +167 -0
  102. package/src/filiale/siyang/pc/NewCheckpaper.vue +1938 -1938
  103. package/src/filiale/siyang/pc/checkPlanList.vue +367 -0
  104. package/src/filiale/siyang/pc/checkUserList.vue +790 -786
  105. package/src/filiale/siyang/pc.js +21 -16
  106. package/src/filiale/tongchuan/android/Select.vue +421 -0
  107. package/src/filiale/tongchuan/android.js +1 -0
  108. package/src/filiale/tongchuan/pc/CheckPlanCountChartArea.vue +3 -1
  109. package/src/filiale/tongchuan/pc/DefectPaperWeiXiu.vue +6 -2
  110. package/src/filiale/tongchuan/pc/HiddenSituation.vue +3 -1
  111. package/src/filiale/tongchuan/pc/NewCheckpaper.vue +13 -22
  112. package/src/filiale/tongchuan/pc/PaperDefectMain.vue +1 -1
  113. package/src/filiale/tongchuan/pc/SelectCheckPlan.vue +5 -2
  114. package/src/filiale/tongchuan/utils/EventListener.js +29 -0
  115. package/src/filiale/tongchuan/utils/coerceBoolean.js +7 -0
  116. package/src/filiale/weinan/android/SafecheckDevices.vue +1295 -1295
  117. package/src/filiale/weinan/android/SafecheckOrderV.vue +1 -1
  118. package/src/filiale/weinan/pc/CheckBookSearchUserList.vue +75 -62
  119. package/src/filiale/weinan/pc/CheckDetail.vue +11 -11
  120. package/src/filiale/weinan/pc/DefectPaperNew.vue +31 -0
  121. package/src/filiale/weinan/pc/DeviceChange.vue +1088 -0
  122. package/src/filiale/weinan/pc/checkUserList.vue +49 -113
  123. package/src/filiale/weinan/pc.js +1 -0
  124. package/src/filiale/wuan/android/SafecheckOrderV.vue +1 -0
  125. package/src/filiale/wuan/android/SafecheckUserInfo.vue +4 -0
  126. package/src/filiale/yangchunboneng/android/PaperFeedback.vue +1731 -1731
  127. package/src/filiale/yangchunboneng/android/SafecheckDevices.vue +1332 -1332
  128. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +887 -887
  129. package/src/filiale/yangchunboneng/pc/CheckBookSearchUser.vue +13 -11
  130. package/src/filiale/yangchunboneng/pc/CheckBookUser.vue +269 -269
  131. package/src/filiale/yangchunboneng/pc/CheckPlanAreaList.vue +96 -30
  132. package/src/filiale/yangchunboneng/pc/CheckSearchUser.vue +10 -10
  133. package/src/filiale/yangchunboneng/pc/DefectPaperNew.vue +1128 -1128
  134. package/src/filiale/yangchunboneng/pc/PaperDefectMain.vue +972 -972
  135. package/src/filiale/yangchunboneng/pc/PaperList.vue +773 -773
  136. package/src/filiale/yongzhou/android/PaperFeedback.vue +1519 -1519
  137. package/src/filiale/yongzhou/android/SafecheckDevices.vue +1294 -1294
  138. package/src/filiale/yongzhou/android/SafecheckUserInfo.vue +776 -776
  139. package/src/filiale/yuansheng/android/SafecheckDevices.vue +11 -1
  140. package/src/filiale/yuansheng/android/SwitchValve.vue +322 -322
  141. package/src/filiale/yuansheng/android.js +17 -17
  142. package/src/filiale/yuansheng/pc/NewCheckpaper.vue +10 -2
  143. package/src/filiale/yunchengminsheng/android/PaperFeedback.vue +1508 -1508
  144. package/src/filiale/yunchengminsheng/android/SafecheckDevices.vue +1270 -1270
  145. package/src/filiale/yunchengminsheng/android/SafecheckUserInfo.vue +784 -784
  146. package/src/main-/345/215/225/351/241/265/351/235/242/346/211/223/345/214/205/347/224/250.js +24 -0
  147. package/src/main.js +33 -33
  148. package/src/safecheck-android.js +9 -0
  149. package/src/safecheck-page.js +10 -0
@@ -0,0 +1,1230 @@
1
+ <template>
2
+ <work-busy :is-busy="excessive"></work-busy>
3
+ <div style="height: 100%">
4
+ <div class="panel auto">
5
+ <div class="panel-heading" @click="selectVal('基本信息')" style="background-color: #ffffff">
6
+ <span class="spanboder">
7
+ <img src="../../../assets/person.png" style="width: 22px;margin-right: 8px;">基本信息
8
+ <img class="butt3" :src="imgback('基本信息')">
9
+ </span>
10
+ </div>
11
+ <div class="panel-body " id="upuserinfo_sel" v-show="headername=='基本信息'">
12
+ <div class="row auto" style="margin: 5px 0">
13
+ <label class="righttxt">用户编号:</label>
14
+ <input type="text" class="form-control rightipt" v-model="userinfo.baseinfo.base.f_userinfo_code" readonly/>
15
+ </div>
16
+ <div class="row auto" style="margin: 5px 0">
17
+ <label class="righttxt">用户名称:</label><input type="text" class="form-control rightipt"
18
+ v-model=" maskUserName(userinfo.baseinfo.base.f_user_name)" readonly/>
19
+ </div>
20
+ <div class="row auto" style="margin: 5px 0">
21
+ <label class="righttxt">用户状态:</label><input type="text" class="form-control rightipt" readonly
22
+ v-model="userinfo.baseinfo.base.f_user_state"/>
23
+ </div>
24
+ <div class="row auto" style="margin: 5px 0">
25
+ <label class="righttxt">用户电话:</label><input type="text" class="form-control rightipt"
26
+ v-model="userinfo.baseinfo.base.f_user_phone"/>
27
+ </div>
28
+ <div class="row auto" style="margin: 5px 0">
29
+ <label class="righttxt">租户姓名:</label><input type="text" class="form-control rightipt"
30
+ v-model="userinfo.baseinfo.base.f_rent_name"/>
31
+ </div>
32
+ <div class="row auto" style="margin: 5px 0">
33
+ <label class="righttxt">租户电话:</label><input type="text" class="form-control rightipt"
34
+ v-model="userinfo.baseinfo.base.f_zuhu_phone"/>
35
+ </div>
36
+ <div class="row auto" style="margin: 5px 0">
37
+ <label class="righttxt">建档日期:</label><input type="text" class="form-control rightipt"
38
+ v-model="userinfo.baseinfo.base.f_createfile_date" readonly/>
39
+ </div>
40
+ <!-- <div class="row auto" style="margin: 5px 0">
41
+ <label class="righttxt">开户日期:</label><input type="text" class="form-control rightipt" v-model="userinfo.baseinfo.base.f_open_date" readonly />
42
+ </div>-->
43
+ <div class="row auto" style="margin: 5px 0">
44
+ <label class="righttxt">地址类型:</label>
45
+ <div class="rightipt" style="display: flex;justify-content: space-around;margin-top: 5px">
46
+ <div><input type="radio" v-model="addressType" name="addressType" @change="changeAddressType"
47
+ id="phone_addressType1" value="普通地址"/><label style="font-weight: normal;padding-left: 2px"
48
+ for="phone_addressType1">普通地址</label></div>
49
+ <div><input type="radio" v-model="addressType" name="addressType" @change="changeAddressType"
50
+ id="phone_addressType2" value="特殊地址"/><label style="font-weight: normal;padding-left: 2px"
51
+ for="phone_addressType2">特殊地址</label></div>
52
+ </div>
53
+ <!--<input type="text" style="width: 75%;float:right" class="form-control" v-model="row.f_devices_type" />-->
54
+ <!--<input type="text" class="form-control rightipt" readonly v-model="userinfo.addressinfo.f_pcd" />-->
55
+ <!--<v-select :value.sync="userinfo.addressinfo.f_iscity" class="input-font" style="margin-left: 5%;"
56
+ :width="'60%'"
57
+ v-model="userinfo.addressinfo.f_iscity"
58
+ :options='cityTypes' placeholder='地区类型' close-on-select clear-button value-single @change="area_change()"></v-select>-->
59
+ </div>
60
+ <div class="row auto" style="margin: 5px 0">
61
+ <label class="righttxt">地区类型:</label>
62
+ <!--<input type="text" style="width: 75%;float:right" class="form-control" v-model="row.f_devices_type" />-->
63
+ <input type="text" class="form-control rightipt" readonly v-model="userinfo.addressinfo.f_iscity"/>
64
+ <!--<v-select :value.sync="userinfo.addressinfo.f_iscity" class="input-font" style="margin-left: 5%;"
65
+ :width="'60%'"
66
+ :disabled="true"
67
+ v-model="userinfo.addressinfo.f_iscity"
68
+ :options='cityTypes' placeholder='地区类型' close-on-select clear-button value-single ></v-select>-->
69
+ </div>
70
+ <div class="row auto" style="margin: 5px 0">
71
+ <label class="righttxt">省&ensp;市&ensp;区:</label>
72
+ <!--<input type="text" style="width: 75%;float:right" class="form-control" v-model="row.f_devices_type" />-->
73
+ <!--<input type="text" class="form-control rightipt" readonly v-model="userinfo.addressinfo.f_pcd" />-->
74
+ <v-select :value.sync="selectPcd" class="input-font" style="margin-left: 5%;"
75
+ :width="'60%'"
76
+ v-model="selectPcd"
77
+ :options='pcds' placeholder='请选择省市区' close-on-select clear-button value-single
78
+ @change="pcd_change()"></v-select>
79
+ </div>
80
+ <div class="row auto" style="margin: 5px 0">
81
+ <label class="righttxt">街道名称:</label>
82
+ <!--<input type="text" readonly class="form-control rightipt" v-model="userinfo.addressinfo.f_street" />-->
83
+ <v-select :value.sync="selectStreet" class="input-font" style="margin-left: 5%;"
84
+ :width="'60%'"
85
+ v-model="selectStreet"
86
+ :options='streets' placeholder='请选择街道' close-on-select clear-button value-single
87
+ @change="street_change()"></v-select>
88
+ </div>
89
+ <div class="row auto" style="margin: 5px 0">
90
+ <label class="righttxt">集收单位:</label>
91
+ <!--<input type="text" readonly class="form-control rightipt" v-model="userinfo.addressinfo.f_residential_area" />-->
92
+ <v-select :value.sync="selectArea" class="input-font" style="margin-left: 5%;"
93
+ :width="'60%'"
94
+ v-model="selectArea"
95
+ :timeout="500"
96
+ @select-search="select_search"
97
+ :options='area' placeholder='请选择集收单位' close-on-select clear-button value-single
98
+ @change="area_change()"></v-select>
99
+ </div>
100
+ <!--<div class="row auto" style="margin: 5px 0" v-show="addressType=='特殊地址'">
101
+ <label class="righttxt">集收单位:</label>
102
+ &lt;!&ndash;<input type="text" readonly class="form-control rightipt" v-model="userinfo.addressinfo.f_residential_area" />&ndash;&gt;
103
+ <v-select :value.sync="selectArea" class="input-font" style="margin-left: 5%;"
104
+ :width="'60%'"
105
+ v-model="selectArea"
106
+ @select-search="select_search"
107
+ :options='area' placeholder='请选择集收单位' close-on-select clear-button value-single @change="area_changeTC()"></v-select>
108
+ </div>-->
109
+ <div class="row auto" style="margin: 5px 0" v-show="addressType=='普通地址'">
110
+ <label class="righttxt">楼&ensp;&ensp;&ensp;&ensp;号:</label><input type="text" @change="changeNewAddress"
111
+ class="form-control rightipt"
112
+ v-model="userinfo.addressinfo.f_building"/>
113
+ </div>
114
+ <div class="row auto" style="margin: 5px 0" v-show="addressType=='普通地址'">
115
+ <label class="righttxt">单&ensp;&ensp;&ensp;&ensp;元:</label><input type="text" @change="changeNewAddress"
116
+ class="form-control rightipt"
117
+ v-model="userinfo.addressinfo.f_unit"/>
118
+ </div>
119
+ <div class="row auto" style="margin: 5px 0" v-show="addressType=='普通地址'">
120
+ <label class="righttxt">楼&ensp;&ensp;&ensp;&ensp;层:</label><input type="text" @change="changeNewAddress"
121
+ class="form-control rightipt"
122
+ v-model="userinfo.addressinfo.f_floor"/>
123
+ </div>
124
+ <div class="row auto" style="margin: 5px 0" v-show="addressType=='普通地址'">
125
+ <label class="righttxt">门&ensp;牌&ensp;号:</label><input type="text" @change="changeNewAddress"
126
+ class="form-control rightipt"
127
+ v-model="userinfo.addressinfo.f_room"/>
128
+ </div>
129
+ <div class="row auto" style="margin: 5px 0">
130
+ <label class="righttxt">详细地址:</label><input type="text" class="form-control rightipt" readonly
131
+ v-model="userinfo_old.addressinfo.f_address"/>
132
+ </div>
133
+ <div class="row auto" style="margin: 5px 0">
134
+ <label class="righttxt">新&ensp;地&ensp;址:</label>
135
+ <!--<input type="text" class="form-control rightipt" readonly v-model="getaddress()" />-->
136
+ <textarea :readonly="addressType=='普通地址'" class="form-control rightipt" : style="height: 80px"
137
+ v-model="userinfo.addressinfo.f_address"></textarea>
138
+ </div>
139
+
140
+ <!--<div class="row auto" style="margin: 5px 0" v-show="addressType=='特殊地址'">
141
+ <label class="righttxt">新&ensp;地&ensp;址:</label>&lt;!&ndash;<input type="text" class="form-control rightipt" v-model="userinfo.addressinfo.f_address" />&ndash;&gt;
142
+ <textarea class="form-control rightipt" style="height: 80px" v-model="getAddressTS"></textarea>
143
+ </div>-->
144
+
145
+ <div class="row auto" style="margin: 5px 0">
146
+ <label class="righttxt">备&ensp;&ensp;&ensp;&ensp;注:</label><textarea class="form-control rightipt"
147
+ style="height: 150px"
148
+ v-model="userinfo.baseinfo.base.f_remark"></textarea>
149
+ <!--<input type="text" class="form-control rightipt" v-model="userinfo.baseinfo.base.f_remark" />-->
150
+ </div>
151
+ </div>
152
+ </div>
153
+ <div class="panel auto">
154
+ <div class="panel-heading" @click="selectVal('表具信息')" style="background-color: #ffffff">
155
+ <span class="spanboder">
156
+ <img src="../../../assets/person.png" style="width: 22px;margin-right: 8px;">表具信息
157
+ <img class="butt3" :src="imgback('表具信息')">
158
+ </span>
159
+ </div>
160
+ <div class="panel-body " v-show="headername=='表具信息'">
161
+ <div class="row auto" style="margin: 5px 0">
162
+ <label class="righttxt">表&ensp;&ensp;&ensp;&ensp;号:</label>
163
+ <input type="text" :readonly="(userinfo.meterinfo[0].f_meter_classify!='机表' && userinfo.meterinfo[0].f_meter_classify!='金额卡表'&&userinfo.meterinfo[0].f_meter_classify!='气量卡表')" class="form-control rightipt"
164
+ style="width: 45%" v-model="userinfo.meterinfo[0].f_meternumber"/>
165
+ <button type="button"
166
+ :disabled="!(userinfo.meterinfo[0].f_meter_classify=='机表' || userinfo.meterinfo[0].f_meter_classify=='金额卡表' || userinfo.meterinfo[0].f_meter_classify=='气量卡表')"
167
+ name="button" class="btn btn-primary" style="width: 15%" @click="scan">扫码
168
+ </button>
169
+ </div>
170
+
171
+ <!--<div class="row auto" style="margin: 5px 0" v-if="userinfo.meterinfo[0].f_meter_classify=='机表'">
172
+ <div class="auto">
173
+ <div class="panel" style="padding: 0px 15px 5px 10px;">
174
+ <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
175
+ <div class="row" style="height: 240px;">
176
+ <div class="col-sm-4">
177
+ <img-self :src="f_meterno_path" alt="表号照片" width="150" height="200"></img-self>
178
+ </div>
179
+ </div>
180
+ <div class="row text-right div-photo" :class="style__">
181
+ <button type="button" name="button" class="btn btn-primary btn-photo" @click="takePic('f_meterno_path', '表号照片')">拍照</button>
182
+ <img src="../../../assets/remove.png" :class="style__" @click="delfile('f_meterno_path', this.f_meterno_path)" style="width: 25%;"></img>
183
+ </div>
184
+ </div>
185
+ </div>
186
+ </div>
187
+ </div>-->
188
+ <div class="row auto" style="margin: 5px 0">
189
+ <label class="righttxt">通&ensp;气&ensp;人:</label>
190
+ <input type="text" class="form-control rightipt" v-model="userinfo.meterinfo[0].f_gas_person"/>
191
+ </div>
192
+ <div class="row auto" style="margin: 5px 0">
193
+ <label class="righttxt">通气时间:</label>
194
+ <datepicker class="rightipt"
195
+ :value.sync="userinfo.meterinfo[0].f_gas_date"
196
+ v-model="userinfo.meterinfo[0].f_gas_date"
197
+ :disabled-days-of-Week="[]"
198
+ :format="'yyyy-MM-dd'"
199
+ :show-reset-button="reset">
200
+ </datepicker>
201
+ </div>
202
+ <div class="row auto" style="margin: 5px 0" v-show="showBox">
203
+ <label class="righttxt">调&ensp;压&ensp;箱:</label>
204
+ <v-select class="rightipt"
205
+ :value.sync="userinfo.meterinfo[0].f_adjustable_id"
206
+ v-model="userinfo.meterinfo[0].f_adjustable_id"
207
+ placeholder='请选择'
208
+ :width='wid'
209
+ readonly
210
+ :options="boxOptions"
211
+ close-on-select value-single></v-select>
212
+ </div>
213
+ <div class="row auto" style="margin: 5px 0">
214
+ <label class="righttxt">是否直通:</label>
215
+ <v-select
216
+ :value.sync="userinfo.meterinfo[0].f_if_direct"
217
+ class="input-font"
218
+ style="margin-left: 5%;"
219
+ :width="'60%'"
220
+ v-model="userinfo.meterinfo[0].f_if_direct"
221
+ :options='directOptions'
222
+ placeholder='是否直通'
223
+ close-on-select
224
+ clear-button
225
+ value-single>
226
+ </v-select>
227
+ </div>
228
+ <div class="row auto" style="margin: 5px 0">
229
+ <label class="righttxt">表&ensp;封&ensp;号:</label>
230
+ <input type="text" class="form-control rightipt" v-model="userinfo.meterinfo[0].f_metertitles"/>
231
+ </div>
232
+ <div class="row auto" style="margin: 5px 0">
233
+ <label class="righttxt">表&ensp;位&ensp;置:</label>
234
+ <!--<input type="text" class="form-control rightipt" v-model="userinfo.meterinfo[0].f_position" readonly/>-->
235
+ <v-select class="rightipt" :value.sync="userinfo.meterinfo[0].f_position"
236
+ v-model="userinfo.meterinfo[0].f_position"
237
+ placeholder='请选择'
238
+ :width='wid'
239
+ readonly
240
+ :options="wz_types"
241
+ close-on-select value-single></v-select>
242
+ </div>
243
+ <div class="row auto" style="margin: 5px 0">
244
+ <label class="righttxt">表&ensp;&ensp;&ensp;&ensp;向:</label>
245
+ <!--<input type="text" class="form-control rightipt" v-model="userinfo.meterinfo[0].f_position" readonly/>-->
246
+ <v-select class="rightipt" :value.sync="userinfo.meterinfo[0].f_aroundmeter"
247
+ v-model="userinfo.meterinfo[0].f_aroundmeter"
248
+ placeholder='请选择'
249
+ :width='wid'
250
+ readonly
251
+ :options="aroundmeters"
252
+ close-on-select value-single></v-select>
253
+ </div>
254
+ <div class="row auto" style="margin: 5px 0">
255
+ <label class="righttxt">气表类型:</label>
256
+ <input type="text" class="form-control rightipt" v-model="userinfo.meterinfo[0].f_meter_classify" readonly/>
257
+ </div>
258
+ <div class="row auto" style="margin: 5px 0">
259
+ <label class="righttxt">表前阀状态:</label>
260
+ <!--<input type="text" class="form-control rightipt" v-model="userinfo.meterinfo[0].f_position" readonly/>-->
261
+ <v-select class="rightipt" :value.sync="userinfo.meterinfo[0].f_bqf_state"
262
+ v-model="userinfo.meterinfo[0].f_bqf_state"
263
+ placeholder='请选择'
264
+ :width='wid'
265
+ readonly
266
+ :options="bqf_states"
267
+ close-on-select value-single></v-select>
268
+ </div>
269
+ <!-- <div class="row auto" style="margin: 5px 0">
270
+ <div style="display: flex;justify-content: center;">
271
+ <button v-if="userinfo.meterinfo[0].f_meter_classify=='机表'" class="col-sm-3 btn btn-primary" @click="upUserState()">机表关阀停用</button>
272
+ </div>
273
+ </div>-->
274
+ </div>
275
+ </div>
276
+ <div class="panel auto">
277
+ <div class="panel-heading" @click="selectVal('设备信息')" style="background-color: #ffffff">
278
+
279
+ <span class="spanboder"><img src="../../../assets/list.png" style="width: 22px;margin-right: 8px;">设备信息<img
280
+ class="butt3" :src="imgback('设备信息')"></span>
281
+ </div>
282
+ <div class="panel-body" v-show="headername=='设备信息'">
283
+ <div class="row" v-for="row in model"
284
+ style="border:2px solid #A2C2EB; border-top:10px solid #A2C2EB; box-shadow: #00b3ee;margin-bottom: 10px">
285
+ <div class="row auto" style="margin: 5px 0">
286
+ <label class="righttxt">设备类型:</label>
287
+ <!--<input type="text" class="form-control rightipt" readonly v-model="row.f_devices_type" />-->
288
+ <v-select class="rightipt" :value.sync="row.f_devices_type"
289
+ v-model="row.f_devices_type"
290
+ placeholder='请选择'
291
+ :width='wid'
292
+ readonly
293
+ :options="devices_types"
294
+ close-on-select value-single></v-select>
295
+ </div>
296
+ <div class="row auto" style="margin: 5px 0">
297
+ <label class="righttxt">设备品牌:</label>
298
+ <v-select class="rightipt" :value.sync="row.f_brand"
299
+ v-model="row.f_brand"
300
+ placeholder='请选择'
301
+ :width='wid'
302
+ readonly
303
+ :options="deviceBrandOption[row.f_devices_type]"
304
+ close-on-select value-single></v-select>
305
+ </div>
306
+ <div class="row auto" style="margin: 5px 0">
307
+ <label class="righttxt">设备型号:</label><input type="text" class="form-control rightipt"
308
+ v-model="row.f_devices_model"/>
309
+ </div>
310
+ <div class="row auto" style="margin: 5px 0">
311
+ <label class="righttxt">生产日期:</label>
312
+ <!--<input type="text" class="form-control rightipt" v-model="row.f_make_date" />-->
313
+ <datepicker class="rightipt"
314
+ :value.sync="row.f_make_date"
315
+ v-model="row.f_make_date"
316
+ :disabled-days-of-Week="[]"
317
+ :format="'yyyy-MM-dd'"
318
+ :show-reset-button="reset" readonly="readonly">
319
+ </datepicker>
320
+ </div>
321
+ <div class="row auto" style="margin: 5px 0">
322
+ <label class="righttxt">使用年限:</label><input type="number" class="form-control rightipt"
323
+ v-model="row.f_service_life"/>
324
+ </div>
325
+ <!-- <div class="row auto" style="margin: 5px 0">
326
+ <label class="righttxt">到期日期:</label>
327
+ &lt;!&ndash;<input type="text" class="form-control rightipt" v-model="row.f_expire_date" />&ndash;&gt;
328
+ <datepicker class="rightipt"
329
+ :value.sync="row.f_expire_date"
330
+ v-model="row.f_expire_date"
331
+ :disabled-days-of-Week="[]"
332
+ :format="'yyyy-MM-dd'"
333
+ :show-reset-button="reset" readonly="readonly">
334
+ </datepicker>
335
+ </div>-->
336
+ <div class="row auto" style="margin: 5px 0">
337
+ <label class="righttxt">安&ensp;装&ensp;人:</label><input type="text" class="form-control rightipt"
338
+ v-model="row.f_input_person"/>
339
+ </div>
340
+ <div class="row auto" style="margin: 5px 0">
341
+ <label class="righttxt">安装日期:</label>
342
+ <!--<input type="text" class="form-control rightipt" v-model="row.f_input_date" />-->
343
+ <datepicker class="rightipt"
344
+ :value.sync="row.f_input_date"
345
+ v-model="row.f_input_date"
346
+ :disabled-days-of-Week="[]"
347
+ :format="'yyyy-MM-dd'"
348
+ :show-reset-button="reset" readonly="readonly">
349
+ </datepicker>
350
+ </div>
351
+ <div class="row auto" style="margin: 5px 0">
352
+ <label class="righttxt">设备数量:</label><input type="number" class="form-control rightipt"
353
+ v-model="row.f_devices_num"/>
354
+ </div>
355
+ <!--<div class="row auto" style="margin: 5px 0">
356
+ <label class="righttxt">管道类型:</label><input type="text" class="form-control rightipt" readonly v-model="row.f_pipe_type" />
357
+ </div>-->
358
+ <!--<div class="row auto" style="margin: 5px 0">
359
+ <label class="righttxt">设备状态:</label><input type="text" class="form-control rightipt" readonly v-model="row.f_userinfodevices_state" />
360
+ </div>-->
361
+ <!--<div class="row auto" style="margin: 5px 0">
362
+ <label class="righttxt">购买方式:</label><input type="text" class="form-control rightipt" readonly v-model="row.watchpurchase" />
363
+ </div>-->
364
+ <div style="display: flex;justify-content: center;margin-bottom: 3px"
365
+ v-if="$index>this.userinfo_old.devicesinfo.length-1 || this.userinfo_old.devicesinfo.length==0">
366
+ <button class="btn btn-warning" @click="delDevices($index)">删除设备</button>
367
+ </div>
368
+ </div>
369
+ <div style="display: flex;justify-content: space-around;">
370
+ <button class="col-sm-3 btn btn-primary" @click="addDevices($index)">新增设备</button>
371
+ </div>
372
+ </div>
373
+ </div>
374
+ <div class="panel auto">
375
+ <div class="panel-body">
376
+ <div style="display: flex;justify-content: center;">
377
+ <button class="col-sm-3 btn btn-primary" :disabled="enable" @click="isNeedAudit ? editUserInfo() : editUserInfoNoAudit()">{{isNeedAudit ? '上传审核' : '上传'}}</button>
378
+ </div>
379
+ </div>
380
+ </div>
381
+ </div>
382
+ </template>
383
+
384
+ <script>
385
+ import {HttpResetClass} from 'vue-client'
386
+ import * as Util from "../../Util";
387
+ import Vue from 'vue'
388
+
389
+ export default {
390
+ title: '设备查看',
391
+ data() {
392
+ return {
393
+ model: [],
394
+ show: false,
395
+ row: Object,
396
+ userinfo: Object,
397
+ userinfo_old: Object,
398
+ wid: "60%",
399
+ aroundmeters: [],
400
+ devices_types: [],
401
+ pipe_types: [{label: '橡胶管', value: '橡胶管'}, {label: '波纹管', value: '波纹管'}, {label: '钢管', value: '钢管'}],
402
+ wz_types: [],
403
+ cityTypes: [{label: '市区', value: '市区'}, {label: '城镇', value: '城镇'}],
404
+ bqf_states: [{label: '开阀', value: '开阀'}, {label: '关阀', value: '关阀'}],
405
+ pcds: [],
406
+ streets: [],
407
+ update: false,
408
+ headername: '基本信息',
409
+ excessive: false,
410
+ area: [],
411
+ enable: false,
412
+ f_meterno_path: Vue.nopic,
413
+ selectArea: {id: ''},
414
+ selectPcd: {id: ''},
415
+ selectStreet: {id: ''},
416
+ changemeterno: false,//是否修改了机表表号
417
+ approveChange: false,//是否需要进行信息变更审核
418
+ newAddress: '',
419
+ addressType: '',
420
+ //需要审核的字段
421
+ checkField: {
422
+ checkUserinfoField: [
423
+ 'f_user_name'
424
+ ],
425
+ checkUserFilesField: [
426
+ 'f_meternumber'
427
+ ],
428
+ checkAddressField: [
429
+ 'f_pcd_id',
430
+ 'f_street_id',
431
+ 'f_residential_area_id',
432
+ 'f_building',
433
+ 'f_unit',
434
+ 'f_floor',
435
+ 'f_room',
436
+ 'f_slice_area',
437
+ 'f_special',
438
+ 'f_address'
439
+ ],
440
+ },
441
+ boxOptions: [],
442
+ showBox: false,
443
+ directOptions: [{label: '是', value: '是'}, {label: '否', value: '否'}],
444
+ deviceBrandOption: {},
445
+ isNeedAudit: this.$appdata.getSingleValue('信息变更是否需要审核') == 'false' ? false : true
446
+ }
447
+ },
448
+ props: {
449
+ user: {
450
+ type: Object
451
+ },
452
+ f_userinfo_id: '',
453
+ f_source: ''
454
+ },
455
+ methods: {
456
+ maskUserName(name) {
457
+ if (name.length <= 1) {
458
+ return name; // 如果名字长度小于等于1,不进行遮罩
459
+ }
460
+ return name.charAt(0) + '*'.repeat(name.length - 1);
461
+ },
462
+ scan() {
463
+ HostApp.__this__ = this,
464
+ HostApp.scanCode({callback: "javascript:HostApp.__this__.getCode();"})
465
+ },
466
+ getCode() {
467
+ var datapa = HostApp.getCode().data;
468
+ //tag
469
+ this.userinfo.meterinfo[0].f_meternumber = datapa
470
+ },
471
+ //数据检查
472
+ checkVal() {
473
+ //检查一些必要信息是否未填
474
+ this.approveChange = false
475
+ this.changemeterno = false
476
+ let checked = {ischeck: true, msg: ''}
477
+ //tag
478
+ //tag
479
+ //tag
480
+ if (!this.userinfo.baseinfo.base.f_user_name) {
481
+ checked = {ischeck: false, msg: '请输入用户名称!'}
482
+ }
483
+ if (!this.selectPcd.id) {
484
+ checked = {ischeck: false, msg: '请选择省市区!'}
485
+ }
486
+ if (!this.selectStreet.id) {
487
+ checked = {ischeck: false, msg: '请选择街道!'}
488
+ }
489
+ if (!this.userinfo.addressinfo.f_address) {
490
+ checked = {ischeck: false, msg: '新地址不能为空!'}
491
+ }
492
+ if (this.addressType == '普通地址') {
493
+ if (!this.selectArea.id) {
494
+ checked = {ischeck: false, msg: '请选择集收单位!'}
495
+ }
496
+ if (!this.userinfo.addressinfo.f_room) {
497
+ checked = {ischeck: false, msg: '新输入门牌号!'}
498
+ }
499
+ }
500
+ if (this.userinfo.meterinfo[0].f_meter_classify == '机表' && this.userinfo_old.meterinfo[0].f_meternumber) {
501
+
502
+ //tag
503
+ //tag
504
+ if (this.userinfo.meterinfo[0].f_meternumber) {
505
+ if (this.userinfo.meterinfo[0].f_meternumber != this.userinfo_old.meterinfo[0].f_meternumber) {
506
+ if (!this.f_meterno_path || this.f_meterno_path == Vue.nopic) {
507
+ checked = {ischeck: false, msg: '请拍摄表号照片!'}
508
+ } else {
509
+ //用来标识当前有修改机表表号,后台需要进行照片上传
510
+ this.changemeterno = true
511
+ }
512
+ }
513
+ } else {
514
+ checked = {ischeck: false, msg: '请输入表号!'}
515
+ }
516
+ }
517
+ //检查本次修改信息中是否包含需要审核的内容
518
+ for (let check in this.checkField) {
519
+ //tag
520
+ if (typeof check != 'function') {
521
+ for (let i = 0; i < this.checkField[check].length; i++) {
522
+ //tag
523
+ if (check == 'checkUserinfoField') {
524
+ //tag
525
+ //tag
526
+ if (this.userinfo.baseinfo.base[this.checkField[check][i]] != this.userinfo_old.baseinfo.base[this.checkField[check][i]]) {
527
+ //tag
528
+ this.approveChange = true
529
+ }
530
+ } else if (check == 'checkUserFilesField') {
531
+ //tag
532
+ //tag
533
+ if (this.userinfo.meterinfo[0][this.checkField[check][i]] != this.userinfo_old.meterinfo[0][this.checkField[check][i]]) {
534
+ //tag
535
+ this.approveChange = true
536
+ }
537
+ } else if (check == 'checkAddressField') {
538
+ //tag
539
+ //tag
540
+ if (this.userinfo.addressinfo[this.checkField[check][i]] != this.userinfo_old.addressinfo[this.checkField[check][i]]) {
541
+ //tag
542
+ this.approveChange = true
543
+ }
544
+ }
545
+ }
546
+ }
547
+ }
548
+ //tag
549
+ return checked
550
+ },
551
+ select_search(text) {
552
+ //tag
553
+ if (this.selectStreet.id) {
554
+ let pcdText = text ? `and f_street_id=${this.selectStreet.id} and f_residential_area like '%${text}%'` : `and f_street_id=${this.selectStreet.id}`
555
+ new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/rs/sql/safe_singleTable_OrderBy`, {
556
+ data: {
557
+ items: "*",
558
+ tablename: "t_area",
559
+ orderitem: "id",
560
+ condition: `f_orgid = '${Vue.user.orgid}' ${pcdText} `
561
+ }
562
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
563
+ //tag)
564
+ if (res.data.length > 0) {
565
+ this.area = []
566
+ res.data.forEach((result) => {
567
+ this.area.push({label: result.f_residential_area, value: result})
568
+ })
569
+ }
570
+ })
571
+ } else {
572
+ this.area = []
573
+ }
574
+ },
575
+ cameraCallBack(prop, fileName) {
576
+ HostApp.__this__.$set(prop, fileName + '?' + Math.random())
577
+ //tag
578
+ HostApp.__callback__ = null
579
+ HostApp.__this__ = null
580
+ },
581
+ takePic(prop, title) {
582
+ HostApp.__callback__ = this.cameraCallBack
583
+ HostApp.__this__ = this
584
+ //tag
585
+ let fileName
586
+ if (!this[prop] || this[prop].includes("nopic.png")) {
587
+ fileName = Util.guid() + '-' + prop + '.jpg'
588
+ } else {
589
+ fileName = Util.getFileName(this[prop])
590
+ }
591
+ HostApp._open_a_page({
592
+ type: 'boomerang',
593
+ page: 'com.aofeng.hybrid.android.peripheral.CameraActivity',
594
+ param: {
595
+ file: fileName,
596
+ requestCode: 111,
597
+ callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");',
598
+ watermark: title + '\t时间:' + Util.toStandardTimeString() + '\t' + Vue.user.name
599
+ }
600
+ })
601
+ },
602
+ delfile(prop, fileName) {
603
+ if (fileName == Vue.nopic)
604
+ return
605
+ else {
606
+ HostApp.delfile(fileName)
607
+ this[prop] = Vue.nopic
608
+ }
609
+ },
610
+ editUserInfoNoAudit() {
611
+ let checked = this.checkVal()
612
+ if (!checked.ischeck) {
613
+ this.$showMessage(checked.msg)
614
+ return
615
+ }
616
+ for (let i = 0; i < this.model.length; i++) {
617
+ this.model[i].f_user_id = this.userinfo.meterinfo[0].f_user_id
618
+ }
619
+ this.$showMessage('确定是否修改上传用户信息?', ['confirm', 'cancel']).then((res) => {
620
+ if (res === 'confirm') {
621
+ this.excessive = true
622
+ let userinfoms = Object.assign({}, this.userinfo_old.baseinfo.base)
623
+ // userinfoms.f_user_name=row.f_user_name
624
+ userinfoms.f_user_phone = this.userinfo.baseinfo.base.f_user_phone
625
+ userinfoms.f_rent_name = this.userinfo.baseinfo.base.f_rent_name
626
+ userinfoms.f_zuhu_phone = this.userinfo.baseinfo.base.f_zuhu_phone
627
+ userinfoms.f_operator_record = Vue.user.name
628
+ userinfoms.f_operatorid_record = Vue.user.id
629
+ userinfoms.f_remark = this.userinfo.baseinfo.base.f_remark
630
+ userinfoms.f_orgid_record = Vue.user.orgid
631
+ userinfoms.f_orgname_record = Vue.user.orgs
632
+ userinfoms.f_depid_record = Vue.user.depids
633
+ userinfoms.f_depname_record = Vue.user.deps
634
+ this.userinfo_old.meterinfo[0].f_gas_person = this.userinfo.meterinfo[0].f_gas_person
635
+ this.userinfo_old.meterinfo[0].f_gas_date = this.userinfo.meterinfo[0].f_gas_date
636
+ this.userinfo_old.meterinfo[0].f_adjustable_id = this.userinfo.meterinfo[0].f_adjustable_id
637
+ this.userinfo_old.meterinfo[0].f_metertitles = this.userinfo.meterinfo[0].f_metertitles
638
+ this.userinfo_old.meterinfo[0].f_position = this.userinfo.meterinfo[0].f_position
639
+ this.userinfo_old.meterinfo[0].f_aroundmeter = this.userinfo.meterinfo[0].f_aroundmeter
640
+ this.userinfo_old.meterinfo[0].f_bqf_state = this.userinfo.meterinfo[0].f_bqf_state
641
+ this.userinfo_old.meterinfo[0].f_if_direct = this.userinfo.meterinfo[0].f_if_direct
642
+ userinfoms.userfiles = []
643
+ this.userinfo_old.meterinfo[0].devicesinfo = this.model
644
+ userinfoms.userfiles.push(this.userinfo_old.meterinfo[0])
645
+ new HttpResetClass().load('POST', `${this.$androidUtil.getProxyUrl()}/rs/logic/filemanage_fileSave`, {
646
+ data: {
647
+ userinfo: userinfoms,
648
+ modifyReason: this.f_source ? `${this.f_source}维护档案信息` : '',
649
+ address: {
650
+ id: this.userinfo_old.addressinfo.id,
651
+ oldid: this.userinfo_old.addressinfo.id,
652
+ f_address: this.userinfo.addressinfo.f_address ? this.userinfo.addressinfo.f_address : this.userinfo_old.addressinfo.f_address
653
+ }
654
+ }
655
+ }, {resolveMsg: null, rejectMsg: null}).then((res1) => {
656
+ if (res1.data.status == 200) {
657
+ let data = this.userinfo.addressinfo
658
+ data.f_address = this.userinfo.addressinfo.f_address? this.userinfo.addressinfo.f_address : this.userinfo_old.addressinfo.f_address
659
+ //
660
+ data.f_operator = Vue.user.name
661
+ new HttpResetClass().load('POST', `${this.$androidUtil.getProxyUrl()}/rs/logic/address_updateuseraddress`, {data: data}).then((res2) => {
662
+ this.$showMessage("修改用户地址信息成功!")
663
+ }).catch(error => {
664
+ this.$showMessage("修改用户地址信息!")
665
+ })
666
+ this.$showMessage("修改用户信息成功!")
667
+ this.enable = true
668
+ this.excessive = false
669
+ }
670
+ }).catch((msg) => {
671
+ this.$showMessage("修改用户信息失败,请检查手机网络状况!")
672
+ this.excessive = false
673
+ })
674
+ }
675
+ })
676
+ },
677
+ editUserInfo() {
678
+ let checked = this.checkVal()
679
+ if (!checked.ischeck) {
680
+ this.$showMessage(checked.msg)
681
+ return
682
+ }
683
+ this.$showMessage('确定是否修改上传审核用户信息?', ['confirm', 'cancel']).then((res) => {
684
+ if (res === 'confirm') {
685
+ this.excessive = true
686
+ let userinfoms = Object.assign({}, this.userinfo_old.baseinfo.base)
687
+ //userinfoms.f_user_name=row.f_user_name
688
+ userinfoms.f_user_phone = this.userinfo.baseinfo.base.f_user_phone
689
+ userinfoms.f_rent_name = this.userinfo.baseinfo.base.f_rent_name
690
+ userinfoms.f_zuhu_phone = this.userinfo.baseinfo.base.f_zuhu_phone
691
+ userinfoms.f_operator_record = Vue.user.name
692
+ userinfoms.f_operatorid_record = Vue.user.id
693
+ userinfoms.f_remark = this.userinfo.baseinfo.base.f_remark
694
+ userinfoms.f_orgid_record = Vue.user.orgid
695
+ userinfoms.f_orgname_record = Vue.user.orgs
696
+ userinfoms.f_depid_record = Vue.user.depids
697
+ userinfoms.f_depname_record = Vue.user.deps
698
+ this.userinfo_old.meterinfo[0].f_gas_person = this.userinfo.meterinfo[0].f_gas_person
699
+ this.userinfo_old.meterinfo[0].f_gas_date = this.userinfo.meterinfo[0].f_gas_date
700
+ this.userinfo_old.meterinfo[0].f_adjustable_id = this.userinfo.meterinfo[0].f_adjustable_id
701
+ this.userinfo_old.meterinfo[0].f_metertitles = this.userinfo.meterinfo[0].f_metertitles
702
+ this.userinfo_old.meterinfo[0].f_position = this.userinfo.meterinfo[0].f_position
703
+ this.userinfo_old.meterinfo[0].f_aroundmeter = this.userinfo.meterinfo[0].f_aroundmeter
704
+ this.userinfo_old.meterinfo[0].f_bqf_state = this.userinfo.meterinfo[0].f_bqf_state
705
+ this.userinfo_old.meterinfo[0].f_if_direct = this.userinfo.meterinfo[0].f_if_direct
706
+ this.userinfo_old.meterinfo[0].f_meternumber = this.userinfo.meterinfo[0].f_meternumber
707
+ userinfoms.userfiles = []
708
+ this.userinfo_old.meterinfo[0].devicesinfo = this.model
709
+ userinfoms.userfiles.push(this.userinfo_old.meterinfo[0])
710
+ //tag)
711
+ new HttpResetClass().load('POST', `${this.$androidUtil.getProxyUrl()}/rs/logic/filemanage_fileSave`, {
712
+ data: {
713
+ userinfo: userinfoms,
714
+ modifyReason: this.f_source ? `${this.f_source}维护档案信息` : '',
715
+ address: {id: this.userinfo_old.addressinfo.id, oldid: this.userinfo_old.addressinfo.id}
716
+ }
717
+ }, {resolveMsg: null, rejectMsg: null}).then((res1) => {
718
+ //tag+res1.data.status)
719
+ if (res1.data.status == 200) {
720
+ //本次修改信息包含需要审核信息
721
+ if (this.approveChange) {
722
+ //tag
723
+ let res2 = this.$androidUtil.bzLogic('safe_upUserinfoApprove', {
724
+ row: {
725
+ f_time: Util.toStandardTimeString(),
726
+ f_modifier: Vue.user.name,//Vue.user.name
727
+ f_modifier_id: Vue.user.id,//Vue.user.id
728
+ f_modify_type: '用户档案',
729
+ f_userinfoid: this.userinfo.baseinfo.base.f_userinfo_id,
730
+ f_userinfo_code: this.userinfo.baseinfo.base.f_userinfo_code,
731
+ f_approved: '未审核',
732
+ filialestr: Vue.user.orgid,//Vue.user.orgid
733
+ version: 1,
734
+ f_user_name: this.userinfo.baseinfo.base.f_user_name,
735
+ f_user_phone: this.userinfo.baseinfo.base.f_user_phone,
736
+ f_street: this.userinfo.addressinfo.f_street,
737
+ f_building: this.userinfo.addressinfo.f_building,
738
+ f_unit: this.userinfo.addressinfo.f_unit,
739
+ f_floor: this.userinfo.addressinfo.f_floor,
740
+ f_room: this.userinfo.addressinfo.f_room,
741
+ f_building_suffix: this.userinfo.addressinfo.f_special == 1 ? null : this.userinfo.addressinfo.f_building_suffix,
742
+ f_unit_suffix: this.userinfo.addressinfo.f_special == 1 ? null : this.userinfo.addressinfo.f_unit_suffix,
743
+ f_floor_suffix: this.userinfo.addressinfo.f_special == 1 ? null : this.userinfo.addressinfo.f_floor_suffix,
744
+ f_room_suffix: this.userinfo.addressinfo.f_special == 1 ? null : this.userinfo.addressinfo.f_room_suffix,
745
+ f_residential_area: this.userinfo.addressinfo.f_residential_area,
746
+ f_address: this.userinfo.addressinfo.f_address,
747
+ f_pcd: this.userinfo.addressinfo.f_pcd,
748
+ f_pcd_id: this.userinfo.addressinfo.f_pcd_id,
749
+ f_street_id: this.userinfo.addressinfo.f_street_id,
750
+ f_residential_area_id: this.userinfo.addressinfo.f_residential_area_id,
751
+ f_used_name: this.userinfo.baseinfo.base.f_used_name,
752
+ f_rent_phone: this.userinfo.baseinfo.base.f_rent_phone,
753
+ f_slice_area: this.userinfo.addressinfo.f_slice_area,
754
+ f_remark: this.userinfo.baseinfo.base.f_remark,
755
+ f_source: this.f_source,
756
+ f_meterno_path: this.f_meterno_path,
757
+ f_iscity: this.userinfo.addressinfo.f_iscity,
758
+ f_special: this.userinfo.addressinfo.f_special,
759
+ f_meternumber: this.userinfo.meterinfo[0].f_meternumber,
760
+ changemeterno: this.changemeterno
761
+ },
762
+ tablename: 't_modify_userinfo'
763
+ })
764
+ //tag)
765
+ if (res2.code == 200) {
766
+ this.$showMessage("变更用户信息成功,需要审核的信息已提交审核,等待管理员处理!")
767
+ this.enable = true
768
+ this.excessive = false
769
+ } else {
770
+ this.$showMessage("上传审核信息失败,请检查图片和网络状况是否正常!")
771
+ this.excessive = false
772
+ }
773
+ } else {
774
+ this.$showMessage("修改用户信息成功!")
775
+ this.enable = true
776
+ this.excessive = false
777
+ }
778
+
779
+ }
780
+ }).catch((msg) => {
781
+ this.$showMessage("修改用户信息失败,请检查手机网络状况!")
782
+ this.excessive = false
783
+ })
784
+
785
+ }
786
+ })
787
+ },
788
+ imgback(header) {
789
+ if (this.headername == header) {
790
+ return require('../../../assets/xiangxia1.png')
791
+ } else {
792
+ return require('../../../assets/xiangyou1.png')
793
+ }
794
+ this.headername = header
795
+ },
796
+ selectVal(header) {
797
+ if (this.headername == header) {
798
+ this.headername = ''
799
+ } else {
800
+ this.headername = header
801
+ }
802
+
803
+ },
804
+ changeNewAddress() {
805
+ this.userinfo.addressinfo.f_address = this.addressType == '普通地址' ? this.getAddress : this.getAddressTS
806
+ },
807
+ area_change() {
808
+ //tag
809
+ this.userinfo.addressinfo.f_residential_area = this.selectArea.f_residential_area
810
+ this.userinfo.addressinfo.f_residential_area_id = this.selectArea.id
811
+ this.userinfo.addressinfo.f_slice_area = this.selectArea.f_slice_area
812
+ this.changeNewAddress()
813
+ //this.userinfo.addressinfo.f_residential_area=this.f_residential_area.f_residential_area
814
+ },
815
+ async street_change() {
816
+ //tag
817
+ if (this.selectStreet.id) {
818
+ //如果街道改变--给街道赋值!
819
+ this.userinfo.addressinfo.f_street = this.selectStreet.f_street
820
+ this.userinfo.addressinfo.f_street_id = this.selectStreet.id
821
+ this.userinfo.addressinfo.f_iscity = this.selectStreet.f_iscity
822
+ //清空当前选中小区的值
823
+ this.userinfo.addressinfo.f_residential_area = ''
824
+ this.userinfo.addressinfo.f_residential_area_id = ''
825
+ this.userinfo.addressinfo.f_slice_area = ''
826
+ this.selectArea = {id: ''}
827
+ this.area = []
828
+ let pcdText = ` and f_street_id=${this.selectStreet.id}`
829
+ let res = await new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/rs/sql/safe_singleTable_OrderBy`, {
830
+ data: {
831
+ items: "*",
832
+ tablename: "t_area",
833
+ orderitem: "id",
834
+ condition: `f_orgid = '${Vue.user.orgid}' ${pcdText} `
835
+ }
836
+ }, {resolveMsg: null, rejectMsg: null})
837
+ ////tag)
838
+ res.data.forEach((result) => {
839
+ this.area.push({label: result.f_residential_area, value: result})
840
+ })
841
+ } else {
842
+ this.area = []
843
+ }
844
+
845
+ this.changeNewAddress()
846
+ },
847
+ async pcd_change() {
848
+ //tag
849
+ if (this.selectPcd.id) {
850
+ //tag
851
+ //如果省市区改变-重新赋值
852
+ this.userinfo.addressinfo.f_pcd = this.selectPcd.f_pcd
853
+ this.userinfo.addressinfo.f_pcd_id = this.selectPcd.id
854
+ //清空 选中的街道和集收单位
855
+ this.selectStreet = {id: ''}
856
+ this.userinfo.addressinfo.f_street = ''
857
+ this.userinfo.addressinfo.f_street_id = ''
858
+ this.userinfo.addressinfo.f_iscity = ''
859
+ this.selectArea = {id: ''}
860
+ this.userinfo.addressinfo.f_residential_area = ''
861
+ this.userinfo.addressinfo.f_residential_area_id = ''
862
+ this.userinfo.addressinfo.f_slice_area = ''
863
+ this.streets = []
864
+ let pcdText = `and f_pcd_id=${this.selectPcd.id}`
865
+ let streetlist = await new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/rs/sql/safe_singleTable_OrderBy`, {
866
+ data: {
867
+ items: "*",
868
+ tablename: "t_street",
869
+ orderitem: "id",
870
+ condition: `f_orgid = '${Vue.user.orgid}' ${pcdText}`
871
+ }
872
+ }, {resolveMsg: null, rejectMsg: null})
873
+ streetlist.data.forEach((result) => {
874
+ this.streets.push({label: result.f_street, value: result})
875
+ })
876
+ } else {
877
+ this.streets = []
878
+ }
879
+ this.changeNewAddress()
880
+ },
881
+ upUserState() {
882
+ //tag)
883
+ if (this.userinfo.meterinfo[0].f_table_state == '正常') {
884
+ let data = {
885
+ f_userfiles_id: {
886
+ f_userfiles_id: this.userinfo.meterinfo[0].f_userfiles_id,
887
+ f_table_state: '停用',
888
+ version: this.userinfo.meterinfo[0].version
889
+ },
890
+ f_userfile_id: this.userinfo.meterinfo[0].f_userfiles_id,
891
+ f_user_id: this.userinfo.meterinfo[0].f_user_id,
892
+ f_userinfo_id: this.userinfo.meterinfo[0].f_userinfo_id,
893
+ f_user_name: this.userinfo.baseinfo.base.f_user_name,
894
+ f_comments: '安检时发现问题关闭阀门',
895
+ f_othereason: '',
896
+ f_operat_type: '停用',
897
+ f_describe: `${Vue.user.name}对客户${this.userinfo.baseinfo.base.f_user_name}进行表具停用操作`,
898
+ f_state: '有效',
899
+ f_operator: Vue.user.name,//${Vue.$login.f.name}
900
+ f_operatorid: Vue.user.id,
901
+ f_orgid: Vue.user.orgid,
902
+ f_orgname: Vue.user.orgs,
903
+ f_depid: Vue.user.depids,
904
+ f_depname: Vue.user.deps,
905
+ f_zoneid: Vue.user.zoneid,
906
+ f_zones: Vue.user.zones
907
+ }
908
+ new HttpResetClass().load('post', `${this.$androidUtil.getProxyUrl()}/rs/entity/t_disable`,
909
+ data, {resolveMsg: null, rejectMsg: null}).then((row) => {
910
+ this.$showMessage('已成功关阀停气!')
911
+ this.userinfo.meterinfo[0].f_table_state = '停用'
912
+ })
913
+ } else {
914
+ this.$showMessage('该用户已被关阀停用,请勿重复操作!')
915
+ }
916
+
917
+ },
918
+ addDevices() {
919
+ //Vue.user.name
920
+ let obj = {
921
+ "f_operator": Vue.user.name,
922
+ "f_picture": null,
923
+ "f_pipe_type": null,
924
+ "f_pipeinstall_date": null,
925
+ "f_pipe_connection": null,
926
+ "f_expire_date": null,
927
+ "f_pipeexpire_date": null,
928
+ "f_comments": null,
929
+ "f_operate_date": Util.toStandardTimeString(),
930
+ "f_operatorid": Vue.user.id,
931
+ "f_devices_num": null,
932
+ "f_process_id": null,
933
+ "f_devices_type": null,
934
+ "f_make_date": null,
935
+ "f_input_date": null,
936
+ "f_state": "有效",
937
+ "f_brand": null,
938
+ "f_devices_model": null,
939
+ "f_devices_no": null,
940
+ "img": {"content": null, "filename": null}
941
+ }
942
+ this.model.push(obj)
943
+ },
944
+ delDevices(idx) {
945
+ //tag
946
+ this.$showMessage('删除后不可恢复,确认删除吗?', ['confirm', 'cancel']).then((res) => {
947
+ if (res === 'confirm') {
948
+ this.model.splice(idx, 1)
949
+ }
950
+ })
951
+ },
952
+ async getAreaList(text) {
953
+ if (this.selectStreet.id) {
954
+ this.area = []
955
+ let pcdText = text ? `and f_street_id=${this.selectStreet.id} and f_residential_area like '%${text}%'` : `and f_street_id=${this.selectStreet.id}`
956
+ let res = await new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/rs/sql/safe_singleTable_OrderBy`, {
957
+ data: {
958
+ items: "*",
959
+ tablename: "t_area",
960
+ orderitem: "id",
961
+ condition: `f_orgid = '${Vue.user.orgid}' ${pcdText}`
962
+ }
963
+ }, {resolveMsg: null, rejectMsg: null})
964
+ ////tag)
965
+ res.data.forEach((result) => {
966
+ this.area.push({label: result.f_residential_area, value: result})
967
+ })
968
+ //tag
969
+ this.area.push({
970
+ label: this.userinfo.addressinfo.f_residential_area,
971
+ value: {
972
+ id: this.userinfo.addressinfo.f_residential_area_id,
973
+ f_residential_area: this.userinfo.addressinfo.f_residential_area
974
+ }
975
+ })
976
+ } else {
977
+ this.area = []
978
+ }
979
+
980
+ },
981
+ async getStreetList() {
982
+ if (this.selectPcd.id) {
983
+ //tag
984
+ this.streets = []
985
+ let pcdText = `and f_pcd_id=${this.selectPcd.id}`
986
+ let streetlist = await new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/rs/sql/safe_singleTable_OrderBy`, {
987
+ data: {
988
+ items: "*",
989
+ tablename: "t_street",
990
+ orderitem: "id",
991
+ condition: `f_orgid = '${Vue.user.orgid}' ${pcdText}`
992
+ }
993
+ }, {resolveMsg: null, rejectMsg: null})
994
+ streetlist.data.forEach((result) => {
995
+ //如果第一次进来有地址id 就拿下地址区域
996
+ if (this.selectStreet.id && this.selectStreet.id == result.id) {
997
+ //tag)
998
+ this.userinfo.addressinfo.f_iscity = result.f_iscity
999
+ }
1000
+ this.streets.push({label: result.f_street, value: result})
1001
+ })
1002
+ } else {
1003
+ this.streets = []
1004
+ }
1005
+ },
1006
+ changeAddressType(val) {
1007
+ //tag
1008
+ if (this.addressType == '普通地址') {
1009
+ this.userinfo.addressinfo.f_special = null
1010
+ } else if (this.addressType == '特殊地址') {
1011
+ this.userinfo.addressinfo.f_special = 1
1012
+ this.userinfo.addressinfo.f_building = null
1013
+ this.userinfo.addressinfo.f_unit = null
1014
+ this.userinfo.addressinfo.f_floor = null
1015
+ this.userinfo.addressinfo.f_room = null
1016
+ }
1017
+ this.changeNewAddress()
1018
+ }
1019
+
1020
+ },
1021
+ computed: {
1022
+ getAddress() {
1023
+ return (this.userinfo.addressinfo.f_pcd ? this.userinfo.addressinfo.f_pcd : '') +
1024
+ (this.userinfo.addressinfo.f_street ? this.userinfo.addressinfo.f_street : '') +
1025
+ (this.userinfo.addressinfo.f_residential_area ? this.userinfo.addressinfo.f_residential_area : '') +
1026
+ (this.userinfo.addressinfo.f_building ? this.userinfo.addressinfo.f_building + (this.userinfo.addressinfo.f_building_suffix ? this.userinfo.addressinfo.f_building_suffix : '') : '') +
1027
+ (this.userinfo.addressinfo.f_unit ? this.userinfo.addressinfo.f_unit + (this.userinfo.addressinfo.f_unit_suffix ? this.userinfo.addressinfo.f_unit_suffix : '') : '') +
1028
+ (this.userinfo.addressinfo.f_floor ? this.userinfo.addressinfo.f_floor + (this.userinfo.addressinfo.f_floor_suffix ? this.userinfo.addressinfo.f_floor_suffix : '') : '') +
1029
+ (this.userinfo.addressinfo.f_room ? this.userinfo.addressinfo.f_room + (this.userinfo.addressinfo.f_room_suffix ? this.userinfo.addressinfo.f_room_suffix : '') : '')
1030
+ },
1031
+ getAddressTS() {
1032
+ return (this.userinfo.addressinfo.f_pcd ? this.userinfo.addressinfo.f_pcd : '') +
1033
+ (this.userinfo.addressinfo.f_street ? this.userinfo.addressinfo.f_street : '') +
1034
+ (this.userinfo.addressinfo.f_residential_area ? this.userinfo.addressinfo.f_residential_area : '')
1035
+ }
1036
+ },
1037
+ watch: {
1038
+
1039
+ /*'selectPcd.id' (val) {
1040
+ //tag
1041
+ if(this.selectPcd.id){
1042
+ this.getStreetList()
1043
+ }
1044
+ },
1045
+ 'selectStreet.id' (val) {
1046
+ //tag
1047
+ if(this.selectStreet.id){
1048
+ this.getAreaList()
1049
+ }
1050
+ }*/
1051
+ },
1052
+ async ready() {
1053
+ /*//tag)
1054
+
1055
+ //tag)
1056
+ //tag)*/
1057
+ //this.f_userinfo_id=1102260
1058
+ //this.f_userinfo_id=1997541
1059
+ if (!this.f_userinfo_id) {
1060
+ this.$showMessage("未检测到用户!")
1061
+ this.enable = true
1062
+ return
1063
+ }
1064
+ try {
1065
+
1066
+ this.devices_types = Vue.$appdata.getParam('设备类型')
1067
+ console.log('this.devices_types=', JSON.stringify(this.devices_types))
1068
+ if (this.devices_types){
1069
+ for (const devices_type of this.devices_types) {
1070
+ console.log('Vue.$appdata.getParam(`档案设备信息-${devices_type.label}品牌`)=', JSON.stringify(Vue.$appdata.getParam(`档案设备信息-${devices_type.label}品牌`)))
1071
+ this.deviceBrandOption[devices_type.label] = Vue.$appdata.getParam(`档案设备信息-${devices_type.label}品牌`) || []
1072
+ }
1073
+ }
1074
+ console.log('this.deviceBrandOption=', JSON.stringify(this.deviceBrandOption))
1075
+ this.wz_types = Vue.$appdata.getParam('安装位置')
1076
+ this.aroundmeters = Vue.$appdata.getParam('左右表')
1077
+
1078
+ ////tag)
1079
+ this.excessive = true
1080
+ //Vue.user.orgid ${this.f_userinfo_id} 10101 ${Vue.user.orgid}
1081
+
1082
+ let pcdlist = await new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/rs/sql/safe_singleTable_OrderBy`, {
1083
+ data: {
1084
+ items: "*",
1085
+ tablename: "t_pcd",
1086
+ orderitem: "id",
1087
+ condition: `f_orgid = '${Vue.user.orgid}'`
1088
+ }
1089
+ }, {resolveMsg: null, rejectMsg: null})
1090
+ //tag)
1091
+ pcdlist.data.forEach((result) => {
1092
+ this.pcds.push({label: result.f_pcd, value: result})
1093
+ })
1094
+ ////tag)
1095
+ let res = await new HttpResetClass().load('post', `${this.$androidUtil.getProxyUrl()}/rs/logic/filemanage_getFilesDetail`, {
1096
+ //f_userinfo_code:'12381344',
1097
+ f_userinfo_id: this.f_userinfo_id
1098
+ }, {resolveMsg: null, rejectMsg: null})
1099
+ //tag
1100
+ //tag
1101
+ this.userinfo = res.data
1102
+ this.userinfo_old = JSON.parse(JSON.stringify(res.data))
1103
+ this.model = this.userinfo.meterinfo[0].devicesinfo
1104
+ this.selectArea.id = this.userinfo.addressinfo.f_residential_area_id
1105
+ this.selectPcd.id = this.userinfo.addressinfo.f_pcd_id
1106
+ this.selectPcd.f_pcd = this.userinfo.addressinfo.f_pcd
1107
+ this.selectStreet.id = this.userinfo.addressinfo.f_street_id
1108
+ this.selectStreet.f_street = this.userinfo.addressinfo.f_street
1109
+ await this.getStreetList()
1110
+ await this.getAreaList()
1111
+ this.excessive = false
1112
+ this.addressType = this.userinfo.addressinfo.f_special == 1 ? '特殊地址' : '普通地址'
1113
+ //this.userinfo.addressinfo.f_special=1
1114
+ //tag
1115
+ } catch (e) {
1116
+ this.excessive = false
1117
+ this.enable = true
1118
+ this.$showMessage('获取用户信息出错,请检查网络状况!')
1119
+ }
1120
+ new HttpResetClass().load('get', `${this.$androidUtil.getProxyUrl()}/rs/vue/UserAddress.json`, {data: {}}, {
1121
+ resolveMsg: null,
1122
+ rejectMsg: null
1123
+ }).then((addressUnit) => {
1124
+ //tag
1125
+ //tag
1126
+ //tag
1127
+ //tag
1128
+ this.userinfo.addressinfo.f_building_suffix = addressUnit.data.f_building_suffix
1129
+ this.userinfo.addressinfo.f_unit_suffix = addressUnit.data.f_unit_suffix
1130
+ this.userinfo.addressinfo.f_floor_suffix = addressUnit.data.f_floor_suffix
1131
+ this.userinfo.addressinfo.f_room_suffix = addressUnit.data.f_room_suffix
1132
+ }).catch((msg) => {
1133
+ //tag)
1134
+ })
1135
+ this.showBox = this.$appdata.getSingleValue('档案审核是否显示调压箱') == '是'? true : false
1136
+ console.log(this.showBox)
1137
+ if (this.showBox) {
1138
+ // 获取调压箱
1139
+ new HttpResetClass().load('post', `${this.$androidUtil.getProxyUrl()}/rs/sql/adjustableboxQuery`, {data: {condition: '1 = 1'}}, {
1140
+ resolveMsg: null,
1141
+ rejectMsg: null
1142
+ }).then((res) => {
1143
+ const boxOptions = []
1144
+ for (const data of res.data) {
1145
+ const one = {
1146
+ label: data.f_adjustable_id + data.f_adjustable_name,
1147
+ value: Number(data.f_adjustable_id)
1148
+ }
1149
+ boxOptions.push(one)
1150
+ }
1151
+ this.boxOptions = JSON.parse(JSON.stringify(boxOptions))
1152
+ console.log(this.boxOptions)
1153
+ }).catch((msg) => {
1154
+ //tag)
1155
+ })
1156
+ }
1157
+ }
1158
+ }
1159
+ </script>
1160
+ <style lang="less" scoped>
1161
+ .butt3 {
1162
+ float: right;
1163
+ width: 12px;
1164
+ margin: 1% 2% 0 0;
1165
+ }
1166
+
1167
+ .rightipt {
1168
+ width: 60%;
1169
+ float: left;
1170
+ margin-left: 5%;
1171
+ }
1172
+
1173
+ .righttxt {
1174
+ border: none;
1175
+ margin-left: 5px;
1176
+ /*border-left: 5px solid #A2C2EB;*/
1177
+ float: left;
1178
+ width: 25%;
1179
+ margin-bottom: 3px;
1180
+ text-align: left;
1181
+ word-wrap: break-word;
1182
+ white-space: normal;
1183
+ }
1184
+
1185
+ .tit1 {
1186
+ /*background: #ffffff url('../../../assets/用户姓名.png') no-repeat fixed center;*/
1187
+ background-image: url('../../../assets/用户姓名.png');
1188
+ background-repeat: no-repeat;
1189
+ background-position: center;
1190
+ }
1191
+
1192
+ .spanboder {
1193
+ border-bottom: 2px solid #499edf;
1194
+ padding-bottom: 8px
1195
+ }
1196
+
1197
+ #upuserinfo_sel /deep/ ul {
1198
+ width: 100% !important;
1199
+ left: 0 !important;
1200
+ }
1201
+
1202
+ .btn-photo {
1203
+ border: 0;
1204
+ border-radius: 7px;
1205
+ background-color: #7dc1f4;
1206
+ font: 15px PingFang-SC-Bold;
1207
+ height: 20%;
1208
+ }
1209
+
1210
+ .panel-self {
1211
+ border-radius: 10px;
1212
+ border: 1px solid #499EDF;
1213
+ background-color: #F8F8F8;
1214
+ }
1215
+
1216
+ .div-photo {
1217
+ width: auto;
1218
+ height: auto;
1219
+ /* margin-top: 10px; */
1220
+ position: absolute;
1221
+ bottom: 10px;
1222
+ right: 10px;
1223
+ }
1224
+ </style>
1225
+ <style lang="less">
1226
+ #upuserinfo_sel ul {
1227
+ width: 100% !important;
1228
+ left: 0 !important;
1229
+ }
1230
+ </style>