Kaynağa Gözat

bug修改 结束订单 消息中心

liumy 1 yıl önce
ebeveyn
işleme
ad1e89d902

+ 26 - 0
src/api/messageCenter/index.js

@@ -0,0 +1,26 @@
+import request from "@/utils/request";
+
+// 查询
+export function queryMsgPage(data) {
+    return request({
+        url:"/web/msg/queryMsgPage",
+        method:"post",
+        data
+    })
+}
+// 已读未读接口 
+export function updateMsgStas(data) {
+    return request({
+        url:"/web/msg/updateMsgStas",
+        method:"post",
+        data
+    })
+}
+// 删除 
+export function deleteMsg(data) {
+    return request({
+        url:"/web/msg/deleteMsg",
+        method:"post",
+        data
+    })
+}

+ 16 - 10
src/api/orderManage-sup/index.js

@@ -49,14 +49,14 @@ export function getMcsOrdDck(data) {
         data
     })
 } 
-// 结束订单 /web/delvOrd/finishMcsDelvOrd
-export function finishMcsDelvOrd(data) {
-    return request({
-        url:"/web/delvOrd/finishMcsDelvOrd",
-        method:"post",
-        data
-    })
-} 
+// // 结束订单 /web/delvOrd/finishMcsDelvOrd
+// export function finishMcsDelvOrd(data) {
+//     return request({
+//         url:"/web/delvOrd/finishMcsDelvOrd",
+//         method:"post",
+//         data
+//     })
+// } 
 // 供应商采购订单(待出库详情)
 export function getMcsOrdDckDetl(data) {
     return request({
@@ -108,8 +108,14 @@ export function selectDelvOrdCopy(data) {
         data
     })
 }
-
-
+// 结束订单 
+export function finishMcsDelvOrd(data) {
+    return request({
+        url:"/web/delvOrd/finishMcsDelvOrd",
+        method:"post",
+        data
+    })
+}
 
 
 

+ 52 - 36
src/views/components/early-warning.vue

@@ -1,55 +1,71 @@
 <template>
     <!-- 预警消息 -->
     <div class="mcs-name">
-      <img src="@/assets/early.png" class="imgSrc" v-if="info.status=='A'"></img>
-      <img src="@/assets/dq.png" class="imgSrc" v-if="info.status=='B'"></img>
-      <img src="@/assets/warning1.png" class="imgSrc" v-if="info.status=='C'"></img>
-      <span style="font-weight:900;color:rgb(37 34 34);margin-left:5px;font-size:11px;line-height:17px"> {{info.title}}</span>
-      <span class="dateSrc"> {{info.date}}</span>
+      <img src="@/assets/early.png" class="imgSrc" v-if="info.msgType=='warning'"></img>
+      <img src="@/assets/dq.png" class="imgSrc" v-if="info.msgType=='notice'"></img>
+      <img src="@/assets/warning1.png" class="imgSrc" v-if="info.msgType=='inform'"></img>
+      <span style="font-weight:900;color:rgb(37 34 34);margin-left:5px;font-size:11px;line-height:17px"> {{info.msgTitle}}</span>
+      <span class="dateSrc"> {{info.msgPubdTime}}</span>
       <br />
-      <p  v-if="info.status=='A'" style="margin-left:23px;margin-top:5px">您提交的{{info.title}} <span style="color:#1093d7">【申领单号】</span>被<span style="color:#f9bd72">【审核人姓名】</span>退回,请注意及时查看处理。 </p>
-      <p  v-if="info.status=='B'" style="margin-left:23px;margin-top:5px"> <span style="color:#1093d7">【申领单号】</span>的商品资质<span style="color:#1093d7">【审核人姓名】</span>即将于【日期】到期,请注意及时更新。 </p>
-      <p  v-if="info.status=='C'" style="margin-left:23px;margin-top:5px"> <span style="color:#1093d7">【申领单号】</span>提交的<span style="color:#1093d7">【审核人姓名】</span>目录新增已到达,请注意及时审核。 </p>
-      <span class="StasSrc"> 已读</span>
-      
-      <!-- 注册证号:
-      <span v-if="info.regcertno"> {{ info.regcertno }} </span>
-  
-      <br />
-  
-      生产企业:
-      <span v-if="info.prodEntp">
-        {{ info.prodEntp }}
-      </span>
-      <el-tag v-if="info.prodSouc == '1'" type="success"> 国产 </el-tag>
-      <el-tag v-if="info.prodSouc == '2'" type="danger"> 进口 </el-tag>
-  
-      <br />
-  
-      集采批次:
-      <el-tag v-if="info.fasBtch">
-        {{ info.fasBtch }}
-      </el-tag> -->
+      <p v-if="info.msgType=='warning'" @click="getDetail(info)" style="margin-left:23px;margin-top:5px;cursor:pointer;" v-html="a"></p>
+      <p v-if="info.msgType=='notice'"  @click="getDetail(info)"  style="margin-left:23px;margin-top:5px;cursor:pointer" v-html="a"></p>
+      <p v-if="info.msgType=='inform'"  @click="getDetail(info)"  style="margin-left:23px;margin-top:5px;cursor:pointer" v-html="a"></p>
+      <!-- <p  v-if="info.msgType=='A'" style="margin-left:23px;margin-top:5px">您提交的{{info.title}} <span style="color:#1093d7">【申领单号】</span>被<span style="color:#f9bd72">【审核人姓名】</span>退回,请注意及时查看处理。 </p> -->
+      <!-- <p  v-if="info.msgType=='notice'" style="margin-left:23px;margin-top:5px"> <span style="color:#1093d7">【申领单号】</span>的商品资质<span style="color:#1093d7">【审核人姓名】</span>即将于【日期】到期,请注意及时更新。 </p>
+      <p  v-if="info.msgType=='inform'" style="margin-left:23px;margin-top:5px"> <span style="color:#1093d7">【申领单号】</span>提交的<span style="color:#1093d7">【审核人姓名】</span>目录新增已到达,请注意及时审核。 </p> -->
+      <span class="StasSrc" v-if="info.msgStas=='1'"> 已读</span>
+      <span class="StasSrc" style="color:#1093d7" v-else> 未读</span>
     </div>
-  </template>
+</template>
   
-  <script>
+<script>
+import {updateMsgStas} from "@/api/messageCenter/index"
   export default {
     name: "mcsInfo",
     props: {
       info: {
         type: Object,
         default: null
-      }
+      },
+      chars:[]
     },
     data() {
-      return {};
+      return {
+        a:"",
+      };
+    },
+    methods:{
+      // 跳转
+    getDetail(row) {
+      console.log(row,"www");
+      updateMsgStas([{id:row.id,msgStas:"1"}]).then((res)=>{
+        if(res.success==true){
+          this.$router.push({
+          name: row.msgRoutePath,
+          query: { sdpId: row.spdId,msgRouteUni:row.msgRouteUni },
+        });
+        }
+      })
+      
+    },
+    },
+    mounted() {
+      console.log(this.info);
+      // this.info.msgColumnList.forEach((v,i) => {
+      //   if(v.color=='red'){
+      //     this.info.msgColumnList[i].color="#1093d7"
+      //   }else if(v.color=="yellow"){
+      //     this.info.msgColumnList[i].color="#f9bd72"
+      //   }
+      // });
+      this.a=this.info.msgText.replace('msg_1',this.info.msgColumnList[0].msgColumn)
+      this.a=this.a.replace('msg_2',"<span style='color:"+this.info.msgColumnList[1].msgColumnColor +"'>"+ '【'+ this.info.msgColumnList[1].msgColumn+'】'+"</span>")
+      this.a=this.a.replace('msg_3',"<span style='color:"+this.info.msgColumnList[2].msgColumnColor +"'>"+ '【'+ this.info.msgColumnList[2].msgColumn+'】'+"</span>")
     },
-    mounted() {}
   };
-  </script>
+</script>
   
-  <style  lang="scss" scoped>
+<style  lang="scss" scoped>
   .mcs-name ::v-deep .imgSrc{
         position: relative;
         top: 3px;
@@ -67,4 +83,4 @@
         right: 35px;
     }
     
-  </style>
+</style>

+ 32 - 30
src/views/page/consumCataManage-sup/catalogdetails.vue

@@ -99,16 +99,7 @@
                     placeholder="请输入代理企业"
                   ></el-input>
                 </el-form-item>
-                <el-form-item label="挂网价格" prop="pubonlnPric">
-                  <div class="content" v-if="isShow">
-                    {{ infoData.pubonlnPric }}
-                  </div>
-                  <el-input
-                    v-else
-                    v-model="infoData.pubonlnPric"
-                    placeholder="请输入挂网价格"
-                  ></el-input>
-                </el-form-item>
+               
 
                 <el-form-item label="规格" prop="spec" :rules="rules.required">
                   <div class="content" v-if="isShow">
@@ -120,8 +111,6 @@
                     placeholder="请输入规格"
                   ></el-input>
                 </el-form-item>
-              </div>
-              <div class="flex-css">
                 <el-form-item label="型号" prop="mol" :rules="rules.required">
                   <div class="content" v-if="isShow">
                     {{ infoData.mol }}
@@ -132,6 +121,9 @@
                     placeholder="请输入型号"
                   ></el-input>
                 </el-form-item>
+              </div>
+              <div class="flex-css">
+                
                 <el-form-item label="材质" prop="matl" :rules="rules.required">
                   <div class="content" v-if="isShow">
                     {{ infoData.matl }}
@@ -152,8 +144,6 @@
                     placeholder="请输入包装材质"
                   ></el-input>
                 </el-form-item>
-              </div>
-              <div class="flex-css">
                 <el-form-item label="注册证号" prop="regcertno" :rules="rules.required">
                   <div class="content" v-if="isShow">
                     {{ infoData.regcertno }}
@@ -164,26 +154,28 @@
                     placeholder="请输入注册证号"
                   ></el-input>
                 </el-form-item>
+              </div>
+              <div class="flex-css">
+                
+                  
                 <el-form-item label="目录来源" prop="isPub">
-                  <!-- <el-select
-                    v-model="infoData.isPub"
-                    placeholder="请选择目录来源"
-                    clearable
-                    disabled
-                  >
-                    <el-option
-                      v-for="item in isPubData"
-                      :key="item.value"
-                      :label="item.name"
-                      :value="item.value"
-                    ></el-option>
-                  </el-select> -->
                   <div class="content">
                     <span v-if="infoData.isPub == '1'">挂网</span>
                     <span v-if="infoData.isPub == '0'">非挂网</span>
                   </div>
                 </el-form-item>
-                <el-form-item label="  " prop="regcertno">
+                <el-form-item label="挂网价格" prop="pubonlnPric"  v-if="isShow">
+                  <el-input
+                    v-model="infoData.pubonlnPric"
+                    placeholder="请输入挂网价格"
+                  ></el-input>
+                </el-form-item>
+                <el-form-item label="  " prop="" v-else>
+                  <div class="content">
+                    <!-- {{infoData.regcertno}} -->
+                  </div>
+                </el-form-item>
+                <el-form-item label="  " prop="">
                   <div class="content" v-if="isShow">
                     <!-- {{infoData.regcertno}} -->
                   </div>
@@ -331,6 +323,16 @@
                   </el-select>
                 </el-form-item>
                 <el-form-item label="采购价" prop="purcPric" :rules="rules.numPot4">
+                  <template slot-scope="{}" slot="label">
+                    <span>采购价</span>
+                    <el-tooltip class="item" effect="dark" placement="top">
+                      <i
+                        class="el-icon-question"
+                        style="font-size: 14px; vertical-align: middle"
+                      ></i>
+                      <div slot="content">最小单位采购价</div>
+                    </el-tooltip>
+                  </template>
                   <el-input
                     maxlength="50"
                     v-model="infoData.purcPric"
@@ -943,12 +945,12 @@ export default {
       if (this.$route.query.page == "2") {
         this.$router.push({
           name: "consumCataManagement-sup",
-          query: { current: this.$route.query.current, spdId: this.$route.query.spdId },
+          query: {spdId: this.$route.query.spdId },
         });
       } else {
         this.$router.push({
           name: "distributionmanage",
-          query: { current: this.$route.query.current, spdId: this.$route.query.spdId },
+          query: { spdId: this.$route.query.spdId },
         });
       }
     },

+ 31 - 11
src/views/page/consumCataManage-sup/catalogdetailsadd.vue

@@ -80,13 +80,7 @@
                     maxlength="50"
                   ></el-input>
                 </el-form-item>
-                <el-form-item label="挂网价格" prop="pubonlnPric" :rules="rules.numPotNo">
-                  <el-input
-                    v-model="infoData.pubonlnPric"
-                    placeholder="请输入挂网价格"
-                    maxlength="50"
-                  ></el-input>
-                </el-form-item>
+                <!--  -->
 
                 <el-form-item label="规格" prop="spec" :rules="rules.required">
                   <el-input
@@ -95,8 +89,6 @@
                     maxlength="50"
                   ></el-input>
                 </el-form-item>
-              </div>
-              <div class="flex-css">
                 <el-form-item label="型号" prop="mol" :rules="rules.required">
                   <el-input
                     v-model="infoData.mol"
@@ -104,6 +96,8 @@
                     maxlength="50"
                   ></el-input>
                 </el-form-item>
+              </div>
+              <div class="flex-css">
                 <el-form-item label="材质" prop="matl" :rules="rules.required">
                   <el-input
                     v-model="infoData.matl"
@@ -118,8 +112,6 @@
                     maxlength="50"
                   ></el-input>
                 </el-form-item>
-              </div>
-              <div class="flex-css">
                 <el-form-item label="注册证号" prop="regcertno" :rules="rules.required">
                   <el-input
                     v-model="infoData.regcertno"
@@ -128,6 +120,15 @@
                   ></el-input>
                 </el-form-item>
               </div>
+              <!-- <div class="flex-css">
+                <el-form-item label="挂网价格" prop="pubonlnPric" :rules="rules.numPotNo">
+                  <el-input
+                    v-model="infoData.pubonlnPric"
+                    placeholder="请输入挂网价格"
+                    maxlength="50"
+                  ></el-input>
+                </el-form-item>
+              </div> -->
             </div>
           </div>
           <div class="common-card">
@@ -259,6 +260,16 @@
                   </el-select>
                 </el-form-item>
                 <el-form-item label="采购价" prop="purcPric" :rules="rules.numPot4">
+                  <template slot-scope="{}" slot="label">
+                    <span>采购价</span>
+                    <el-tooltip class="item" effect="dark" placement="top">
+                      <i
+                        class="el-icon-question"
+                        style="font-size: 14px; vertical-align: middle"
+                      ></i>
+                      <div slot="content">最小单位采购价</div>
+                    </el-tooltip>
+                  </template>
                   <el-input
                     v-model="infoData.purcPric"
                     maxlength="50"
@@ -376,6 +387,9 @@
           <el-button type="primary" @click="handleSubmit" :loading="submitLoad"
             >提交</el-button
           >
+          <el-button type="info" @click="handleBack"
+            >返回</el-button
+          >
         </div>
       </el-tab-pane>
       <el-tab-pane label="资质信息" name="second">
@@ -924,6 +938,12 @@ export default {
         }
       });
     },
+    handleBack() {
+        this.$router.push({
+          name: "distributionmanage",
+          query: {spdId: this.$route.query.spdId },
+        });
+    },
   },
 };
 </script>

+ 34 - 34
src/views/page/consumCataManage-sup/distributionmanage.vue

@@ -676,39 +676,6 @@ export default {
       }
       return result;
     },
-    // 搜索获取医院药品列表
-    getHospConsum(type) {
-      if (type == "search") {
-        this.listQuery.current = 1;
-      }
-      this.listLoading = true;
-      this.listQuery.spdId = this.spdId;
-      selectSplerMcsList(this.listQuery)
-        .then((res) => {
-          this.list = res.data.records;
-          this.total = res.data.total;
-          this.listLoading = false;
-        })
-        .catch((err) => {
-          this.listLoading = false;
-        });
-    },
-    // 获取新增目录弹框数据
-    getdialog(type) {
-      if (type == "search") {
-        this.listQueryadd.current = 1;
-      }
-      this.listdialogLoading = true;
-      selectMcsList(this.listQueryadd)
-        .then((res) => {
-          this.consumableData = res.data.records;
-          this.totalC = res.data.total;
-          this.listdialogLoading = false;
-        })
-        .catch((err) => {
-          this.listdialogLoading = false;
-        });
-    },
     // 点击获取医院药品列表
     handleNodeClick(data) {
       console.log(data, "data");
@@ -742,6 +709,39 @@ export default {
           this.listLoading = false;
         });
     },
+    // 搜索获取医院药品列表
+    getHospConsum(type) {
+      if (type == "search") {
+        this.listQuery.current = 1;
+      }
+      this.listLoading = true;
+      selectSplerMcsList(this.listQuery)
+        .then((res) => {
+          this.list = res.data.records;
+          this.total = res.data.total;
+          this.listLoading = false;
+        })
+        .catch((err) => {
+          this.listLoading = false;
+        });
+    },
+    // 获取新增目录弹框数据
+    getdialog(type) {
+      if (type == "search") {
+        this.listQueryadd.current = 1;
+      }
+      this.listdialogLoading = true;
+      selectMcsList(this.listQueryadd)
+        .then((res) => {
+          this.consumableData = res.data.records;
+          this.totalC = res.data.total;
+          this.listdialogLoading = false;
+        })
+        .catch((err) => {
+          this.listdialogLoading = false;
+        });
+    },
+    
 
     reset(type) {
       if (type === "consumableData") {
@@ -888,7 +888,7 @@ export default {
       }
       this.$router.push({
         name: "catalogdetails",
-        query: { id: row.id, status: row.status, spdId: this.routespdId, isPub: row.isPub,type:"modify",page:"1" ,current:this.listQuery.current,opeType:"修改" },
+        query: { id: row.id, status: row.status, spdId: this.routespdId, isPub: row.isPub,type:"modify",page:"1" ,opeType:"修改" },
       });
       // this.dialogDui = true;
       // this.consumableData = [];

+ 38 - 64
src/views/page/consumCataManage-sup/index.vue

@@ -573,6 +573,7 @@ export default {
         mol: "",
         current: 1,
         size: 10,
+        spdId:"",
       },
       totalC: false,
       addLoading: false,
@@ -617,74 +618,72 @@ export default {
       }
       return result;
     },
-    // 搜索获取医院药品列表
-    getHospConsum(type) {
-      if (type == "search") {
-        this.listQuery.current = 1;
-      }
+    // 获取医院列表
+    getData(type) {
+      this.data = [];
       this.listLoading = true;
-      // this.spdId = this.$route.query.spdId;
-      this.listQuery.spdId = this.spdId;
-      selectSplerMcsListIntf(this.listQuery)
+      selectSpdList()
         .then((res) => {
-          this.list = res.data.records;
-          this.total = res.data.total;
+          this.listQuery.spdId = res.data[0].spdId;
+          this.data = res.data;
           this.listLoading = false;
         })
         .catch((err) => {
           this.listLoading = false;
         });
     },
-    // 获取新增目录弹框数据
-    getdialog(type) {
-      if (type == "search") {
-        this.listQueryadd.current = 1;
-      }
-      this.listdialogLoading = true;
-      // this.listQuery.spdId = this.spdId;
-      selectMcsList(this.listQueryadd)
-        .then((res) => {
-          this.consumableData = res.data.records;
-          this.totalC = res.data.total;
-          this.listdialogLoading = false;
-        })
-        .catch((err) => {
-          this.listdialogLoading = false;
-        });
-    },
     // 点击获取医院药品列表
     handleNodeClick(data) {
-      console.log(data, "data");
       this.listLoading = true;
       this.spdId = data.spdId;
       this.listQuery.spdId = this.spdId;
       selectSplerMcsListIntf(this.listQuery)
         .then((res) => {
+          console.log(222);
           this.list = res.data.records;
           this.total = res.data.total;
           this.listLoading = false;
-          console.log(res, "医院目录");
           this.btnShow = true;
         })
         .catch((err) => {
           this.listLoading = false;
         });
     },
-    // 获取医院列表
-    getData(type) {
-      this.data = [];
+    // 搜索获取医院药品列表
+    getHospConsum(type) {
+      if (type == "search") {
+        this.listQuery.current = 1;
+      }
       this.listLoading = true;
-      selectSpdList()
+      selectSplerMcsListIntf(this.listQuery)
         .then((res) => {
-          this.listQuery.spdId = res.data[0].spdId;
-          this.data = res.data;
-          console.log(this.data, "dadad");
+          console.log(333);
+          this.list = res.data.records;
+          this.total = res.data.total;
           this.listLoading = false;
         })
         .catch((err) => {
           this.listLoading = false;
         });
     },
+    // 获取新增目录弹框数据
+    getdialog(type) {
+      if (type == "search") {
+        this.listQueryadd.current = 1;
+      }
+      this.listdialogLoading = true;
+      selectMcsList(this.listQueryadd)
+        .then((res) => {
+          this.consumableData = res.data.records;
+          this.totalC = res.data.total;
+          this.listdialogLoading = false;
+        })
+        .catch((err) => {
+          this.listdialogLoading = false;
+        });
+    },
+    
+    
 
     reset(type) {
       if (type === "consumableData") {
@@ -706,10 +705,8 @@ export default {
     },
     // 多选
     handleSelectionChange(e) {
-      console.log(this.spdId,"sodpdp")
       this.insertMcsList = e;
       newArr = this.insertMcsList.push({spdId:this.spdId});
-      // console.log(e, "ee");
     },
     // 多选后选过的禁用
     selected(row, index) {
@@ -826,20 +823,17 @@ export default {
         }
       });
     },
-    // 对码弹窗获取供应商列表
     handleDui(row) {
       if (this.spdId) {
         this.routespdId = this.spdId;
       } else {
         this.routespdId = this.$route.query.spdId;
       }
-      console.log(this.routespdId, "编辑");
       this.$router.push({
         name: "catalogdetails",
         query: { id: row.id, status: row.status,
           spdId: this.routespdId, isPub: row.isPub,
-          opeType:row.opeType,type:"edit",
-          current:this.listQuery.current,page:"2" },
+          opeType:row.opeType,type:"edit",page:"2" },
       });
     },
     // 对码操作
@@ -868,26 +862,6 @@ export default {
         });
       }
     },
-    // 取消对码
-    handleCanc(row) {
-      this.$confirm("此操作会取消该药品对码, 是否继续?", "提示", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-      })
-        .then(() => {
-          CancMatch({ spdId: this.spdId, drugListId: row.drugListId }).then((res) => {
-            if (res.success) {
-              this.getHospConsum();
-              this.$message({
-                type: "success",
-                message: "取消对码成功",
-              });
-            }
-          });
-        })
-        .catch(() => {});
-    },
     //搜索供应商列表
     searchSup() {
       this.supLoading = true;
@@ -905,15 +879,15 @@ export default {
   },
   mounted() {
     this.getData();
-    // this.getHospConsum();
     if (this.$route.query.spdId) {
+      console.log(this.$route.query.spdId,"this.$route.query.spdId");
       this.listQuery.spdId = this.$route.query.spdId;
       selectSplerMcsListIntf(this.listQuery)
         .then((res) => {
+          console.log(111);
           this.list = res.data.records;
           this.total = res.data.total;
           this.listLoading = false;
-          console.log(res, "医院目录");
           this.btnShow = true;
         })
         .catch((err) => {

+ 341 - 30
src/views/page/messageCenter/index.vue

@@ -1,5 +1,30 @@
 <template>
-  <div class="common-box">
+   <div style="display: flex">
+    <el-card style="width: 18%; margin-right: 18px; border-radius: 6px">
+      <el-tabs v-model="activeNametree" type="card" @tab-click="tabClick" stretch>
+        <!-- <el-tab-pane label="按分类" name="grp"></el-tab-pane> -->
+        <el-tab-pane label="按机构" name="org"></el-tab-pane>
+      </el-tabs>
+      <el-tree
+        :data="hosdata"
+        :props="defaultProps"
+        node-key="spdId"
+        @node-click="handleNodeClick"
+        default-expand-all="true"
+        style="margin-top: 10px"
+      >
+      </el-tree>
+    </el-card>
+  <div class="right-common-box">
+    <div style="position: absolute;left: 30%;z-index:1;top: 133px;">
+          <el-radio-group v-model="msgClass" @input="clickMsg">
+            <el-radio-button label="0">资质管理</el-radio-button>
+            <el-radio-button label="1">业务</el-radio-button>
+            <el-radio-button label="2">审核</el-radio-button>
+            <el-radio-button label="3">对账</el-radio-button>
+            <el-radio-button label="4">库存管理</el-radio-button>
+          </el-radio-group>
+        </div>
     <el-tabs v-model="activeName" @tab-click="handleClick">
       <el-form
         :model="listQuery"
@@ -7,23 +32,15 @@
         :inline="true"
         style="display: flex; height: 33px"
       >
-        <el-button type="primary" @click="getorderData('search')">标为已读</el-button>
-        <el-button @click="getorderData('search')">全部删除</el-button>
-        <div style="margin-left: 100px">
-          <el-radio-group v-model="radio1">
-            <el-radio-button label="资质管理"></el-radio-button>
-            <el-radio-button label="业务"></el-radio-button>
-            <el-radio-button label="审核"></el-radio-button>
-            <el-radio-button label="对账"></el-radio-button>
-            <el-radio-button label="库存管理"></el-radio-button>
-          </el-radio-group>
-        </div>
-        <!-- <div  class="checkInput"> -->
-        <div style="margin-left: 100px">
+        <el-button type="primary" @click="handleRead('search')">标为已读</el-button>
+        <el-button @click="handleDel('search')" type="danger" plain>全部删除</el-button>
+        
+        <div style="margin-left: 20px">
           <el-form-item>
-            <el-input v-model="listQuery.content" placeholder="请输入内容"></el-input>
+            <el-input v-model="listQuery.msgTitle" placeholder="请输入内容"></el-input>
           </el-form-item>
-          <el-button type="primary" @click="getorderData('search')">查询</el-button>
+          <el-button type="primary" @click="getMess('search')">查询</el-button>
+          <el-button  @click="reset()">重置</el-button>
         </div>
       </el-form>
       <el-tab-pane label="全部" name="first">
@@ -37,8 +54,8 @@
           height="500px"
           style="margin-top: 20px"
           @selection-change="handleSelectionChange"
-          row-key="hiCode"
-          ref="multipleTable"
+          row-key="id"
+          ref="multipleTable1"
         >
           <template slot="empty">
             <img src="@/assets/nopage.png" alt />
@@ -50,8 +67,45 @@
             :reserve-selection="true"
             :selectable="selected"
           />
-          <el-table-column label="id" prop="id" width="80px">
+          <el-table-column label="" prop="status">
+            <template slot-scope="scope">
+              <early-warning :info="scope.row"></early-warning>
+            </template>
           </el-table-column>
+        </el-table>
+        <!--分页-->
+        <yl-pagination
+          v-show="total > 0"
+          :total="total"
+          :page.sync="listQuery.current"
+          :limit.sync="listQuery.size"
+          @pagination="getMess"
+        />
+      </el-tab-pane>
+      <el-tab-pane label="预警消息" name="warning">
+        <el-table
+          v-loading="listLoading"
+          element-loading-text="加载中"
+          :data="list"
+          fit
+          stripe
+          border
+          height="500px"
+          style="margin-top: 20px"
+          @selection-change="handleSelectionChange"
+          row-key="id"
+          ref="multipleTable2"
+        >
+          <template slot="empty">
+            <img src="@/assets/nopage.png" alt />
+            <p>暂无数据</p>
+          </template>
+          <el-table-column
+            type="selection"
+            width="60"
+            :reserve-selection="true"
+            :selectable="selected"
+          />
           <el-table-column label="" prop="status">
             <template slot-scope="scope">
               <early-warning :info="scope.row"></early-warning>
@@ -64,20 +118,97 @@
           :total="total"
           :page.sync="listQuery.current"
           :limit.sync="listQuery.size"
-          @pagination="getorderData"
+          @pagination="getMess"
+        />
+      </el-tab-pane>
+      <el-tab-pane label="通知消息" name="notice"> 
+        <el-table
+          v-loading="listLoading"
+          element-loading-text="加载中"
+          :data="list"
+          fit
+          stripe
+          border
+          height="500px"
+          style="margin-top: 20px"
+          @selection-change="handleSelectionChange"
+          row-key="id"
+          ref="multipleTable3"
+        >
+          <template slot="empty">
+            <img src="@/assets/nopage.png" alt />
+            <p>暂无数据</p>
+          </template>
+          <el-table-column
+            type="selection"
+            width="60"
+            :reserve-selection="true"
+            :selectable="selected"
+          />
+          <el-table-column label="" prop="status">
+            <template slot-scope="scope">
+              <early-warning :info="scope.row"></early-warning>
+            </template>
+          </el-table-column>
+        </el-table>
+        <!--分页-->
+        <yl-pagination
+          v-show="total > 0"
+          :total="total"
+          :page.sync="listQuery.current"
+          :limit.sync="listQuery.size"
+          @pagination="getMess"
+        />
+      </el-tab-pane>
+      <el-tab-pane label="通告消息" name="inform">
+        <el-table
+          v-loading="listLoading"
+          element-loading-text="加载中"
+          :data="list"
+          fit
+          stripe
+          border
+          height="500px"
+          style="margin-top: 20px"
+          @selection-change="handleSelectionChange"
+          row-key="id"
+          ref="multipleTable4"
+        >
+          <template slot="empty">
+            <img src="@/assets/nopage.png" alt />
+            <p>暂无数据</p>
+          </template>
+          <el-table-column
+            type="selection"
+            width="60"
+            :reserve-selection="true"
+            :selectable="selected"
+          />
+          <el-table-column label="" prop="status">
+            <template slot-scope="scope">
+              <early-warning :info="scope.row"></early-warning>
+            </template>
+          </el-table-column>
+        </el-table>
+        <!--分页-->
+        <yl-pagination
+          v-show="total > 0"
+          :total="total"
+          :page.sync="listQuery.current"
+          :limit.sync="listQuery.size"
+          @pagination="getMess"
         />
       </el-tab-pane>
-      <el-tab-pane label="预警消息" name="second"> </el-tab-pane>
-      <el-tab-pane label="通知消息" name="third"> </el-tab-pane>
-      <el-tab-pane label="通告消息" name="fourth"> </el-tab-pane>
     </el-tabs>
   </div>
+   </div>
 </template>
 
 <script>
 import earlyWarning from "@/views/components/early-warning.vue";
 import ylPagination from "@/components/yl-pagination";
-
+import {queryMsgPage,updateMsgStas,deleteMsg} from "@/api/messageCenter/index"
+import { selectSpdList} from "@/api/orderManage-sup/index";
 export default {
   components: {
     ylPagination,
@@ -85,16 +216,196 @@ export default {
   },
   data() {
     return {
-      activeName: "first",
+      activeNametree: "org",
+      hosdata: [],
+      spdId: null,
+      defaultProps: {
+        children: "children",
+        label: "spdName",
+      },
       listQuery: {
-        content: "",
+        spdId: "",
+        msgTitle: "",
+        msgType: "",
+        msgClass: this.msgClass,
+        msgStas: "",
+        current:1,
+        size:10,
       },
-      radio1: "",
+      activeName: "first",
+      msgClass: "",
       list: [
-        { status: "A", id: "1",title:"业务提醒-退回" ,date:"2024-2-19 23:34:00"},
-        { status: "B", id: "2" ,title:"资质到期提醒",date:"2024-2-19 23:34:00"},
-        { status: "C", id: "3" ,title:"目录审核提醒",date:"2024-2-19 23:34:00"},
+        // { status: "A", id: "1",title:"业务提醒-退回" ,date:"2024-2-19 23:34:00",text:"您提交的申领单单msg_1被msg_2退回,请注意及时查看处理。",list:[{name:"danhaoaoao",color:"red"},{name:"shenheren",color:"yellow",}]},
+        // { status: "B", id: "2" ,title:"资质到期提醒",date:"2024-2-19 23:34:00",text:"您提交的申领单单1被2退回,请注意及时查看处理。",list:[{name:"danhaoaoao",color:"red",label:"shenheren"}]},
+        // { status: "C", id: "3" ,title:"目录审核提醒",date:"2024-2-19 23:34:00",text:"您提交的申领单单1被2退回,请注意及时查看处理。",list:[{name:"danhaoaoao",color:"red",label:"shenheren"}]},
       ],
+      total:0,
+      dataSelect:[],
+    };
+  },
+  methods:{
+    reset(){
+      this.msgClass= "",
+      this.listQuery.msgClass = "";
+      this.listQuery.msgTitle = ""
+      this.getMess()
+    },
+    // 标记已读
+    handleRead(){
+      if(this.dataSelect.length==0){
+        this.$message.warning("请选择你要已读的数据")
+      }else{
+        this.$confirm("确认已读", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      }).then(() => {
+        const list = []
+        this.dataSelect.forEach((v)=>{
+          list.push({
+            id:v.id,msgStas:"1"
+          })
+        })
+        updateMsgStas(list).then((res)=>{
+          if(res.success==true){
+            this.$message.success("标记已读成功");
+            this.getMess()
+            this.dataSelect = [];
+            this.$refs.multipleTable1.clearSelection()
+            this.$refs.multipleTable2.clearSelection()
+            this.$refs.multipleTable3.clearSelection()
+            this.$refs.multipleTable4.clearSelection()
+          }else{
+            this.$message.error("已读失败")
+            this.getMess()
+            this.dataSelect =[]
+            this.$refs.multipleTable1.clearSelection()
+            this.$refs.multipleTable2.clearSelection()
+            this.$refs.multipleTable3.clearSelection()
+            this.$refs.multipleTable4.clearSelection()
+          }
+        })
+      })
+      }
+      
+      
+    },
+    // 多选
+    handleSelectionChange(row){
+      this.dataSelect = row;
+    },
+    // 删除
+    handleDel(){
+      if(this.dataSelect.length==0){
+        this.$message.warning("请选择你要删除的数据")
+      }else{
+        this.$confirm("确认删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      }).then(() => {
+        const list = []
+        this.dataSelect.forEach((v)=>{
+          list.push({
+            id:v.id,invdFlag:"1"
+          })
+        })
+        deleteMsg(list).then((res)=>{
+          if(res.success==true){
+            this.$message.success("删除成功");
+            this.getMess()
+            this.dataSelect = [];
+            this.$refs.multipleTable1.clearSelection()
+            this.$refs.multipleTable2.clearSelection()
+            this.$refs.multipleTable3.clearSelection()
+            this.$refs.multipleTable4.clearSelection()
+          }else{
+            this.$message.error("删除失败")
+            this.getMess()
+            this.dataSelect =[]
+            this.$refs.multipleTable1.clearSelection()
+            this.$refs.multipleTable2.clearSelection()
+            this.$refs.multipleTable3.clearSelection()
+            this.$refs.multipleTable4.clearSelection()
+          }
+        })
+      })
+      }
+    },
+    // 获取医院列表
+    getData(type) {
+      this.hosdata = [];
+      selectSpdList()
+        .then((res) => {
+          this.listQuery.spdId = res.data[0].spdId;
+          this.hosdata = res.data;
+          console.log(this.hosdata, "dadad");
+        })
+        .catch((err) => {});
+    },
+    tabClick(tab) {
+      if (tab.label == "按机构") {
+        this.defaultProps.label = "spdName";
+      }
+      // else if(tab.label == "按分类"){
+      //     // this.getData4();
+      //     // this.defaultProps.label = 'orgGrpName'
+      //     // this.listQuery.type = 'grp';
+      // }
+    },
+    handleClick(tab) {
+      console.log(tab.name, "name");
+      if (tab.name =="first") {
+        this.listQuery.msgType = "";
+        this.getMess();
+      } else {
+        this.listQuery.msgType = tab.name
+        this.getMess();
+      }
+    },
+    // 点击获取耗材列表
+    handleNodeClick(data) {
+      // this.listLoading = true;
+      this.spdId = data.spdId;
+      this.listQuery.spdId = this.spdId;
+      this.getMess()
+    },
+    clickMsg(e){
+      this.listQuery.msgClass=e;
+      this.getMess()
+      // console.log(e);
+    },
+    getMess(){
+      this.listLoading = true;
+      queryMsgPage(this.listQuery).then((res)=>{
+        if(res.success==true){
+          this.listLoading = false;
+          this.list = res.data.records
+          this.total = res.data.total;
+        }else{
+          this.listLoading = false
+          this.$message.error("获取失败")
+        }
+      }).catch((err)=>{
+        this.listLoading = false;
+      })
+    },
+    
+
+  },
+  mounted(){
+    this.getData();
+    if (this.$route.query.spdId) {
+      this.listQuery.spdId = this.$route.query.spdId;
+      // selectRetnOrdD(this.listQuery)
+      //   .then((res) => {
+      //     this.list = res.data.records;
+      //     this.total = res.data.total;
+      //     this.listLoading = false;
+      //   })
+      //   .catch((err) => {
+      //     this.listLoading = false;
+      //   });
     };
   },
 };

+ 5 - 5
src/views/page/orderManage-sup/alreadyDelivery/alreadyDetail.vue

@@ -10,7 +10,7 @@
       <el-form
         :model="listForm"
         ref="listform"
-        label-width="200px"
+        label-width="170px"
         class="grid-form-class"
       >
         <div class="form-body">
@@ -176,8 +176,8 @@
           </template>
         </el-table-column>
         <el-table-column label="批次号" prop="lotNum" />
-        <el-table-column label="生产日期" prop="manuDate" width="100px" />
-        <el-table-column label="有效期至" prop="prodExpy" width="100px" />
+        <el-table-column label="生产日期" prop="manuDate" width="100px" v-if="!cShow"/>
+        <el-table-column label="有效期至" prop="prodExpy" width="100px" v-if="!cShow"/>
         <el-table-column label="需求数量" prop="purcCnt" />
         <el-table-column label="剩余出库量" prop="toDelvCnt" width="90px" />
         <el-table-column label="本次出库量" prop="delvCnt" width="90px" />
@@ -359,8 +359,8 @@
             </template>
           </el-table-column>
           <el-table-column label="批号" prop="lotNum"> </el-table-column>
-          <el-table-column label="生产日期" prop="manuDate"> </el-table-column>
-          <el-table-column label="有效期至" prop="prodExpy"> </el-table-column>
+          <!-- <el-table-column label="生产日期" prop="manuDate"> </el-table-column>
+          <el-table-column label="有效期至" prop="prodExpy"> </el-table-column> -->
           <el-table-column label="包装" prop="convrat" width="120px">
             <template #default="{ row }">
               <span

+ 1 - 1
src/views/page/orderManage-sup/purOrderAccept/acceptDetail.vue

@@ -10,7 +10,7 @@
       <el-form
         :model="listForm"
         ref="listform"
-        label-width="237px"
+        label-width="180px"
         class="grid-form-class"
       >
         <div class="form-body">

+ 5 - 0
src/views/page/orderManage-sup/purOrderAccept/index.vue

@@ -293,6 +293,11 @@ export default {
           this.listLoading = false;
         });
     }
+    if(this.$route.query.msgRouteUni){
+      this.listQuery.spdId = this.$route.query.spdId;
+      this.listQuery.id = this.$route.query.msgRouteUni;
+      this.getorderData()
+    }
   },
   methods: {
     tabClick(tab) {

+ 41 - 12
src/views/page/orderManage-sup/purOrderDelivery/deliveryDetail.vue

@@ -2,7 +2,10 @@
   <!-- 待出库 -->
   <div>
      <div class="right-button">
-      <el-button style="margin-right:6px" type="primary" @click="handlemultiplex" :loading="sureLoading"
+      <el-button style="margin-right:6px" type="danger" @click="handleEnd" :loading="overLoading"
+        >结束订单</el-button
+      >
+      <el-button style="margin-right:6px" type="primary" @click="handlemultiplex"
         >订单复用</el-button
       >
     </div>
@@ -11,7 +14,7 @@
       <el-form
         :model="listForm"
         ref="listform"
-        label-width="237px"
+        label-width="180px"
         class="grid-form-class"
       >
         <div class="form-body">
@@ -192,7 +195,7 @@
               </el-form-item>
             </template>
           </el-table-column>
-          <el-table-column label="生产日期" prop="manuDate" width="220">
+          <el-table-column label="生产日期" prop="manuDate" width="220"  v-if="!cShow">
             <template slot-scope="scope">
               <el-form-item
                 label-width="0"
@@ -218,7 +221,7 @@
               </el-form-item>
             </template>
           </el-table-column>
-          <el-table-column label="有效期至" width="220" prop="prodExpy">
+          <el-table-column label="有效期至" width="220" prop="prodExpy"  v-if="!cShow">
             <template slot-scope="scope">
               <el-form-item
                 label-width="0"
@@ -468,10 +471,10 @@
           </el-table-column>
           <el-table-column label="批号" prop="lotNum">
           </el-table-column>
-          <el-table-column label="生产日期" prop="manuDate">
+          <!-- <el-table-column label="生产日期" prop="manuDate">
           </el-table-column>
           <el-table-column label="有效期至" prop="prodExpy">
-          </el-table-column>
+          </el-table-column> -->
           <el-table-column label="包装" prop="convrat" width="120px">
             <template #default="{ row }">
               <span>{{row.purcUnt}}  ({{row.convrat}}{{row.prcUnt}}/{{row.purcUnt}})</span>
@@ -741,11 +744,11 @@ import {
 import {
   getMcsOrdDckDetl,
   saveDelvOrd,
-  finishMcsDelvOrd,
   finishDelvOrd,
   getBillPage,
   submitMcsDelvOrd,
   selectDelvOrdCopy,
+  finishMcsDelvOrd,
 } from "@/api/orderManage-sup/index";
 export default {
   components: {
@@ -865,8 +868,7 @@ export default {
       mcsSum:0,
       purcOrdId:"",
       rowIndex:0,
-      listQuerym:
-      {
+      listQuerym:{
         current: 1,
         size: 10,
         id: "",
@@ -877,7 +879,8 @@ export default {
         stas: "",
         spdId:this.$route.query.spdId,
         fyLoad:false,
-      }
+      },
+      overLoading:false,
     };
   },
   created() {
@@ -1342,7 +1345,7 @@ export default {
     },
     // 填写UDI码
     handleudi(row,index){
-      if(row.lotNum && row.manuDate && row.prodExpy && row.delvCnt){
+      if(row.lotNum && row.delvCnt){
         this.rowIndex = index;
       if(!this.tableData[index].udiList || this.tableData[index].udiList.length==0 || this.tableData[index].udiList.length!==row.delvCnt || this.tableData[index].lotNum!==this.tableData[index].udiList[0].lotNum){
         let udiObj={
@@ -1363,7 +1366,7 @@ export default {
       }
       
     },
-    // 去
+    // 去chong
     handleClose(){
       this.udiData.forEach((v)=>{
         if(v.udi){
@@ -1597,6 +1600,32 @@ export default {
       this.purcOrdId = "";
       
     },
+    // 结束订单
+    handleEnd(){
+      this.$confirm("确认结束订单", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      }).then(() => {
+        this.overLoading = true;
+        let data = {
+          purcOrdId: this.$route.query.id,
+        };
+        finishMcsDelvOrd(data)
+          .then((res) => {
+            this.overLoading = false;
+            this.$message.success("结束订单成功");
+            this.$router.push({
+                name: "purOrderDelivery",
+                query:{spdId:this.$route.query.spdId,activeName:this.$route.query.activeName}
+            });
+          })
+          .catch((err) => {
+            this.overLoading = false;
+            this.$message.error("结束订单失败")
+          });
+      })
+    },
     // 复用查询
     getOutboundData() {
       getMcsOrdDck(this.listQuerym)

+ 2 - 1
src/views/page/qualityManagement-sup/information-filling/index.vue

@@ -20,7 +20,7 @@
     <el-form
       :model="infoData"
       ref="planForm"
-      label-width="237px"
+      label-width="150px"
       class="grid-form-class"
     >
       <div class="common-card">
@@ -660,6 +660,7 @@ export default {
                     type: "success"
                   });
                   this.submitLoad = false;
+                  this.getData()
                 })
                 .catch(() => {
                   this.submitLoad = false;