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

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