Browse Source

Merge remote-tracking branch 'origin/master'

ljy121 1 year ago
parent
commit
4d4b934786

+ 25 - 0
client/src/views/OaSystem/projectCenter/projectDetail/components/xmht/ContractMilestone.vue

@@ -21,11 +21,23 @@ const { mutate: getContractMilestoneListMutate } = useMutation(getContractMilest
     contractMilestoneList.value = data
   }
 })
+const addClickHandle = () => {
+  contractMilestoneList.value.push({
+    name: '',
+    returnAmount: '',
+    actualReturnAmount: '',
+    planReturnTime: '',
+    description: ''
+  })
+}
 </script>
 
 <template>
   <div class="tableBox tableLineBox">
     <h4 class="td_title"><i class="icon"></i>合同里程碑</h4>
+    <div class="add_box">
+      <el-button type="primary" @click="addClickHandle">新增</el-button>
+    </div>
     <table>
       <thead>
         <tr>
@@ -36,6 +48,7 @@ const { mutate: getContractMilestoneListMutate } = useMutation(getContractMilest
           <th>已回款金额(元)</th>
           <th>预计到款时间</th>
           <th>说明</th>
+          <th>操作</th>
         </tr>
       </thead>
       <tbody>
@@ -47,6 +60,10 @@ const { mutate: getContractMilestoneListMutate } = useMutation(getContractMilest
           <td>{{ item['actualReturnAmount'] }}</td>
           <td>{{ item['planReturnTime'] }}</td>
           <td>{{ item['description'] }}</td>
+          <td style="width: 120px">
+            <el-button type="primary" size="small">编辑</el-button>
+            <el-button type="danger" size="small">删除</el-button>
+          </td>
         </tr>
       </tbody>
     </table>
@@ -55,4 +72,12 @@ const { mutate: getContractMilestoneListMutate } = useMutation(getContractMilest
 
 <style scoped lang="scss">
 @import './index.scss';
+.tableLineBox {
+  position: relative;
+  .add_box {
+    position: absolute;
+    right: 10px;
+    top: 0px;
+  }
+}
 </style>

+ 2 - 0
client/src/views/OaSystem/projectCenter/projectDetail/projectDetail.vue

@@ -297,6 +297,8 @@ const { mutate: startProjectStatusAndProcess } = useMutation(projectStatusAndPro
   }
 })
 const projectStatusAndProcessHandler = (sfys: string) => {
+  alert(1)
+  return
   if (!sfys) {
     console.warn('sfys字段值不能为空!')
     return

+ 8 - 3
client/src/views/OaSystem/projectCenter/purchaseContract/deptContract.vue

@@ -119,7 +119,7 @@
       </ul>
     </div>
     <div class="tableBox">
-      <div class="table" ref="tableRef">
+      <div class="table" ref="tableBoxRef">
         <el-table
           stripe
           :data="tableData"
@@ -130,6 +130,7 @@
             color: '#233755',
             height: '50px'
           }"
+          ref="tableRef"
         >
           <el-table-column label="序号" width="60">
             <template #default="scope">{{ scope.$index + 1 }}</template>
@@ -211,7 +212,7 @@ const secondTypeAllList = getDictOptions(DICT_TYPE.CONTRACT_SECOND_TYPE)
 
 const { exportHandleCommon, operateClick } = useMixins()
 const { wsCache } = useCache()
-const tableRef: any = ref(null)
+const tableBoxRef: any = ref(null)
 const tableHeight: any = ref(0)
 const user = wsCache.get(CACHE_KEY.USER)
 const deptId = user.user.deptId ? user.user.deptId : ''
@@ -253,6 +254,7 @@ const dueTimeObj = ref()
 
 const handleCurrentChange = (pageNo: number) => {
   queryParams.pageNo = pageNo
+  scrollLeft.value = tableRef.value.scrollBarRef.wrapRef.scrollLeft
   queryContractListAjax()
 }
 const exportHandle = async () => {
@@ -275,9 +277,12 @@ const exportHandle = async () => {
 const tableData = ref<Array<any>>([])
 const total = ref<number>()
 const searchHandle: () => void = () => {
+  scrollLeft.value = tableRef.value.scrollBarRef.wrapRef.scrollLeft
   queryContractListCalc()
   queryContractListAjax()
 }
+const tableRef = ref<any>(null)
+const scrollLeft = ref<number>(0)
 const queryContractListAjax = async (): Promise<void> => {
   const urlApi = `/contract/page`
   if (qdsjObj.value && qdsjObj.value.length > 0) {
@@ -340,6 +345,6 @@ const queryContractListCalc = async (): Promise<void> => {
 queryContractListCalc()
 
 onMounted(() => {
-  tableHeight.value = tableRef.value.clientHeight
+  tableHeight.value = tableBoxRef.value.clientHeight
 })
 </script>

+ 8 - 3
client/src/views/OaSystem/projectCenter/purchaseContract/myContract.vue

@@ -107,7 +107,7 @@
       </ul>
     </div>
     <div class="tableBox">
-      <div class="table" ref="tableRef">
+      <div class="table" ref="tableBoxRef">
         <el-table
           stripe
           :data="tableData"
@@ -118,6 +118,7 @@
             color: '#233755',
             height: '50px'
           }"
+          ref="tableRef"
         >
           <el-table-column label="序号" width="60">
             <template #default="scope">{{ scope.$index + 1 }}</template>
@@ -201,7 +202,7 @@ const { exportHandleCommon, operateClick } = useMixins()
 const { wsCache } = useCache()
 const user = wsCache.get(CACHE_KEY.USER)
 const userId = user.user.id ? user.user.id : ''
-const tableRef: any = ref(null)
+const tableBoxRef: any = ref(null)
 const tableHeight: any = ref(0)
 const queryParams = reactive<{
   contractNumber: string
@@ -241,6 +242,7 @@ const dueTimeObj = ref()
 
 const handleCurrentChange = (pageNo: number) => {
   queryParams.pageNo = pageNo
+  scrollLeft.value = tableRef.value.scrollBarRef.wrapRef.scrollLeft
   queryContractListAjax()
 }
 const exportHandle = async () => {
@@ -263,9 +265,12 @@ const exportHandle = async () => {
 const tableData = ref<Array<any>>([])
 const total = ref<number>()
 const searchHandle: () => void = () => {
+  scrollLeft.value = tableRef.value.scrollBarRef.wrapRef.scrollLeft
   queryContractListCalc()
   queryContractListAjax()
 }
+const tableRef = ref<any>(null)
+const scrollLeft = ref<number>(0)
 const queryContractListAjax = async (): Promise<void> => {
   const urlApi = `/contract/page`
   if (qdsjObj.value && qdsjObj.value.length > 0) {
@@ -327,6 +332,6 @@ const queryContractListCalc = async (): Promise<void> => {
 }
 queryContractListCalc()
 onMounted(() => {
-  tableHeight.value = tableRef.value.clientHeight
+  tableHeight.value = tableBoxRef.value.clientHeight
 })
 </script>

+ 9 - 3
client/src/views/OaSystem/projectCenter/purchaseContract/purchaseContract.vue

@@ -131,7 +131,7 @@
       </ul>
     </div>
     <div class="tableBox">
-      <div class="table" ref="tableRef">
+      <div class="table" ref="tableBoxRef">
         <el-table
           :data="tableData"
           style="width: 100%; height: 100%"
@@ -142,6 +142,7 @@
             color: '#233755',
             height: '50px'
           }"
+          ref="tableRef"
         >
           <el-table-column label="序号" width="60">
             <template #default="scope">{{ scope.$index + 1 }}</template>
@@ -223,7 +224,7 @@ const mainTypeAllList = getDictOptions(DICT_TYPE.CONTRACT_MAIN_TYPE)
 const secondTypeAllList = getDictOptions(DICT_TYPE.CONTRACT_SECOND_TYPE)
 
 const { exportHandleCommon, operateClick } = useMixins()
-const tableRef: any = ref(null)
+const tableBoxRef: any = ref(null)
 const tableHeight: any = ref(0)
 const queryParams = reactive<{
   contractNumber: string
@@ -266,6 +267,7 @@ const dueTimeObj = ref()
 
 const handleCurrentChange = (pageNo: number) => {
   queryParams.pageNo = pageNo
+  scrollLeft.value = tableRef.value.scrollBarRef.wrapRef.scrollLeft
   queryContractListAjax()
 }
 const exportHandle = async () => {
@@ -296,9 +298,12 @@ const exportHandle = async () => {
 const tableData = ref<Array<any>>([])
 const total = ref<number>()
 const searchHandle: () => void = () => {
+  scrollLeft.value = tableRef.value.scrollBarRef.wrapRef.scrollLeft
   queryContractListCalc()
   queryContractListAjax()
 }
+const tableRef = ref<any>(null)
+const scrollLeft = ref<number>(0)
 const queryContractListAjax = async (): Promise<void> => {
   const urlApi = `/contract/page`
   if (contractOnObj.value && contractOnObj.value.length > 0) {
@@ -330,6 +335,7 @@ const queryContractListAjax = async (): Promise<void> => {
   const result = await request.get({ url: urlApi, params: sendData }, '/business')
   tableData.value = result['records']
   total.value = result['total']
+  tableRef.value.setScrollLeft(scrollLeft.value)
 }
 queryContractListAjax()
 
@@ -377,6 +383,6 @@ const queryContractListCalc = async (): Promise<void> => {
 queryContractListCalc()
 
 onMounted(() => {
-  tableHeight.value = tableRef.value.clientHeight
+  tableHeight.value = tableBoxRef.value.clientHeight
 })
 </script>

+ 5 - 1
zjugis-module-adm/zjugis-module-adm-biz/src/main/java/com/zjugis/module/adm/controller/admin/report/vo/base/ReportRespVO.java

@@ -1,7 +1,6 @@
 package com.zjugis.module.adm.controller.admin.report.vo.base;
 
 import com.zjugis.module.adm.controller.admin.report.vo.comment.ReportCommentRespVO;
-import com.zjugis.module.adm.controller.admin.report.vo.receive.ReportReceiveRespVO;
 import com.zjugis.module.adm.controller.admin.report.vo.workload.ReportWorkloadRespVO;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
@@ -20,6 +19,11 @@ public class ReportRespVO extends ReportBaseVO {
     @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
     private LocalDateTime createTime;
 
+    /**
+     * 用户昵称
+     */
+    private String userNickname;
+
 
     @Schema(description = "工作量列表")
     private List<ReportWorkloadRespVO> workload;

+ 2 - 1
zjugis-module-adm/zjugis-module-adm-biz/src/main/java/com/zjugis/module/adm/service/report/ReportServiceImpl.java

@@ -236,11 +236,12 @@ public class ReportServiceImpl implements ReportService {
         List<ReportRespVO> reportList = reportPageResult.getList();
         List<Long> reportIds = reportList.stream().map(ReportRespVO::getId).collect(Collectors.toList());
         Set<String> userIdList = reportList.stream().map(ReportRespVO::getUserId).collect(Collectors.toSet());
-
+        Map<String, AdminUserRespDTO> userMap = adminUserApi.getAllUserMap();
         //工作量
         List<ReportWorkloadRespVO> workloadDetailList = reportWorkloadService.getReportWorkloadByRIds(reportIds, userIdList);
         reportList.forEach(report -> {
             report.setWorkload(workloadDetailList.stream().filter(load -> load.getReportId().equals(report.getId())).collect(Collectors.toList()));
+            report.setUserNickname(userMap.get(report.getUserId()).getNickname());
         });
         return reportPageResult;
     }