瀏覽代碼

产品工序BOM增加删除按钮

koul 4 月之前
父節點
當前提交
781fd0e698

+ 29 - 1
WebContent/app/controller/pm/mes/BOMStep.js

@@ -9,7 +9,7 @@ Ext.define('erp.controller.pm.mes.BOMStep', {
     		'core.button.Add','core.button.Save','core.button.Close','core.button.Update','core.trigger.SearchField',
     		'core.form.YnField','core.grid.YnColumn', 'core.grid.TfColumn','pm.mes.BOMStepTree','core.button.LoadMake',
     		'core.trigger.TextAreaTrigger','core.trigger.DbfindTrigger','core.trigger.MultiDbfindTrigger','core.button.CopyByConfigs',
-    		'core.button.CleanDetail'
+    		'core.button.CleanDetail','core.button.Delete'
     	],
     init:function(){
     	var me = this;
@@ -127,6 +127,11 @@ Ext.define('erp.controller.pm.mes.BOMStep', {
 					me.cleanDetail();
 				}
 			},
+			'erpDeleteButton':{
+				click : function(btn) {
+					me.deleteBomStep();
+				}
+			},
     		'erpLoadButton': {
     			afterrender: function(btn){
     				btn.setWidth(130);
@@ -515,6 +520,29 @@ Ext.define('erp.controller.pm.mes.BOMStep', {
 			}
 		});
 
+	},
+	deleteBomStep : function() {
+		var sb_id = Ext.getCmp('sb_id').value;
+		Ext.Ajax.request({
+			url : basePath + 'pm/mes/deleteBomStep.action',
+			params : {
+				caller:caller,
+				sb_id : sb_id
+			},
+			method : 'post',
+			callback : function(options, success, response) {
+				var localJson = new Ext.decode(response.responseText);
+				if (localJson.success) {
+					showMessage('提示', '删除成功!', 1000);
+					//update成功后刷新页面进入可编辑的页面
+					window.location.reload();
+				} else if (localJson.exceptionInfo) {
+					showError(localJson.exceptionInfo);
+					return;
+				}
+			}
+		});
+
 	},
 	itemclick:function(view,record,me){
         me.GridUtil.onGridItemClick(view,record); 

+ 13 - 0
src/com/uas/mes/pm/controller/BOMStepController.java

@@ -74,4 +74,17 @@ public class BOMStepController {
 		modelMap.put("data", bomStepService.getBomVersion(caller, condition));
 		return modelMap;
 	}
+
+	/**
+	 * 删除
+	 */
+	@RequestMapping(value = "/pm/mes/deleteBomStep.action")
+	@ResponseBody
+	public Map<String, Object> deleteBomStep(String caller,Integer sb_id){
+		Map<String, Object> modelMap = new HashMap<String, Object>();
+		// 此处Employee在el表达式用到,不能去掉
+		bomStepService.deleteBomStep(caller,sb_id);
+		modelMap.put("success", true);
+		return modelMap;
+	}
 }

+ 2 - 0
src/com/uas/mes/pm/service/BOMStepService.java

@@ -16,5 +16,7 @@ public interface BOMStepService {
 	void cleanBomStep(String caller, String pr_code,String sp_bomversion,String cr_code,Integer sb_id);
 	
 	public Map<String,Object> getBomVersion(String caller,String condition);
+
+	void deleteBomStep(String caller,Integer sb_id);
 	
 }

+ 21 - 10
src/com/uas/mes/pm/service/impl/BOMStepServiceImpl.java

@@ -219,17 +219,18 @@ public class BOMStepServiceImpl implements BOMStepService {
 		if(rs.next()){
 			if(sb_id == null || sb_id == 0 ){
 				BaseUtil.showError("BOM版本编号不能为空");
-			}else{
-					int count = baseDao.getCount("select count(1) from stepproduct left join product A on pr_code=sp_mothercode  "
-							+" left join (select pr_tracekind,pr_barcoderule,pr_code from product) b on b.pr_code=sp_soncode "
-							+" where A.pr_code = '"+pr_code+"' and sp_bomversion ='"+sp_bomversion+"'"
-							+ "and sp_craftcode ='"+cr_code+"'");
-					if(count == 0){
-						BaseUtil.showError("不存在工序明细,不允许删除");
-					}
-					baseDao.deleteByCondition("stepproduct", "sp_mothercode = '"+pr_code+"' and sp_bomversion ='"+sp_bomversion+"'"
-							+ "and sp_craftcode ='"+cr_code+"'");
 			}
+			int count = baseDao.getCount("select count(1) from stepproduct left join product A on pr_code=sp_mothercode  "
+					+" left join (select pr_tracekind,pr_barcoderule,pr_code from product) b on b.pr_code=sp_soncode "
+					+" where A.pr_code = '"+pr_code+"' and sp_bomversion ='"+sp_bomversion+"'"
+					+ "and sp_craftcode ='"+cr_code+"'");
+			if(count == 0){
+				BaseUtil.showError("不存在工序明细,不允许删除");
+			}
+			baseDao.deleteByCondition("stepproduct", "sp_mothercode = '"+pr_code+"' and sp_bomversion ='"+sp_bomversion+"'"
+					+ "and sp_craftcode ='"+cr_code+"'");
+			baseDao.deleteByCondition("stepbom", "sb_id ="+sb_id);
+
 		}else{
 			BaseUtil.showError("产品不存在");
 		}
@@ -253,4 +254,14 @@ public class BOMStepServiceImpl implements BOMStepService {
 		}
 		return map;
 	}
+
+	@Override
+	public void deleteBomStep(String caller, Integer sb_id) {
+		Object data = baseDao.getFieldDataByCondition("stepbom", "sb_bomversion", "sb_id=" + sb_id);
+		if (baseDao.checkIf("make","nvl(ma_bomversion,' ')='"+data+"'")){
+			BaseUtil.showError("BOM版本编号存在工单中,不允许删除");
+		}
+		baseDao.deleteByCondition("stepproduct", "sp_sbid="+sb_id);
+		baseDao.deleteByCondition("stepbom", "sb_id ="+sb_id);
+	}
 }