浏览代码

Merge branch 'stage' into dev0.3

asd26269546 1 年之前
父节点
当前提交
e0a0b03e50

+ 2 - 1
.env.production

@@ -9,7 +9,8 @@ VITE_APP_BASE_API = '/prod-api'
 
 VITE_APP_WS_API = '/prod-api'
 
+VITE_APP_IP = '139.159.251.109'
+
 # 是否在打包时开启压缩,支持 gzip 和 brotli
 VITE_BUILD_COMPRESS = gzip
 
-VITE_APP_IP = '139.159.251.109'

+ 6 - 6
src/components/byTable/ElementsMapping.vue

@@ -81,13 +81,13 @@ export default defineComponent({
         props: attrs
       }
     }
-    if(getCellList.value.length > 3) {
+    // if(getCellList.value.length > 3) {
       
-      console.log(getCellList)
-      return {
-        getCellList
-      }
-    }
+    //   console.log(getCellList)
+    //   return {
+    //     getCellList
+    //   }
+    // }
     return () => {
       return h(
         'div',

+ 3 - 2
src/components/headerBar/header-bar.vue

@@ -43,7 +43,7 @@
                 </div>
                 <ul>
                   <li :class="menuName == i.menuName ? 'active' : ''" @click="openLeftBaner(i, index)" v-for="(i, index) in sidebarRoutersCopy" :key="i.name" v-show="i.type == 1 && i.status == '0'">
-                    {{ i.menuName }}
+                    <i :class="'iconfont icon-' + i.icon" style="position: relative;top:-1px;"></i>{{ i.menuName }}
                   </li>
                 </ul>
                 <!-- <div class="first-order">
@@ -74,7 +74,8 @@
                     <li class="menu-title" v-else-if="i.isTitle">
                       <a v-if="i.icon && i.icon !== '#'" :class="'iconfont icon-' + i.icon" style="margin-right: 4px"></a><span>{{ i.menuName }}</span>
                     </li>
-                    <li v-else class="menu-ul" @click="commonsBannerToRouter(i)" style="cursor: pointer">
+                    <li v-else class="menu-ul" @click="commonsBannerToRouter(i)" style="cursor: pointer;display: flex;">
+                      <a :class="'iconfont icon-' + i.icon" style="margin-right: 4px;width:20px;min-height: 20px;display: block;"></a>
                       <span>{{ i.menuName }}</span>
                     </li>
                   </div>

+ 9 - 3
src/components/headerBar/header.scss

@@ -47,9 +47,15 @@
 					li {
 						height: 50px;
 						line-height: 50px;
-						padding: 0 50px;
+						padding: 0 30px;
 						font-size: 12px;
 						cursor: pointer;
+						display: flex;
+						i{
+							display: block;
+							width:20px;
+							
+						}
 					}
 					li.active{
 						color: #0084FF;
@@ -179,7 +185,7 @@
 				border-bottom: 1px solid #ddd;
 				font-size: 14px;
 				width: 140px;
-				margin: 0 100px 0 0;
+				margin: 0 50px 0 0;
 				i {
 					position: relative;
 					top: 3px;
@@ -190,7 +196,7 @@
 				float: left;
 				width: 140px;
 				list-style: none;
-				margin: 0 100px 0 0;
+				margin: 0 50px 0 0;
 				padding: 0;
 				height: 36px;
 				line-height: 36px;

+ 63 - 36
src/components/notice/index.vue

@@ -51,11 +51,11 @@
 			<div class="notice-table" @click.stop  v-loading="loading" >
 				<div class="tabs">
 					<ul>
-						<li style="padding-left: 0; border: none" @click="pushInfoReq.type = '';getPushInfo()" :class="pushInfoReq.type == '' ? 'active' : ''">
+						<li style="padding-left: 0; border: none" @click="pushInfoReq.whetherFlow = '';getPushInfo()" :class="pushInfoReq.whetherFlow === '' ? 'active' : ''">
 							全部({{pushInfoReq.total}})
 						</li>
-						<li  @click="pushInfoReq.type = 1;getPushInfo()" :class="pushInfoReq.type == 1 ? 'active' : ''">流程(0)</li>
-						<li  @click="pushInfoReq.type = 2;getPushInfo()" :class="pushInfoReq.type == 2 ? 'active' : ''">业务(0)</li>
+						<li  @click="pushInfoReq.whetherFlow = 1;getPushInfo()" :class="pushInfoReq.whetherFlow === 1 ? 'active' : ''">流程</li>
+						<li  @click="pushInfoReq.whetherFlow = 0;getPushInfo()" :class="pushInfoReq.whetherFlow === 0 ? 'active' : ''">业务</li>
 					</ul>
 					<!-- <div class="more">查看更多&gt;</div> -->
 				</div>
@@ -68,22 +68,28 @@
 								:content="scope.row.title"
 								placement="top"
 							>
-								<span>{{ scope.row.title.slice(0,12) }}</span><span v-if="scope.row.title.length > 12">..</span>
+								<div class="noticeData-title" @click="toDealWith(scope.row)">{{ scope.row.title }}</div>
 							</el-tooltip>
 							
 						</template>
 					</el-table-column>
 					<el-table-column prop="businessType" label="类型" width="120">
+						<template #default="scope">
+							<span>{{ scope.row.businessType === 0 ? '流程' : '业务' }}</span>
+						</template>
 					</el-table-column>
 					<el-table-column prop="address" label="操作">
 						<template #default="scope">
-							<span style="cursor: pointer" @click="readFn(scope)">读</span>
+							<span style="cursor: pointer" @click="readFn(scope)">确认已读</span>
 						</template>
 					</el-table-column>
 				</el-table>
+				<div >
+					<el-pagination style="text-align: center;" :page-size="5" layout="prev, pager, next" :total="pushInfoReq.total" @current-change="handlePageChange" />
+				</div>
 				<div class="notice-btn-box" style="margin-top: 20px">
 					<!-- <el-button plain disabled>点击清空</el-button> -->
-					<el-button type="primary" disabled>全部已读</el-button>
+					<el-button type="primary" @click="allReadFn"  v-if="noticeData.length != 0">全部已读</el-button>
 				</div>
 			</div>
 		</div>
@@ -105,28 +111,7 @@ const emit = defineEmits(["update:modelValue"],'changeNum');
 const closeNoticeTableModal = () => {
 	emit("update:modelValue", false);
 };
-let noticeData = ref([
-	// {
-	// 	date: '2016-05-02',
-	// 	name: '王小虎',
-	// 	address: '上海市普陀区金沙江路 1518 弄',
-	// },
-	// {
-	// 	date: '2016-05-04',
-	// 	name: '王小虎',
-	// 	address: '上海市普陀区金沙江路 1517 弄',
-	// },
-	// {
-	// 	date: '2016-05-01',
-	// 	name: '王小虎',
-	// 	address: '上海市普陀区金沙江路 1519 弄',
-	// },
-	// {
-	// 	date: '2016-05-03',
-	// 	name: '王小虎',
-	// 	address: '上海市普陀区金沙江路 1516 弄',
-	// },
-])
+let noticeData = ref([])
 let index = ref(0)
 let data = ref([])
 let value = ref(false)
@@ -134,6 +119,37 @@ const moreFn = () => {
 	noticeTableModal.value = true
 }
 
+const toDealWith = (item) => {
+	
+	let urlConfig = {
+		"0":'DealWith',
+		"5":'Claim',
+		"6":"Abnormal"
+	}
+	proxy.$router.push({
+		name:urlConfig[item.businessType],
+	})
+}
+
+const allReadFn = () => {
+	ElMessageBox.confirm('此操作将会把所有未读消息标记为已读,是否继续?', '提示', {
+		confirmButtonText: '确定',
+		cancelButtonText: '取消',
+		type: 'warning',
+	}).then(() => {
+		let arr = []
+		noticeData.value.filter(item=>{
+			arr.push(item.id)
+		})
+		commonRead(arr)
+	}).catch(() => {
+		ElMessage({
+			type: 'info',
+			message: '已取消操作'
+		});          
+	});
+}
+
 const readFn = (item) => {
 	commonRead([item.row.id])
 }
@@ -160,7 +176,7 @@ const confirm = () => {
 // 	pageNum:1,
 // 	pageSize:30,
 // }).then(res=>{
-// 	data.value = res.rows
+// 	data.value = res.rows 
 // })
 
 const socketInit = () => {
@@ -215,18 +231,21 @@ let pushInfoReq = ref({
 	pushRead: 0,
 	type: '',
 	total:0,
+	whetherFlow:'',
 })
+
+const handlePageChange = (val) => {
+	pushInfoReq.value.pageNum = val
+	getPushInfo()
+}
+
 const loading = ref(false)
 const getPushInfo = () => {
 	loading.value = true
-	proxy.post('/pushInfo/page',{
-		pageNum:1,
-		pageSize:5,
-		pushRead:0,
-		type:2,
-	}).then(res=>{
+	proxy.post('/pushInfo/page',pushInfoReq.value).then(res=>{
 		noticeData.value = res.rows
-		pushInfoReq.value.total = res.total
+		pushInfoReq.value.total = pushInfoReq.value.whetherFlow === '' ? res.total : pushInfoReq.value.total
+		console.log(pushInfoReq)
 		setTimeout(() => {
 			loading.value = false
 		}, 500);
@@ -312,6 +331,14 @@ const openBottomBar = (type) => {
 }
 </style>
 <style>
+
+.noticeData-title{
+	width: 100%;
+	overflow: hidden;
+	text-overflow: ellipsis;
+	white-space: nowrap;
+	cursor: pointer;
+}
 .commons-notice .el-table__row {
 	height: 50px;
 }

+ 4 - 3
src/components/product/treeList.vue

@@ -285,9 +285,10 @@ const handleMouseOver = (data) => {
     overflow-y: auto;
     overflow-x: auto;
     .el-tree {
-      // .el-tree-node__content {
-      //   display: block;
-      // }
+      .el-tree-node__content {
+        width:min-content;
+        min-width: 260px;
+      }
 
       .el-tree-node > .el-tree-node__children {
         overflow: visible;

+ 1 - 1
src/views/index.vue

@@ -44,7 +44,7 @@
 								size="small"
 								@click="pushProcessApproval(scope.row)"
 							>
-								审批
+								办理
 							</el-button>
 						</template>
 					</el-table-column>

+ 1 - 1
src/views/process/dealWith/index.vue

@@ -51,7 +51,7 @@
 	</div>
 </template>
     
-  <script setup name="DealWith">
+  <script setup >
 /* eslint-disable vue/no-unused-components */
 import { ElMessage, ElMessageBox } from 'element-plus'
 import byTable from '@/components/byTable/index'

+ 24 - 1
src/views/process/processApproval/index.vue

@@ -3,7 +3,9 @@
     <div class="left-card">
       <div class="top">
         <div class="commons-title title">
-          {{ route.query.flowName || "流程标题(发起)" }}
+          {{ processConfig[route.query.flowKey] ?  
+            processConfig[route.query.flowKey].name + `(${processStaus[route.query.processType] || '发起'})` : "流程标题(发起)" 
+          }}
         </div>
         <div class="line"></div>
         <SendSubscribe ref="makeDom" @auxiliaryChange='(e) => getAuxiliaryData(e)' v-if="flowForm.flowKey == 'subscribe_flow'" :queryData="queryData.data"></SendSubscribe>
@@ -166,7 +168,28 @@ import SendSubscribeWDLY from "@/components/WDLY/process/SendSubscribeWDLY";
 //采购发起
 import SendPurchaseWDLY from "@/components/WDLY/process/SendPurchaseWDLY";
 import { ref } from "vue";
+const processConfig = ref({
+  subscribe_flow:{name:'申购'},
+  purchase_flow:{name:'采购'},
+  account_request_funds_flow:{name:'请款'},
+  sales_return_flow:{name:'退货'},
+  refund_flow:{name:'退款'},
+  pay_flow:{name:'付款'},
+  sale_quotation_flow:{name:'报价单'},
+  contract_flow:{name:'销售合同'},
+  contract_update_flow:{name:'销售合同变更'},
+  sample_flow:{name:'样品单'},
+  ehsd_purchase_flow:{name:'采购交接单'},
+  service_contract_flow:{name:'服务合同'},
+  wdly_apply_purchase:{name:'申购'},
+  wdly_purchase:{name:'采购'},
+});
 
+const processStaus = ref({
+  10: "审批",
+  20: "查看",
+  30: "退回发起",
+});
 const router = useRouter();
 const route = useRoute();
 // tab切换逻辑

+ 8 - 1
src/views/purchaseManage/purchaseManage/handoverSlipOne/index.vue

@@ -204,6 +204,13 @@ const config = computed(() => {
     },
     {
       attrs: {
+        label: "已发起数量",
+        prop: "startPurchaseCount",
+        width: "110",
+      },
+    },
+    {
+      attrs: {
         label: "交接单",
         width: "100",
         align: "center",
@@ -226,7 +233,7 @@ const getList = async (req) => {
   sourceList.value.pagination = { ...sourceList.value.pagination, ...req };
   loading.value = true;
   proxy
-    .post("/contractProduct/page", sourceList.value.pagination)
+    .post("/contractProduct/page1", sourceList.value.pagination)
     .then((message) => {
       sourceList.value.data = message.rows.map((x) => ({
         ...x,

+ 8 - 4
src/views/system/dept2/index.vue

@@ -209,19 +209,19 @@ const formConfig = computed(() => {
       data: [
         {
           label: proxy.t('dept.company'),
-          value: 0,
+          value: 1,
         },
         {
           label: proxy.t('dept.businessCenter'),
-          value: 1,
+          value: 2,
         },
         {
           label: proxy.t('dept.department'),
-          value: 2,
+          value: 3,
         },
         {
           label: proxy.t('dept.group'),
-          value: 3,
+          value: 4,
         },
       ],
     },
@@ -334,6 +334,8 @@ const submitForm = () => {
     const method = modalType.value == "add" ? "POST" : "PUT";
     console.log(method);
     if (!formData.data.parentId) formData.data.parentId = 0;
+    formData.data.leaderId = formData.data.leaderId ? formData.data.leaderId : '-1';
+    formData.data.directorId = formData.data.directorId ? formData.data.directorId : '-1';
     proxy
       .post(
         "/tenantDept",
@@ -392,6 +394,8 @@ const showType = (type) => {
 };
 const getDtl = (row) => {
   formData.data = { ...row };
+  formData.data.leaderId = formData.data.leaderId == '-1' ? '' : formData.data.leaderId;
+  formData.data.directorId = formData.data.directorId == '-1' ? '' : formData.data.directorId;
   sourceList.value.pagination.tenantId = row.tenantId;
   getUserList()
   modalType.value = "edit";

+ 6 - 0
src/views/systemTenant/tenant/deptTenant/index.vue

@@ -188,6 +188,7 @@ const formConfig = computed(() => {
       prop: "leaderId",
       label: "负责人",
       data: userList.value,
+      clearable: true,
       itemWidth: 50,
     },
     {
@@ -195,6 +196,7 @@ const formConfig = computed(() => {
       prop: "directorId",
       label: "总监",
       data: userList.value,
+      clearable: true,
       itemWidth: 50,
     },
     {
@@ -223,6 +225,8 @@ const openModal = (val) => {
 const submitForm = () => {
   submit.value.handleSubmit(() => {
     loadingDialog.value = true;
+    formData.data.leaderId = formData.data.leaderId ? formData.data.leaderId : '-1';
+    formData.data.directorId = formData.data.directorId ? formData.data.directorId : '-1';
     const method = modalType.value == "add" ? "POST" : "PUT";
     if (!formData.data.parentId) formData.data.parentId = 0;
     proxy.post("/tenantDept", formData.data, method).then(() => {
@@ -253,6 +257,8 @@ const listDelete = (row) => {
 const getDtl = (row) => {
   formData.data = { ...row };
   modalType.value = "edit";
+  formData.data.leaderId = formData.data.leaderId == '-1' ? '' : formData.data.leaderId;
+  formData.data.directorId = formData.data.directorId == '-1' ? '' : formData.data.directorId;
   dialogVisible.value = true;
 };
 </script>