<template>
  <view>
    <view class="reader-box" v-if="isScaning">
      <view class="reader" id="reader-sbxx"></view>
    </view>
    <view class="page" v-else>
      <!-- 车间 -->
      <mpvue-picker themeColor="#007AFF" ref="xbPicker" mode="selector" :deepLength="deepLength"
        @onConfirm="pickerxbConfirm" :pickerValueArray="xbList"></mpvue-picker>
      <mpvue-picker themeColor="#007AFF" ref="ggxhPicker" mode="selector" :deepLength="deepLength"
        @onConfirm="pickerGgxhConfirm" :pickerValueArray="ggxhList"></mpvue-picker>
      <mpvue-picker themeColor="#007AFF" ref="cjPicker" mode="selector" :deepLength="deepLength"
        @onConfirm="pickerCjConfirm" :pickerValueArray="cjList"></mpvue-picker>
      <mpvue-picker themeColor="#007AFF" ref="mpvuePicker" mode="selector" :deepLength="deepLength"
        @onConfirm="pickerConfirm" :pickerValueArray="task_level"></mpvue-picker>
      <view class="item">
        <view class="itemname">制液投料记录单</view>
        <view class="itemtext">
          <input class="iteminput InputRightMargin" placeholder="系统生成" disabled v-model="info.zytljld"
            @change="infoChange" />
        </view>
      </view>
      <view class="item">
        <view class="itemname redMi">区域</view>
        <view class="itemtext" @click="showgGgxh()">
          <input class="iteminput InputRightMargin" disabled placeholder="请选择" :value="info.qy" />
          <uni-icons type="arrowright" class="myarrowright" style="right: 0"></uni-icons>
        </view>
      </view>
      <view class="item">
        <view class="itemname redMi">记录类型</view>
        <view class="itemtext" @click="showXb()">
          <input class="iteminput InputRightMargin" disabled placeholder="请选择" :value="info.jllx" />
          <uni-icons type="arrowright" class="myarrowright" style="right: 0"></uni-icons>
        </view>
      </view>
      <view class="item">
        <view class="itemname redMi">对应位置</view>
        <view class="itemtext" @click="showCj()">
          <input class="iteminput InputRightMargin" disabled placeholder="请选择" :value="info.dywz" />
          <uni-icons type="arrowright" class="myarrowright" style="right: 0"></uni-icons>
        </view>
      </view>
      <view class="item">
        <view class="itemname redMi">容量</view>
        <view class="itemtext">
          <input class="iteminput InputRightMargin" placeholder="请输入" v-model="info.rl" @change="infoChange" />
        </view>
      </view>
      <view class="item" @click="selectPeople1(['jlry', 'jlryid'])">
        <view class="itemname">记录人员</view>
        <view class="itemtext">
          <input class="iteminput InputRightMargin" disabled v-model="info.jlry" @change="infoChange" />
          <uni-icons type="arrowright" class="myarrowright" style="right: 0"></uni-icons>
        </view>
      </view>
      <view class="item" @click="onShowDatePicker('jlrq')">
        <view class="itemname redMi">记录日期</view>
        <view class="itemtext">
          <input class="iteminput InputRightMargin" disabled v-model="info.jlrq" @change="infoChange" />
          <uni-icons type="arrowright" class="myarrowright" style="right: 0"></uni-icons>
        </view>
      </view>
      <view class="item item_line item_textarea">
        <view class="itemname">备注</view>
        <textarea class="textarea" placeholder="请输入备注" v-model="info.bz" @change="infoChange"></textarea>
      </view>
      <view class="fixMargin"></view>
      <view class="fixBottom">
        <view class="uni-flex uni-row">
          <!-- <view style="-webkit-flex: 1; flex: 1">
                        <button type="primary" plain="true" style="width: 90%; background: #fff"
                            @click="goAddRepair('zc')">
                            暂存
                        </button>
                    </view> -->
          <view style="-webkit-flex: 1; flex: 1">
            <button type="primary" style="width: 90%" @click="goAddRepair('tj')">
              确认提交
            </button>
          </view>
        </view>
      </view>
      <mx-datepicker type="datetime" :value="info.planTime" :show="showPicker" @confirm="onSelected"
        @cancel="onSelected"></mx-datepicker>
      <view class="goHome" @click="goMain('repairInfo')">
        <img src="../../static/img/gohome.png" />
      </view>
      <view class="mysearchlist" style="z-index: 10000">
        <chooseSbjhSingle ref="mysearchlist" :showsearch.sync="showSbjh" :itemInfo_.sync="getSbjh">
        </chooseSbjhSingle>
      </view>
      <view class="mysearchlist" style="z-index: 10000">
        <chooseUserSingle ref="mysearchlist" :showsearch.sync="show_search_user1" :itemInfo_.sync="search_value_user1">
        </chooseUserSingle>
      </view>
      <view class="mysearchlist" style="z-index: 10000">
        <chooseUserMulti ref="mysearchlist" :showsearch.sync="show_search_user2" :itemInfo_.sync="search_value_user2">
        </chooseUserMulti>
      </view>
      <view class="mysearchlist" style="z-index: 10000">
        <chooseEquipmentSingle ref="mysearchlist" :showsearch.sync="show_search_user3"
          :itemInfo_.sync="search_value_user3">
        </chooseEquipmentSingle>
      </view>
      <view class="child" style="z-index: 10000">
        <childDialog ref="child" :showsearch.sync="showChild" @ok="getChild">
        </childDialog>
      </view>
    </view>
  </view>
</template>

<script>
import { config } from "../../request/js/config.js";
import chooseSbjhSingle from "@/components/xinsoft-search-list/chooseSbjhSingle.vue";
import chooseUserSingle from "@/components/xinsoft-search-list/chooseUserSingle.vue";
import chooseUserMulti from "@/components/xinsoft-search-list/chooseUserMulti.vue";
import chooseEquipmentSingle from "@/components/xinsoft-search-list/chooseEquipmentSingle.vue";
import mpvuePicker from "@/components/mpvue-picker/mpvuePicker.vue";
import mxDatepicker from "@/components/mx-datepicker/mx-datepicker.vue";
import childDialog from "./child.vue";
import uniIcons from "@/components/uni-icons/uni-icons.vue";
import jweixin from "@/jweixin-module/index.js";
import { Html5Qrcode } from "html5-qrcode";
import { getTimer } from "../../common/tools.js";

export default {
  components: {
    mxDatepicker,
    mpvuePicker,
    uniIcons,
    chooseUserSingle,
    chooseUserMulti,
    chooseEquipmentSingle,
    chooseSbjhSingle,
    childDialog,
  },
  data() {
    return {
      showSbjh: false,
      fromId: "",
      html5Qrcode: null,
      isScaning: false,
      config: config,
      task_level: [],
      imgsrc_list: [],
      imgsrc_list_local: [],
      showPicker: false,
      deepLength: 1,
      devInfo: {},
      zrr: {},
      csr: [],
      repairInfo: {},
      info: {},
      id: "",
      bxr: "",
      targetList: [],
      show_search_user1: false,
      search_value_user1: "",
      getSbjh: "",
      show_search_user2: false,
      search_value_user2: "",
      show_search_user3: false,
      search_value_user3: "",
      cjList: [],
      ggxhList: [],
      xbList: [],
      //时间选择器
      timeFrom: null,
      selFrom: null,
      editInfo: {},
      index: null,
      showChild: false,
    };
  },
  onLoad(option) {
    let _this = this;
    this.id = option.id || "";
    // var  otherInfos = uni.getStorageSync('otherInfo');
    // uni.getStorage({
    //   key: "userInfo",
    //   success: function (res) {
    //     _this.bxr = res.data.name;
    //   },
    // });

    //如果是编辑，就根据接口获取数据，
    if (option.id) {
      _this.$http
        .request({
          url: "/apis/mdh/zytljl/detail",
          method: "get",
          params: {
            id: option.id,
          },
        })
        .then((res) => {
          if (res.data.code == 0) {
            let result = res.data.data;
            _this.info = { ...result };
            uni.setStorage({
              key: "repairInfo",
              data: _this.repairInfo,
              success: function () {},
            });
          }
        })
        .catch((err) => {
          uni.showToast({
            title: "获取信息失败",
            icon: "none",
            duration: 2000,
          });
        });
    } else {
      this.info = {};
      let userInfo = uni.getStorageSync("userInfo");
      const { name, userId } = userInfo;
      this.info.jlry = name;
      this.info.jlryid = userId;
      this.info.jlrq = getTimer();
      this.info = { ...this.info };
      //如果不是，是新增，获取session中的数据。
      //   uni.getStorage({
      //     key: "repairInfo",
      //     success: function (res) {
      //       var session = res.data;
      //       _this.devInfo = session.devInfo || {};
      //       _this.info = session.info || {};
      //       _this.targetList = session.csr || [];
      //       _this.zrr = session.zrr || [];
      //       _this.imgsrc_list = session.imgsrc_list || [];
      //       _this.imgsrc_list_local = session.imgsrc_list_local || [];
      //     },
      //   });
    }
    this.$http
      .request({
        url: "/apis/dict/getDictsByType",
        params: {
          type: "dywz",
        },
      })
      .then((res) => {
        if (res.statusCode == "200") {
          var useType = res.data.datas;
          for (let i = 0; i < useType.length; i++) {
            var myVal = {
              label: useType[i].name,
              value: useType[i].id,
            };
            _this.cjList.push(myVal);
          }
        }
      })
      .catch((err) => {
        console.log(err);
      });
    this.$http
      .request({
        url: "/apis/dict/getDictsByType",
        params: {
          type: "jllx",
        },
      })
      .then((res) => {
        if (res.statusCode == "200") {
          var useType = res.data.datas;
          for (let i = 0; i < useType.length; i++) {
            var myVal = {
              label: useType[i].name,
              value: useType[i].id,
            };
            _this.xbList.push(myVal);
          }
        }
      })
      .catch((err) => {
        console.log(err);
      });
    //初始化获取 任务等级数据字典。
    this.$http
      .request({
        url: "/apis/dict/getDictsByType",
        params: {
          type: "qy",
        },
      })
      .then((res) => {
        if (res.statusCode == "200") {
          var useType = res.data.datas;
          for (let i = 0; i < useType.length; i++) {
            var myVal = {
              label: useType[i].name,
              value: useType[i].id,
            };
            _this.ggxhList.push(myVal);
          }
          //   if (!_this.info.level_value) {
          //     _this.info.level_value = useType[0].id;
          //     _this.info.level_label = useType[0].name;
          //     _this.infoChange();
          //   }
        }
      })
      .catch((err) => {
        console.log(err);
      });
  },
  watch: {
    getSbjh(val) {
      const { id, jh, ggxh, kz, sbjz } = val;
      this.info = {
        sbjhid: id,
        sbjh: jh,
        ggxh,
        kz,
        sbjz,
      };
      this.info = { ...this.info };
    },
    search_value_user1(val) {
      const { NAME, userId } = val;
      this.info[this.selFrom[0]] = NAME;
      this.info[this.selFrom[1]] = userId;
      this.info = { ...this.info };
      //   let obj = { userId: newv.userId, name: newv.NAME };
      //   this.zrr = obj;
      //   var repairInfo = uni.getStorageSync("repairInfo");
      //   if (!repairInfo) {
      //     repairInfo = {};
      //   }
      //   repairInfo.zrr = this.zrr;
      //   uni.setStorage({
      //     key: "repairInfo",
      //     data: repairInfo,
      //     success: function () {},
      //   });
    },
    search_value_user2(newv) {
      var detail = [];
      newv.forEach((item) => {
        let obj = { userId: item.userId, name: item.NAME };
        detail.push(obj);
      });
      if (newv.length > 0) {
        var repairInfo = uni.getStorageSync("repairInfo");
        if (!repairInfo) {
          repairInfo = {};
        }
        this.targetList = detail;
        repairInfo.csr = this.targetList;
        uni.setStorage({
          key: "repairInfo",
          data: repairInfo,
          success: function () {},
        });
      }
    },
    search_value_user3(newv) {
      let obj = {
        id: newv.id,
        name: newv.name,
        serialno: newv.serialno,
        model: newv.model,
        type: newv.type,
        site: newv.site,
      };
      this.devInfo = obj;
      var repairInfo = uni.getStorageSync("repairInfo");
      if (!repairInfo) {
        repairInfo = {};
      }
      repairInfo.devInfo = this.devInfo;
      uni.setStorage({
        key: "repairInfo",
        data: repairInfo,
        success: function () {},
      });
    },
  },
  mounted() {
    //this.initiateWX();
  },
  methods: {
    remove(index) {
      let _this = this;
      uni.showModal({
        title: "",
        content: "确定删除吗?",
        success: function (res) {
          if (res.confirm) {
            let list = _this.info.zbList;
            list.splice(index, 1);
            _this.info.zbList = list;
            _this.info = { ..._this.info };
            // _this.del(index);
          }
        },
      });
    },
    getChild(val, index) {
      let zbList = this.info.zbList;
      console.log(zbList, index, "0000");
      if (index || index == 0) {
        if (zbList && zbList.length > 0) {
          zbList[index] = val;
        } else {
          let list = [];
          list.push(val);
          zbList = list;
        }
      } else {
        if (zbList && zbList.length > 0) {
          zbList.push(val);
        } else {
          let list = [];
          list.push(val);
          zbList = list;
        }
      }
      this.info.zbList = zbList;
      this.mathCount(zbList);
      this.info = { ...this.info };
    },
    mathCount(zbList) {
      let count = 0;
      if (zbList && zbList.length > 0) {
       count =  zbList.reduce((accumulator, currentValue) => {
          return Number(accumulator) + Number(currentValue.cpjz);
        }, 0);
      }
      this.info.jz = count;
      this.info = { ...this.info };
    },
    addOrEdit(val, index) {
      this.$refs.child.init(val, index);
      this.showChild = true;
    },
    openQrcode() {
      this.isScaning = true;
      Html5Qrcode.getCameras().then((devices) => {
        if (devices && devices.length) {
          this.html5Qrcode = new Html5Qrcode("reader-sbxx");
          this.html5Qrcode.start(
            {
              facingMode: "environment",
            },
            {
              focusMode: "continuous", //设置连续聚焦模式
              fps: 5, //设置扫码识别速度
              qrbox: 280, //设置二维码扫描框大小
            },
            (decodeText, decodeResult) => {
              if (decodeText) {
                let data = JSON.parse(decodeText);
                if (data.id) {
                  this.getQrCodeInfo(data.id);
                  this.stopScan(); //关闭扫码功能
                }
              }
            },
            (err) => {
              // this.stopScan();
              // console.log(err);  //错误信息
            }
          );
        }
      });
    },
    stopScan() {
      this.isScaning = false;
      if (this.html5Qrcode) {
        this.html5Qrcode.stop();
      }
    },
    //获取微信相关
    initiateWX() {
      this.$http
        .request({
          url: "/apis/weChat/getSignature",
          params: {
            // url:"http://120.132.17.220:18093/gyhl-app/"
            url: window.location.href.split("#")[0],
          },
        })
        .then((res) => {
          if (res.data.code == 0) {
            var s = res.data;
            jweixin.config({
              beta: true,
              debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来，若要查看传入的参数，可以在pc端打开，参数信息会通过log打出，仅在pc端时才会打印。
              appId: s.corpId, // 必填，公众号的唯一标识
              timestamp: s.timestamp, // 必填，生成签名的时间戳
              nonceStr: s.nonceStr, // 必填，生成签名的随机串
              signature: s.signature.toLowerCase(), // 必填，签名，见附录1
              jsApiList: [
                "onMenuShareTimeline",
                "onMenuShareAppMessage",
                "onMenuShareQQ",
                "onMenuShareWeibo",
                "onMenuShareQZone",
                "scanQRCode",
              ],
            });
          } else {
            uni.showToast({
              title: res.msg ? res.msg : "获取微信配置失败",
              icon: "none",
              duration: 2000,
            });
          }
        })
        .catch((err) => {
          uni.showToast({
            title: err,
            icon: "none",
            duration: 2000,
          });
        });
    },
    onNavigationBarButtonTap() {
      this.openQrcode();
    },
    /** 点击顶部按钮的方法 */
    //         onNavigationBarButtonTap() {
    //             console.log("你点击了按钮")
    //             // 允许从相机和相册扫码
    //             let _this = this;
    // 			jweixin.scanQRCode({
    // 				desc: 'scanQRCode desc',
    // 				needResult: 1, // 默认为0，扫描结果由企业微信处理，1则直接返回扫描结果，
    // 				scanType: ['qrCode'], // 可以指定扫二维码还是条形码（一维码），默认二者都有"qrCode", "barCode"
    // 				success: function(res) {
    // 					if (res.errMsg != 'scanQRCode:ok') {
    // 						uni.showToast({
    // 							title: '扫描结果:' + res.resultStr,
    // 							icon: 'none',
    // 							duration: 2000
    // 						});
    // 					} else {
    // 						//扫码正确
    // 						let resultStr = res.resultStr;
    // 						try {
    // 							resultStr = JSON.parse(resultStr);
    // 							if (resultStr.id) {

    // 								_this.getQrCodeInfo(resultStr.id);
    // 							} else {
    // 								uni.showToast({
    // 									title: '二维码错误，请扫描正确的二维码',
    // 									icon: 'none',
    // 									duration: 2000
    // 								});
    // 							}
    // 						} catch (e) {
    // 							uni.showToast({
    // 								title: '二维码错误，请扫描正确的二维码',
    // 								icon: 'none',
    // 								duration: 2000
    // 							});
    // 						}
    // 					}
    // 					// 回调
    // 				},
    // 				error: function(res) {
    // 					uni.showToast({
    // 						title: 'error:' + res,
    // 						icon: 'none',
    // 						duration: 2000
    // 					});
    // 					if (res.errMsg.indexOf('function_not_exist') > 0) {
    // 						alert('版本过低请升级');
    // 					}
    // 				}
    // 			});
    //         },

    //调用接口获取二维码信息
    getQrCodeInfo(id) {
      var _this = this;
      this.$http
        .request({
          url: "/apis/device/detail",
          params: {
            deviceId: id,
          },
          method: "POST",
        })
        .then((res) => {
          if (res.data.code == 0) {
            let obj = {
              id: res.data.data.id,
              name: res.data.data.name,
              serialno: res.data.data.serialno,
              model: res.data.data.model ? res.data.data.model : "",
              type: res.data.data.type_mes ? res.data.data.type_mes : "",
              site: res.data.data.site ? res.data.data.site : "",
            };
            _this.devInfo = obj;
            var repairInfo = uni.getStorageSync("repairInfo");
            if (!repairInfo) {
              repairInfo = {};
            }
            repairInfo.devInfo = this.devInfo;
            uni.setStorage({
              key: "repairInfo",
              data: repairInfo,
              success: function () {},
            });
          } else {
            uni.showToast({
              title: res.data.msg ? res.data.msg : "扫码失败",
              icon: "none",
              duration: 2000,
            });
          }
        });
    },

    selectDevice() {
      this.show_search_user3 = true;
      // uni.navigateTo({
      //     url: "selectDevice?flag=addRepair"
      // });
    },
    selectPeople1(val) {
      this.selFrom = val;
      this.show_search_user1 = true;
      // uni.navigateTo({
      //     url: "repairTurnTo?flag="+flag+'&url=addRepair'
      // });
    },
    selectSbjh(val) {
      this.showSbjh = true;
    },
    selectPeople2(data) {
      this.show_search_user2 = true;
    },
    formatCsrName(data) {
      var returnName = "";
      for (var i = 0; i < data.length; i++) {
        if (i == 3) {
          returnName += data[i].name + "等等";
          break;
        } else {
          returnName += data[i].name + ",";
        }
      }
      returnName = returnName.substring(0, returnName.length - 1);
      return returnName;
    },
    infoChange: function () {
      //保存当前修改信息
      var repairInfo = uni.getStorageSync("repairInfo");
      if (!repairInfo) {
        repairInfo = {};
      }
      repairInfo.info = this.info;
      uni.setStorage({
        key: "repairInfo",
        data: repairInfo,
        success: function () {},
      });
    },
    showXb() {
      this.$refs.xbPicker.show();
    },
    showgGgxh() {
      this.$refs.ggxhPicker.show();
    },
    showCj() {
      //   this.pickerValueDefault = [0];
      this.$refs.cjPicker.show();
    },
    pickerxbConfirm(e) {
      this.info.jllx = e.label;
      this.info.jllxid = e.value[0];
      this.info = { ...this.info };
      this.infoChange();
      this.$forceUpdate();
    },
    // 车间
    pickerCjConfirm(e) {

      this.info.dywz = e.label;
      this.info.dywzid = e.value[0];
      this.info = { ...this.info };
      this.infoChange();
      this.$forceUpdate();
    },
    pickerGgxhConfirm(e) {
      this.info.qy = e.label;
      this.info.qyid = e.value[0];
      this.info = { ...this.info };
      this.infoChange();
      this.$forceUpdate();
    },
    pickerConfirm(e) {
      this.editInfo.bz = e.label;
      this.editInfo.bzid = e.value[0];
      this.infoChange();
      this.$forceUpdate();
    },
    showSinglePicker() {
      //   this.pickerValueDefault = [0];
      this.$refs.mpvuePicker.show();
    },
    onShowDatePicker(val) {
      this.timeFrom = val;
      //显示
      this.showPicker = true;
    },
    onSelected(e) {
      //选择
      this.showPicker = false;
      var _this = this;
      if (e) {
        this.planTime = e.value + ":00";
        _this.info[this.timeFrom] = this.planTime;
        this.infoChange();
      }
    },
    //上传
    chooseImg() {
      this.uploadImg();
    },
    //重新上传
    reUpload(index) {
      this.uploadImg(index);
    },
    uploadImg(indexnum) {
      var _this = this;
      //#ifdef APP-PLUS
      var count_ = 9;
      //#endif
      //#ifndef APP-PLUS
      var count_ = 1;
      //#endif
      if (indexnum != undefined) {
        count_ = 1;
      }
      uni.chooseImage({
        count: count_,
        success: (chooseImageRes) => {
          const tempFilePaths = chooseImageRes.tempFilePaths;
          //#ifdef APP-PLUS
          let imgs = chooseImageRes.tempFilePaths.map((value, index) => {
            return {
              name: "file" + (index + 1), //注意这一行，uni的hello的示例中，这里为key名+index，这样是无法和使用一个固定key名接多个文件的php接口对接上的改为数组下标形式的字符串就解决这个问题了。其效果等同于在html页面上多个同name文件域同时提交表单。
              uri: value,
            };
          });
          uni.uploadFile({
            url: config.baseURL + "/apis/file/uploadMulti", //接口地址
            files: imgs,
            fileType: "image",
            name: "files",
            success: (uploadFileRes) => {
              var arr = [];
              for (
                var i = 0;
                i < JSON.parse(uploadFileRes.data).result.length;
                i++
              ) {
                arr.push(JSON.parse(uploadFileRes.data).result[i].filePath);
              }
              if (indexnum != undefined) {
                //是重新上传
                _this.imgsrc_list[indexnum] = arr[0];
                _this.imgsrc_list_local[indexnum] =
                  chooseImageRes.tempFilePaths[0];
              } else {
                _this.imgsrc_list = _this.imgsrc_list.concat(arr);
                _this.imgsrc_list_local = _this.imgsrc_list_local.concat(
                  chooseImageRes.tempFilePaths
                );
              }
              _this.$forceUpdate();
              var repairInfo = uni.getStorageSync("repairInfo");
              if (!repairInfo) {
                repairInfo = {};
              }
              repairInfo.imgsrc_list = _this.imgsrc_list;
              repairInfo.imgsrc_list_local = _this.imgsrc_list_local;
              uni.setStorage({
                key: "repairInfo",
                data: repairInfo,
                success: function () {},
              });
            },
            fail: function () {
              uni.showToast({
                title: "上传图片失败",
                duration: 2000,
                icon: "none",
              });
            },
          });
          //#endif
          //#ifndef APP-PLUS
          uni.uploadFile({
            url: config.baseURL + "/apis/file/upload", //接口地址
            filePath: tempFilePaths[0],
            fileType: "image",
            name: "file",
            success: (uploadFileRes) => {
              var arr = [];
              if (indexnum != undefined) {
                //是重新上传
                _this.imgsrc_list[indexnum] = JSON.parse(
                  uploadFileRes.data
                ).filePath;
                _this.imgsrc_list_local[indexnum] =
                  chooseImageRes.tempFilePaths[0];
              } else {
                _this.imgsrc_list.push(JSON.parse(uploadFileRes.data).filePath);
                _this.imgsrc_list_local.push(chooseImageRes.tempFilePaths);
              }
              _this.$forceUpdate();
              var repairInfo = uni.getStorageSync("repairInfo");
              if (!repairInfo) {
                repairInfo = {};
              }
              repairInfo.imgsrc_list = _this.imgsrc_list;
              repairInfo.imgsrc_list_local = _this.imgsrc_list_local;
              uni.setStorage({
                key: "repairInfo",
                data: repairInfo,
                success: function () {},
              });
            },
            fail: function () {
              uni.showToast({
                title: "上传图片失败",
                duration: 2000,
                icon: "none",
              });
            },
          });
          //#endif
        },
      });
    },
    //删除图片
    deleteImg(index) {
      this.imgsrc_list.splice(index, 1);
      this.imgsrc_list_local.splice(index, 1);
      this.$forceUpdate();
      var repairInfo = uni.getStorageSync("repairInfo");
      if (!repairInfo) {
        repairInfo = {};
      }
      repairInfo.imgsrc_list = _this.imgsrc_list;
      repairInfo.imgsrc_list_local = _this.imgsrc_list_local;
      uni.setStorage({
        key: "repairInfo",
        data: repairInfo,
        success: function () {},
      });
    },
    //点击暂存和确认提交 需要进行的操作。
    goAddRepair(flag) {
      const { qy, jllx, dywz, rl,jlrq } = this.info;
      if (!qy || !jllx || !dywz || !rl||!jlrq) {
        uni.showToast({
          title: "请填写必填项",
          duration: 2000,
          icon: "none",
        });
        return false;
      }
      let submitData = {};
      submitData = this.info;
      submitData.zt = 3;
      submitData.zczt = 1;
      console.log(submitData.id);
      let url
      if(submitData.id){
        url = `/apis/mdh/zytljl/edit`;
      }else{
        url = `/apis/mdh/zytljl/add`;
      }
      //调取接口进行保存。
      this.$http
        .request({
          url: url,
          data: submitData,
        })
        .then((res) => {
          if (res.data.code == 0) {
            // uni.removeStorageSync("repairInfo");
            uni.showToast({
              title: "操作成功",
              duration: 1000,
              icon: "none",
            });
            setTimeout(function () {
              uni.redirectTo({
                url: `/pages/zytljl/index`,
              });
            }, 1000);
          } else {
            uni.showToast({
              title: res.data.msg || "操作失败",
              duration: 2000,
              icon: "none",
            });
            return false;
          }
        })
        .catch((err) => {
          uni.showToast({
            title: "操作失败",
            duration: 2000,
            icon: "none",
          });
        });
    },
  },
  onBackPress(options) {
    //取消默认的返回事件.用来返回上一页时重新加载页面，删除本地缓存的巡检操作
    // if (options.from === 'backButton' || options.from === 'backbutton' || options.from === 'navigateBack') {
    // 	uni.redirectTo({
    // 		url: "patrolDetail?id=" + this.id
    // 	});
    // 	return true;
    // }
  },
};
</script>
<style scoped>
.report_btn {
  color: #3382ff;
  cursor: pointer;
}

.reader-box {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.5);
}

.reader {
  width: 100%;
  /* width: 540rpx; */
  /* /height: 540rpx; */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

>>>.picker-item .lb-picker-column .lb-picker-column-label {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  line-height: 55px !important;
}

>>>.select-tab-fixed-top {
  left: 0;
  width: 100%;
  z-index: 2;
  white-space: nowrap;
}

>>>.popup-layer {
  position: fixed;
  top: var(--window-top);
  margin-top: 40px;
}
</style>
