| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392 |
- let _Http = getApp().globalData.http,
- count = null;
- Page({
- data: {
- loading: false,
- showAll: false,
- content: {
- sa_orderid: 0
- },
- disabled: true,
- sa_saleareaid: '',
- type: ''
- },
- onLoad(options) {
- let type = '',
- hrid = '';
- if (options.type) type = options.type;
- let form = [{
- label: "购货类型",
- error: false,
- errMsg: "",
- type: "option",
- optionNmae: "purchasetype",
- optionType: "radio", //复选 radio 单选
- value: "",
- placeholder: "购货类型",
- valueName: "shoppingtype",
- checking: "base",
- required: true
- }, {
- label: "交货日期",
- error: false,
- errMsg: "",
- type: "date",
- start: '',
- value: '',
- placeholder: "交货日期",
- valueName: "deliverydate",
- checking: "base",
- required: false,
- }, {
- label: "业务员",
- error: false,
- errMsg: "",
- type: "route",
- url: "/prsx/select/saler/index",
- value: "",
- placeholder: "业务员",
- valueName: "saler_hrid",
- checking: "base",
- required: true,
- params: {
- "content": {
- "sa_agentsid": 0, //经销商订单时传经销商id
- "pageNumber": 1,
- "pageSize": 20,
- "where": {
- "condition": ""
- }
- },
- "id": 2025102815162702,
- },
- query: "&radio=true",
- interrupt: true,
- disabled: true
- }, {
- label: "营销区域",
- error: false,
- errMsg: "",
- type: "selector",
- range: [],
- rangeKey: "areaname",
- selectKey: "areaname",
- rangeIndex: "",
- value: "",
- placeholder: "营销区域",
- valueName: "sa_saleareaid",
- required: true, //必填
- disabled: true
- }, {
- label: "备注",
- error: false,
- errMsg: "",
- type: "textarea",
- value: "",
- placeholder: "备注",
- valueName: "remarks",
- checking: "base",
- required: false
- }]
- if (type == '医院订单') form.unshift({
- label: "医院",
- error: false,
- errMsg: "",
- type: "route",
- url: "/prsx/select/hospital/index",
- value: "",
- placeholder: "医院",
- valueName: "sa_customersid",
- checking: "base",
- required: true,
- params: {
- "content": {
- "isExport": 0,
- "pageNumber": 1,
- "pageSize": 20,
- "where": {
- "condition": ""
- }
- },
- "id": 2025102814083902,
- },
- query: "&radio=true",
- required: true,
- interrupt: true,
- }, {
- label: "科室",
- error: false,
- errMsg: "",
- type: "route",
- url: "/prsx/select/department/index",
- value: "",
- placeholder: "科室",
- valueName: "sa_hospitaldepid",
- checking: "base",
- required: true,
- params: {
- "content": {
- "sa_customersid": 0, //经销商订单时传经销商id
- "pageNumber": 1,
- "pageSize": 20,
- "where": {
- "condition": ""
- }
- },
- "id": 2025102310143002,
- },
- query: "&radio=true",
- interrupt: true,
- disabled: true
- }, {
- label: "经销商",
- error: false,
- errMsg: "",
- type: "route",
- url: "/prsx/select/firm/index",
- value: "",
- params: {
- id: 2025102814092602,
- "content": {
- "pageSize": 20,
- "pageNumber": 1,
- "sa_hospitaldepid": 0,
- "where": {
- "condition": ""
- }
- },
- },
- query: "&radio=true",
- placeholder: "选择经销商",
- valueName: "sa_agentsid",
- checking: "base",
- required: options.type == '经销商订单',
- interrupt: options.type == '经销商订单',
- disabled: options.type == '医院订单'
- })
- if (type == '经销商订单') form.unshift({
- label: "经销商",
- error: false,
- errMsg: "",
- type: "route",
- url: "/prsx/select/firm/index",
- value: "",
- params: {
- id: 2025102814092602,
- "content": {
- "pageSize": 20,
- "pageNumber": 1,
- "sa_customersid": 0,
- "where": {
- "condition": ""
- }
- },
- },
- query: "&radio=true",
- placeholder: "选择经销商",
- valueName: "sa_agentsid",
- checking: "base",
- required: options.type == '经销商订单',
- interrupt: options.type == '经销商订单',
- disabled: options.type == '医院订单'
- }, {
- label: "科室",
- error: false,
- errMsg: "",
- type: "route",
- url: "/prsx/select/department/index",
- value: "",
- placeholder: "科室",
- valueName: "sa_hospitaldepid",
- checking: "base",
- required: true,
- params: {
- "content": {
- "sa_agentsid": 0, //经销商订单时传经销商id
- "pageNumber": 1,
- "pageSize": 20,
- "where": {
- "condition": ""
- }
- },
- "id": 2025111909582402,
- },
- query: "&radio=true",
- interrupt: true,
- disabled: true
- })
- if (hrid) {
- _Http.basic({
- "method": "query_hrMain",
- "classname": "webmanage.hr.hr",
- "content": {
- hrid
- },
- }).then(res => {
- if (res.code != 1) return;
- let obj = form.find(v => v.label == '营销区域')
- obj.range = res.data.salearea;
- if (obj.range.length == 1) obj.value = obj.range[0].areaname;
- obj.disabled = false;
- this.setData({
- form
- })
- })
- }
- this.setData({
- form,
- type
- })
- getApp().globalData.Language.getLanguagePackage(this, options.data ? '编辑' + type : '新建' + type);
- },
- interrupt(e) {
- const {
- data,
- form,
- temporary
- } = e.detail;
- console.log(data, form, temporary)
- if (temporary.item.label == '业务员') {
- form.find(v => v.label == '业务员').value = [data.item.name, [data.item.hrid]];
- // form.find(v => v.label == '业务员').value = data.value;
- let obj = form.find(v => v.label == '营销区域')
- console.log(data.item, 'data.item')
- obj.value = data.item.areaname;
- this.setData({
- sa_saleareaid: data.item.sa_saleareaid
- })
- wx.navigateBack()
- } else if (temporary.item.label == '医院') {
- form.find(v => v.label == '医院').value = data.value;
- let leader = data.item.leader[0];
- let obj1 = form.find(v => v.label == '业务员')
- obj1.value = [leader.name, ['']]
- let obj = form.find(v => v.label == '营销区域')
- obj.value = data.item.areaname;
- obj.range = [{
- areaname: data.item.areaname,
- sa_saleareaid: ""
- }];
- let obj2 = form.find(v => v.label == '经销商')
- obj2.value = '';
- let obj3 = form.find(v => v.label == '科室')
- obj3.params.content.sa_customersid = data.id[0];
- obj3.value = '';
- obj3.disabled = false;
- // let obj3 = form.find(v => v.label == '合同')
- // obj3.params.content.sa_customersid = data.id[0];
- // obj3.disabled = false;
- // obj3.value = '';
- wx.navigateBack()
- } else if (temporary.item.label == '经销商') {
- form.find(v => v.label == '经销商').value = data.value;
- let obj = form.find(v => v.label == '业务员')
- obj.params.content.sa_agentsid = data.id[0]
- obj.disabled = false;
- if (this.data.type == '经销商订单') {
- let obj3 = form.find(v => v.label == '科室')
- obj3.params.content.sa_agentsid = data.id[0];
- obj3.value = '';
- obj3.disabled = false;
- // let obj3 = form.find(v => v.label == '合同')
- // obj3.params.content.sa_agentsid = data.id[0];
- // obj3.disabled = false;
- // obj3.value = '';
- }
- wx.navigateBack()
- } else if (temporary.item.label == '科室') {
- if (this.data.type == '医院订单') {
- form.find(v => v.label == '科室').value = data.value;
- let obj2 = form.find(v => v.label == '经销商')
- obj2.params.content.sa_hospitaldepid = data.id[0];
- obj2.value = ''
- obj2.disabled = false
- wx.navigateBack()
- } else {
- form.find(v => v.label == '科室').value = data.value;
- wx.navigateBack()
- }
- }
- this.selectComponent("#Form").confirm();
- this.setData({
- form
- })
- },
- /* 表单必填项是否完成 */
- onConfirm({
- detail
- }) {
- this.setData({
- disabled: detail
- })
- },
- // 是否显示全部
- onChange({
- detail
- }) {
- this.setData({
- showAll: detail
- })
- },
- async submit() {
- this.setData({
- loading: true
- })
- let data = this.selectComponent("#Form").submit(),
- content = this.data.content
- data.sa_agentsid = data.sa_agentsid.length ? data.sa_agentsid[1][0] : 0
- data.saler_hrid = data.saler_hrid.length ? data.saler_hrid[1][0] : 0
- data.sa_hospitaldepid = data.sa_hospitaldepid.length ? data.sa_hospitaldepid[1][0] : 0
- try {
- data.sa_customersid = data.sa_customersid.length ? data.sa_customersid[1][0] : 0
- } catch (error) {
- }
- // data.sa_saleareaid = this.data.form.find(v => v.label == '营销区域').range.find(v => v.areaname == data.sa_saleareaid).sa_saleareaid || '';
- data.sa_saleareaid = this.data.sa_saleareaid
- // data.sa_contractid = data.sa_contractid.length ? data.sa_contractid[1][0] : 0
- _Http.basic({
- "id": 20221108111402,
- "content": {
- ...content,
- ...data,
- }
- }).then(res => {
- this.setData({
- loading: false
- })
- wx.showToast({
- title: res.code != '1' ? res.msg : '保存成功',
- icon: "none",
- mask: res.code == '1'
- })
- if (res.code != '1') return;
- getCurrentPages().forEach(v => {
- if (v.route == 'prsx/orderForm/detail') v.getDetail()
- })
- setTimeout(() => {
- if (content.sa_orderid == 0) {
- wx.redirectTo({
- url: '/prsx/orderForm/detail?id=' + res.data.sa_orderid,
- })
- } else {
- wx.navigateBack()
- }
- }, 300)
- })
- },
- })
|