data-filling.vue 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235
  1. <template>
  2. <div>
  3. <van-row style="margin-top: 10px">
  4. <van-col :span="22" :offset="1" style="background-color: white">
  5. <div class="inforBox">
  6. <p>归属年月:</p>
  7. <div>
  8. <!-- <van-datetime-picker-->
  9. <!-- v-model="form.yf"-->
  10. <!-- type="year-month"-->
  11. <!-- title="选择年月"-->
  12. <!-- :min-date="minDate"-->
  13. <!-- :max-date="maxDate"-->
  14. <!-- />-->
  15. <van-field
  16. right-icon="arrow-down"
  17. v-model="form.yf"
  18. placeholder="根据任务自动带出年、月"
  19. />
  20. </div>
  21. </div>
  22. <div class="inforBox" v-if="!form.isCf">
  23. <p class="dataName">
  24. <span>*</span>
  25. 本月营业收入
  26. <span class="Company">(万元)</span>
  27. </p>
  28. <input v-model="form.yysr" type="number" class="input" placeholder="请填写" />
  29. </div>
  30. <div class="inforBox" v-if="form.isCf">
  31. <p class="dataName">
  32. <span>*</span>
  33. 本月餐费收入
  34. <span class="Company">(万元)</span>
  35. </p>
  36. <input v-model="form.cfsr" type="number" class="input" placeholder="请填写" />
  37. </div>
  38. <div class="inforBox">
  39. <p class="dataName">
  40. <span>*</span>
  41. 本月总薪资
  42. <span class="Company">(万元)</span>
  43. </p>
  44. <input v-model="form.xzze" type="number" class="input" placeholder="请填写" />
  45. </div>
  46. <div class="inforBox" v-if="!form.isCf">
  47. <p class="dataName">
  48. <span>*</span>
  49. 上年本月营业收入
  50. <span class="Company">(万元)</span>
  51. </p>
  52. <input
  53. v-model="form.qntqyysr"
  54. type="number"
  55. class="input"
  56. placeholder="请填写/或自动带出"
  57. />
  58. </div>
  59. <div class="inforBox" v-if="form.isCf">
  60. <p class="dataName">
  61. <span>*</span>
  62. 上年本月餐费收入
  63. <span class="Company">(万元)</span>
  64. </p>
  65. <input
  66. v-model="form.qntqyysr"
  67. type="number"
  68. class="input"
  69. placeholder="请填写/或自动带出"
  70. />
  71. </div>
  72. <div class="inforBox">
  73. <div style="margin: 20px 0; text-align: center">
  74. <van-button round type="primary" color="rgb(227 239 254)" @click="toHome">
  75. <p class="off">返回</p>
  76. </van-button>
  77. <van-button round type="primary" color="rgb(26 76 218)" @click="save">
  78. <p class="submit">提交</p>
  79. </van-button>
  80. </div>
  81. </div>
  82. </van-col>
  83. </van-row>
  84. </div>
  85. </template>
  86. <script>
  87. import { Toast } from 'vant'
  88. import apis from '@.mobile/api/apis'
  89. import common from '@.mobile/plugin/axios/common'
  90. export default {
  91. data() {
  92. return {
  93. minDate: new Date(2000, 0, 1),
  94. maxDate: new Date(),
  95. form: {
  96. rowguid: '',
  97. qymc: '',
  98. shxydm: '',
  99. tblx: '预估填报',
  100. yf: this.$common.formatDate('yyyyMM', new Date()),
  101. tbsj: '',
  102. yysr: '',
  103. qntqyysr: '',
  104. xzze: '',
  105. cfsr: '',
  106. dxcb: '未发送',
  107. tbrid: '--',
  108. tbr: '--',
  109. ejgm: '--',
  110. yjgm: '--',
  111. lxdh: '--',
  112. qylxr: '--',
  113. qyzt: '--',
  114. ssbk: '--',
  115. isCf: false
  116. }
  117. }
  118. },
  119. mounted() {
  120. const user = common.currUser()
  121. this.form.qymc = user.qymc
  122. this.form.shxydm = user.shxydm
  123. this.form.ejgm = user.ejgm
  124. this.form.yjgm = user.yjgm
  125. this.form.lxdh = user.lxdh
  126. this.form.qylxr = user.qylxr
  127. this.form.qyzt = user.qyzt
  128. this.form.ssbk = user.ssbk
  129. this.form.qntqyysr = user.qntqyysr
  130. console.log(user.hymc)
  131. this.form.isCf = user.hymc === '住宿餐饮'
  132. },
  133. methods: {
  134. toHome() {
  135. this.$router.push('/mobile-home')
  136. },
  137. save() {
  138. if (!this.form.shxydm) {
  139. Toast('请重新登录后重试')
  140. this.$router.push('/mobile-login')
  141. return
  142. }
  143. if (this.form.isCf) {
  144. if (!this.form.cfsr) {
  145. Toast('请填写餐费收入')
  146. return
  147. }
  148. } else {
  149. if (!this.form.yysr) {
  150. Toast('请填写营业收入')
  151. return
  152. }
  153. }
  154. if (!this.form.xzze) {
  155. Toast('请填写薪资总额')
  156. return
  157. }
  158. apis.requestData('EcCompanyPredictController', 'save', this.form).then(res => {
  159. const data = res.data
  160. if (data.code == 200) {
  161. Toast('预估数据填报成功')
  162. } else {
  163. Toast(data.msg)
  164. }
  165. })
  166. }
  167. }
  168. }
  169. </script>
  170. <style scoped>
  171. .inforBody {
  172. background: white;
  173. margin: 10vw 5vw;
  174. padding: 0 0 5vw 0;
  175. }
  176. .inforBox {
  177. padding: 1vw 5vw;
  178. position: relative;
  179. }
  180. .input {
  181. width: 100%;
  182. padding: 1vw;
  183. border: 1px solid #e6e6e6;
  184. }
  185. .van-field {
  186. width: 100%;
  187. padding: 1vw;
  188. border: 1px solid #e6e6e6;
  189. }
  190. .down {
  191. }
  192. .dataName::first-letter {
  193. color: #ff4343;
  194. }
  195. .Company {
  196. color: #999999;
  197. }
  198. .buttonBox {
  199. display: flex;
  200. justify-content: space-evenly;
  201. }
  202. .van-button {
  203. width: 35vw;
  204. cursor: pointer;
  205. border: 1px solid rgb(209 220 250);
  206. }
  207. input::-webkit-input-placeholder {
  208. color: #cccccc;
  209. font-size: 2.5vw;
  210. }
  211. ::v-deep .van-field__control::-webkit-input-placeholder {
  212. color: #cccccc;
  213. font-size: 2.5vw;
  214. }
  215. .off {
  216. display: flex;
  217. justify-content: center;
  218. color: rgb(66 107 224);
  219. width: 30vw;
  220. letter-spacing: 2vw;
  221. margin-left: 1vw;
  222. }
  223. .submit {
  224. display: flex;
  225. justify-content: center;
  226. width: 30vw;
  227. letter-spacing: 2vw;
  228. margin-left: 1vw;
  229. }
  230. </style>