提交 | 用户 | age
|
3fc241
|
1 |
|
S |
2 |
const getSaveData = async (_this:any) =>{
|
|
3 |
let formId: any = _this.data.formId;
|
|
4 |
let doccode = _this.data.doccode;
|
|
5 |
let [error, result] = await wx.$utils.to(
|
|
6 |
wx.$http.request({
|
|
7 |
url:`/shopping/panicBuying.do?m=getPanicBuyingDetail`,
|
|
8 |
data:{
|
|
9 |
doccode,
|
|
10 |
isEdit:true,
|
|
11 |
SellerOpenId:wx.globalData.OpenId
|
|
12 |
}
|
|
13 |
})
|
|
14 |
)
|
|
15 |
if (error){
|
|
16 |
console.log(error);
|
|
17 |
return;
|
|
18 |
}
|
|
19 |
console.log(result);
|
|
20 |
let data = result.list[0];
|
|
21 |
let formData:any = {
|
|
22 |
promotionsTitle: data.title,
|
|
23 |
promotionDescription: data.description,
|
|
24 |
startTime: data.effectiveStartDate,
|
|
25 |
endTime: data.effectiveEndDate,
|
|
26 |
coverImageList: (data.coverImageUrl&&_this.getCoverImageList(data))||[],
|
|
27 |
// imagesList: (data.imagesUrl.length>0&&_this.getImagesList(data))||[],
|
|
28 |
imagesList: data.imagesUrl,
|
|
29 |
coverImage: data.coverImage,
|
|
30 |
images: data.images,
|
|
31 |
freeId:data.freeId,
|
|
32 |
};
|
|
33 |
if (formId==710802){
|
|
34 |
formData.originalPrice=data.originalPrice;
|
|
35 |
formData.flashSalePrice= data.salesPrice;
|
|
36 |
formData.flashSaleTotal= data.quantity;
|
|
37 |
formData.flashSaleLimit= data.restrictBuyingQuantity;
|
|
38 |
}
|
|
39 |
if (formId==710803){
|
|
40 |
formData.originalPrice=data.salesPrice;
|
|
41 |
}
|
|
42 |
if (formId==710804){
|
|
43 |
formData.originalPrice=data.originalPrice;
|
|
44 |
formData.flashSalePrice= data.salesPrice;
|
|
45 |
formData.flashSaleTotal= data.numberOfTeam;
|
|
46 |
}
|
|
47 |
_this.setData({
|
|
48 |
...formData,
|
|
49 |
coverImageUrl:data.coverImageUrl,
|
|
50 |
// [`effectiveStartDate`]: data.effectiveStartDate,
|
|
51 |
// [`effectiveEndDate`]: data.effectiveEndDate,
|
|
52 |
// [`freeId`]: data.freeId,
|
|
53 |
// [`title`]: data.title,
|
|
54 |
// [`originalPrice`]: data.originalPrice,
|
|
55 |
// [`salesPrice`]: data.salesPrice,
|
|
56 |
// [`quantity`]: data.quantity,
|
|
57 |
// [`restrictBuyingQuantity`]: data.restrictBuyingQuantity,
|
|
58 |
// [`description`]: data.description,
|
|
59 |
sellerList:result.sellerList,
|
|
60 |
storeList:result.storeList,
|
|
61 |
status:data.panicBuyingStatus,
|
|
62 |
delivery:{
|
|
63 |
freeId:data.freeId,
|
|
64 |
freeName:data.freeName,
|
|
65 |
isRequiredAddress:data.isRequiredAddress,
|
|
66 |
transCosts:data.transCosts,
|
|
67 |
}
|
|
68 |
});
|
|
69 |
console.log('配送数据。。。',_this.data.delivery);
|
|
70 |
wx.setNavigationBarTitle({
|
|
71 |
title: data.title
|
|
72 |
})
|
|
73 |
}
|
|
74 |
|
|
75 |
const postFormData = async (_this:any,data:object) =>{
|
|
76 |
let [error, res] = await wx.$utils.to(
|
|
77 |
wx.$http.request({
|
|
78 |
url:'/shopping/panicBuying.do?m=saveDocCode',
|
|
79 |
data,
|
|
80 |
method:'POST'
|
|
81 |
})
|
|
82 |
)
|
|
83 |
if (error) {
|
|
84 |
console.log(error);
|
|
85 |
return false;
|
|
86 |
}
|
|
87 |
console.log(res);
|
|
88 |
if (res.state === 'success') {
|
|
89 |
wx.showToast({
|
|
90 |
title: '成功',
|
|
91 |
duration: 2000
|
|
92 |
})
|
|
93 |
_this.setData({
|
|
94 |
doccode:res.DocCode
|
|
95 |
})
|
|
96 |
// console.log('活动单号',_this.data.formData);
|
|
97 |
}
|
|
98 |
if (res.state === 'failed'&&res.sellerCheckedBalance>0) {
|
|
99 |
_this.setData({
|
|
100 |
sellerUnCheckedNames: res.sellerUnCheckedNames,
|
|
101 |
isShowDialog: true
|
|
102 |
})
|
|
103 |
}
|
|
104 |
return res.state === 'success';
|
|
105 |
}
|
|
106 |
const promotionsSubmitHandler = async (_this:any,validatorInstance:any) =>{
|
|
107 |
// let {_this,validatorInstance} = obj;
|
|
108 |
let formData: any = _this.data;
|
|
109 |
let type = {
|
|
110 |
710802: 1, //秒杀
|
|
111 |
710803: 2, //报名
|
|
112 |
710804: 3, //团购
|
|
113 |
}
|
|
114 |
let timeQuantum = _this.selectComponent('#time-quantum');
|
|
115 |
let sellerEdit = _this.selectComponent('#seller-edit');
|
|
116 |
let storeEdit = _this.selectComponent('#store-edit');
|
|
117 |
let fileUploader = _this.selectComponent('#file-uploader');
|
|
118 |
let fileUploaderMultiple = _this.selectComponent('#file-uploader-multiple');
|
|
119 |
|
|
120 |
let checkTransCosts = true;
|
|
121 |
let transCosts = 0;
|
|
122 |
if (formData.formId==710802||formData.formId==710804){
|
|
123 |
let deliveryMethod = _this.selectComponent('#delivery-method');
|
|
124 |
if (deliveryMethod.data.isRequiredAddress){
|
|
125 |
checkTransCosts = deliveryMethod.checkFields();
|
|
126 |
transCosts = Number(deliveryMethod.data.transCosts);
|
|
127 |
}
|
|
128 |
}
|
|
129 |
|
|
130 |
console.log(timeQuantum);
|
|
131 |
|
|
132 |
let checkStartTime = timeQuantum.checkTime("startTime");
|
|
133 |
let checkEndTime = timeQuantum.checkTime("endTime");
|
|
134 |
let checkCoverImage = fileUploader.checkImages("coverImage", "请上传一张封面图");
|
|
135 |
// let checkImages = fileUploaderMultiple.checkImages("images", "请至少上传一张图片");
|
|
136 |
let checkAllData = validatorInstance.checkAllData();
|
|
137 |
// if (_this.data.goodsImgList.length < 1) {
|
|
138 |
// console.log('请上传产品图片');
|
|
139 |
// }
|
|
140 |
let sellerList = sellerEdit.getSellerList();
|
|
141 |
if (sellerList.length<1) {
|
|
142 |
wx.showToast({
|
|
143 |
title: '请选择营销人员',
|
|
144 |
icon: 'none',
|
|
145 |
duration: 2000
|
|
146 |
})
|
|
147 |
return
|
|
148 |
}
|
|
149 |
let storeList = storeEdit.getSelectedStoreIdList();
|
|
150 |
console.log('待提交的门店id',storeList);
|
|
151 |
let checkDefaultSeller = sellerEdit.checkDefaultSeller();
|
|
152 |
if (!checkDefaultSeller) {
|
|
153 |
wx.showToast({
|
|
154 |
title: '请选择默认营销人员',
|
|
155 |
icon: 'none',
|
|
156 |
duration: 2000
|
|
157 |
})
|
|
158 |
return
|
|
159 |
}
|
|
160 |
console.log('checkDefaultSeller',checkDefaultSeller);
|
|
161 |
let checkArr = [checkTransCosts,checkStartTime,checkEndTime,checkCoverImage,checkAllData];
|
|
162 |
let data = {} as any;
|
|
163 |
if (checkArr.every((item)=>{
|
|
164 |
return item
|
|
165 |
})){
|
|
166 |
console.log('....提交成功');
|
|
167 |
let coverImage = fileUploader.getCoverImageUnid();
|
|
168 |
let coverImageUrl = fileUploader.getImgList()[0].url||'';
|
|
169 |
_this.setData({
|
|
170 |
coverImageUrl
|
|
171 |
})
|
|
172 |
let images = fileUploaderMultiple.getImagesUnid();
|
|
173 |
console.log(coverImage,images,coverImageUrl);
|
|
174 |
let selectedTime = timeQuantum.getSelectedTime();
|
|
175 |
data = {
|
|
176 |
docCode: formData.doccode, //活动单号,新建活动时为空值,编辑时需要doccode值
|
|
177 |
formId: formData.formId, //功能号:秒杀 710802 , 报名邀约 710803 ,团购 710804
|
|
178 |
docStatus:100, //单据状态: 0 保存(起草) ,100 发布
|
|
179 |
coverImage,
|
|
180 |
images,
|
|
181 |
// ..._this.data.formData,
|
|
182 |
|
|
183 |
effectiveStartDate: formData.startTime || selectedTime.startTime,
|
|
184 |
effectiveEndDate: formData.endTime || selectedTime.endTime,
|
|
185 |
freeId: formData.freeId,
|
|
186 |
title: formData.promotionsTitle,
|
|
187 |
description: formData.promotionDescription||'',
|
|
188 |
storeList,
|
|
189 |
sellerList,
|
|
190 |
}
|
|
191 |
if (formData.formId==710802){
|
|
192 |
data.transCosts = transCosts;
|
|
193 |
data.originalPrice=Number(formData.originalPrice);
|
|
194 |
data.quantity = Number(formData.flashSaleTotal);
|
|
195 |
data.salesPrice = Number(formData.flashSalePrice);
|
|
196 |
data.restrictBuyingQuantity= Number(formData.flashSaleLimit);
|
|
197 |
}
|
|
198 |
if (formData.formId==710803){
|
|
199 |
data.salesPrice = Number(formData.originalPrice);
|
|
200 |
}
|
|
201 |
if (formData.formId==710804){
|
|
202 |
data.transCosts = transCosts;
|
|
203 |
data.originalPrice=Number(formData.originalPrice);
|
|
204 |
data.salesPrice = Number(formData.flashSalePrice);
|
|
205 |
data.numberOfTeam= Number(formData.flashSaleTotal)
|
|
206 |
}
|
|
207 |
console.log('待发布数据',data);
|
|
208 |
if (!await postFormData(_this,data)) return;
|
|
209 |
if (_this.data.fromPage=='edit'){
|
|
210 |
wx.navigateBack();
|
|
211 |
} else{
|
|
212 |
wx.redirectTo({
|
|
213 |
// @ts-ignore
|
|
214 |
url:`../promotionsManageList/promotionsManageList?tab=${type[formData.formId]}`
|
|
215 |
})
|
|
216 |
}
|
|
217 |
} else {
|
|
218 |
console.log('还有错误未处理');
|
|
219 |
if (!checkCoverImage) {
|
|
220 |
wx.$utils.scrollToError('#file-uploader','请上传一张封面图')
|
|
221 |
return;
|
|
222 |
}
|
|
223 |
if (!checkAllData) {
|
|
224 |
let rules = validatorInstance.getRulers();
|
|
225 |
for (const rule of rules) {
|
|
226 |
// @ts-ignore
|
|
227 |
let errorMsg = _this.data[`${rule}Error`];
|
|
228 |
if (errorMsg){
|
|
229 |
wx.$utils.scrollToError(`#${rule}`,errorMsg)
|
|
230 |
break;
|
|
231 |
}
|
|
232 |
}
|
|
233 |
return;
|
|
234 |
}
|
|
235 |
if (!checkStartTime){
|
|
236 |
wx.$utils.scrollToError('#time-quantum','开始时间需小于结束时间');
|
|
237 |
}
|
|
238 |
|
|
239 |
}
|
|
240 |
}
|
|
241 |
|
|
242 |
const promotionsSaveHandler = async (_this:any) =>{
|
|
243 |
let formData: any = _this.data;
|
|
244 |
// let type = {
|
|
245 |
// 710802: 1, //秒杀
|
|
246 |
// 710803: 2, //报名
|
|
247 |
// 710804: 3, //团购
|
|
248 |
// }
|
|
249 |
let timeQuantum = _this.selectComponent('#time-quantum');
|
|
250 |
let sellerEdit = _this.selectComponent('#seller-edit');
|
|
251 |
let sellerList = sellerEdit.getSellerList();
|
|
252 |
let storeEdit = _this.selectComponent('#store-edit');
|
|
253 |
let storeList = storeEdit.getSelectedStoreIdList();
|
|
254 |
console.log('待提交的门店id',storeList);
|
|
255 |
let fileUploader = _this.selectComponent('#file-uploader');
|
|
256 |
let fileUploaderMultiple = _this.selectComponent('#file-uploader-multiple');
|
|
257 |
console.log('....提交成功');
|
|
258 |
let coverImage = fileUploader.getCoverImageUnid();
|
|
259 |
let images = fileUploaderMultiple.getImagesUnid();
|
|
260 |
|
|
261 |
let transCosts = 0;
|
|
262 |
if (formData.formId==710802||formData.formId==710804){
|
|
263 |
let deliveryMethod = _this.selectComponent('#delivery-method');
|
|
264 |
if (deliveryMethod.data.isRequiredAddress){
|
|
265 |
transCosts = Number(deliveryMethod.data.transCosts);
|
|
266 |
}
|
|
267 |
}
|
|
268 |
console.log(coverImage,images);
|
|
269 |
let selectedTime = timeQuantum.getSelectedTime();
|
|
270 |
let data:any = {
|
|
271 |
docCode: formData.doccode, //活动单号,新建活动时为空值,编辑时需要doccode值
|
|
272 |
formId: formData.formId, //功能号:秒杀 710802 , 报名邀约 710803 ,团购 710804
|
|
273 |
docStatus: 0, //单据状态: 0 保存(起草) ,100 发布
|
|
274 |
coverImage,
|
|
275 |
images,
|
|
276 |
// ..._this.data.formData,
|
|
277 |
|
|
278 |
effectiveStartDate: formData.startTime || selectedTime.startTime,
|
|
279 |
effectiveEndDate: formData.endTime || selectedTime.endTime,
|
|
280 |
freeId: formData.freeId,
|
|
281 |
title: formData.promotionsTitle,
|
|
282 |
description: formData.promotionDescription,
|
|
283 |
storeList,
|
|
284 |
sellerList,
|
|
285 |
}
|
|
286 |
if (formData.formId==710802){
|
|
287 |
data.transCosts = transCosts;
|
|
288 |
data.originalPrice=Number(formData.originalPrice)||0;
|
|
289 |
data.quantity = Number(formData.flashSaleTotal)||0;
|
|
290 |
data.salesPrice = Number(formData.flashSalePrice)||0;
|
|
291 |
data.restrictBuyingQuantity= Number(formData.flashSaleLimit)||0;
|
|
292 |
}
|
|
293 |
if (formData.formId==710803){
|
|
294 |
data.salesPrice = Number(formData.originalPrice)||0;
|
|
295 |
}
|
|
296 |
if (formData.formId==710804){
|
|
297 |
data.transCosts = transCosts;
|
|
298 |
data.originalPrice=Number(formData.originalPrice)||0;
|
|
299 |
data.salesPrice = Number(formData.flashSalePrice)||0;
|
|
300 |
data.numberOfTeam= Number(formData.flashSaleTotal)||0
|
|
301 |
}
|
|
302 |
console.log('待保存数据',data);
|
|
303 |
if (!await postFormData(_this,data)) return;
|
|
304 |
wx.showModal({
|
|
305 |
title: '提示',
|
|
306 |
content: '保存成功',
|
|
307 |
confirmText:'前往预览',
|
|
308 |
cancelText:'留在此处',
|
|
309 |
success (res) {
|
|
310 |
if (res.confirm) {
|
|
311 |
console.log('用户点击确定')
|
|
312 |
wx.redirectTo({
|
|
313 |
url:`/pages/detail/detail?from=promotionsDraft&doccode=${_this.data.doccode}`
|
|
314 |
})
|
|
315 |
} else if (res.cancel) {
|
|
316 |
console.log('用户点击取消')
|
|
317 |
}
|
|
318 |
}
|
|
319 |
})
|
|
320 |
return;
|
|
321 |
}
|
|
322 |
export {
|
|
323 |
promotionsSubmitHandler,
|
|
324 |
promotionsSaveHandler,
|
|
325 |
getSaveData
|
|
326 |
}
|