Explorar o código

Merge branch 'purchaseDev' into 'dev'

Purchase dev

See merge request new-business/drp-web!521
黄梓星 hai 1 ano
pai
achega
62eb948c9d

+ 9 - 0
src/api/requisition/basic.js

@@ -167,4 +167,13 @@ export function oaBack(data) {
     method: "POST",
     data: data,
   });
+}
+
+//收回
+export function saveAndToOa(data) {
+  return request({
+    url: `/system/apply/material/saveAndToOa`,
+    method: "POST",
+    data: data,
+  });
 }

+ 12 - 4
src/components/super-table/hide.vue

@@ -10,10 +10,10 @@
     >
       <template slot="title">
         <span>隐藏列</span>
-        <el-button type="primary" size="mini" @click="useSubmit('superForm')">
+        <!-- <el-button type="primary" size="mini" @click="useSubmit('superForm')">
           确 认
         </el-button>
-        <el-button size="mini" @click="drawer = false"> 取 消 </el-button>
+        <el-button size="mini" @click="drawer = false"> 取 消 </el-button> -->
       </template>
       <el-input
         v-model="key"
@@ -62,9 +62,14 @@
               ></i>
               {{ item.title }}
             </span>
+            <el-switch
+              v-model="item.hidden"
+              size="mini"
+              @change="onDraggableChange"
+            ></el-switch>
           </el-col>
         </el-draggable>
-        <div @click.stop>
+        <!-- <div @click.stop>
           <div
             v-for="({ item }, index) in searchColumns"
             :key="index"
@@ -76,7 +81,7 @@
               @change="onDraggableChange"
             ></el-switch>
           </div>
-        </div>
+        </div> -->
       </el-row>
     </el-drawer>
   </el-button>
@@ -133,6 +138,9 @@ export default {
     onDraggableChange() {
       this.$emit("change", this.columns);
     },
+    useSubmit(){
+      this.drawer = false;
+    },
   },
   created() {},
   mounted() {},

+ 11 - 0
src/views/material/basicFile/columns.js

@@ -31,6 +31,17 @@ export const SearchColumns = [
       referName: "MATERIAL_PARAM",
     },
   },
+  // diCode
+  {
+    item:{
+      key: "diCode",
+      title: "DI",
+    },
+    attr: {
+      clearable:true,
+      is: "el-input",
+    },
+  },
   {
     item: {
       key: "classifys",

+ 62 - 5
src/views/material/requisition/add.vue

@@ -3,17 +3,28 @@
 
     <el-row type="flex" justify="end" style="margin-bottom: 16px;">
       <el-col :span="1.5">
-        <el-button type="primary" :size="size" plain @click="save"
-                   v-if="pageStu == 'add' || pageStu == 'edit' || pageStu ==='copy' ">保存
+        <el-button
+          v-if="pageStu == 'add' || pageStu == 'edit' || pageStu ==='copy' "
+          type="primary" 
+          :size="size" 
+          @click="save"
+        >保存
+        </el-button>
+        <el-button 
+          v-if="pageStu == 'add' || pageStu ==='copy' || (pageStu == 'edit' && (row.status == '0' || row.status == '3')) "
+          type="primary" 
+          :size="size" 
+          @click="saveAndSubmit"
+        >保存并提交
         </el-button>
       </el-col>
       <el-col :span="1.5" style="margin: 0 10px;">
-        <el-button type="primary" :size="size" plain @click="submit"
+        <el-button type="primary" :size="size" @click="submit"
                    v-if="pageStu == 'check' && (row.status == '0' || row.status == '3')">提交
         </el-button>
       </el-col>
       <el-col :span="1.5">
-        <el-button type="primary" :size="size" plain @click="back">返回</el-button>
+        <el-button :size="size" @click="back">返回</el-button>
       </el-col>
     </el-row>
     
@@ -715,7 +726,7 @@
 
   import midpack from '@/components/PopDialog/midPack.vue'
 
-  import {addReq, getReqDetail, editReq} from '@/api/requisition/basic'
+  import {addReq, getReqDetail, editReq,saveAndToOa} from '@/api/requisition/basic'
   // 调用物料分类详情接口用于数据回显
   import {getDetail} from '@/api/classify/basic';
   // 生产厂商/代理人调用用于回显
@@ -1452,6 +1463,52 @@
           // })
         }
       },
+      // 保存并提交
+      saveAndSubmit(){
+
+        if (!this.basicForm.proposerId) {
+            this.basicForm.proposerId = this.$store.state.user.name
+          }
+          // let sparams = {...this.basicForm, ...{status: 0}}
+          let sparams = {...this.basicForm}
+          sparams.sysMaterialMedcineApply = this.basicForm2;
+          sparams.sysMaterialMedcineItemApply = this.sysMaterialMedcineItemApply;
+          console.log('保存并提交', sparams)
+
+          const form1 = new Promise((resolve, reject) => {
+            this.$refs['basic'].validate(valid => {
+              if (valid) resolve()
+            })
+          })
+          const form2 = new Promise((resolve, reject) => {
+            this.$refs['basic2'].validate(valid => {
+              if (valid) resolve()
+            })
+          })
+
+          // Promise.all([form1, form2]).then(() => {
+            if (this.basicForm.isMedicine == '0' 
+                && this.sysMaterialMedcineItemApply.length == 0 
+                // && this.basicForm.oneClass !== "资产费用&7"
+                ) {
+              this.$modal.notifyWarning("医药物料需要维护物料类别!");
+
+            } else {
+              this.$modal.loading("保存中...");
+              saveAndToOa(sparams).then(res => {
+                if (res.code === 200) {
+                  this.$message({
+                    message: res.msg,
+                    type: 'success'
+                  });
+                  this.$modal.closeLoading();
+                  this.back()
+                }
+              }).catch(err => {
+                this.$modal.closeLoading();
+              })
+            }
+      },
       submit() {
         // alert('提交传status:1')
         if (!this.basicForm.proposerId) {

+ 11 - 11
src/views/purchase/purchase-order/column.js

@@ -150,17 +150,17 @@ export const TableColumns = [
       isSummary:true,
     },
   },
-  // {
-  //   item: { 
-  //     key: "isUrgency", 
-  //     title: "紧急程度",
-  //     width:100,
-  //   },
-  //   attr: { 
-  //     is: "el-dict-tag", 
-  //     dictName: "urgency_degree"
-  //   },
-  // },
+  {
+    item: { 
+      key: "isUrgency", 
+      title: "紧急程度",
+      width:100,
+    },
+    attr: { 
+      is: "el-dict-tag", 
+      dictName: "urgency_degree"
+    },
+  },
   // {
   //   key: "isMarketing",
   //   title: "已协同生成销售订单",

+ 2 - 2
src/views/purchase/purchase-order/index.vue

@@ -720,14 +720,14 @@ export default {
           >批量导出</el-button>
           
         </el-button-group>
-        <!-- <el-button-group>
+        <el-button-group>
           <zp-button
             :size="size"
             :select-data="checkedList"
             @success="handleQueryList"
           >
           </zp-button>
-        </el-button-group> -->
+        </el-button-group>
 
       </el-col>
     </el-row>

+ 68 - 30
src/views/purchase/task/line-close/index.vue

@@ -12,6 +12,9 @@ export default {
   data(){
     return {
       title:'行关闭',
+      visible: false,
+      loading: false,
+      params: { closeCause:'' },
     }
   },
   computed:{
@@ -24,43 +27,37 @@ export default {
   },
   watch: {},
   methods: {
-     open(prop){
-      console.log(prop);
+    open(prop){
 
-      this.$prompt('请输入关闭原因', '提示', {
-          confirmButtonText: '确定',
-          cancelButtonText: '取消',
-          inputPattern:  /\s*\S+?/,
-          inputErrorMessage: '关闭原因不能为空'
-        }).then( async({ value }) => {
+      this.visible = true;
+      
 
-          try {
+    },
+    async submit(selectData){
+      try {
 
-            let params = {
-              documentIds: this.selectData.map(item => item.id),
-              baskCause: value,
-            }
+        let params = {
+          documentIds: selectData.map(item => item.id),
+          baskCause: this.params.closeCause,
+        }
 
-            console.log(params,'params');
-            
-            let { code, msg } = await ROWClOSE(params);
+        console.log(params,'params');
 
-            if (code === 200) {
-              this.$emit("success");
-              this.$notify.success({ title: msg });
-            }
+        let { code, msg } = await ROWClOSE(params);
 
-          } catch (error) {
-            
-          }
-          
-        }).catch(() => {
-               
-        });
+        if (code === 200) {
+          this.$emit("success");
+          this.$notify.success({ title: msg });
+        }
 
+      } catch (error) {
 
-    
-    }
+      }
+    },
+    hide(){
+      this.visible = false;
+      this.params.closeCause = "";
+    },
   },
   created() {},
   mounted() {},
@@ -77,6 +74,47 @@ export default {
     @click="open(selectData)"
   >
     {{ title }}
-   
+    <el-dialog
+      :title="title"
+      :visible.sync="visible"
+      width="25%"
+      append-to-body
+      @close="hide"
+    >
+      <div slot="footer">
+        <el-button
+          :size="$attrs.size"
+          :loading="loading"
+          @click="visible = false"
+          >取 消</el-button
+        >
+        <el-button
+          type="primary"
+          :size="$attrs.size"
+          :loading="loading"
+          @click="submit(selectData)"
+          >确 认</el-button
+        >
+      </div>
+      <el-alert
+        title="行关闭后无法打开,请确认是否关闭,关闭原因:"
+        type="info"
+        show-icon
+        :closable="false"
+        style="margin-bottom: 10px"
+      >
+      </el-alert>
+      <el-form
+        :size="$attrs.size"
+        :model="params"
+        label-width="0px"
+        label-position="right"
+        style="padding: 0"
+      >
+        <el-form-item prop="" label="">
+          <el-input v-model="params.baskCause"> </el-input>
+        </el-form-item>
+      </el-form>
+    </el-dialog>
   </el-button>
 </template>