| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- import tickleBehavior, {
- getTickleContext,
- } from "../../../../core/behavior/tickle.behavior";
- import DictionariesBehavior from "../../../../core/behavior/dictionaries.behavior";
- import PageContainerBehavior from "../../../../core/behavior/page-container.behavior";
- import { PageLoadBehavior } from "../../../../core/behavior/page-loading.behavior";
- import { getUserInfoMethod, updateUserInfoMethod } from "../../request";
- // module/user/pages/user-edit/user-edit.ts
- Component({
- behaviors: [
- PageContainerBehavior,
- PageLoadBehavior<App.Patient.Model>(getUserInfoMethod),
- DictionariesBehavior,
- tickleBehavior,
- ],
- lifetimes: {
- attached() {},
- },
- properties: {},
- data: {
- model: null as App.Patient.Model | null,
- dirty: false,
- },
- methods: {
- async onSubmit(event: WechatMiniprogram.FormSubmit) {
- const submitBtn = this.selectComponent("#submitBtn");
- this.setData({ dirty: true });
- const data = { ...this.data.model, ...event.detail.value };
- if (!data.patientId) data.patientId = wx.getStorageSync("patientId");
- // 表单验证
- if (!data.sex) {
- if (submitBtn) submitBtn.resetState();
- }
- if (data.sex.toString() === "1" && !data.womenSpecialPeriod) {
- if (submitBtn) submitBtn.resetState();
- return getTickleContext
- .call(this)
- .showWarnMessage("请至少选择一项女性特殊期");
- }
- if (!data.height) {
- if (submitBtn) submitBtn.resetState();
- return getTickleContext.call(this).showWarnMessage("请填写身高");
- }
- if (!data.weight) {
- if (submitBtn) submitBtn.resetState();
- return getTickleContext.call(this).showWarnMessage("请填写体重");
- }
- try {
- await updateUserInfoMethod(<any>data)
- .then(() => wx.navigateBack())
- .then(() => {
- this.getOpenerEventChannel().emit("update2", event.detail.value);
- })
- .catch((error) => {
- // 请求失败时恢复按钮状态
- if (submitBtn) {
- submitBtn.resetState();
- }
- getTickleContext.call(this).showWarnMessage(error.errMsg);
- });
- } catch (error) {
- if (submitBtn) submitBtn.resetState();
- getTickleContext.call(this).showWarnMessage(error.errMsg);
- }
- },
- },
- });
|