manualinput.vue 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215
  1. <template>
  2. <view>
  3. <view class="tishi" v-if="!itemListTF">
  4. 暂无数据
  5. </view>
  6. <u-collapse v-else>
  7. <u-collapse-item :title="'害虫名称:'+item.pest_name" v-for="(item, index) in itemList" :key="index">
  8. <p>害虫数量:{{item.pest_num}}</p>
  9. <p>作物种类:{{item.crop_name}}</p>
  10. <p>虫害阶段:{{item.pest_case}}</p>
  11. <view class="btn">
  12. <view class="btn_alter" @click="alter(item)">
  13. 编辑
  14. </view>
  15. <view class="btn_add" @click="deletes">
  16. 删除
  17. </view>
  18. </view>
  19. </u-collapse-item>
  20. <u-modal v-model="show" :title="content" :mask-close-able="true" :show-cancel-button="true" @confirm="confirm">
  21. <u-form :model="form" ref="uForm" class="uForm">
  22. <u-form-item label="害虫名称" :required="requireds" label-width="150rpx" prop="pest_name" class="form_item">
  23. <u-input v-model="form.pest_name" />
  24. </u-form-item>
  25. <u-form-item label="害虫数量" :required="requireds" label-width="150rpx" prop="pest_num" class="form_item">
  26. <u-input v-model="form.pest_num" type="number" />
  27. </u-form-item>
  28. <u-form-item label="作物种类" label-width="150rpx" class="form_item">
  29. <u-input v-model="form.crop_name" />
  30. </u-form-item>
  31. <u-form-item label="虫害阶段" label-width="150rpx" class="form_item">
  32. <u-input v-model="form.pest_case" />
  33. </u-form-item>
  34. </u-form>
  35. </u-modal>
  36. </u-collapse>
  37. </view>
  38. </template>
  39. <script>
  40. export default {
  41. data() {
  42. return {
  43. itemList: [],
  44. content:"修改",
  45. show:false,
  46. form:{
  47. pest_name:"",
  48. pest_num:"",
  49. crop_name:"",
  50. pest_case:""
  51. },
  52. requireds: true,
  53. device_id:"",//设备id
  54. addtime:"",//图片添加时间
  55. wormid:"",//图片id
  56. id:"",//害虫信息单条id
  57. itemListTF:false
  58. }
  59. },
  60. methods: {
  61. async species(id) { //统计
  62. const res = await this.$myRequest({
  63. url: '/api/api_gateway?method=forecast.forecast_system.equip_photo_species',
  64. data: {
  65. ret: "photo_desc",
  66. img_id: id
  67. }
  68. })
  69. console.log(res)
  70. this.itemList = res
  71. if(res.length==0){
  72. this.itemListTF = false
  73. }else{
  74. this.itemListTF = true
  75. }
  76. },
  77. async addspecies() { //修改
  78. var time = +new Date()
  79. const res = await this.$myRequest({
  80. url: '/api/api_gateway?method=forecast.forecast_system.equip_photo_describe',
  81. data: {
  82. ret: "change_dsec",
  83. img_id: this.id,
  84. describe: JSON.stringify(this.form),
  85. device_id:this.device_id,
  86. photo_time:this.addtime,
  87. time: time,
  88. id:this.wormid
  89. }
  90. })
  91. console.log(res)
  92. if(res){
  93. uni.showToast({
  94. title: '修改成功',
  95. duration: 1000,
  96. image: ""
  97. });
  98. this.species(this.id)
  99. }
  100. },
  101. async delspecies() { //修改
  102. const res = await this.$myRequest({
  103. url: '/api/api_gateway?method=forecast.forecast_system.equip_photo_describe',
  104. data: {
  105. ret: "del_desc",
  106. img_id: this.id,
  107. describe: JSON.stringify(this.form),
  108. device_id:this.device_id,
  109. photo_time:this.addtime,
  110. id:this.wormid
  111. }
  112. })
  113. console.log(res)
  114. if(res){
  115. uni.showToast({
  116. title: '删除成功',
  117. duration: 1000,
  118. image: ""
  119. });
  120. this.species(this.id)
  121. }
  122. },
  123. alter(item){
  124. this.show = true
  125. this.form.pest_name=item.pest_name
  126. this.form.pest_num=item.pest_num
  127. this.form.crop_name=item.crop_name
  128. this.form.pest_case=item.pest_case
  129. this.wormid=item.id
  130. },
  131. deletes(){
  132. uni.showModal({
  133. title: '提示',
  134. content: '确定删除这条害虫信息吗?',
  135. success:(res)=> {
  136. if (res.confirm) {
  137. this.delspecies()
  138. } else if (res.cancel) {
  139. console.log('用户点击取消');
  140. }
  141. }
  142. });
  143. },
  144. confirm(){
  145. if (this.form.pest_name== "") {
  146. uni.showToast({
  147. title: '请输入害虫名称',
  148. duration: 1000,
  149. image: ""
  150. });
  151. } else if (this.form.pest_num == "") {
  152. uni.showToast({
  153. title: '请输入害虫数量',
  154. duration: 1000,
  155. image: ""
  156. });
  157. } else {
  158. this.addspecies()
  159. }
  160. }
  161. },
  162. onLoad(option) {
  163. this.species(option.id)
  164. this.id = option.id
  165. this.device_id = option.device_id
  166. this.addtime = option.addtime
  167. }
  168. }
  169. </script>
  170. <style lang="scss">
  171. page {
  172. background-color: #f1f1f1;
  173. }
  174. .tishi{
  175. width: 100%;
  176. height: 200rpx;
  177. text-align: center;
  178. line-height: 200rpx;
  179. font-size: 32rpx;
  180. }
  181. .u-collapse-item {
  182. width: 100%;
  183. padding: 10rpx 28rpx;
  184. justify-content: space-between;
  185. box-sizing: border-box;
  186. margin-top: 20rpx;
  187. background-color: #FFFFFF;
  188. p{
  189. margin: 10rpx auto;
  190. width: 90%;
  191. }
  192. .btn{
  193. width: 90%;
  194. margin: 0 auto;
  195. display: flex;
  196. justify-content: flex-end;
  197. .btn_add,.btn_alter{
  198. width: 100rpx;
  199. height: 50rpx;
  200. background-color: #e95354;
  201. color: #FFFFFF;
  202. text-align: center;
  203. line-height: 50rpx;
  204. border-radius: 50rpx;
  205. }
  206. .btn_alter{
  207. background-color: #77ab84;
  208. margin-right: 20rpx;
  209. }
  210. }
  211. }
  212. </style>