Explorar o código

财务分摊导出增加小数点位控制

QuYueTing hai 3 semanas
pai
achega
fc3cb74029

+ 2 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/FinanceController.java

@@ -108,8 +108,9 @@ public class FinanceController {
                                   @RequestParam(defaultValue = "0")Integer onlyTotal,
                                   @RequestParam String date, Boolean assignNoProUser,
                                   Integer deptId, @RequestParam(required = false, defaultValue = "1") Integer salaryType,
+                                  @RequestParam(required = false, defaultValue = "2") Integer scale,//小数点后几位
                                   HttpServletRequest request) {
-        return financeService.exportData(groupByCategory,onlyTotal, date, assignNoProUser,deptId, salaryType, request);
+        return financeService.exportData(groupByCategory,onlyTotal, date, assignNoProUser,deptId, salaryType, scale, request);
     }
 
     /**

+ 1 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/FinanceService.java

@@ -21,7 +21,7 @@ public interface FinanceService extends IService<Finance> {
 
     HttpRespMsg importData(Integer companyId, String yearMonth, Boolean syncUserCost, Boolean syncHistoryReport, Integer salaryType, MultipartFile multipartFile, HttpServletRequest request) throws Exception;
 
-    HttpRespMsg exportData(Integer groupByCategory,Integer onlyTotal, String date, Boolean assignNoProUser,Integer deptId, Integer salaryType, HttpServletRequest request);
+    HttpRespMsg exportData(Integer groupByCategory,Integer onlyTotal, String date, Boolean assignNoProUser,Integer deptId, Integer salaryType, Integer scale, HttpServletRequest request);
 
     HttpRespMsg getTimeCost(String yearMonth,Integer deptId, Boolean assignNoProUser, Integer salaryType, Integer companyId);
 

+ 65 - 65
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/FinanceServiceImpl.java

@@ -667,7 +667,7 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
     }
 
     @Override
-    public HttpRespMsg exportData(Integer groupByCategory,Integer onlyTotal, String yearMonth, Boolean assignNoProUser, Integer deptId, Integer salaryType, HttpServletRequest request) {
+    public HttpRespMsg exportData(Integer groupByCategory,Integer onlyTotal, String yearMonth, Boolean assignNoProUser, Integer deptId, Integer salaryType,Integer scale, HttpServletRequest request) {
         HttpRespMsg httpRespMsg = new HttpRespMsg();
         try {
             Integer companyId = userMapper.selectById(request.getHeader("Token")).getCompanyId();
@@ -1051,21 +1051,21 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
                                         accumulate = accumulate.add(assignAmount);
                                         System.out.println("增加项目成本==="+assignAmount);
                                         p.cost = p.cost.add(assignAmount);
-                                        p.salary = p.salary.add(user.getMonthCost().multiply(new BigDecimal(p.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                        p.bonus = p.bonus.add(user.getBonus().multiply(new BigDecimal(p.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                        p.allowance = p.allowance.add(user.getAllowance().multiply(new BigDecimal(p.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                        p.old = p.old.add(user.getInsuranceOld().multiply(new BigDecimal(p.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                        p.medical = p.medical.add(user.getInsuranceMedical().multiply(new BigDecimal(p.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                        p.loseJob = p.loseJob.add(user.getInsuranceLosejob().multiply(new BigDecimal(p.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                        p.injury = p.injury.add(user.getInsuranceInjury().multiply(new BigDecimal(p.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                        p.house = p.house.add(user.getHouseFund().multiply(new BigDecimal(p.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                        if (user.getCustomField1() != null) p.field1 = p.field1.add(user.getCustomField1().multiply(new BigDecimal(p.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                        if (user.getCustomField2() != null) p.field2 = p.field2.add(user.getCustomField2().multiply(new BigDecimal(p.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                        if (user.getCustomField3() != null) p.field3 = p.field3.add(user.getCustomField3().multiply(new BigDecimal(p.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                        if (user.getCustomField4() != null) p.field4 = p.field4.add(user.getCustomField4().multiply(new BigDecimal(p.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                        if (user.getCustomField5() != null) p.field5 = p.field5.add(user.getCustomField5().multiply(new BigDecimal(p.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                        if (user.getCustomField6() != null) p.field6 = p.field6.add(user.getCustomField6().multiply(new BigDecimal(p.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                        if (user.getCustomField7() != null) p.field7 = p.field7.add(user.getCustomField7().multiply(new BigDecimal(p.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
+                                        p.salary = p.salary.add(user.getMonthCost().multiply(new BigDecimal(p.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                        p.bonus = p.bonus.add(user.getBonus().multiply(new BigDecimal(p.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                        p.allowance = p.allowance.add(user.getAllowance().multiply(new BigDecimal(p.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                        p.old = p.old.add(user.getInsuranceOld().multiply(new BigDecimal(p.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                        p.medical = p.medical.add(user.getInsuranceMedical().multiply(new BigDecimal(p.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                        p.loseJob = p.loseJob.add(user.getInsuranceLosejob().multiply(new BigDecimal(p.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                        p.injury = p.injury.add(user.getInsuranceInjury().multiply(new BigDecimal(p.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                        p.house = p.house.add(user.getHouseFund().multiply(new BigDecimal(p.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                        if (user.getCustomField1() != null) p.field1 = p.field1.add(user.getCustomField1().multiply(new BigDecimal(p.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                        if (user.getCustomField2() != null) p.field2 = p.field2.add(user.getCustomField2().multiply(new BigDecimal(p.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                        if (user.getCustomField3() != null) p.field3 = p.field3.add(user.getCustomField3().multiply(new BigDecimal(p.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                        if (user.getCustomField4() != null) p.field4 = p.field4.add(user.getCustomField4().multiply(new BigDecimal(p.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                        if (user.getCustomField5() != null) p.field5 = p.field5.add(user.getCustomField5().multiply(new BigDecimal(p.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                        if (user.getCustomField6() != null) p.field6 = p.field6.add(user.getCustomField6().multiply(new BigDecimal(p.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                        if (user.getCustomField7() != null) p.field7 = p.field7.add(user.getCustomField7().multiply(new BigDecimal(p.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
                                         if (p.secondCost == null)  {
                                             p.secondCost = new BigDecimal(0);
                                         }
@@ -1286,25 +1286,25 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
                                 System.out.println("+p.getWorkingtime="+pItem.workingTime+", project="+pItem.project);
                                 //避免偏差
                                 BigDecimal assignAmount = i < filteredList.size() -1 ?publicProjectCost.multiply(new BigDecimal(pItem.workingTime / sum)):publicProjectCost.subtract(accumulate);
-                                assignAmount = assignAmount.setScale(2, BigDecimal.ROUND_HALF_UP);
+                                assignAmount = assignAmount.setScale(scale, BigDecimal.ROUND_HALF_UP);
                                 accumulate = accumulate.add(assignAmount);
                                 System.out.println(category + "分摊出来的成本到["+pItem.getProject()+"]==="+assignAmount);
                                 pItem.cost = pItem.cost.add(assignAmount);
-                                pItem.salary = pItem.salary.add(publicProjectSalary.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                pItem.bonus = pItem.bonus.add(publicProjectBonus.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                pItem.allowance = pItem.allowance.add(publicProjectAllowance.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                pItem.old = pItem.old.add(publicProjectOld.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                pItem.medical = pItem.medical.add(publicProjectMedical.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                pItem.loseJob = pItem.loseJob.add(publicProjectLoseJob.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                pItem.injury = pItem.injury.add(publicProjectInjury.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                pItem.house = pItem.house.add(publicProjectHouse.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                if (publicProjectField1 != null) pItem.field1 = pItem.field1.add(publicProjectField1.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                if (publicProjectField2 != null) pItem.field2 = pItem.field2.add(publicProjectField2.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                if (publicProjectField3 != null) pItem.field3 = pItem.field3.add(publicProjectField3.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                if (publicProjectField4 != null) pItem.field4 = pItem.field4.add(publicProjectField4.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                if (publicProjectField5 != null) pItem.field5 = pItem.field5.add(publicProjectField5.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                if (publicProjectField6 != null) pItem.field6 = pItem.field6.add(publicProjectField6.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
-                                if (publicProjectField7 != null) pItem.field7 = pItem.field7.add(publicProjectField7.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(2, BigDecimal.ROUND_HALF_UP));
+                                pItem.salary = pItem.salary.add(publicProjectSalary.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                pItem.bonus = pItem.bonus.add(publicProjectBonus.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                pItem.allowance = pItem.allowance.add(publicProjectAllowance.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                pItem.old = pItem.old.add(publicProjectOld.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                pItem.medical = pItem.medical.add(publicProjectMedical.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                pItem.loseJob = pItem.loseJob.add(publicProjectLoseJob.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                pItem.injury = pItem.injury.add(publicProjectInjury.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                pItem.house = pItem.house.add(publicProjectHouse.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                if (publicProjectField1 != null) pItem.field1 = pItem.field1.add(publicProjectField1.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                if (publicProjectField2 != null) pItem.field2 = pItem.field2.add(publicProjectField2.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                if (publicProjectField3 != null) pItem.field3 = pItem.field3.add(publicProjectField3.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                if (publicProjectField4 != null) pItem.field4 = pItem.field4.add(publicProjectField4.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                if (publicProjectField5 != null) pItem.field5 = pItem.field5.add(publicProjectField5.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                if (publicProjectField6 != null) pItem.field6 = pItem.field6.add(publicProjectField6.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
+                                if (publicProjectField7 != null) pItem.field7 = pItem.field7.add(publicProjectField7.multiply(new BigDecimal(pItem.workingTime / sum)).setScale(scale, BigDecimal.ROUND_HALF_UP));
                                 if (pItem.thirdCost == null)  {
                                     pItem.thirdCost = new BigDecimal(0);
                                 }
@@ -1337,36 +1337,36 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
             }
 
             //整体四舍五入处理
-            totalMoneyCost = totalMoneyCost.setScale(2, BigDecimal.ROUND_HALF_UP);
-            totalSalary = totalSalary.setScale(2, BigDecimal.ROUND_HALF_UP);
-            totalBonus = totalBonus.setScale(2, BigDecimal.ROUND_HALF_UP);
-            totalAllowance = totalAllowance.setScale(2, BigDecimal.ROUND_HALF_UP);
-            totalOld = totalOld.setScale(2, BigDecimal.ROUND_HALF_UP);
-            totalMedical = totalMedical.setScale(2, BigDecimal.ROUND_HALF_UP);
-            totalLoseJob = totalLoseJob.setScale(2, BigDecimal.ROUND_HALF_UP);
-            totalInjury = totalInjury.setScale(2, BigDecimal.ROUND_HALF_UP);
-            totalHouse = totalHouse.setScale(2, BigDecimal.ROUND_HALF_UP);
+            totalMoneyCost = totalMoneyCost.setScale(scale, BigDecimal.ROUND_HALF_UP);
+            totalSalary = totalSalary.setScale(scale, BigDecimal.ROUND_HALF_UP);
+            totalBonus = totalBonus.setScale(scale, BigDecimal.ROUND_HALF_UP);
+            totalAllowance = totalAllowance.setScale(scale, BigDecimal.ROUND_HALF_UP);
+            totalOld = totalOld.setScale(scale, BigDecimal.ROUND_HALF_UP);
+            totalMedical = totalMedical.setScale(scale, BigDecimal.ROUND_HALF_UP);
+            totalLoseJob = totalLoseJob.setScale(scale, BigDecimal.ROUND_HALF_UP);
+            totalInjury = totalInjury.setScale(scale, BigDecimal.ROUND_HALF_UP);
+            totalHouse = totalHouse.setScale(scale, BigDecimal.ROUND_HALF_UP);
 //            totalOther = totalOther.setScale(2, BigDecimal.ROUND_HALF_UP);
             if (totalField1 != null) {
-                totalField1 = totalField1.setScale(2, BigDecimal.ROUND_HALF_UP);
+                totalField1 = totalField1.setScale(scale, BigDecimal.ROUND_HALF_UP);
             }
             if (totalField2 != null) {
-                totalField2 = totalField2.setScale(2, BigDecimal.ROUND_HALF_UP);
+                totalField2 = totalField2.setScale(scale, BigDecimal.ROUND_HALF_UP);
             }
             if (totalField3 != null) {
-                totalField3 = totalField3.setScale(2, BigDecimal.ROUND_HALF_UP);
+                totalField3 = totalField3.setScale(scale, BigDecimal.ROUND_HALF_UP);
             }
             if (totalField4 != null) {
-                totalField4 = totalField4.setScale(2, BigDecimal.ROUND_HALF_UP);
+                totalField4 = totalField4.setScale(scale, BigDecimal.ROUND_HALF_UP);
             }
             if (totalField5 != null) {
-                totalField5 = totalField5.setScale(2, BigDecimal.ROUND_HALF_UP);
+                totalField5 = totalField5.setScale(scale, BigDecimal.ROUND_HALF_UP);
             }
             if (totalField6 != null) {
-                totalField6 = totalField6.setScale(2, BigDecimal.ROUND_HALF_UP);
+                totalField6 = totalField6.setScale(scale, BigDecimal.ROUND_HALF_UP);
             }
             if (totalField7 != null) {
-                totalField7 = totalField7.setScale(2, BigDecimal.ROUND_HALF_UP);
+                totalField7 = totalField7.setScale(scale, BigDecimal.ROUND_HALF_UP);
             }
             //查找所有部门
             List<Department> allDepartments = departmentMapper.selectList(new QueryWrapper<Department>().eq("company_id", companyId));
@@ -1377,22 +1377,22 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
 //                    if (p.getCost().compareTo(new BigDecimal(0)) == 0) {
 //                        continue;//合计为0的,跳过; 实现排除生产其他和研发其他这两个项目
 //                    }
-                    p.cost = p.cost.setScale(2, BigDecimal.ROUND_HALF_UP);
-                    p.salary = p.salary.setScale(2, BigDecimal.ROUND_HALF_UP);
-                    p.bonus = p.bonus.setScale(2, BigDecimal.ROUND_HALF_UP);
-                    p.allowance = p.allowance.setScale(2, BigDecimal.ROUND_HALF_UP);
-                    p.old = p.old.setScale(2, BigDecimal.ROUND_HALF_UP);
-                    p.medical = p.medical.setScale(2, BigDecimal.ROUND_HALF_UP);
-                    p.loseJob = p.loseJob.setScale(2, BigDecimal.ROUND_HALF_UP);
-                    p.injury = p.injury.setScale(2, BigDecimal.ROUND_HALF_UP);
-                    p.house = p.house.setScale(2, BigDecimal.ROUND_HALF_UP);
-                    p.field1 = p.field1.setScale(2, BigDecimal.ROUND_HALF_UP);
-                    p.field2 = p.field2.setScale(2, BigDecimal.ROUND_HALF_UP);
-                    p.field3 = p.field3.setScale(2, BigDecimal.ROUND_HALF_UP);
-                    p.field4 = p.field4.setScale(2, BigDecimal.ROUND_HALF_UP);
-                    p.field5 = p.field5.setScale(2, BigDecimal.ROUND_HALF_UP);
-                    p.field6 = p.field6.setScale(2, BigDecimal.ROUND_HALF_UP);
-                    p.field7 = p.field7.setScale(2, BigDecimal.ROUND_HALF_UP);
+                    p.cost = p.cost.setScale(scale, BigDecimal.ROUND_HALF_UP);
+                    p.salary = p.salary.setScale(scale, BigDecimal.ROUND_HALF_UP);
+                    p.bonus = p.bonus.setScale(scale, BigDecimal.ROUND_HALF_UP);
+                    p.allowance = p.allowance.setScale(scale, BigDecimal.ROUND_HALF_UP);
+                    p.old = p.old.setScale(scale, BigDecimal.ROUND_HALF_UP);
+                    p.medical = p.medical.setScale(scale, BigDecimal.ROUND_HALF_UP);
+                    p.loseJob = p.loseJob.setScale(scale, BigDecimal.ROUND_HALF_UP);
+                    p.injury = p.injury.setScale(scale, BigDecimal.ROUND_HALF_UP);
+                    p.house = p.house.setScale(scale, BigDecimal.ROUND_HALF_UP);
+                    p.field1 = p.field1.setScale(scale, BigDecimal.ROUND_HALF_UP);
+                    p.field2 = p.field2.setScale(scale, BigDecimal.ROUND_HALF_UP);
+                    p.field3 = p.field3.setScale(scale, BigDecimal.ROUND_HALF_UP);
+                    p.field4 = p.field4.setScale(scale, BigDecimal.ROUND_HALF_UP);
+                    p.field5 = p.field5.setScale(scale, BigDecimal.ROUND_HALF_UP);
+                    p.field6 = p.field6.setScale(scale, BigDecimal.ROUND_HALF_UP);
+                    p.field7 = p.field7.setScale(scale, BigDecimal.ROUND_HALF_UP);
 
                     //组装写入excel文件的数据,从项目开始,项目下面挂成员
                     List<String> rowData = new ArrayList<String>();
@@ -1821,7 +1821,7 @@ public class FinanceServiceImpl extends ServiceImpl<FinanceMapper, Finance> impl
                 //用排序后的列表来赋值
                 pList.clear();
                 pList.addAll(orderedList);
-                final int scaleSize = 2;
+                final int scaleSize = scale;
                 pList.forEach(p->{
                     p.cost = p.cost.setScale(scaleSize, BigDecimal.ROUND_HALF_UP);
                     p.salary = p.salary.setScale(scaleSize, BigDecimal.ROUND_HALF_UP);

+ 14 - 2
fhKeeper/formulahousekeeper/timesheet/src/views/project/financeComponents/salaryDetails.vue

@@ -779,6 +779,16 @@
                 <div style="margin-top: 20px;">
                     <el-checkbox v-model="personnelAllocation">含人员分摊明细</el-checkbox>
                 </div>
+                <div style="margin-top: 20px;">
+                    <span style="margin-right: 10px;">项目数据精度:保留小数点后</span>
+                    <el-select v-model="exportScale" size="small" style="width: 120px;">
+                        <el-option :value="2" label="2位"></el-option>
+                        <el-option :value="3" label="3位"></el-option>
+                        <el-option :value="4" label="4位"></el-option>
+                        <!-- <el-option :value="5" label="小数点后5位"></el-option>
+                        <el-option :value="6" label="小数点后6位"></el-option> -->
+                    </el-select>
+                </div>
             </div>
             <div slot="footer" class="dialog-footer">
                 <el-button @click="exportData" :loading="exportDataProcessing" type="primary">{{ $t('export.export')
@@ -916,7 +926,8 @@ export default {
             notParticipatingInSharedAllProject: false,
             notParticipatingInSharedProjectDisabled: false,
             departmentId: '',
-            departmentArray: []
+            departmentArray: [],
+            exportScale: 2
         };
     },
     methods: {
@@ -1921,7 +1932,8 @@ export default {
                 groupByCategory: this.groupByCategory,
                 onlyTotal: this.personnelAllocation ? 1 : 0,
                 deptId: this.departmentId[this.departmentId.length - 1],
-                salaryType: this.salaryType
+                salaryType: this.salaryType,
+                scale: this.exportScale
             },
                 res => {
                     this.exportDataProcessing = false;