Sfoglia il codice sorgente

쿠폰 - 선착순쿠폰 개발중

bin2107 5 anni fa
parent
commit
93ebc361aa

+ 8 - 0
src/main/java/com/style24/admin/biz/dao/TsaCouponDao.java

@@ -273,4 +273,12 @@ public interface TsaCouponDao {
 	 * @since 2021-02-03
 	 */
 	Collection<Coupon> getCpnPubCustList(int cpnId);
+
+	/**
+	 * 선착순 쿠폰 저장
+	 * @param params
+	 * @author bin2107
+	 * @since 2021. 02. 04
+	 */
+	void createLimitedTimeCoupon(CouponLimitedTime couponLimitedTime);
 }

+ 27 - 0
src/main/java/com/style24/admin/biz/service/TsaCouponService.java

@@ -32,6 +32,33 @@ public class TsaCouponService {
 	@Autowired
 	private TsaCommonService commonService;
 
+	/**
+	 * 선착순 쿠폰 저장 test
+	 * @param coupon - 쿠폰 정보
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 2. 4
+	 */
+	@Transactional("shopTxnManager")
+	public String saveLimitedTimeCoupon(Coupon coupon){
+		int cpnId = coupon.getCpnId();		// 쿠폰ID (신규생성인지 수정인지 구분하기 위해 params의 cpnId를 먼저 가져옴 > 쿠폰 생성시 cpnId를 저장하기때문임)
+		coupon.setRegNo(TsaSession.getInfo().getUserNo());
+		coupon.setUpdNo(TsaSession.getInfo().getUserNo());
+
+		if(cpnId != 0) {    //수정모드일때
+		}else {    //등록모드일때
+			// 공급업체 등록
+			for(CouponLimitedTime couponLimitedTime : coupon.getLimitedTimeCpnList()){
+				couponLimitedTime.setCpnId(coupon.getCpnId());
+				couponLimitedTime.setRegNo(coupon.getRegNo());
+				couponLimitedTime.setUpdNo(coupon.getUpdNo());
+				couponDao.createLimitedTimeCoupon(couponLimitedTime);
+			}
+		}
+
+		return "SUCCESS";
+	}
+
 	/**
 	 * 쿠폰 저장
 	 * @param params

+ 24 - 1
src/main/java/com/style24/admin/biz/web/TsaMarketingController.java

@@ -443,7 +443,8 @@ public class TsaMarketingController extends TsaBaseController {
 		mav.addObject("payTypeList", rendererService.getCommonCodeList("G015"));
 		// 상위제휴채널 조회
 		mav.addObject("upperAfLinkCdList", rendererService.getCommonCodeList("G053"));
-
+		// 선착순쿠폰 조회
+		mav.addObject("limitedTimeCpnList", new Coupon());
 		// 이미 쿠폰 아이디가 있으면 적용대상 조회
 		if (cpnId != 0) {
 			mode = "U";
@@ -470,6 +471,8 @@ public class TsaMarketingController extends TsaBaseController {
 			mav.addObject("cpnCustGradeList", couponService.getCouponCustGradeList(cpnId));
 			// 쿠폰사용가능결제수단 조회
 			mav.addObject("cpnPayTypeList", couponService.getCouponPayTypeList(cpnId));
+			// 선착순쿠폰 조회
+			mav.addObject("limitedTimeCpnList", couponService.getCouponPayTypeList(cpnId));
 		}
 
 		//issueCnt = 3;
@@ -481,6 +484,26 @@ public class TsaMarketingController extends TsaBaseController {
 		return mav;
 	}
 
+	/**
+	 * 선착순 쿠폰 저장 test
+	 * @param coupon - 쿠폰 정보
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 2. 4
+	 */
+	@PostMapping("/coupon/limitedtime/coupon/save")
+	@ResponseBody
+	public GagaResponse saveLimitedTimeCoupon(@RequestBody Coupon coupon) {
+		log.info("saveLimitedTimeCoupon : {}", coupon);
+
+		String result = couponService.saveLimitedTimeCoupon(coupon);
+		if(!"SUCCESS".equals(result)) {
+			return super.error(message.getMessage(result));
+		}
+
+		return super.ok(message.getMessage("SUCC_0001"));
+	}
+
 	/**
 	 * 쿠폰 저장
 	 * @param coupon - 쿠폰 정보

+ 2 - 0
src/main/java/com/style24/persistence/domain/Coupon.java

@@ -99,6 +99,8 @@ public class Coupon extends TscBaseDomain {
     @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
     private String[] payTypeArr;
 
+    List<CouponLimitedTime> limitedTimeCpnList; //선착순 쿠폰 리스트
+
     // Pagination
     private TscPageRequest pageable;
     private int pageNo = 1;

+ 24 - 0
src/main/java/com/style24/persistence/domain/CouponLimitedTime.java

@@ -0,0 +1,24 @@
+package com.style24.persistence.domain;
+
+import com.style24.persistence.TscBaseDomain;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * 선착순 쿠폰 도메인
+ * @author bin2107
+ * @since 2021-02-04
+ */
+@SuppressWarnings("serial")
+@Data
+public class CouponLimitedTime extends TscBaseDomain {
+    // TB_COUPON_REFVAL
+    private int     cpnId;				// 쿠폰ID
+    private Integer limitCpnId;         // 선착순쿠폰일련번호
+    private String  limitCpnNm;         // 선착순쿠폰명
+    private int     downLimitQty;       // 다운로드가능수량
+    private String  downStdt;           // 다운로드시작일시
+    private String  downEddt;           // 다운로드종료일시
+
+}

+ 26 - 0
src/main/java/com/style24/persistence/mybatis/shop/TsaCoupon.xml

@@ -766,4 +766,30 @@
 		AND A.CPN_ID = #{cpnId}
 	</select>
 
+	<insert id="createLimitedTimeCoupon" parameterType="CouponLimitedTime" keyProperty="limitCpnId">
+		INSERT INTO TB_LIMITED_TIME_COUPON (
+				  LIMIT_CPN_ID
+				, LIMIT_CPN_NM
+				, CPN_ID
+				, DOWN_LIMIT_QTY
+				, DOWN_STDT
+				, DOWN_EDDT
+				, REG_NO
+				, REG_DT
+				, UPD_NO
+				, UPD_DT
+		) VALUES (
+				#{limitCpnId}
+				 ,#{limitCpnNm}
+				 ,#{cpnId}
+				 ,#{downLimitQty}
+				 ,DATE_FORMAT(#{downStdt},'%Y-%m-%d %H:%i:%s')
+				 ,DATE_FORMAT(#{downEddt},'%Y-%m-%d %H:%i:%s')
+				 ,#{regNo}
+				 ,CURRENT_TIMESTAMP()
+				 ,#{updNo}
+				 ,CURRENT_TIMESTAMP()
+		)
+	</insert>
+
 </mapper>

+ 125 - 1
src/main/webapp/WEB-INF/views/marketing/CouponPopupForm.html

@@ -38,6 +38,7 @@
 							<li><a href="#coupontab2">적용대상</a></li>
 							<li><a href="#coupontab3">입점업체분담율</a></li>
 							<li class="randomCpnTab" style="display:none;"><a href="#coupontab4">시리얼및난수</a></li>
+							<li class="limitedTimeCpnTab" style="display:none;"><a href="#coupontab5">선착순쿠폰</a></li>	<!--style="display:none;"-->
 						</ul>
 					</div>
 					<ul class="tabsCont">
@@ -65,9 +66,14 @@
 										</tr>
 										<tr>
 											<th>쿠폰유형<em class="required" title="필수"></em></th>
-											<td colspan="5">
+											<td>
 												<input type="hidden" id="cpnType" name="cpnType" required="required"  data-valid-name="쿠폰유형">
 												<label class="rdoBtn" th:if="${cpnTypeList}" th:each="oneData, status : ${cpnTypeList}"> <input type="radio" name="rdoCpnType"  th:text="${oneData.cdNm}" th:value="${oneData.cd}"/></label>
+
+											</td>
+											<th class="limitedTimeCpnArea" style="display: none;">선착순쿠폰</th>
+											<td class="limitedTimeCpnArea" style="display: none;">
+												<label class="chkBox limitedTimeCpnBox" id="limitedTimeCpnBox"><input type="checkbox" name="limitedTimeCpnYn" id="limitedTimeCpnYn" />선착순쿠폰</label>
 											</td>
 										</tr>
 										<tr class="dcCdGb" style="display:none;">
@@ -357,6 +363,7 @@
 									<button type="button" class="btn btn-info btn-lg" onclick="fnCustomerIssuePopUp();" th:if="${mode == 'U' && cpnDetail.dcCdGb == 'G233_00'}">쿠폰발행</button>  <!-- 난수유형과 시리얼 유형에서는 쿠폰발행기능 X -->
 									<button type="button" class="btn btn-info btn-lg" onclick="fnCouponCreate();" th:if="${mode == 'N'}">등록</button>
 									<button type="button" class="btn btn-info btn-lg" onclick="fnCouponUpdate();" th:if="${mode == 'U'}">수정</button>
+									<button type="button" class="btn btn-info btn-lg" onclick="fnSaveLimitedTimeCpn();" th:if="${mode == 'N'}">선착순쿠폰등록TEST</button>
 								</div>
 							</div>
 						</li>
@@ -473,6 +480,18 @@
 							</div>
 						</li>
 						<!-- 난수 및 네임쿠폰 설정-->
+						<!-- 선착순 쿠폰 설정 START -->
+						<li class="tab" id="coupontab5">
+							<div class="panelStyle">
+								<span class="limitedTimeCpnSpan">
+									<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddLimitedTimeCpnRow">행추가</button>
+									<button type="button" class="btn btnRight btn-success btn-lg" id="btnDelLimitedTimeCpnRow">행삭제</button>
+								</span>
+								<br/>
+								<div id="limitedTimeCpnList" style="width: 100%; height: 500px" class="ag-theme-balham"></div>
+							</div>
+						</li>
+						<!-- 선착순 쿠폰 설정 END -->
 					</ul>
 				</div>
 			</form>
@@ -496,6 +515,7 @@
 	var cpnCustGbList = [[${cpnCustGbList}]];
 	var cpnCustGradeList = [[${cpnCustGradeList}]];
 	var cpnPayTypeList = [[${cpnPayTypeList}]];
+	var limitedTimeCpnList = [[${limitedTimeCpnList}]];
 
 	// 공통코드 리스트
 	var ibSupplyComList = gagajf.convertToArray([[${ibSupplyCompList}]]);
@@ -602,6 +622,25 @@
 		{ headerName: "쿠폰사용일" , field: "usedDt" , width:150, cellClass: 'text-center'}
 	];
 
+	// 선착순 쿠폰 리스트
+	var limitedTimeCpnDefs = [
+		{width: 40, minWidth: 40, cellClass: 'text-center', headerCheckboxSelection: true, checkboxSelection: true, filter: false},
+		{ headerName: "쿠폰시퀀스", field: "cpnId", width: 150, cellClass: 'text-center'},	//, hide: true
+		{ headerName: "선착순쿠폰명" , field: "limitCpnNm" , width: 200, cellClass: 'text-center'
+			,cellEditorParams: { maxlength: 20}
+		} ,
+		{ headerName: "시작일시" , field: "downStdt" , width: 200, cellClass: 'text-center'
+			,cellRenderer: function (params) { return gagaAgGrid.toDateTimeFormat(params.value); }
+		},
+		{ headerName: "종료일시"  , field: "downEddt" , width: 200 , cellClass: 'text-center'
+			,cellRenderer: function (params) { return gagaAgGrid.toDateTimeFormat(params.value); }
+		} ,
+		{ headerName: "다운로드가능수량"  , field: "downLimitQty" , width: 150 , cellClass: 'text-center'
+			,cellEditorParams: { maxlength: 4, validType: 'numeric'}
+		},
+		{ headerName: "선착순시퀀스", field: "limitCpnId", width: 150, cellClass: 'text-center'} 	//, hide: true
+	];
+
 	var inComGridOptions = gagaAgGrid.getGridOptions(columnDefs);
 	var cateGridOptions = gagaAgGrid.getGridOptions(cateSelColumnDefs);
 	var goodsGridOptions = gagaAgGrid.getGridOptions(goodsSelColumnDefs);
@@ -609,6 +648,7 @@
 	var supplyGridOptions = gagaAgGrid.getGridOptions(supplyColumnDefs);
 	var excepGoodsGridOptions = gagaAgGrid.getGridOptions(excepGoodsColumnDefs);
 	var randomCouponGridOptions = gagaAgGrid.getGridOptions(randomCouponDefs);
+	var limitedTimeCpnGridOptions = gagaAgGrid.getGridOptions(limitedTimeCpnDefs);
 
 	inComGridOptions.defaultColDef.editable = true;
 	inComGridOptions.rowSelection = "multiple";
@@ -618,6 +658,55 @@
 	cateGridOptions.rowSelection = "multiple";
 	brandGridOptions.rowSelection = "multiple";
 	inComGridOptions.stopEditingWhenGridLosesFocus = true;
+	limitedTimeCpnGridOptions.defaultColDef.editable = true;
+	limitedTimeCpnGridOptions.rowSelection = "multiple";
+
+	// 선착순 쿠폰 행추가
+	$('#btnAddLimitedTimeCpnRow').on('click', function() {
+		var data = { cpnId: 1 ,limitCpnNm: null, downStdt: null, downEddt: null, downLimitQty: null, limitCpnId: null  };
+		gagaAgGrid.addRowData(limitedTimeCpnGridOptions, data, "limitCpnNm");
+	});
+
+	// 선착순 쿠폰 행삭제
+	$('#btnDelLimitedTimeCpnRow').on('click', function() {
+		var selectedData = limitedTimeCpnGridOptions.api.getSelectedRows();
+		if (selectedData.length == 0) {
+			mcxDialog.alert('선택된 행이 없습니다.');
+			return;
+		}
+		var removedData = gagaAgGrid.removeRowData(limitedTimeCpnGridOptions, false);
+		var arrLimitCpnId = [];
+
+		$.each(selectedData, function(idx, item) {
+			arrLimitCpnId.push(item.limitCpnId);
+		});
+
+		if (removedData.length > 0) {
+			mcxDialog.confirm('삭제하시겠습니까?', {
+				cancelBtnText: "취소",
+				sureBtnText: "확인",
+				sureBtnClick: function(){
+					var data = { arrLimitCpnId : arrLimitCpnId
+						,cpnId : $('#CouponForm input[name=cpnId]').val()
+					};
+
+					var jsonData = JSON.stringify(data);
+					//gagajf.ajaxJsonSubmit('/marketing/morebetter/sectionVal/delete', jsonData);
+				}
+			});
+		}
+	});
+
+	// 선착순 쿠폰 체크박스 클릭시
+	$("#CouponForm #limitedTimeCpnBox").bind('click', function (){
+		var chkBox= document.getElementById('limitedTimeCpnYn').checked;
+		console.log('limitedTimeCpnBox chkBox>>'+chkBox);
+		if(chkBox){	//true 체크가 되어있었는데 해제됐어 -> 탭을 숨겨
+			$("#CouponForm .limitedTimeCpnTab").hide();
+		}else{	//false 체크가 안되어있었는데 체크됐어 -> 탭을 보여줘
+			$("#CouponForm .limitedTimeCpnTab").show();
+		}
+	});
 
 	// 종료시간 클릭시
 	var fnChangeEdHH = function (obj){
@@ -686,6 +775,34 @@
 		$("#CouponForm input[name=dcAval]").val(cdPval);
 	});
 
+	// 선착순쿠폰 등록 테스트
+	function fnSaveLimitedTimeCpn(){
+		mcxDialog.confirm('선착순 쿠폰 저장하시겠습니까?' , {
+			cancelBtnText:"취소",
+			sureBtnText:"확인",
+			sureBtnClick: function () {
+				let cpnData = gagaAgGrid.getAllRowData(limitedTimeCpnGridOptions);
+				if(cpnData.length < 1){
+					mcxDialog.alert("선착순 쿠폰을 설정해주세요.");
+					return false;
+				}
+				console.log('cpnData 1 up');
+
+				var data = {
+					limitedTimeCpnList : cpnData
+				};
+
+				var jsonData = JSON.stringify(data);
+
+				gagajf.ajaxJsonSubmit('/marketing/coupon/limitedtime/coupon/save', jsonData, fnSaveLimitedTimeCpnCollback);
+			}
+		});
+	}
+
+	var fnSaveLimitedTimeCpnCollback = function (result){
+		console.log('result::'+result);
+	}
+
 	// 쿠폰 등록 버튼 클릭시
 	function fnCouponCreate(){
 		mcxDialog.confirm('저장하시겠습니까?' , {
@@ -1009,7 +1126,13 @@
 			$('#CouponForm .firstBuyTr').hide();
 			$('#CouponForm .buyDateTr').hide();
 			$('#CouponForm .dcCdCheck1').hide();
+			$('#CouponForm .limitedTimeCpnArea').hide();
 		}else{
+			if(radioValue == 'G230_11'){ // 상품쿠폰일때 선착순쿠폰 등록 가능
+				$('#CouponForm .limitedTimeCpnArea').show();
+			}else{
+				$('#CouponForm .limitedTimeCpnArea').hide();
+			}
 			$('#CouponForm .custJoinTr').show();
 			$('#CouponForm .firstBuyTr').show();
 			$('#CouponForm .dcCdCheck1').show();
@@ -1594,6 +1717,7 @@
 		gagaAgGrid.createGrid('goodsGridList', goodsGridOptions);
 		gagaAgGrid.createGrid('excepGoodsGridList', excepGoodsGridOptions);
 		gagaAgGrid.createGrid('randomCpnList', randomCouponGridOptions);
+		gagaAgGrid.createGrid('limitedTimeCpnList', limitedTimeCpnGridOptions);
 
 		// 초기화시 데이터 세팅
 		if (mode == "N") {

+ 37 - 19
src/main/webapp/WEB-INF/views/marketing/MorebetterPopupForm.html

@@ -134,8 +134,10 @@
 								<th>할인 구간</th>
 								<td>
 									<div class="padding10">
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddSectionRow">행추가</button>
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnDelSectionRow">행삭제</button>
+										<span class="buttonSpan">
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddSectionRow">행추가</button>
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnDelSectionRow">행삭제</button>
+										</span>
 										<br/>
 										<div id="gridSectionGbList" style="width:100%; height:200px;" class="ag-theme-balham"></div>
 									</div>
@@ -170,19 +172,23 @@
 								<td>
 									<!-- 수정시 프로모션명 입력 : before -->
 									<div class="padding10" style="display:inline-block;width:49%;">
-										<span>공급업체 설정</span>
+										<!--<span>공급업체 설정</span>-->
 										<div class="padding10 inner-tb-solid">
-											<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddCompany">업체 추가</button>
-											<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteCompany">선택삭제</button>
+											<span class="buttonSpan">
+												<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddCompany">업체 추가</button>
+												<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteCompany">선택삭제</button>
+											</span>
 											<br/>
 											<div id="gridFGPromotionCompanyList" style="width:100%; height:200px;" class="ag-theme-balham"></div>
 										</div>
 									</div>
 									<div class="padding10" style="display:inline-block;width:49%;">
-										<span>브랜드 설정</span>
+										<!--<span>브랜드 설정</span>-->
 										<div class="padding10 inner-tb-solid">
-											<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddBrand">브랜드 추가</button>
-											<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteBrand">선택삭제</button>
+											<span class="buttonSpan">
+												<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddBrand">브랜드 추가</button>
+												<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteBrand">선택삭제</button>
+											</span>
 											<br/>
 											<!-- 브랜드 선택 팝업(단수 선택 팝업... 복수를 새로 만들어야하는지 ? 아니면 변수처리해야하는지 ? -->
 											<div id="gridFGBrandList" style="width:100%; height:200px;" class="ag-theme-balham"></div>
@@ -194,8 +200,10 @@
 								<th>적용상품</th>
 								<td>
 									<div class="padding10">
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddApplyGoods">상품 추가</button>
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteApplyGoods">선택삭제</button>
+										<span class="buttonSpan">
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddApplyGoods">상품 추가</button>
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteApplyGoods">선택삭제</button>
+										</span>
 										<br/>
 										<div id="gridFGApplyGoodsList" style="width:100%; height:200px;" class="ag-theme-balham"></div>
 									</div>
@@ -234,8 +242,10 @@
 								<th>제외 대상</th>
 								<td>
 									<div class="padding10">
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddExceptGoods">상품 추가</button>
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteExtGoods">선택삭제</button>
+										<span class="buttonSpan">
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddExceptGoods">상품 추가</button>
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteExtGoods">선택삭제</button>
+										</span>
 										<br/>
 										<div id="gridFGExceptGoodsList" style="width:100%; height:200px;" class="ag-theme-balham"></div>
 									</div>
@@ -266,8 +276,10 @@
 								<th>업체 분담율</th>
 								<td>
 									<div class="padding10">
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddApplyBurden">업체추가</button>
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnDelApplyBurden">선택삭제</button>
+										<span class="buttonSpan">
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddApplyBurden">업체추가</button>
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnDelApplyBurden">선택삭제</button>
+										</span>
 										<br/>
 										<div id="gridApplyBurdenList" style="width:100%; height:200px;" class="ag-theme-balham"></div>
 									</div>
@@ -307,12 +319,12 @@
 		<ul class="panelBar">
 			<li  class="right">
 				<button type="button" class="btn btnRight btn-success btn-lg" id="btnSearchList">목록</button>
-				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnMorebetterSave">저장</button>
+				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnMorebetterSave" style="display: none;">저장</button>
 				<!--<button type="button" th:if="${mode == 'N'}" class="btn btnRight btn-success btn-lg" id="btnMorebetterSave">저장</button>
 				<button type="button" th:if="${mode == 'U'}" class="btn btnRight btn-success btn-lg" id="btnMorebetterUpdate">수정</button>-->
-				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnChangeStatIng">진행</button>
-				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnMorebetterDelete">삭제</button>
-				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnMorebetterStop">중지</button>
+				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnChangeStatIng" style="display: none;">진행</button>
+				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnMorebetterDelete" style="display: none;">삭제</button>
+				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnMorebetterStop" style="display: none;">중지</button>
 			</li>
 		</ul>
 	</div>
@@ -534,9 +546,14 @@
 				$("#btnMorebetterSave").show();		// 저장버튼
 				$("#btnChangeStatIng").show();		// 진행버튼
 				$("#btnMorebetterDelete").show();	// 삭제버튼
+				$("#moreBetterForm .buttonSpan").show();	//행추가,삭제버튼
 			}else if(tmtbMstInfo.tmtbStat == "G232_11"){
-				$("#btnMorebetterSave").show();		// 저장버튼
+				$("#btnMorebetterSave").hide();		// 저장버튼
 				$("#btnMorebetterStop").show();		// 중지버튼
+				$("#btnMorebetterDelete").show();	// 삭제버튼
+				$("#moreBetterForm .buttonSpan").hide();	//행추가,삭제버튼
+			}else{
+				$("#moreBetterForm .buttonSpan").hide();	//행추가,삭제버튼
 			}
 		}
 
@@ -544,6 +561,7 @@
 		if(mode=="N"){
 			$("input:radio[name='disTmtbStat']:radio[value='G232_10']").prop('checked', true); // 선택하기
 			$("#btnMorebetterSave").show();	// 저장버튼
+			$("#moreBetterForm .buttonSpan").show();
 
 			if(tmtbMstInfo.eventEdHH == "24"){
 				$("#moreBetterForm #eventEdHH option:last").show().prop("selected", true);