微信小程序
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

add.js 6.6 KiB

3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
3年前
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257
  1. // pages/project/add/add.js
  2. import * as UTIL from '../../../utils/util.js';
  3. import * as API from '../../../utils/API.js';
  4. const app = getApp();
  5. Page({
  6. /**
  7. * 页面的初始数据
  8. */
  9. data: {
  10. isIPX: app.globalData.isIPX,
  11. showStartTime:false,
  12. showEndTime:false,
  13. ynProjcetStatusOptions:[],
  14. form:{},
  15. id:"",
  16. ynProjcetStatusindex:0,
  17. status:0,
  18. },
  19. /**
  20. * 生命周期函数--监听页面加载
  21. */
  22. onLoad(options) {
  23. if(options.id!=null&&options.id!=""){
  24. let that = this
  25. this.setData({id:options.id})
  26. UTIL.httpRequest(API.URL_GET_PROJECTGET + this.data.id, {method:'GET'}, {
  27. success: (res) => {
  28. this.setData({'form':res.data})
  29. UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'yn_projcet_status', {method:'GET'}, {
  30. success: (r) => {
  31. if(r.data.length>0){
  32. that.setData({
  33. ynProjcetStatusOptions:r.data,
  34. })
  35. r.data.map((rr,ind) => {
  36. if(rr.dictValue == res.data.ynProjcetStatus){
  37. that.setData({'ynProjcetStatusindex':ind})
  38. }
  39. })
  40. }
  41. }
  42. })
  43. }
  44. })
  45. }else{
  46. let that = this
  47. UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'yn_projcet_status', {method:'GET'}, {
  48. success: (r) => {
  49. if(r.data.length>0){
  50. that.setData({
  51. ynProjcetStatusOptions:r.data,
  52. 'form.ynProjcetStatus':r.data[0].dictValue
  53. })
  54. }
  55. }
  56. })
  57. }
  58. },
  59. onConfirmStartTime(e){
  60. let data = this.getNewDate(new Date(e.detail.value));
  61. this.setData({'form.startTime':data});
  62. },
  63. onConfirmEndTime(e){
  64. let data = this.getNewDate(new Date(e.detail.value));
  65. this.setData({'form.endTime':data});
  66. },
  67. onConfirmynProjcetStatus (e) {
  68. let obj = e.detail.value;
  69. this.setData({
  70. 'form.ynProjcetStatus':this.data.ynProjcetStatusOptions[obj].dictValue,
  71. 'ynProjcetStatusindex':obj
  72. })
  73. },
  74. getNewDate(date){
  75. //date是传过来的时间戳,注意需为13位,10位需*1000
  76. //也可以不传,获取的就是当前时间
  77. var time
  78. if(date){
  79. time = new Date(date);
  80. }else{
  81. time = new Date();
  82. }
  83. var year= time.getFullYear() //年
  84. var month = ("0" + (time.getMonth() + 1)).slice(-2); //月
  85. var day = ("0" + time.getDate()).slice(-2); //日
  86. var mydate = year + "-" + month + "-" + day;
  87. return mydate
  88. },
  89. back:function(){
  90. wx.navigateBack({
  91. delta: 1
  92. })
  93. },
  94. closeBox(even){
  95. this.setData({
  96. [even.currentTarget.dataset.name]:false
  97. })
  98. },
  99. openBox(even){
  100. this.setData({
  101. [even.currentTarget.dataset.name]:true
  102. })
  103. },
  104. onConfirmTime(event){
  105. this.setData({
  106. [event.currentTarget.dataset.name]: false,
  107. [event.currentTarget.dataset.value]: UTIL.formatDate(event.detail),
  108. });
  109. },
  110. onConfirmYn(event) {
  111. this.setData({
  112. [event.currentTarget.dataset.name]: false,
  113. [event.currentTarget.dataset.value]: event.detail.value.dictValue,
  114. [event.currentTarget.dataset.value+'Text']: event.detail.value.dictLabel,
  115. });
  116. },
  117. goSubmit(){
  118. if(this.data.form.projectName===''||this.data.form.projectName==null){ //项目名称
  119. UTIL.showToastNoneIcon('请填写项目名称!');
  120. return false;
  121. }else if(this.data.form.projectContractor===''||this.data.form.projectContractor==null){ //合同承建方
  122. UTIL.showToastNoneIcon('请输入合同承建方!');
  123. return false;
  124. }else if(this.data.form.startTime===''||this.data.form.startTime==null){ //开工日期
  125. UTIL.showToastNoneIcon('请选择开工日期!');
  126. return false;
  127. }else if(this.data.form.endTime===''||this.data.form.endTime==null){ //竣工日期
  128. UTIL.showToastNoneIcon('请输入竣工日期!');
  129. return false;
  130. }else if(this.data.form.projectAmount === ''||this.data.form.projectAmount==null){//合共价款
  131. UTIL.showToastNoneIcon('请输入收票单位!');
  132. return false;
  133. }else if(this.data.form.ynProjcetStatus === ''||this.data.form.ynProjcetStatus==null){//工程状态
  134. UTIL.showToastNoneIcon('工程状态不能为空!');
  135. return false;
  136. }else if(this.data.status=='0'){
  137. this.setData({'status':1})
  138. var that = this ;
  139. let data = that.data.form;
  140. data.method = 'POST';
  141. if(that.data.form.id==""||that.data.form.id==null){
  142. UTIL.httpRequest(API.URL_GET_PROJECTADD, data, {
  143. success: (res) => {
  144. wx.showToast({
  145. title: "新增成功!",
  146. duration: 2000,
  147. icon:"success"
  148. })
  149. setTimeout(function(){
  150. wx.navigateBack({
  151. delta:1
  152. })
  153. },2000)
  154. },
  155. fail: function (response) {
  156. if (typeof fail === FUNCTION_TEXT) {
  157. fail(handleFail(response));
  158. } else {
  159. showToastNoneIcon(API.MSG_FAIL_HTTP);
  160. }
  161. this.setData({'status':0})
  162. },
  163. complete: function (response) {
  164. this.setData({'status':0})
  165. wx.hideNavigationBarLoading();
  166. }
  167. })
  168. }else{
  169. UTIL.httpRequest(API.URL_POST_PROJECTUPDATE, data, {
  170. success: (res) => {
  171. wx.showToast({
  172. title: "修改成功!",
  173. duration: 2000,
  174. icon:"success"
  175. })
  176. setTimeout(function(){
  177. wx.navigateBack({
  178. delta:1
  179. })
  180. },2000)
  181. },
  182. fail: function (response) {
  183. if (typeof fail === FUNCTION_TEXT) {
  184. fail(handleFail(response));
  185. } else {
  186. showToastNoneIcon(API.MSG_FAIL_HTTP);
  187. }
  188. this.setData({'status':0})
  189. },
  190. complete: function (response) {
  191. this.setData({'status':0})
  192. wx.hideNavigationBarLoading();
  193. }
  194. })
  195. }
  196. }
  197. },
  198. onChange(event){
  199. this.setData({
  200. [event.currentTarget.dataset.value]: event.detail,
  201. })
  202. },
  203. /**
  204. * 生命周期函数--监听页面初次渲染完成
  205. */
  206. onReady() {
  207. },
  208. /**
  209. * 生命周期函数--监听页面显示
  210. */
  211. onShow() {
  212. },
  213. /**
  214. * 生命周期函数--监听页面隐藏
  215. */
  216. onHide() {
  217. },
  218. /**
  219. * 生命周期函数--监听页面卸载
  220. */
  221. onUnload() {
  222. },
  223. /**
  224. * 页面相关事件处理函数--监听用户下拉动作
  225. */
  226. onPullDownRefresh() {
  227. },
  228. /**
  229. * 页面上拉触底事件的处理函数
  230. */
  231. onReachBottom() {
  232. },
  233. /**
  234. * 用户点击右上角分享
  235. */
  236. onShareAppMessage() {
  237. }
  238. })