Jelajahi Sumber

调整二次导入物料时记录的数据,确保数据可以多次判断是否完成领退料

yue 5 tahun lalu
induk
melakukan
a8f6dd4dda

+ 42 - 10
src/main/java/com/jeeplus/modules/sg/information/utils/ImportInformation.java

@@ -11,6 +11,7 @@ import com.jeeplus.modules.sg.material.service.MaterialService;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import io.swagger.models.auth.In;
+import org.apache.ibatis.jdbc.Null;
 import org.apache.poi.ss.usermodel.Row;
 import org.springframework.beans.factory.annotation.Autowired;
 
@@ -100,9 +101,15 @@ public  class ImportInformation {
                                 if (needInfor.getFirstFinish() == "" || needInfor.getFirstFinish() == null || ("否").equals(needInfor.getFirstFinish())) {
                                     upInfor.setFirstFinish("是");
                                     upInfor.setFirstFinishDate(new Date());
-                                } else if (("否").equals(needInfor.getSecondFinish())) {
+                                }  else if (("否").equals(needInfor.getSecondFinish())) {
                                     upInfor.setSecondFinish("是");
                                     upInfor.setSecondFinishDate(new Date());
+                                } else if (("是").equals(needInfor.getSecondFinish())) {
+                                    upInfor.setSecondFinish("是");
+                                    upInfor.setSecondFinishDate(needInfor.getSecondFinishDate());
+                                } else if (("是").equals(needInfor.getFirstFinish())) {
+                                    upInfor.setFirstFinish("是");
+                                    upInfor.setFirstFinishDate(needInfor.getFirstFinishDate());
                                 }
                             } else {
                                 if (needInfor.getFirstFinish() == "" || needInfor.getFirstFinish() == null || ("否").equals(needInfor.getFirstFinish())) {
@@ -121,20 +128,30 @@ public  class ImportInformation {
                             double testOutBoundNumber = Double.parseDouble(outboundNumber.toString());
                             double testafterAuthor = Double.parseDouble(authorizedNumber.toString());
                             if (list.getProjectId().equals(projectId.toString()) && list.getInforId().equals(inforId.toString()) &&  afterNumber == testOutBoundNumber && afterAuthor==testafterAuthor) {
-                                material.setIsBack(list.getIsBack());
-                                material.setIsBackNo(list.getIsBackNo());
+                                material.setIsBack("是");
+                                material.setIsBackNo(0);
                                 material.setStatus(list.getStatus());
                                 material.setInfo(list.getInfo());
                                 material.setAfterNumber(afterNumber);
                                 material.setAfterAuthor(afterAuthor);
                                 break;
-                            } else if (list.getProjectId().equals(projectId.toString()) && list.getInforId().equals(inforId.toString()) && (afterNumber!=testOutBoundNumber||afterAuthor!=testafterAuthor)) {
+                            } else if (list.getProjectId().equals(projectId.toString()) && list.getInforId().equals(inforId.toString()) && afterNumber!=testOutBoundNumber) {
                                 material.setIsBack("否");
                                 material.setIsBackNo(1);
+                                material.setStatus(list.getStatus());
+                                material.setInfo(list.getInfo());
                                 material.setAfterNumber(afterNumber);
                                 material.setAfterAuthor(afterAuthor);
                                 break;
-                            } else {
+                            } else if (list.getProjectId().equals(projectId.toString()) && list.getInforId().equals(inforId.toString()) && afterAuthor!=testafterAuthor) {
+                                material.setIsBack("否");
+                                material.setIsBackNo(1);
+                                material.setStatus(list.getStatus());
+                                material.setInfo(list.getInfo());
+                                material.setAfterNumber(afterNumber);
+                                material.setAfterAuthor(afterAuthor);
+                                break;
+                            }else {
                                 material.setIsBack(isBack);
                                 material.setIsBackNo(isBackNo);
                             }
@@ -171,20 +188,30 @@ public  class ImportInformation {
                             double testOutBoundNumber = Double.parseDouble(outboundNumber.toString());
                             double testafterAuthor = Double.parseDouble(authorizedNumber.toString());
                             if (list.getProjectId().equals(projectId.toString()) && list.getInforId().equals(inforId.toString()) &&  afterNumber == testOutBoundNumber && afterAuthor==testafterAuthor) {
-                                material.setIsBack(list.getIsBack());
-                                material.setIsBackNo(list.getIsBackNo());
+                                material.setIsBack("是");
+                                material.setIsBackNo(0);
                                 material.setStatus(list.getStatus());
                                 material.setInfo(list.getInfo());
                                 material.setAfterNumber(afterNumber);
                                 material.setAfterAuthor(afterAuthor);
                                 break;
-                            } else if (list.getProjectId().equals(projectId.toString()) && list.getInforId().equals(inforId.toString()) && (afterNumber!=testOutBoundNumber||afterAuthor!=testafterAuthor)) {
+                            } else if (list.getProjectId().equals(projectId.toString()) && list.getInforId().equals(inforId.toString()) && afterNumber!=testOutBoundNumber) {
                                 material.setIsBack("否");
                                 material.setIsBackNo(1);
+                                material.setStatus(list.getStatus());
+                                material.setInfo(list.getInfo());
                                 material.setAfterNumber(afterNumber);
                                 material.setAfterAuthor(afterAuthor);
                                 break;
-                            } else {
+                            } else if (list.getProjectId().equals(projectId.toString()) && list.getInforId().equals(inforId.toString()) && afterAuthor!=testafterAuthor) {
+                                material.setIsBack("否");
+                                material.setIsBackNo(1);
+                                material.setStatus(list.getStatus());
+                                material.setInfo(list.getInfo());
+                                material.setAfterNumber(afterNumber);
+                                material.setAfterAuthor(afterAuthor);
+                                break;
+                            }else {
                                 material.setIsBack(isBack);
                                 material.setIsBackNo(isBackNo);
                             }
@@ -193,7 +220,6 @@ public  class ImportInformation {
                         material.setIsBack(isBack);
                         material.setIsBackNo(isBackNo);
                     }
-
                     material.setInforId(inforId.toString());
                     material.setProjectId(projectId.toString());
                     material.setMaterialName(materialName.toString());
@@ -235,6 +261,12 @@ public  class ImportInformation {
                         }  else if (("否").equals(needInfor.getSecondFinish())) {
                             upInfor.setSecondFinish("是");
                             upInfor.setSecondFinishDate(new Date());
+                        } else if (("是").equals(needInfor.getSecondFinish())) {
+                            upInfor.setSecondFinish("是");
+                            upInfor.setSecondFinishDate(needInfor.getSecondFinishDate());
+                        } else if (("是").equals(needInfor.getFirstFinish())) {
+                            upInfor.setFirstFinish("是");
+                            upInfor.setFirstFinishDate(needInfor.getFirstFinishDate());
                         }
                     } else {
                         if (needInfor.getFirstFinish() == "" || needInfor.getFirstFinish() == null || ("否").equals(needInfor.getFirstFinish())) {

+ 2 - 2
src/main/java/com/jeeplus/modules/sg/material/mapper/xml/MaterialMapper.xml

@@ -240,7 +240,7 @@
     <update id="updateNeed" parameterType="com.jeeplus.modules.sg.information.entity.Information">
         update project_information
         <trim prefix="set" suffixOverrides=",">
-            secondFinishDate=#{secondFinishDate},
+                secondFinishDate=#{secondFinishDate},
             <if test="firstFinish!=null and firstFinish != ''">
                 firstFinish=#{firstFinish},
             </if>
@@ -310,7 +310,7 @@
     </select>
     
     <select id="findMateial" resultType="com.jeeplus.modules.sg.material.entity.Material">
-        select infor_id,material_name,outbound_number,authorized_number,status
+        select infor_id,material_name,outbound_number,authorized_number,status,afterNumber,afterAuthor
         from material_information
         where (status is not null
         or status != '')