upload.js 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326
  1. // pages/upload/upload.js
  2. const app = getApp()
  3. const $api = require('../../utils/api.js').API;
  4. Page({
  5. /**
  6. * 页面的初始数据
  7. */
  8. data: {
  9. open:true,
  10. stock_date:'',
  11. stock:[{name:'',fund:''}],
  12. stockList:[],
  13. today_stock_img:[],
  14. value:[-1],
  15. is_markt:0,
  16. today_fund:'',
  17. change:0,
  18. experience:'',
  19. cur:0,
  20. freshen:true,
  21. disable:false
  22. },
  23. /**
  24. * 生命周期函数--监听页面加载
  25. */
  26. onShow(){
  27. $api.getMyStyle().then(res => {
  28. if (!res.data.data.init_fund) {
  29. wx.navigateTo({
  30. url: '../style/style',
  31. })
  32. }
  33. })
  34. if (!this.data.freshen) {
  35. return;
  36. }
  37. $api.getCurrecord().then(res=>{
  38. if (!res.data.data.id){return}
  39. let stock = res.data.data.today_stock
  40. this.setData({
  41. stock: stock.length > 0 ? stock : [{ name: '', fund: '' }],
  42. today_stock_img: res.data.data.today_stock_img,
  43. today_fund: res.data.data.today_fund,
  44. is_markt: res.data.data.is_markt,
  45. change: 1,
  46. experience: res.data.data.experience
  47. })
  48. })
  49. },
  50. onLoad: function (options) {
  51. var y=new Date().getFullYear()
  52. var m=Number(new Date().getMonth() + 1)
  53. var d = new Date().getDate()
  54. m=m>9?m:'0'+m;
  55. d=d>9?d:'0'+d
  56. this.setData({
  57. stock_date:y+'-'+m+'-'+d
  58. })
  59. },
  60. /**添加持股 */
  61. add(){
  62. var stock = this.data.stock;
  63. var value=this.data.value;
  64. stock.push({ name: '', fund: '' })
  65. value.push(-1)
  66. this.setData({
  67. stock: stock,
  68. value: value
  69. })
  70. },
  71. del(e){
  72. var i = e.target.dataset.id;
  73. var stock = this.data.stock;
  74. var value = this.data.value;
  75. stock.splice(i,1)
  76. value.splice(i,1)
  77. this.setData({
  78. stock: stock,
  79. value: value
  80. })
  81. },
  82. bindPickerChange(e){
  83. var i=this.data.cur;
  84. var v = e.target.dataset.name
  85. var stock=this.data.stock;
  86. stock[i].name = v
  87. this.setData({
  88. stock: stock
  89. })
  90. setTimeout(()=>{
  91. this.setData({
  92. stockList: []
  93. },50)
  94. })
  95. return;
  96. },
  97. stockSearch(e){
  98. if (e.detail.value == ''){
  99. this.setData({
  100. stockList: []
  101. })
  102. return
  103. }
  104. var i = e.target.dataset.id;
  105. var v = e.detail.value
  106. var stock = this.data.stock;
  107. stock[i].name = v;
  108. this.setData({
  109. stock: stock
  110. })
  111. $api.searchStock({ name: e.detail.value}).then(res=>{
  112. this.setData({
  113. stockList:res.data.data,
  114. cur:e.target.dataset.id
  115. })
  116. })
  117. },
  118. blur(){
  119. // console.log(233)
  120. this.setData({
  121. stockList: []
  122. })
  123. },
  124. nameChange(e){
  125. console.log(e)
  126. var i = e.target.dataset.id;
  127. var v = e.detail.value
  128. var stock = this.data.stock;
  129. stock[i].name = v;
  130. this.setData({
  131. stock: stock
  132. })
  133. },
  134. fundChange(e){
  135. var i = e.target.dataset.id;
  136. var v = e.detail.value
  137. var stock = this.data.stock;
  138. if (v.split('.').length > 1 && v.split('.')[1].length > 4) {
  139. v = Math.floor(Number(v) * 10000) / 10000
  140. }
  141. stock[i].fund = v;
  142. this.setData({
  143. stock: stock
  144. })
  145. },
  146. fundChange1(e) {
  147. var v = e.detail.value
  148. if (v.split('.').length > 1 && v.split('.')[1].length > 4){
  149. v = Math.floor(Number(v)*10000)/10000
  150. }
  151. this.setData({
  152. today_fund: v
  153. })
  154. },
  155. expChange(e){
  156. var v = e.detail.value
  157. this.setData({
  158. experience: v
  159. })
  160. },
  161. switch1Change(e){
  162. this.setData({
  163. is_markt: Number(e.detail.value)
  164. })
  165. },
  166. uploadImg() {
  167. var today_stock_img = this.data.today_stock_img;
  168. wx.chooseImage({
  169. success: res => {
  170. wx.showLoading({
  171. title: '正在上传',
  172. })
  173. const tempFilePaths = res.tempFiles
  174. for (let i = 0; i < tempFilePaths.length; i++) {
  175. $api.upload(tempFilePaths[i].path, 'file').then(res => {
  176. wx.hideLoading()
  177. if (res.code == 0) {
  178. today_stock_img.push(res.data.url)
  179. this.setData({
  180. today_stock_img: today_stock_img
  181. })
  182. } else {
  183. wx.showToast({
  184. title: '上传失败',
  185. })
  186. }
  187. })
  188. .catch(err => {
  189. wx.hideLoading()
  190. })
  191. }
  192. }
  193. })
  194. },
  195. del1(e) {
  196. var i = e.target.dataset.id;
  197. var today_stock_img = this.data.today_stock_img;
  198. today_stock_img.splice(i, 1)
  199. this.setData({
  200. today_stock_img: today_stock_img
  201. })
  202. },
  203. prview(e){
  204. var src = e.target.dataset.src;
  205. wx.previewImage({
  206. current: src, // 当前显示图片的http链接
  207. urls: [src] // 需要预览的图片http链接列表
  208. })
  209. },
  210. post(){
  211. var parm={
  212. stock_date: this.data.stock_date,
  213. today_stock:this.data.stock,
  214. is_markt: this.data.is_markt,
  215. today_stock_img: this.data.today_stock_img,
  216. today_fund: Number(this.data.today_fund),
  217. experience: this.data.experience
  218. }
  219. if (!parm.today_fund){
  220. wx.showToast({
  221. icon: 'none',
  222. title: '请输入今日净资产'
  223. })
  224. return
  225. }
  226. if (!parm.is_markt){
  227. // for (let i = 0; i < parm.today_stock.length;i++){
  228. // if (!parm.today_stock[i].name || !parm.today_stock[i].fund) {
  229. // wx.showToast({
  230. // icon: 'none',
  231. // title: '请选择股票并输入资金额'
  232. // })
  233. // return;
  234. // break;
  235. // }
  236. // }
  237. }else{
  238. parm.today_stock = []
  239. }
  240. if (parm.today_stock_img.length<=0) {
  241. wx.showToast({
  242. icon: 'none',
  243. title: '请上传截图'
  244. })
  245. return
  246. }
  247. wx.showLoading({
  248. title: '正在提交',
  249. })
  250. this.setData({
  251. disable:true
  252. })
  253. $api.updateRecord(parm).then(res=>{
  254. wx.hideLoading()
  255. wx.showToast({
  256. title: '提交成功',
  257. })
  258. this.setData({
  259. freshen: true,
  260. })
  261. setTimeout(() => {
  262. this.setData({
  263. stock: [{ label: '', name: '', code: '', fund: '' }],
  264. stockList: [],
  265. today_stock_img: [],
  266. value: [-1],
  267. is_markt: 0,
  268. today_fund: '',
  269. disable: false
  270. })
  271. wx.switchTab({
  272. url: '../index/index',
  273. })
  274. }, 200)
  275. })
  276. },
  277. /**
  278. * 生命周期函数--监听页面初次渲染完成
  279. */
  280. onReady: function () {
  281. },
  282. /**
  283. * 生命周期函数--监听页面隐藏
  284. */
  285. onHide: function () {
  286. },
  287. /**
  288. * 生命周期函数--监听页面卸载
  289. */
  290. onUnload: function () {
  291. },
  292. /**
  293. * 页面相关事件处理函数--监听用户下拉动作
  294. */
  295. onPullDownRefresh: function () {
  296. },
  297. /**
  298. * 页面上拉触底事件的处理函数
  299. */
  300. onReachBottom: function () {
  301. },
  302. /**
  303. * 用户点击右上角分享
  304. */
  305. onShareAppMessage: function () {
  306. }
  307. })