taskPhotoTaking.vue 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. <template>
  2. <div class="taskPhotoTaking">
  3. <van-nav-bar class="navBar" left-arrow title="拜访任务" @click-left="onClickLeft">
  4. <template #right>
  5. <span
  6. v-if="isEdit"
  7. @click="onSubmit"
  8. style="
  9. color: white;
  10. background: rgb(0, 87, 186);
  11. display: block;
  12. padding: 6px 10px;
  13. border-radius: 6px;
  14. "
  15. >保存</span
  16. >
  17. </template>
  18. </van-nav-bar>
  19. <div class="content" v-if="formData">
  20. <div
  21. class="container"
  22. style="width: 94%; margin: 0 auto; border-radius: 6px; padding: 10px 10px 10px 0">
  23. <van-form ref="tabstoreVal">
  24. <div v-for="(item, index) in formData.collectionItemList" :key="index">
  25. <div v-if="item.answerType == 'zp'" class="formLabel z-cell">
  26. <van-cell>
  27. <template #title>
  28. <span v-if="item.isMust == 0" class="van-f-red">*</span>
  29. <span>1.</span>
  30. {{ item.collectionName }}
  31. <!-- 操作说明图片和电话 -->
  32. <taskTips
  33. v-if="item.contactPhone || item.examplePhoto"
  34. :contactPhone="item.contactPhone"
  35. :examplePhoto="item.examplePhoto">
  36. </taskTips>
  37. </template>
  38. </van-cell>
  39. <delete-upload-img
  40. :imgs="item.fileInfoList"
  41. :storeGroupId="formData.storeGroupId"
  42. :taskIds="taskIds"
  43. :visitsId="visitsId"
  44. :collectionItemId="item.collectionId"
  45. :putInCode="formData.putInCode"
  46. :photoIdentifyType="formData.photoIdentifyType"
  47. @upDataDetail="getDetaile"
  48. :pictureSource="item.pictureSource"
  49. :continuousShoot="item.continuousShoot"></delete-upload-img>
  50. </div>
  51. </div>
  52. </van-form>
  53. </div>
  54. </div>
  55. </div>
  56. </template>
  57. <script>
  58. import { getCollectionInfosBatch } from '@/api/index';
  59. import taskTips from './taskTips';
  60. import deleteUploadImg from '@/components/deleteUploadImgTaskPhoto';
  61. export default {
  62. name: 'abnortaskPhotoTakingmalVisit',
  63. components: { taskTips, deleteUploadImg },
  64. data() {
  65. return {
  66. isEdit: true,
  67. formData: null,
  68. taskIds: [],
  69. visitsId: null,
  70. };
  71. },
  72. activated() {
  73. this.taskIds = this.$route.query.taskIds || [];
  74. this.visitsId = this.$route.query.visitsId || '';
  75. this.getDetaile();
  76. },
  77. methods: {
  78. getDetaile() {
  79. console.log(this.$route.query);
  80. getCollectionInfosBatch({
  81. storeCode: this.$route.query.storeCode,
  82. insert: true,
  83. id: this.visitsId,
  84. taskIds: this.taskIds.split(','),
  85. }).then((res) => {
  86. if (res.data && res.data.length) {
  87. this.formData = res.data[0];
  88. } else {
  89. this.formData = null;
  90. }
  91. });
  92. },
  93. onSubmit() {},
  94. onClickLeft() {
  95. this.$router.go(-1);
  96. },
  97. },
  98. };
  99. </script>
  100. <style lang="scss" scoped>
  101. .taskPhotoTaking {
  102. display: flex;
  103. flex-direction: column;
  104. background: #fff;
  105. .content {
  106. .formLabel {
  107. margin-left: 20px;
  108. border-bottom: 1px solid #f1f1f1;
  109. }
  110. .formLabel .van-cell {
  111. padding: 10px 0;
  112. }
  113. .formLabel .van-cell::after {
  114. border: 0;
  115. }
  116. .formLabel .van-field {
  117. border: 1px solid #f1f1f1;
  118. padding: 6px;
  119. width: 100%;
  120. border-radius: 4px;
  121. overflow: hidden;
  122. }
  123. .formLabel .van-field__control {
  124. padding: 0 10px;
  125. }
  126. .formLabel .formLabeltitle {
  127. position: absolute;
  128. top: 8px;
  129. }
  130. .z-cell .van-cell__title {
  131. font-size: 16px;
  132. }
  133. .van-f-red {
  134. color: red;
  135. width: 8px;
  136. display: inline-block;
  137. line-height: 26px;
  138. }
  139. }
  140. }
  141. </style>