|
|
@@ -0,0 +1,342 @@
|
|
|
+let _Http = getApp().globalData.http,
|
|
|
+ count = null;
|
|
|
+
|
|
|
+Page({
|
|
|
+ data: {
|
|
|
+ loading: false,
|
|
|
+ showAll: false,
|
|
|
+ repetitionShow: false,
|
|
|
+ repetitionList: [],
|
|
|
+ sa_customersid: '',
|
|
|
+ content: {
|
|
|
+ sa_surgeryforecastid: 0,
|
|
|
+ sa_surgeryforecast_itemsid:0
|
|
|
+ },
|
|
|
+ disabled: true,
|
|
|
+ list: [],
|
|
|
+ formData: [], // 表单数据数组
|
|
|
+ isAdd: false,
|
|
|
+ isUpdate: false,
|
|
|
+ nowIndex: 0,
|
|
|
+ oldQty:0
|
|
|
+ },
|
|
|
+ async onLoad(options) {
|
|
|
+ let data = JSON.parse(options.data);
|
|
|
+ console.log(data, 'options.data')
|
|
|
+ this.data.content.sa_surgeryforecastid = data.sa_surgeryforecastid
|
|
|
+ this.data.sa_customersid = data.sa_customersid
|
|
|
+ this.setPreview(data, options.enterprisename);
|
|
|
+ let formData = [{
|
|
|
+ label: "手术类型",
|
|
|
+ id: 1,
|
|
|
+ error: false,
|
|
|
+ errMsg: "",
|
|
|
+ type: "option",
|
|
|
+ optionNmae: "operationtype",
|
|
|
+ optionType: "radio", //复选 radio 单选
|
|
|
+ value: '',
|
|
|
+ placeholder: "手术类型",
|
|
|
+ valueName: "type",
|
|
|
+ checking: "base",
|
|
|
+ required: true,
|
|
|
+ interrupt: true
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "预估手术量",
|
|
|
+ id: 1,
|
|
|
+ error: false,
|
|
|
+ errMsg: "",
|
|
|
+ type: "number",
|
|
|
+ value: '',
|
|
|
+ placeholder: "预估手术量",
|
|
|
+ valueName: "qty",
|
|
|
+ checking: "base",
|
|
|
+ required: true,
|
|
|
+ interrupt: true
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "医生",
|
|
|
+ id: 1,
|
|
|
+ error: false,
|
|
|
+ errMsg: "",
|
|
|
+ type: "route",
|
|
|
+ url: "/prsx/select/docter/index",
|
|
|
+ value: '',
|
|
|
+ placeholder: "医生",
|
|
|
+ valueName: "sa_doctorid",
|
|
|
+ checking: "base",
|
|
|
+ required: true,
|
|
|
+ params: {
|
|
|
+ "content": {
|
|
|
+ sa_customersid: data.sa_customersid,
|
|
|
+ "pageNumber": 1,
|
|
|
+ "pageSize": 20,
|
|
|
+ "where": {
|
|
|
+ "condition": ""
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "id": 2025102310134602,
|
|
|
+ },
|
|
|
+ query: "&radio=true",
|
|
|
+ interrupt: true,
|
|
|
+ required: false
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ this.setData({
|
|
|
+ loading: false,
|
|
|
+ detail: data,
|
|
|
+ formData: formData
|
|
|
+ })
|
|
|
+ this.getList(data, true)
|
|
|
+ getApp().globalData.Language.getLanguagePackage(this, options.data ? '编辑预估手术量' : '编辑预估手术量');
|
|
|
+
|
|
|
+ },
|
|
|
+ getList(data, init = false) {
|
|
|
+ let content = {
|
|
|
+ sa_surgeryforecastid: this.data.content.sa_surgeryforecastid
|
|
|
+ };
|
|
|
+ if (init) {
|
|
|
+ content.pageNumber = 1
|
|
|
+ content.pageTotal = 1
|
|
|
+ }
|
|
|
+ _Http.basic({
|
|
|
+ "id": 2025111316192502,
|
|
|
+ content
|
|
|
+ }).then(res => {
|
|
|
+ console.log('预估手术量明细', res)
|
|
|
+ if (res.code != '1') return wx.showToast({
|
|
|
+ title: res.data,
|
|
|
+ icon: "none"
|
|
|
+ });
|
|
|
+ this.setData({
|
|
|
+ "content.pageNumber": res.pageNumber + 1,
|
|
|
+ "content.pageTotal": res.pageTotal,
|
|
|
+ "content.total": res.total,
|
|
|
+ list: res.pageNumber == 1 ? res.data : this.data.list.concat(res.data)
|
|
|
+ })
|
|
|
+ })
|
|
|
+ },
|
|
|
+ insetr() {
|
|
|
+ // this.data.isAdd = true
|
|
|
+ this.setData({
|
|
|
+ isAdd: true,
|
|
|
+ nowIndex: 1
|
|
|
+ })
|
|
|
+ this.data.list.unshift({
|
|
|
+ doctorname: "",
|
|
|
+ hospitaldepname: "",
|
|
|
+ qty: '',
|
|
|
+ rowindex: 1,
|
|
|
+ sa_customersid: this.data.sa_customersid,
|
|
|
+ sa_doctorid: '',
|
|
|
+ sa_hospitaldepid: '',
|
|
|
+ sa_surgeryforecast_itemsid: 0,
|
|
|
+ sa_surgeryforecastid: this.data.content.sa_surgeryforecastid,
|
|
|
+ type: "",
|
|
|
+ })
|
|
|
+ this.data.list.forEach((item, index) => {
|
|
|
+ item.rowindex = index + 1
|
|
|
+ })
|
|
|
+ this.setData({
|
|
|
+ list: this.data.list
|
|
|
+ })
|
|
|
+ },
|
|
|
+ setPreview(res, enterprisename) {
|
|
|
+ /* 摘要信息 */
|
|
|
+ let briefs = [{
|
|
|
+ label: "医院",
|
|
|
+ value: enterprisename
|
|
|
+ }, {
|
|
|
+ label: "预估手术总量",
|
|
|
+ value: res.sumqty
|
|
|
+ }];
|
|
|
+ this.setData({
|
|
|
+ briefs
|
|
|
+ });
|
|
|
+ },
|
|
|
+ interrupt(e) {
|
|
|
+ console.log('修改111')
|
|
|
+ if (!this.data.isAdd || !this.data.isUpdate) {
|
|
|
+ this.data.isUpdate = true
|
|
|
+ this.setData({
|
|
|
+ isUpdate: this.data.isUpdate
|
|
|
+ })
|
|
|
+ }
|
|
|
+ const {
|
|
|
+ data,
|
|
|
+ form,
|
|
|
+ temporary
|
|
|
+ } = e.detail;
|
|
|
+ console.log(data, form, temporary, '获取的数据////')
|
|
|
+ console.log(e.detail, 'detail')
|
|
|
+ if (temporary.item.label == '医生') {
|
|
|
+ form.find(v => v.label == '医生').value = data.value;
|
|
|
+ wx.navigateBack()
|
|
|
+ }
|
|
|
+ this.selectComponent("#Form").confirm();
|
|
|
+ this.setData({
|
|
|
+ formData: e.detail.form
|
|
|
+ })
|
|
|
+ },
|
|
|
+ deleteItem(e) {
|
|
|
+ console.log(this.data.briefs.find(v => v.label == '预估手术总量').value)
|
|
|
+ console.log(e)
|
|
|
+ const {
|
|
|
+ item
|
|
|
+ } = e.currentTarget.dataset,
|
|
|
+ that = this;
|
|
|
+ if (item.sa_surgeryforecast_itemsid == 0) {
|
|
|
+ this.data.list.shift()
|
|
|
+ this.data.list.forEach((item, index) => {
|
|
|
+ item.rowindex = index + 1
|
|
|
+ })
|
|
|
+ this.setData({
|
|
|
+ list: this.data.list,
|
|
|
+ isAdd: false
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ if (this.data.isAdd) {
|
|
|
+ wx.showModal({
|
|
|
+ content: `请先完善当前添加功能再进行其他操作`,
|
|
|
+ complete: ({
|
|
|
+ confirm
|
|
|
+ })
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ let oldQty = item.qty
|
|
|
+ wx.showModal({
|
|
|
+ content: `是否确定删除该预估手术量`,
|
|
|
+ complete: ({
|
|
|
+ confirm
|
|
|
+ }) => {
|
|
|
+ if (confirm) _Http.basic({
|
|
|
+ "id": "2025111315465402",
|
|
|
+ "content": {
|
|
|
+ sa_surgeryforecast_itemsids: [item.sa_surgeryforecast_itemsid]
|
|
|
+ },
|
|
|
+ }).then(res => {
|
|
|
+ wx.showToast({
|
|
|
+ title: res.code == 1 ? '删除成功' : res.msg,
|
|
|
+ icon: "none"
|
|
|
+ })
|
|
|
+ if (res.code == 1) {
|
|
|
+ this.data.briefs.find(v => v.label == '预估手术总量').value = Number(this.data.briefs.find(v => v.label == '预估手术总量').value) - Number(oldQty)
|
|
|
+ this.setData({
|
|
|
+ briefs: this.data.briefs
|
|
|
+ })
|
|
|
+ that.getList(item, true)
|
|
|
+ setTimeout(() => {
|
|
|
+ getCurrentPages().forEach(v => {
|
|
|
+ //更新列表
|
|
|
+ if (v.selectComponent("#Surgery")) {
|
|
|
+ let page = v.selectComponent("#Surgery");
|
|
|
+ page.getList('', true)
|
|
|
+ };
|
|
|
+ })
|
|
|
+ }, 300)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ /* 表单必填项是否完成 */
|
|
|
+ onConfirm({
|
|
|
+ detail
|
|
|
+ }) {
|
|
|
+ this.setData({
|
|
|
+ disabled: detail
|
|
|
+ })
|
|
|
+ },
|
|
|
+ // 是否显示全部
|
|
|
+ onChange({
|
|
|
+ detail
|
|
|
+ }) {
|
|
|
+ this.setData({
|
|
|
+ showAll: detail
|
|
|
+ })
|
|
|
+ },
|
|
|
+ async submit() {
|
|
|
+ if (!this.data.disabled) {
|
|
|
+ this.setData({
|
|
|
+ loading: true
|
|
|
+ })
|
|
|
+ let data = this.selectComponent("#Form").submit(),
|
|
|
+ content = this.data.content
|
|
|
+ data.sa_doctorid = data.sa_doctorid.length ? data.sa_doctorid[1][0] : 0
|
|
|
+ _Http.basic({
|
|
|
+ "id": 2025111315454902,
|
|
|
+ "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;
|
|
|
+ this.setData({
|
|
|
+ nowIndex: 0,
|
|
|
+ isAdd: false
|
|
|
+ })
|
|
|
+ this.data.briefs.find(v => v.label == '预估手术总量').value = Number(this.data.briefs.find(v => v.label == '预估手术总量').value) + (Number(data.qty)-Number(this.data.oldQty))
|
|
|
+ this.setData({
|
|
|
+ briefs: this.data.briefs
|
|
|
+ })
|
|
|
+ getCurrentPages().forEach(v => {
|
|
|
+ switch (v.route) {
|
|
|
+ case 'prsx/hospital/detail':
|
|
|
+ v.getDetail()
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ setTimeout(() => {
|
|
|
+ getCurrentPages().forEach(v => {
|
|
|
+ //更新列表
|
|
|
+ if (v.selectComponent("#Surgery")) {
|
|
|
+ let page = v.selectComponent("#Surgery");
|
|
|
+ page.getList('', true)
|
|
|
+ };
|
|
|
+ })
|
|
|
+ this.setData({
|
|
|
+ isAdd: false
|
|
|
+ })
|
|
|
+ this.getList()
|
|
|
+ }, 300)
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ update(e) {
|
|
|
+ console.log(e, '编辑信息')
|
|
|
+ let rowIndex = e.currentTarget.dataset.item.rowindex
|
|
|
+ let data = e.currentTarget.dataset.item
|
|
|
+ console.log(data, 'data数据')
|
|
|
+ this.setData({
|
|
|
+ nowIndex: rowIndex,
|
|
|
+ oldQty:data.qty
|
|
|
+ })
|
|
|
+ let form = this.data.formData.map(v => {
|
|
|
+ if (v.valueName == 'sa_doctorid') {
|
|
|
+ console.log(v,'v的数据输出')
|
|
|
+ v.value = [data.doctorname, [data.sa_doctorid]]
|
|
|
+ } else {
|
|
|
+ v.value = data[v.valueName] || "";
|
|
|
+ }
|
|
|
+ return v
|
|
|
+ })
|
|
|
+ this.setData({
|
|
|
+ disabled: false,
|
|
|
+ content: {
|
|
|
+ sa_surgeryforecastid: data.sa_surgeryforecastid,
|
|
|
+ sa_surgeryforecast_itemsid:data.sa_surgeryforecast_itemsid
|
|
|
+ },
|
|
|
+ formData: form
|
|
|
+ })
|
|
|
+ }
|
|
|
+})
|