detail.js 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756
  1. import common from '../../utils/util';
  2. import main from '../../utils/main';
  3. const app = getApp();
  4. const arrFontSize = [46, 68, 108];
  5. var innerAudioContext1;
  6. var listTaskFinished = []; //完成的任务
  7. var timeStart; //计算时长
  8. var TaskList = [];
  9. var iTimeout = 0;
  10. var arrImage = [], arrImage2 = [];
  11. var intervalSound = 0, intervalRefresh=0;
  12. Page({
  13. data: {
  14. NumberNew: 10,
  15. NumberReview: 0,
  16. NumberHistory: 30,
  17. IsShowNumberInfo: false,
  18. TaskInfo: {},
  19. Color: {//配色1
  20. Name: "黑白",
  21. BackColor: "#ffffff",
  22. BackColor1: "#D2D2D2",
  23. FrontColor: "#1E1E1E",
  24. FrontColor1: "rgba(0,0,0,0.3)",
  25. BackColor2: "#E3E3E3",
  26. BackColor20: 'rgba(227,227,227,0)',
  27. FrontColor2: "#1E1E1E",
  28. TagColor: "#9B9B9B",
  29. FieldLineColor: "#4B3840",
  30. IconColor: "black",
  31. FrontColorNavigationBar: "#000000",
  32. },
  33. },
  34. onLoad: function () {
  35. wx.hideShareMenu();
  36. var that = this;
  37. var height = app.globalData.systemInfo.screenHeight * 2-110;
  38. var height2=750;
  39. if (app.globalData.IsIPad){
  40. height=960;
  41. height2=670;
  42. }
  43. that.setData({
  44. Containnerheight: height,
  45. Containnerheight2: height-height2,
  46. IsShowAnswer: [0, 0],
  47. CanUndo: 1,
  48. IsIphoneX: main.checkIsIPhoneX(),
  49. });
  50. innerAudioContext1 = wx.createInnerAudioContext();
  51. this.audioCtx=[];
  52. this.getList();
  53. this.getColor();
  54. },
  55. onShow: function () {
  56. var that = this;
  57. if (that.data.NumberNew == 0 &&
  58. that.data.NumberReview == 0 &&
  59. that.data.NumberHistory == 0) {
  60. listTaskFinished = [];
  61. that.setSoundFile(1);
  62. }
  63. else {
  64. that.setSoundFile(-1);
  65. var list = app.globalData.CardList;
  66. if (list && list.length > 0) {
  67. for (var i = 0; i < list.length; i++) {
  68. if (TaskList[0].MiaoguoCardID == list[i].MiaoguoCardID) {
  69. TaskList[0].Content = list[i].Content;
  70. TaskList[0].ContentNew = main.changeStringToView(list[i].Content);
  71. that.setData({
  72. TaskInfo: TaskList[0],
  73. });
  74. app.globalData.CardList=[];
  75. break;
  76. }
  77. }
  78. }
  79. }
  80. },
  81. onUnload:function(){
  82. clearInterval(intervalSound);
  83. },
  84. onPullDownRefresh: function () {
  85. this.onShowAnswer({currentTarget:{dataset:{start:true}}});
  86. wx.stopPullDownRefresh();
  87. },
  88. setSoundFile: function (isFinish) {//isFinish=3搁置 =2撤退 =1结束 =0正常 =-1开始
  89. var that = this;
  90. var url = "/pages/sounds/";
  91. if (isFinish == 1) {
  92. url += "end.mp3";
  93. that.getTaskTime();
  94. }
  95. else if (isFinish == 2 || isFinish == 3) {
  96. url += "short3.mp3";
  97. }
  98. else {
  99. url += "short2.mp3";
  100. }
  101. if (isFinish >= 0) {
  102. innerAudioContext1.src = url;
  103. innerAudioContext1.play();
  104. }
  105. wx.pageScrollTo({
  106. scrollTop: 0,
  107. });
  108. },
  109. getColor: function () {
  110. var that = this;
  111. common.getStorageValue(that, "ColorIndex", 0, function () {
  112. var color = main.getDetailColor(that.data.ColorIndex);
  113. that.setData({
  114. Color: color,
  115. });
  116. if (wx.setBackgroundColor) {
  117. wx.setBackgroundColor({
  118. backgroundColor: color.BackColor,
  119. backgroundColorTop: color.BackColor,
  120. backgroundColorBottom: color.BackColor2,
  121. })
  122. }
  123. if (wx.setNavigationBarColor) {
  124. wx.setNavigationBarColor({
  125. frontColor: color.FrontColorNavigationBar,
  126. backgroundColor: color.BackColor,
  127. })
  128. }
  129. });
  130. },
  131. getList: function () {
  132. var task = app.globalData.TaskToday;
  133. var that = this;
  134. var arrNew = task.ListNew;
  135. var arrHistory = task.ListHistory;
  136. var listTaskReview = task.ListReview;
  137. var nMax = [1, 1];
  138. if (arrNew.length == 0 || arrHistory.length == 0) {
  139. if (arrNew.length == 0) {
  140. nMax[0] = 0;
  141. }
  142. if (arrHistory.length == 0) {
  143. nMax[1] = 0;
  144. }
  145. } else if (arrNew.length >= arrHistory.length) {
  146. nMax[0] = Math.floor(arrNew.length / arrHistory.length);
  147. } else if (arrNew.length < arrHistory.length) {
  148. nMax[1] = Math.floor(arrHistory.length / arrNew.length);
  149. }
  150. arrNew = common.randomArray(arrNew);
  151. arrHistory = common.randomArray(arrHistory);
  152. var Len = arrNew.length + arrHistory.length;
  153. TaskList = [];
  154. var indexNew = 0,
  155. indexHistory = 0;
  156. for (var i = 0; i < Len; i++) {
  157. for (var j = 0; j < nMax[0]; j++) {
  158. if (indexNew < arrNew.length) {
  159. arrNew[indexNew].IsNew = true;
  160. TaskList.push(arrNew[indexNew++]);
  161. }
  162. }
  163. for (var j = 0; j < nMax[1]; j++) {
  164. if (indexHistory < arrHistory.length) {
  165. arrHistory[indexHistory].IsHistory = true;
  166. TaskList.push(arrHistory[indexHistory++]);
  167. }
  168. }
  169. }
  170. that.data.NumberReview = listTaskReview.length;
  171. for (var i = 0; i < listTaskReview.length; i++) {
  172. listTaskReview[i].IsReview = true;
  173. TaskList.push(listTaskReview[i]);
  174. }
  175. TaskList = updateNumberStr(TaskList);
  176. //处理列表
  177. TaskList = formatList(TaskList);
  178. if (TaskList.length > 0) {
  179. arrImage = TaskList[0].ContentNew.Images;
  180. arrImage2 = TaskList[0].ContentNew.Images2;
  181. }
  182. that.setData({
  183. NumberNew: arrNew.length,
  184. NumberReview: that.data.NumberReview,
  185. NumberHistory: arrHistory.length,
  186. TaskInfo: TaskList[0],
  187. CanUndo: 0,
  188. });
  189. listTaskFinished = [];
  190. timeStart = new Date(); //起始时间
  191. function formatList(list) {
  192. for (var i = 0; i < list.length; i++) {
  193. if (list[i].Content)
  194. list[i].ContentNew = main.changeStringToView(list[i].Content);
  195. }
  196. return list;
  197. }
  198. function replaceStr(data) {
  199. var result = "";
  200. if (data.indexOf("d") > 0) {
  201. var dayNum = Number(data.replace("d", ""));
  202. if (dayNum >= 365) {
  203. var year1 = Math.floor(dayNum / 365);
  204. var year = year1 + Math.round(10 * (dayNum - year1 * 365) / 365) / 10;
  205. result = year + "年";
  206. } else {
  207. if (dayNum > 31) {
  208. var month1 = Math.floor(dayNum / 30);
  209. var month = month1 + Math.round(10 * (dayNum - month1 * 30) / 30) / 10;
  210. result = month + "月";
  211. } else
  212. result = data.replace("d", "天");
  213. }
  214. } else if (data.indexOf("m") > 0)
  215. result = "<" + data.replace("m", "分钟");
  216. return result;
  217. }
  218. function updateNumberStr(list) {
  219. for (var i = 0; i < list.length; i++) {
  220. if (list[i].Number0)
  221. list[i].Number0Str = replaceStr(list[i].Number0);
  222. if (list[i].Number1)
  223. list[i].Number1Str = replaceStr(list[i].Number1);
  224. if (list[i].Number2)
  225. list[i].Number2Str = replaceStr(list[i].Number2);
  226. if (list[i].Number3)
  227. list[i].Number3Str = replaceStr(list[i].Number3);
  228. }
  229. return list;
  230. }
  231. },
  232. onShowAnswer: function (e) {
  233. var start = e.currentTarget.dataset.start;
  234. var that = this;
  235. if (!(that.data.NumberNew == 0 &&
  236. that.data.NumberReview == 0 &&
  237. that.data.NumberHistory == 0)) {
  238. if (start) {
  239. that.data.IsShowAnswer[0] = 0;
  240. that.data.IsShowAnswer[1] = 0;
  241. }
  242. else {
  243. if (!that.data.IsShowAnswer[0] && !that.data.IsShowAnswer[1]) {
  244. that.data.IsShowAnswer[0] = 1;
  245. if (TaskList[0].ContentNew.Field[3].length == 0) {
  246. that.data.IsShowAnswer[1] = 1;
  247. }
  248. }
  249. else if (that.data.IsShowAnswer[0] && !that.data.IsShowAnswer[1]) {
  250. that.data.IsShowAnswer[1] = 1;
  251. }
  252. }
  253. that.setData({
  254. IsShowAnswer: that.data.IsShowAnswer,
  255. });
  256. }
  257. },
  258. onAddQuestion: function () {
  259. wx.navigateTo({
  260. url: './add'
  261. });
  262. },
  263. gotoEdit: function () {
  264. var that = this;
  265. //console.log(res.tapIndex);
  266. var list = [];
  267. list.push(TaskList[0]);
  268. app.globalData.CardList=list;
  269. wx.navigateTo({
  270. url: './add?type=edit&id=' + TaskList[0].MiaoguoCardID,
  271. });
  272. },
  273. onFontSize: function () {
  274. for (var i = 0; i < arrFontSize.length; i++) {
  275. if (arrFontSize[i] == TaskList[0].FontSize) {
  276. i++;
  277. if (i == arrFontSize.length)
  278. i = 0;
  279. TaskList[0].FontSize = arrFontSize[i];
  280. break;
  281. }
  282. }
  283. this.setData({
  284. TaskInfo: TaskList[0],
  285. });
  286. },
  287. gotoPrev: function () {
  288. clearTimeout(iTimeout);
  289. wx.showLoading({
  290. title: '请稍候',
  291. mask: true,
  292. });
  293. if (listTaskFinished.length > 0) {
  294. var card = listTaskFinished.pop();
  295. //console.log(card);
  296. var that = this;
  297. var url = "UndoMiaoguoCard?";
  298. url += "ID=" + card.Card.MiaoguoCardID;
  299. url += "&UserID=" + app.globalData.userInfo.UserID;
  300. url += "&IntervalTime=" + card.IntervalTime;
  301. url += "&IntervalDay=" + card.Card.IntervalDay;
  302. url += "&RepetitionCoefficient=" + card.Card.RepetitionCoefficient;
  303. if (card.Card.FirstTime)
  304. url += "&FirstTime=" + card.Card.FirstTime;
  305. if (card.Card.LastTime)
  306. url += "&LastTime=" + card.Card.LastTime;
  307. main.getData(url, function (data) {
  308. wx.hideLoading();
  309. timeStart = new Date();
  310. card.Card.Number0 = card.Number0Old;
  311. card.Card.Number0Str = card.Number0StrOld;
  312. card.Card.Number1 = card.Number1Old;
  313. card.Card.Number1Str = card.Number1StrOld;
  314. card.Card.Number2 = card.Number2Old;
  315. card.Card.Number2Str = card.Number2StrOld;
  316. card.Card.Number3 = card.Number3Old;
  317. card.Card.Number3Str = card.Number3StrOld;
  318. if (card.IsReviewOld)
  319. card.Card.IsReview = card.IsReviewOld;
  320. //去除重复
  321. for (var i = 0; i < TaskList.length; i++) {
  322. if (TaskList[i].MiaoguoCardID == card.Card.MiaoguoCardID) {
  323. TaskList.splice(i, 1);
  324. }
  325. }
  326. TaskList.unshift(card.Card);
  327. var canUndo = 1;
  328. if (listTaskFinished.length == 0)
  329. canUndo = 0;
  330. arrImage = TaskList[0].ContentNew.Images;
  331. arrImage2 = TaskList[0].ContentNew.Images2;
  332. that.setData({
  333. IsShowAnswer: [0, 0],
  334. TaskInfo: TaskList[0],
  335. NumberNew: card.NumberNew,
  336. NumberReview: card.NumberReview,
  337. NumberHistory: card.NumberHistory,
  338. CanUndo: canUndo,
  339. });
  340. wx.showToast({
  341. title: '回到上一张',
  342. mask: true,
  343. image: "../images/universalpic_undo_white_120x90.png",
  344. });
  345. });
  346. }
  347. that.setSoundFile(2);
  348. },
  349. gotoNext: function (e) {
  350. var that = this;
  351. clearTimeout(iTimeout);
  352. wx.showLoading({
  353. title: '请稍候',
  354. mask: true,
  355. });
  356. var btnnumber = e.currentTarget.dataset.btnnumber;
  357. var time = e.currentTarget.dataset.time;
  358. //处理当前卡片进入历史数组
  359. var finishCard = {};
  360. finishCard.Card = TaskList[0];
  361. finishCard.NumberNew = this.data.NumberNew;
  362. finishCard.NumberReview = this.data.NumberReview;
  363. finishCard.NumberHistory = this.data.NumberHistory;
  364. finishCard.Number0Old = TaskList[0].Number0;
  365. finishCard.Number0StrOld = TaskList[0].Number0Str;
  366. finishCard.Number1Old = TaskList[0].Number1;
  367. finishCard.Number1StrOld = TaskList[0].Number1Str;
  368. finishCard.Number2Old = TaskList[0].Number2;
  369. finishCard.Number2StrOld = TaskList[0].Number2Str;
  370. finishCard.Number3Old = TaskList[0].Number3;
  371. finishCard.Number3StrOld = TaskList[0].Number3Str;
  372. //若不是搁置
  373. if (btnnumber != "1") {
  374. //若是分钟,则进入复习列表
  375. if (time.lastIndexOf("m") == time.length - 1) {
  376. var minute = Number(time.substr(0, time.indexOf("m")));
  377. TaskList[0].LimitTime = common.formatTime(common.addDate("n", minute, new Date()));
  378. //若是新增,则10m 1d 4d
  379. if (TaskList[0].IsNew) {
  380. TaskList[0].Number0 = "10m";
  381. TaskList[0].Number0Str = "<10分钟";
  382. delete TaskList[0].Number1;
  383. delete TaskList[0].Number1Str;
  384. TaskList[0].Number2 = "1d";
  385. TaskList[0].Number2Str = "1天";
  386. TaskList[0].Number3 = "4d";
  387. TaskList[0].Number3Str = "4天";
  388. TaskList[0].FirstTime = null;
  389. TaskList[0].LastTime = null;
  390. }
  391. //若是历史的,则10m 1d
  392. else if (TaskList[0].IsHistory) {
  393. TaskList[0].Number0 = "10m";
  394. TaskList[0].Number0Str = "<10分钟";
  395. delete TaskList[0].Number1;
  396. delete TaskList[0].Number1Str;
  397. TaskList[0].Number2 = "1d";
  398. TaskList[0].Number2Str = "1天";
  399. delete TaskList[0].Number3;
  400. delete TaskList[0].Number3Str;
  401. }
  402. finishCard.IsReviewOld = TaskList[0].IsReview;
  403. TaskList[0].IsReview = true;
  404. TaskList.push(TaskList[0]);
  405. }
  406. //若是天月年
  407. else {
  408. var dayNum = Number(time.substr(0, time.indexOf("d")));
  409. var date = common.addDate("d", dayNum, new Date());
  410. TaskList[0].LimitTime = common.formatTime(date);
  411. }
  412. }
  413. //修改学习任务个数
  414. var learningType = 0;
  415. if (TaskList[0].IsReview) {
  416. learningType = 2;
  417. }
  418. if (TaskList[0].IsNew) {
  419. learningType = 0;
  420. }
  421. else if (TaskList[0].IsHistory) {
  422. learningType = 1;
  423. }
  424. if (btnnumber == "1") {
  425. learningType = 3;
  426. }
  427. finishCard.IntervalTime = time;
  428. finishCard.BtnNumber = btnnumber;
  429. finishCard.LearningType = learningType;
  430. //保存上传
  431. var obj = {
  432. MiaoguoCardID: TaskList[0].MiaoguoCardID,
  433. IntervalTime: time,
  434. BtnNumber: btnnumber,
  435. LearningType: learningType,
  436. IsUndo: 0,
  437. }
  438. this.saveCard(obj, function () {
  439. wx.hideLoading();
  440. //添加完成列表,去掉任务列表数据
  441. listTaskFinished.push(finishCard);
  442. TaskList.shift();
  443. that.data.NumberNew = 0;
  444. that.data.NumberHistory = 0;
  445. that.data.NumberReview = 0;
  446. var arrTemp = [];
  447. for (var i = 0; i < TaskList.length; i++) {
  448. if (TaskList[i].IsReview) {
  449. if (TaskList[i].LimitTime < common.formatTime(new Date())) {
  450. var card = TaskList.splice(i, 1);
  451. TaskList.unshift(card[0]);
  452. }
  453. that.data.NumberReview++;
  454. }
  455. else if (TaskList[i].IsNew) {
  456. that.data.NumberNew++;
  457. }
  458. else if (TaskList[i].IsHistory) {
  459. that.data.NumberHistory++;
  460. }
  461. }
  462. //console.log(JSON.stringify(TaskList[0]));
  463. if (that.data.NumberNew == 0 &&
  464. that.data.NumberReview == 0 &&
  465. that.data.NumberHistory == 0) {
  466. that.setData({
  467. IsShowAnswer: [0, 0],
  468. NumberNew: 0,
  469. NumberReview: 0,
  470. NumberHistory: 0,
  471. CanUndo: 1,
  472. });
  473. that.setSoundFile(1);
  474. } else {
  475. arrImage = TaskList[0].ContentNew.Images;
  476. arrImage2 = TaskList[0].ContentNew.Images2;
  477. //任务没有完成,下一张卡片
  478. that.setData({
  479. IsShowAnswer: [0, 0],
  480. TaskInfo: TaskList[0],
  481. NumberNew: that.data.NumberNew,
  482. NumberReview: that.data.NumberReview,
  483. NumberHistory: that.data.NumberHistory,
  484. CanUndo: 1,
  485. });
  486. if (btnnumber == "1") {
  487. that.setSoundFile(3);
  488. wx.showToast({
  489. title: '今天不练',
  490. mask: true,
  491. image: "../images/universalpic_shelve_white_120x120.png",
  492. });
  493. }
  494. else
  495. that.setSoundFile(0);
  496. }
  497. });
  498. },
  499. saveCard: function (obj, callback) {
  500. var url = "UpdateMiaoguoCardToday?";
  501. url += "ID=" + obj.MiaoguoCardID;
  502. url += "&UserID=" + app.globalData.userInfo.UserID;
  503. url += "&IntervalTime=" + obj.IntervalTime;
  504. url += "&BtnNumber=" + obj.BtnNumber;
  505. url += "&LearningType=" + obj.LearningType;
  506. url += "&FontSize=" + TaskList[0].FontSize;
  507. var duration = common.diffDate("s", timeStart, new Date());
  508. if (obj.btnnumber==1)
  509. duration=0;
  510. url += "&Duration=" + duration;
  511. url += "&IsUndo=" + obj.IsUndo;
  512. if (obj.LastTime)
  513. url += "&LastTime=" + obj.LastTime;
  514. main.getData(url, function (data) {
  515. timeStart = new Date();
  516. callback();
  517. });
  518. },
  519. playSound: function (e) {
  520. var that = this;
  521. var str = e.currentTarget.dataset.content;
  522. var url = "";
  523. if (str.indexOf("英 [") >= 0 || str.indexOf("美 [") >= 0) {
  524. str = str.replace("英 [", "[");
  525. str = str.replace("美 [", "[");
  526. url = e.currentTarget.dataset.soundmark;
  527. }
  528. else if (e.currentTarget.dataset.soundmark && e.currentTarget.dataset.soundmark != "undefined") {
  529. var soundmark = e.currentTarget.dataset.soundmark;
  530. if (soundmark && soundmark.indexOf("http") < 0) {
  531. url = app.globalData.audioUrlBaidu;
  532. url = url.replace("[token]", app.globalData.BaiduToken);
  533. url = url.replace("[word]", soundmark);
  534. }
  535. else {
  536. url = soundmark;
  537. }
  538. }
  539. else {
  540. url = app.globalData.audioUrlBaidu;
  541. url = url.replace("[token]", app.globalData.BaiduToken);
  542. url = url.replace("[word]", str);
  543. }
  544. var arr = url.split(",");
  545. for (var i = 0; i < arr.length; i++) {
  546. this.audioCtx.push(wx.createAudioContext('myAudio' + i));
  547. }
  548. var index = 0;
  549. intervalSound = setInterval(function () {
  550. that.audioCtx[index].setSrc(arr[index]);
  551. that.audioCtx[index].play();
  552. index++;
  553. if (index >= arr.length) {
  554. clearInterval(intervalSound);
  555. }
  556. }, 1000);
  557. var fieldid = e.currentTarget.dataset.fieldid;
  558. var content = TaskList[0].ContentNew.Field[fieldid];
  559. var selectIndex = 0;
  560. for (var i = 0; i < content.length; i++) {
  561. if (content[i].Type == 'sound') {
  562. if (content[i].Content == e.currentTarget.dataset.content) {
  563. content[i].SoundImageName = "gif";
  564. selectIndex = i;
  565. break;
  566. }
  567. }
  568. }
  569. that.setData({
  570. TaskInfo: TaskList[0],
  571. });
  572. iTimeout = setTimeout(function () {
  573. content[selectIndex].SoundImageName = "png";
  574. TaskList[0].ContentNew.Field[fieldid] = content;
  575. that.setData({
  576. TaskInfo: TaskList[0],
  577. });
  578. }, 2000);
  579. },
  580. getTaskTime: function () {
  581. var that = this;
  582. var url = "GetMiaoguoTaskTime?";
  583. url += "UserID=" + app.globalData.userInfo.UserID;
  584. main.getData(url, function (data) {
  585. if (data) {
  586. var duration = common.getMinuteSecond(data.Duration, true);
  587. var speed1 = Math.round(100 * data.Count / (data.Duration / 60)) / 100;
  588. var speed2 = common.getMinuteSecond(Math.round(data.Duration / data.Count), true);
  589. that.setData({
  590. TodayTime: duration,
  591. Speed1: speed1 + "张题卡",
  592. Speed2: speed2,
  593. });
  594. wx.setNavigationBarTitle({
  595. title: "报告"
  596. });
  597. }
  598. });
  599. },
  600. showNumberContainner: function () {
  601. this.setData({
  602. IsShowNumberInfo: true,
  603. });
  604. },
  605. closeNumberContainner: function () {
  606. this.setData({
  607. IsShowNumberInfo: false,
  608. });
  609. },
  610. showImage: function (e) {
  611. var name = e.currentTarget.dataset.name;
  612. wx.previewImage({
  613. current: name,
  614. urls: arrImage
  615. });
  616. },
  617. onBindError: function (e) {
  618. var that = this;
  619. var serverUrl = e.currentTarget.dataset.serverurl;
  620. var oldTempUrl = e.currentTarget.dataset.name;
  621. //console.log("serverUrl1:" + serverUrl);
  622. wx.downloadFile({
  623. url: serverUrl, // 仅为示例,并非真实的资源
  624. success(res) {
  625. // 只要服务器有响应数据,就会把响应内容写入文件并进入 success 回调,业务需要自行判断是否下载到了想要的内容
  626. if (res.statusCode === 200) {
  627. //console.log("serverUrl2:" + serverUrl);
  628. //console.log(res.tempFilePath);
  629. main.saveTempImage(serverUrl, res.tempFilePath);
  630. for(var i=0;i<arrImage.length;i++){
  631. if (arrImage[i] == oldTempUrl){
  632. arrImage[i] = res.tempFilePath;
  633. }
  634. }
  635. }
  636. }
  637. });
  638. clearTimeout(intervalRefresh);
  639. intervalRefresh = setTimeout(function () {
  640. TaskList[0].ContentNew = main.changeStringToView(TaskList[0].Content);
  641. that.setData({
  642. TaskInfo: TaskList[0],
  643. });
  644. }, 1000);
  645. for (var i = 1; i < this.data.TaskInfo.ContentNew.Field.length; i++) {
  646. for (var j = 0; j < this.data.TaskInfo.ContentNew.Field[i].length; j++) {
  647. if (this.data.TaskInfo.ContentNew.Field[i][j].Type == "image") {
  648. this.data.TaskInfo.ContentNew.Field[i][j].Url = this.data.TaskInfo.ContentNew.Field[i][j].Content;
  649. }
  650. }
  651. }
  652. this.setData({
  653. TaskInfo: this.data.TaskInfo,
  654. });
  655. },
  656. onClose:function(){
  657. wx.navigateBack({
  658. delta: 1,
  659. });
  660. },
  661. onShareAppMessage: function () {
  662. return {
  663. title: app.globalData.ShareTitle,
  664. path: app.globalData.SharePath + '?UserID=' + app.globalData.userInfo.UserID,
  665. imageUrl: app.globalData.ShareImage,
  666. }
  667. },
  668. });