licp
2024-03-18 bbc0f06f17c9c3c9ed325af581dfdfc9b9dcaa82
src/components/do/b1-ins-order/add.vue
@@ -88,10 +88,10 @@
         <el-row class="title">
            <el-col :span="6" style="padding-left: 20px;">委托单信息</el-col>
            <el-col :span="18" style="text-align: right;">
               <el-select v-model="template" size="medium" placeholder="下单模板" style="margin-right: 10px;" v-show="active==1">
                  <el-option v-for="(a, ai) in templates" :key="ai" :value="a.value" :label="a.label">
              <span style="float: left">{{ a.label }}</span>
              <i class="el-icon-delete" style="float: right; color: #66b1ff; font-size: 16px" @click.stop="handleDelete"></i>
               <el-select v-model="template" size="medium" placeholder="下单模板" style="margin-right: 10px;" v-show="active==1" @change="selectInsOrderTemplateById">
                  <el-option v-for="(a, ai) in templates" :key="ai" :value="a.id" :label="a.name">
              <span style="float: left">{{ a.name }}</span>
              <i class="el-icon-delete" style="float: right; color: #66b1ff; font-size: 16px" @click.stop="handleDelete(a)"></i>
            </el-option>
               </el-select>
               <el-button size="medium" @click="templateDia=true" v-show="active==1">
@@ -383,12 +383,7 @@
      data() {
         return {
            template: null,
            templates: [
          {
            label:'0000',
            value:1
          }
        ],
            templates: [],
            addObj: {
               entrustCode: null,
               custom: null,
@@ -462,6 +457,7 @@
         this.selectEnumByCategoryForType()
         this.getUserNow()
         this.selectStandardTreeList()
      this.selectInsOrderTemplate()
      if(this.active==1){
        // 下单流程
      }else {
@@ -503,20 +499,30 @@
            this.selectUserDia = false
         },
         save() {
            this.saveLoad = true
            this.$axios.post(this.$api.insOrder.addInsOrder,{
               insOrder: this.addObj,
               list: this.sampleList
            },{
               headers: {
                  'Content-Type': 'application/json'
               }
            }).then(res=>{
               this.saveLoad = false
               if(res.code==201)return
               this.$message.success('已提交')
               this.$parent.playOrder(0)
            })
        if(!this.addObj.custom){
          this.$message.error('未选择下单客户')
        }else if(!this.addObj.type){
          this.$message.error('未选择紧急程度')
        }else if(this.sampleList.length<1){
          this.$message.error('请添加一个样品')
        }else if(!this.sampleList.every(m=>m.sampleCode)){
          this.$message.error('输入样品编号')
        }else{
          this.saveLoad = true
          this.$axios.post(this.$api.insOrder.addInsOrder,{
            insOrder: this.addObj,
            list: this.sampleList
          },{
            headers: {
              'Content-Type': 'application/json'
            }
          }).then(res=>{
            this.saveLoad = false
            if(res.code==201)return
            this.$message.success('已提交')
            this.$parent.playOrder(0)
          })
        }
         },
      upInsOrderOfState(state){
        this.saveLoad = true
@@ -692,34 +698,64 @@
            }
            return '';
         },
      selectInsOrderTemplate(){
        this.$axios.get(this.$api.insOrder.selectInsOrderTemplate).then(res=>{
               if(res.code==201)return
               this.templates = res.data
            })
      },
      // 删除模板--调用接口
      handleDelete(){
      handleDelete(row){
        this.$confirm('是否删除当前数据?', "警告", {
                     confirmButtonText: "确定",
                     cancelButtonText: "取消",
                     type: "warning"
                  }).then(() => {
                     // this.$axios.post(this.delUrl, {
                     //    id: row.id
                     // }).then(res => {
                     //    if (res.code === 201) {
                     //       return
                     //    }
                     //    this.$message.success('删除成功')
                     //    this.selectList()
                     // }).catch(e => {
                     //    this.$message.error('删除失败')
                     // })
                     this.$axios.post(this.$api.insOrder.delInsOrderTemplate, {
                        id: row.id
                     }).then(res => {
                        if (res.code === 201) {
                           return
                        }
                        this.$message.success('删除成功')
                        this.selectInsOrderTemplate()
                     }).catch(e => {
                        this.$message.error('删除失败')
                     })
                  }).catch(() => {})
      },
      // 保存模板
      addTemplateDia(){
        if(this.templateName){
          this.templateLoading = true;
          this.$axios.post(this.$api.insOrder.addInsOrderTemplate,{
            name:this.templateName,
            thing:JSON.stringify({addObj:this.addObj,sampleList:this.sampleList})
          },{
               headers: {
                  'Content-Type': 'application/json'
               }
            }).then(res=>{
               if(res.code==201)return
          this.templateLoading = false;
          this.templateDia = false;
          this.$message.success('保存成功')
          this.selectInsOrderTemplate()
          this.templateName = ''
            })
        }else{
          this.$message.error('请填写模板名称')
        }
      }
      },
      // 查询模板
      selectInsOrderTemplateById(e){
        this.$axios.post(this.$api.insOrder.selectInsOrderTemplateById+'?id='+e).then(res=>{
               if(res.code==201)return
          let obj = JSON.parse(res.data)
          this.addObj = obj.addObj;
          this.sampleList = obj.sampleList;
            })
      },
      }
   }
</script>