| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178 |
- const _Http = getApp().globalData.http,
- getTime = require("../../utils/getTime");
- Page({
- data: {
- loading: false,
- showAll: false,
- disabled: false,
- form: [{
- label: "是否外包",
- error: false,
- errMsg: "",
- hint: "",
- type: "radio",
- value: 0,
- interrupt: true,
- radioList: [{
- id: 1,
- name: "是"
- }, {
- id: 0,
- name: "否"
- }],
- valueName: "isout", //绑定的字段名称
- required: true, //必填
- checking: `base`,
- }],
- sa_workorderid: 0,
- users: []
- },
- onLoad(options) {
- getApp().globalData.Language.getLanguagePackage(this, '接单');
- let form = this.data.form,
- data = getCurrentPages().find(v => v.__route__ == 'E-service/workOrder/detail').data.detail;
- form = form.map(v => {
- switch (v.valueName) {
- default:
- v.value = data[v.valueName]
- break;
- }
- return v
- })
- let leader = '';
- try {
- leader = data.team.find(v => v.isleader).userid || 0
- } catch (error) {
- }
- this.setData({
- form,
- sa_workorderid: data.sa_workorderid,
- leader
- })
- },
- async interrupt({
- detail
- }) {
- if (detail.data.valueName == "isout") {
- detail.form[detail.form.findIndex(v => v.valueName == 'isout')] = detail.data;
- if (detail.data.value == 1) {
- this.setData({
- form: detail.form
- })
- let users = this.data.users;
- if (users.length == 0) await _Http.basic({
- id: 20230213143003,
- content: {
- pageSize: 9999
- }
- }).then(res => {
- console.log("服务人员", res)
- if (res.code != '1') return wx.showToast({
- title: res.msg,
- icon: "none"
- })
- users = res.data;
- })
- if (users.length) {
- let leaderdata = users.find(v => v.userid == this.data.leader)
- detail.form = detail.form.concat([{
- label: "服务负责人",
- error: false,
- errMsg: "",
- hint: "",
- type: "radio",
- value: leaderdata.userid || '',
- interrupt: true,
- radioList: users.map(v => {
- v.id = v.userid
- return v
- }),
- valueName: "userid", //绑定的字段名称
- required: true, //必填
- checking: `base`,
- }, {
- label: "服务负责人电话",
- error: false,
- errMsg: "",
- hint: "",
- type: "number",
- value: leaderdata.phonenumber || '',
- interrupt: true,
- valueName: "phonenumber111", //绑定的字段名称
- required: false, //必填
- checking: `base`,
- disabled: true
- }]);
- this.setData({
- form: detail.form
- })
- }
- } else {
- this.setData({
- form: detail.form.filter(v => v.valueName == 'isout')
- })
- }
- } else if (detail.data.valueName == "userid") {
- detail.form[detail.form.findIndex(v => v.valueName == 'userid')] = detail.data;
- detail.form[detail.form.findIndex(v => v.valueName == 'phonenumber111')].value = detail.data.radioList.find(v => v.id == detail.data.value).phonenumber || detail.data.radioList.find(v => v.id == detail.data.value).userphonenumber;
- this.setData({
- form: detail.form,
- leader: detail.data.value
- })
- }
- },
- submit() {
- this.setData({
- loading: true
- })
- let content = {
- sa_workorderid: this.data.sa_workorderid,
- ...this.selectComponent("#Form").submit()
- };
- _Http.basic({
- "id": 20230210101103,
- content
- }).then(res => {
- this.setData({
- loading: false
- })
- console.log("确认信息", res)
- if (res.code == 1) {
- getCurrentPages().find(v => v.__route__ == 'E-service/workOrder/detail').getDetail();
- wx.navigateBack({
- success() {
- wx.showToast({
- title: getApp().globalData.Language.getMapText('接单成功'),
- icon: "none",
- mask: true
- })
- }
- });
- } else {
- wx.showToast({
- title: res.code != '1' ? res.msg : getApp().globalData.Language.getMapText('保存成功'),
- icon: "none",
- mask: true
- })
- }
- })
- },
- // 是否显示全部
- onChange({
- detail
- }) {
- this.setData({
- showAll: detail
- })
- },
- /* 表单必填项是否完成 */
- onConfirm({
- detail
- }) {
- this.setData({
- disabled: detail
- })
- }
- })
|