浏览代码

修改机器零件

liujiankang 7 年之前
父节点
当前提交
08b47af5c0

+ 2 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/pts/PtsBomService.java

@@ -26,4 +26,6 @@ public interface PtsBomService {
     //修改bom
     Integer updatePtsBom(PtsBom ptsBom);
 
+    //删除bom单关联的零件 根据零件id
+    Integer deleteBomComponentByComponentsId(Integer componentsId);
 }

+ 5 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/pts/PtsBomServiceImpl.java

@@ -82,4 +82,9 @@ public class PtsBomServiceImpl implements PtsBomService {
         flag = ptsBomMapper.savePtsBomComponentsList(ptsBomComponentsList);
         return flag;
     }
+
+    @Override
+    public Integer deleteBomComponentByComponentsId(Integer componentsId) {
+        return ptsBomMapper.deleteBomComponentByComponentsId(componentsId);
+    }
 }

+ 3 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/pts/mapper/PtsBomMapper.java

@@ -32,4 +32,7 @@ public interface PtsBomMapper {
     //删除bom单关联的零件
     Integer deletePtsBomComponentByBomId(Integer bomId);
 
+    //删除bom单关联的零件 根据零件id
+    Integer deleteBomComponentByComponentsId(Integer componentsId);
+
 }

+ 5 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/pts/mapper/ptsBomMapper.xml

@@ -114,4 +114,9 @@
             `bom_id` = #{bomId}
     </delete>
 
+    <delete id="deleteBomComponentByComponentsId" parameterType="java.lang.Integer">
+        DELETE FROM tb_rst_pts_bom_components WHERE components_id = #{componentsId}
+    </delete>
+
+
 </mapper>

+ 10 - 0
watero-rst-web/src/main/java/com/iamberry/rst/controllers/pts/AdminMachinePartsController.java

@@ -8,6 +8,7 @@ import com.iamberry.rst.core.pts.PtsSupplier;
 import com.iamberry.rst.faces.pts.MachinePartsService;
 import com.iamberry.rst.faces.pts.MachineSupplierService;
 import com.iamberry.rst.faces.pts.ProduceService;
+import com.iamberry.rst.faces.pts.PtsBomService;
 import com.iamberry.rst.utils.StitchAttrUtil;
 import com.iamberry.wechat.tools.ResponseJson;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
@@ -36,6 +37,9 @@ public class AdminMachinePartsController {
 
     @Autowired
     private MachineSupplierService machineSupplierService;
+
+    @Autowired
+    private PtsBomService ptsBomService;
     /**
      * 进入添加机器零件页面
      * **/
@@ -149,6 +153,12 @@ public class AdminMachinePartsController {
                 return responseJson;
             }
         }
+        //如果改变了产品或者状态,则删掉关联的bom单
+        if(components.getComponentsStatus() != ptsComponents.getComponentsStatus() ||
+                components.getProduceId() != components.getProduceId()){
+            ptsBomService.deleteBomComponentByComponentsId(componentsId);
+        }
+
         ptsComponents.setComponentsId(componentsId);
         ptsComponents.setComponentsCost(ptsComponents.getComponentsCost() * 100);//元转换为分
         ptsComponents.setComponentsCreateTime(new Date());

+ 52 - 24
watero-rst-web/src/main/webapp/WEB-INF/views/pts/machinePtras/ptras_update.ftl

@@ -29,6 +29,7 @@
                     <option value ="">暂无产品,请到生产产品列表添加产品</option>
                 </#if>
 				</select>
+                <input type="hidden" value="${ptsComponents.produceId!''}" name="oldProduceId" id="oldProduceId">
 				</span> </div>
         </div>
 
@@ -79,6 +80,7 @@
 					<label for="sex-2">正常使用</label>
 				</div>
 			</div>
+            <input type="hidden" value="${ptsComponents.componentsStatus!''}" name="oldComponentsStatus" id="oldComponentsStatus">
 		</div>
 
         <div class="row cl">
@@ -228,31 +230,57 @@
 		focusCleanup:true,
 		success:"valid",
 		submitHandler:function(form){
+           var produceId = $("#produceId").val();
+           var oldProduceId =   $("#oldProduceId").val();
+           var componentsStatus=$('input:radio[name="componentsStatus"]:checked').val();
+           var oldComponentsStatus =   $("#oldComponentsStatus").val();
+           if(produceId != oldProduceId || componentsStatus != oldComponentsStatus){
+               layer.confirm('修改产品或零件状态后会影响到以往的BOM清单,是否修改?',function(index){
+                   $.ajax({
+                       cache: true,
+                       type: "POST",
+                       data: $("#form-parts-update").serialize(),
+                       url: "${path}/admin/machineParts/update_machineParts",
+                       async: false,
+                       success: function(data){
+                           if (data.returnCode == 200) {
+                               layer.msg('修改成功!', {icon: 1, time: 2000});
+                               window.location.href = '${path}/admin/machineParts/_parts_list'
+                           }else if(data.returnCode == 501){
+                               layer.msg('该零件已保存,不能重复!', {icon: 2, time: 2000});
+                           }else{
+                               layer.msg('修改失败!', {icon: 2, time: 2000});
+                           }
+                       },
+                       error: function(XmlHttpRequest, textStatus, errorThrown){
+                           layer.msg('修改失败!', {icon: 2, time: 2000});
+                       }
+                   });
+               });
+           }else {
+               $.ajax({
+                   cache: true,
+                   type: "POST",
+                   data: $("#form-parts-update").serialize(),
+                   url: "${path}/admin/machineParts/update_machineParts",
+                   async: false,
+                   success: function(data){
+                       if (data.returnCode == 200) {
+                           layer.msg('修改成功!', {icon: 1, time: 2000});
+                           window.location.href = '${path}/admin/machineParts/_parts_list'
+                       }else if(data.returnCode == 501){
+                           layer.msg('该零件已保存,不能重复!', {icon: 2, time: 2000});
+                       }else{
+                           layer.msg('修改失败!', {icon: 2, time: 2000});
+                       }
+                   },
+                   error: function(XmlHttpRequest, textStatus, errorThrown){
+                       layer.msg('修改失败!', {icon: 2, time: 2000});
+                   }
+               });
+           }
+
 
-			//$(form).ajaxSubmit();
-            //var index = parent.layer.getFrameIndex(window.name);
-			//parent.$('.btn-refresh').click();
-            //parent.layer.close(index);
-            $.ajax({
-                cache: true,
-                type: "POST",
-                data: $("#form-parts-update").serialize(),
-                url: "${path}/admin/machineParts/update_machineParts",
-                async: false,
-                success: function(data){
-                    if (data.returnCode == 200) {
-                        layer.msg('修改成功!', {icon: 1, time: 2000});
-                        window.location.href = '${path}/admin/machineParts/_parts_list'
-                    }else if(data.returnCode == 501){
-                        layer.msg('该零件已保存,不能重复!', {icon: 2, time: 2000});
-                    }else{
-                        layer.msg('修改失败!', {icon: 2, time: 2000});
-                    }
-                },
-                error: function(XmlHttpRequest, textStatus, errorThrown){
-                    layer.msg('修改失败!', {icon: 2, time: 2000});
-                }
-            });
 
 		}
 	});