Forráskód Böngészése

报表定义功能序号问题修改,删除功能修改,新增功能修改,

ZhangYanJie 3 hónapja
szülő
commit
50e17acc4e

+ 2 - 8
Procedure/backend/project/src/main/java/com/sundata/product/rwa/businessconfig/utils/FilesValueCheckUtils.java

@@ -311,20 +311,14 @@ public class FilesValueCheckUtils {
                     model.setReportUnitNo(defineModel.getReportNo()+
                             String.valueOf(i+1)+String.valueOf(rowNum+1)+String.valueOf(cellNum+1));
                     // 序号记录
-                    reportNo = reportNo + 1;
-                    model.setId(String.valueOf(reportNo));
+//                    reportNo = reportNo + 1;
+//                    model.setId(String.valueOf(reportNo));
                     if (cellData.getCellType().equals(CellType.FORMULA)) {
                         if (cellData.getCellFormula().equals("ROW()&\"-\"&COLUMN()")) {
-                            // 序号记录
-//                            reportNo = reportNo + 1;
-//                            model.setId(String.valueOf(reportNo));
                             model.setExcelFormula(cellData.getCellFormula());
                             // 需填报的单元详情列表
                             modelFillInList.add(model);
                         } else {
-                            // 序号记录
-//                            reportNo = reportNo + 1;
-//                            model.setId(String.valueOf(reportNo));
                             // 需计算的单元详情列表计
                             model.setExcelFormula(cellData.getCellFormula());
                             modelCalcList.add(model);

+ 2 - 2
Procedure/backend/project/src/main/java/com/sundata/product/rwa/reportformconfigreportcreater/action/ReportFillingConfigAction.java

@@ -133,8 +133,8 @@ public class ReportFillingConfigAction extends BaseAction {
      */
     @RequestMapping({"createCalcReportData"})
     public void createCalcReportData(HttpServletRequest request, HttpServletResponse response,
-                                 @RequestBody List<ReportCalculationModel> modelList) {
-        reportFillingConfigService.createCalcReportData(modelList);
+                                 @RequestBody List<ReportCalculationModel> modelList,@RequestParam String reportNo) {
+        reportFillingConfigService.createCalcReportData(modelList,reportNo);
     }
 
 

+ 2 - 4
Procedure/backend/project/src/main/java/com/sundata/product/rwa/reportformconfigreportcreater/mybatis/ReportFillingConfigMapper.xml

@@ -138,7 +138,6 @@
         EDATE,
         TERM,
         DATA_DATE,
-        ID,
         REPORT_NO,
         REPORT_UNIT_NO,
         REPORT_UNIT_SHEET,
@@ -159,7 +158,6 @@
         #{model.endDate},
         #{model.term},
         #{model.dataDate},
-        #{model.id},
         #{model.reportno},
         #{model.reportUnitNo},
         #{model.reportUnitSheet},
@@ -226,8 +224,8 @@
             </set>
         </trim>
         <where>
-            <if test="model.id != null and model.id != ''">
-                ID = #{model.id}
+            <if test="model.reportUnitNo != null and model.reportUnitNo != ''">
+                REPORT_UNIT_NO = #{model.reportUnitNo}
             </if>
             <if test="model.reportno != null and model.reportno != ''">
                 and REPORT_NO = #{model.reportno}

+ 10 - 2
Procedure/backend/project/src/main/java/com/sundata/product/rwa/reportformconfigreportcreater/service/ReportFillingConfigService.java

@@ -109,8 +109,14 @@ public class ReportFillingConfigService {
         return resMap;
     }
 
-    public void createCalcReportData(List<ReportCalculationModel> modelList) {
+    public void createCalcReportData(List<ReportCalculationModel> modelList,String reportNo) {
         for(ReportCalculationModel model:modelList) {
+            if (null == model.getExcelFormula()) {
+                model.setExcelFormula("ROW()&\"-\"&COLUMN()");
+                model.setReportno(reportNo);
+                model.setReportUnitNo(reportNo+model.getReportUnitSheet()
+                        +model.getReportUnitRow()+model.getReportUnitCell());
+            }
             reportFillingConfigMapper.createCalcReportData(model);
         }
     }
@@ -146,7 +152,7 @@ public class ReportFillingConfigService {
         List<ReportCalculationModel> newList = new ArrayList<ReportCalculationModel>();
         // 循环整个列表,根据values分别老列表和新加列表
         for(ReportCalculationModel model:modelList) {
-            if (Arrays.asList(values).contains(model.getId())) {
+            if (Arrays.asList(values).contains(model.getReportUnitNo())) {
                 oldList.add(model);
             } else {
                 newList.add(model);
@@ -187,6 +193,8 @@ public class ReportFillingConfigService {
                     }
                 }
                 // 新数据插入
+                model.setReportUnitNo(model.getReportno()+model.getReportUnitSheet()
+                        +model.getReportUnitRow()+model.getReportUnitCell());
                 reportFillingConfigMapper.createCalcReportData(model);
             }
         }

+ 30 - 23
Procedure/frontend/projectb/src/pages/product/report_form_config_reportcreater/reportfillingconfig.tsx

@@ -126,14 +126,16 @@ const reportfillingconfig : React.FC<widowRush> = (prop:widowRush) => {
       let keys ='';
        await updateReportData(data);
        fillInFormDataBk.forEach((items)=>{
-        keys = keys+items.id+","
+        keys = keys+items.reportUnitNo+","
        });
        await updateCalcReportData(fillInFormData,keys);
        closeAndRefresh();
     } else if (editType == 'create' ) {
       fillInFormData.push(...calculateFormData);
       await createReportData(data);
-      await createCalcReportData(fillInFormData);
+      if (data?.reportNo) {
+        await createCalcReportData(fillInFormData,data?.reportNo);
+      }
       closeAndRefresh();
     }
     setDetailVisible(false);
@@ -441,13 +443,8 @@ const analyseFile = async (data: ReportDefinitionModel) => {
           successMessage=""
           onClick={
             ()=>{
-              if (record?.id != null ) {
-                fillInActionRef.current?.startEditable(record?.id);
-              } else {
-                fillInActionRef.current?.startEditable(''+index);
-              }
-              
-           } }
+                fillInActionRef.current?.startEditable(record?.reportUnitNo);
+           }}
         >
           编辑
         </SDOperate>,
@@ -464,7 +461,7 @@ const analyseFile = async (data: ReportDefinitionModel) => {
       search: false,
       hideInTable: false,
       editable:false,
-      render: (text, record, index) => { index  = index + 1;record.id=''+index; return index},
+      render: (text, record, index) => { index  = index + 1; return index},
     },
     {
       title: '所在sheet页位置',
@@ -532,7 +529,7 @@ const analyseFile = async (data: ReportDefinitionModel) => {
           successMessage=""
           onClick={
             ()=>{
-              calculateActionRef.current?.startEditable(record.id);
+              calculateActionRef.current?.startEditable(record.reportUnitNo);
            }}
         >
           编辑
@@ -696,7 +693,7 @@ const analyseFile = async (data: ReportDefinitionModel) => {
             <SDLayout>
             <SDAreaTtile title='需填报的单元详情'/>
             <EditableProTable
-              rowKey={(record) => record.id}
+              rowKey={(record) => record.reportUnitNo}
               // rowKey="id"
               columns={reportCalculateColumns}
               recordCreatorProps={false}
@@ -722,7 +719,7 @@ const analyseFile = async (data: ReportDefinitionModel) => {
                   onClick={() => {
                     //setIntoRestId();
                     fillInActionRef.current?.addEditRecord?.({
-                      id: reptId+1,
+                      reportUnitNo: reptId+1,
                       title: 'NEWROW',
                     });
                   }}
@@ -733,15 +730,20 @@ const analyseFile = async (data: ReportDefinitionModel) => {
                 key="import"
                 successMessage=''
                 onClick={() => {
-                  if (selectRowData.id) {
-                    if (newCreateFormData.some((item)=> item.id == selectRowData.id)) {
-                      setFillInFormData(...[fillInFormData.filter((item)=>{return item.id !== selectRowData.id})]);
-                      fillInActionRef.current?.reload();
-                    } else {
-                      baseFun.error('只能删除手动添加的元素');
-                      return;
-                    }
-
+                  //if (selectRowData.reportUnitNo) {
+                    // if (newCreateFormData.some((item)=> item.id == selectRowData.id)) {
+                    //   setFillInFormData(...[fillInFormData.filter((item)=>{return item.id !== selectRowData.id})]);
+                    //   fillInActionRef.current?.reload();
+                    // } else {
+                    //   baseFun.error('只能删除手动添加的元素');
+                    //   return;
+                    // }
+                  //}
+                  if (!newCreateFormData.some((item)=> item.reportUnitNo === selectRowData.reportUnitNo)) {
+                    baseFun.error('只能删除手动添加的元素');
+                    return;
+                  } else {
+                    setFillInFormData(...[fillInFormData.filter((item)=>{return item.reportUnitNo !== selectRowData.reportUnitNo})]);
                   }
                 }}
               >
@@ -749,15 +751,20 @@ const analyseFile = async (data: ReportDefinitionModel) => {
               </SDButton>,
               ]:[]}
               onChange={ (value: readonly ReportCalculationModel[]) => {
+                // let fillList = fillInFormData.filter(obj1 => formRef.current?.getFieldValue('reportNo')+
+                //   value[value.length-1].reportUnitSheet+value[value.length-1].reportUnitRow+
+                //   value[value.length-1].reportUnitCell !== obj1.reportUnitNo);
+                //   fillList.push(value[value.length-1]);
                 newCreateFormData.push(value[value.length-1]);
                 setNewCreateFormData([...newCreateFormData]);
                 setFillInFormData([...value]);
+                //setFillInFormData([...fillList]);
               }}
            />
            </SDLayout>
           <SDAreaTtile title='需计算的单元详情'/>
           <EditableProTable
-              rowKey="id"
+              rowKey={(record) => record.reportUnitNo}
               columns={reportCalculateOtherColumns}
               recordCreatorProps={false}
               actionRef={calculateActionRef}

+ 7 - 6
Procedure/frontend/projectb/src/services/rwa/product/report_form_config_reportcreater/reportfillingconfig.ts

@@ -44,13 +44,13 @@ export type ReportDefinitionModel = {
     // 报表编号
     reportno?: string;
     // 报表计算单元编号
-    reportUnitNo?: string;
+    reportUnitNo: string;
     // sheet页位置
-    reportUnitSheet?: string;
+    reportUnitSheet: string;
     // 行位置
-    reportUnitRow?: string;
+    reportUnitRow: string;
     // 列位置
-    reportUnitCell?: string;
+    reportUnitCell: string;
     // 单元格样式类型
     unitStyleType?: string;
     // 计算过程类型
@@ -122,8 +122,9 @@ export async function analyseReportFile(body: ReportDefinitionModel,key:string)
 
 
   /** 新建数据 POST*/
-  export async function createCalcReportData(body: ReportCalculationModel[]) {
-    return baseFun.request<TableData<void>>('/api/product/rwa/reportformconfigreportcreater/ReportFillingConfigAction/createCalcReportData.do',{data: body});
+  export async function createCalcReportData(body: ReportCalculationModel[],reportNo:string) {
+    return baseFun.request<TableData<void>>('/api/product/rwa/reportformconfigreportcreater/ReportFillingConfigAction/createCalcReportData.do',
+      {data: body,params:{reportNo}});
   }