记得上下班打卡 | git大法好,push需谨慎

Commit b7f2c1a8 authored by 张国柄's avatar 张国柄

后台页面调整;

parent a1b9924e
package com.liquidnet.client.admin.web.controller.zhengzai.candy; package com.liquidnet.client.admin.web.controller.zhengzai.candy;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.liquidnet.client.admin.common.annotation.Log; import com.liquidnet.client.admin.common.annotation.Log;
import com.liquidnet.client.admin.common.core.controller.BaseController; import com.liquidnet.client.admin.common.core.controller.BaseController;
...@@ -8,6 +9,7 @@ import com.liquidnet.client.admin.common.core.domain.AjaxResult; ...@@ -8,6 +9,7 @@ import com.liquidnet.client.admin.common.core.domain.AjaxResult;
import com.liquidnet.client.admin.common.core.page.TableDataInfo; import com.liquidnet.client.admin.common.core.page.TableDataInfo;
import com.liquidnet.client.admin.common.enums.BusinessType; import com.liquidnet.client.admin.common.enums.BusinessType;
import com.liquidnet.client.admin.common.utils.ShiroUtils; import com.liquidnet.client.admin.common.utils.ShiroUtils;
import com.liquidnet.client.admin.zhengzai.candy.service.ICandyCouponAdminService;
import com.liquidnet.client.admin.zhengzai.candy.service.ICandyCouponRuleAdminService; import com.liquidnet.client.admin.zhengzai.candy.service.ICandyCouponRuleAdminService;
import com.liquidnet.client.admin.zhengzai.candy.service.ICandyMgtCouponAdminService; import com.liquidnet.client.admin.zhengzai.candy.service.ICandyMgtCouponAdminService;
import com.liquidnet.client.admin.zhengzai.kylin.service.impl.KylinPerformancesAdminServiceImpl; import com.liquidnet.client.admin.zhengzai.kylin.service.impl.KylinPerformancesAdminServiceImpl;
...@@ -15,13 +17,16 @@ import com.liquidnet.service.candy.dto.admin.CandyCouponRuleBuildParam; ...@@ -15,13 +17,16 @@ import com.liquidnet.service.candy.dto.admin.CandyCouponRuleBuildParam;
import com.liquidnet.service.candy.dto.admin.CandyMgtCouponBuildParam; import com.liquidnet.service.candy.dto.admin.CandyMgtCouponBuildParam;
import com.liquidnet.service.candy.dto.admin.CandyMgtCouponInfoDto; import com.liquidnet.service.candy.dto.admin.CandyMgtCouponInfoDto;
import com.liquidnet.service.candy.dto.admin.CandyMgtCouponListParam; import com.liquidnet.service.candy.dto.admin.CandyMgtCouponListParam;
import com.liquidnet.service.candy.entity.CandyCoupon;
import com.liquidnet.service.candy.entity.CandyCouponRule; import com.liquidnet.service.candy.entity.CandyCouponRule;
import com.liquidnet.service.candy.entity.CandyMgtCoupon;
import com.liquidnet.service.kylin.dao.PerformanceSimpleAllDao; import com.liquidnet.service.kylin.dao.PerformanceSimpleAllDao;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions; import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap; import org.springframework.ui.ModelMap;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
...@@ -29,6 +34,7 @@ import org.springframework.validation.annotation.Validated; ...@@ -29,6 +34,7 @@ import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
...@@ -37,9 +43,15 @@ import java.util.List; ...@@ -37,9 +43,15 @@ import java.util.List;
@RequestMapping("candy/coupon/mgt") @RequestMapping("candy/coupon/mgt")
public class CandyMgtCouponAdminController extends BaseController { public class CandyMgtCouponAdminController extends BaseController {
private final String prefix = "zhengzai/candy/coupon/mgt"; private final String prefix = "zhengzai/candy/coupon/mgt";
@Value("${liquidnet.client.admin.phpMallUrl}")
private String phpMallUrl;
@Autowired @Autowired
private ICandyMgtCouponAdminService candyMgtCouponAdminService; private ICandyMgtCouponAdminService candyMgtCouponAdminService;
@Autowired @Autowired
private ICandyCouponAdminService candyCouponAdminService;
@Autowired
private ICandyCouponRuleAdminService candyCouponRuleAdminService; private ICandyCouponRuleAdminService candyCouponRuleAdminService;
@Autowired @Autowired
private KylinPerformancesAdminServiceImpl kylinPerformancesService; private KylinPerformancesAdminServiceImpl kylinPerformancesService;
...@@ -135,8 +147,56 @@ public class CandyMgtCouponAdminController extends BaseController { ...@@ -135,8 +147,56 @@ public class CandyMgtCouponAdminController extends BaseController {
return prefix + "/detail" + couType; return prefix + "/detail" + couType;
} }
@RequiresPermissions("candy:coupon:mgt:cancel")
@GetMapping("cancel/{mcouponId}")
@ResponseBody
public AjaxResult cancel(@PathVariable("mcouponId") String mcouponId) {
LambdaQueryWrapper<CandyMgtCoupon> mgtCouponLambdaQueryWrapper = Wrappers.lambdaQuery(CandyMgtCoupon.class);
mgtCouponLambdaQueryWrapper.eq(CandyMgtCoupon::getMcouponId, mcouponId);
CandyMgtCoupon mgtCoupon = candyMgtCouponAdminService.getOne(mgtCouponLambdaQueryWrapper);
if (null == mgtCoupon) {
return AjaxResult.warn(String.format("券记录不存在【%s】", mcouponId));
}
if (mgtCoupon.getState() == 1) {
return AjaxResult.warn("券记录已完成发放");
}
if (mgtCoupon.getState() == 9) {
return AjaxResult.warn("券记录已开始发放");
}
if (mgtCoupon.getState() != 0) {
return AjaxResult.warn("券记录不可取消");
}
LocalDateTime now = LocalDateTime.now();
String loginName = ShiroUtils.getLoginName();
LambdaUpdateWrapper<CandyMgtCoupon> mgtCouponLambdaUpdateWrapper = Wrappers.lambdaUpdate(CandyMgtCoupon.class);
mgtCouponLambdaUpdateWrapper.eq(CandyMgtCoupon::getMcouponId, mcouponId);
mgtCouponLambdaUpdateWrapper.eq(CandyMgtCoupon::getState, 0);
mgtCouponLambdaUpdateWrapper.set(CandyMgtCoupon::getState, 3);
mgtCouponLambdaUpdateWrapper.set(CandyMgtCoupon::getUpdatedAt, now);
mgtCouponLambdaUpdateWrapper.set(CandyMgtCoupon::getOperator, loginName);
boolean updateMgtCouponFlg = candyMgtCouponAdminService.update(mgtCouponLambdaUpdateWrapper);
if (!updateMgtCouponFlg) {
return AjaxResult.warn("券记录取消失败,已发放或正在发放中");
}
LambdaUpdateWrapper<CandyCoupon> couponLambdaUpdateWrapper = Wrappers.lambdaUpdate(CandyCoupon.class);
couponLambdaUpdateWrapper.eq(CandyCoupon::getCouponId, mgtCoupon.getCouponId());
couponLambdaUpdateWrapper.set(CandyCoupon::getState, 2);
couponLambdaUpdateWrapper.set(CandyCoupon::getUpdatedAt, now);
couponLambdaUpdateWrapper.set(CandyCoupon::getOperator, loginName);
candyCouponAdminService.update(couponLambdaUpdateWrapper);
LambdaUpdateWrapper<CandyCouponRule> couponRuleLambdaUpdateWrapper = Wrappers.lambdaUpdate(CandyCouponRule.class);
couponRuleLambdaUpdateWrapper.eq(CandyCouponRule::getCouponId, mgtCoupon.getCouponId());
couponRuleLambdaUpdateWrapper.set(CandyCouponRule::getState, 2);
candyCouponRuleAdminService.update(couponRuleLambdaUpdateWrapper);
return toAjax(updateMgtCouponFlg);
}
@GetMapping("add/{couType}") @GetMapping("add/{couType}")
public String add(@PathVariable("couType") String couType) { public String add(@PathVariable("couType") String couType, ModelMap mmap) {
mmap.put("phpMallUrl", phpMallUrl);
return prefix + "/add" + couType; return prefix + "/add" + couType;
} }
......
...@@ -247,7 +247,8 @@ ...@@ -247,7 +247,8 @@
<th:block th:include="include :: select2-js" /> <th:block th:include="include :: select2-js" />
<th:block th:include="include :: bootstrap-suggest-js"/> <th:block th:include="include :: bootstrap-suggest-js"/>
</body> </body>
<script> <script th:inline="javascript">
var phpMallUrl = [[${phpMallUrl}]];
var roadShowId = '[[${roadShowId}]]'.replaceAll("\"", ""); var roadShowId = '[[${roadShowId}]]'.replaceAll("\"", "");
let prefix = ctx; let prefix = ctx;
let typeOne = '0'; // 类别 let typeOne = '0'; // 类别
...@@ -285,7 +286,7 @@ ...@@ -285,7 +286,7 @@
title: '' title: ''
} }
let str = ''; let str = '';
promiseMethods('http://testmall.zhengzai.tv/admin/goodListForQuick','get',data,'application/x-www-form-urlencoded').then(res=>{ promiseMethods(phpMallUrl + '/admin/goodListForQuick','get',data,'application/x-www-form-urlencoded').then(res=>{
if (res.data.length>0) { if (res.data.length>0) {
searchData = res.data; searchData = res.data;
searchData.forEach((item,index)=>{ searchData.forEach((item,index)=>{
...@@ -298,7 +299,7 @@ ...@@ -298,7 +299,7 @@
}) })
// $.ajax({ // $.ajax({
// type:'get', // type:'get',
// url:'http://testmall.zhengzai.tv/admin/goodListForQuick', // url:phpMallUrl + '/admin/goodListForQuick',
// success:function(e){ // success:function(e){
// console.log(e) // console.log(e)
// } // }
......
...@@ -250,7 +250,8 @@ ...@@ -250,7 +250,8 @@
<th:block th:include="include :: select2-js" /> <th:block th:include="include :: select2-js" />
<th:block th:include="include :: bootstrap-suggest-js"/> <th:block th:include="include :: bootstrap-suggest-js"/>
</body> </body>
<script> <script th:inline="javascript">
var phpMallUrl = [[${phpMallUrl}]];
var roadShowId = '[[${roadShowId}]]'.replaceAll("\"", ""); var roadShowId = '[[${roadShowId}]]'.replaceAll("\"", "");
let prefix = ctx; let prefix = ctx;
let typeOne = '0'; // 类别 let typeOne = '0'; // 类别
...@@ -288,7 +289,7 @@ ...@@ -288,7 +289,7 @@
title: '' title: ''
} }
let str = ''; let str = '';
promiseMethods('http://testmall.zhengzai.tv/admin/goodListForQuick','get',data,'application/x-www-form-urlencoded').then(res=>{ promiseMethods(phpMallUrl + '/admin/goodListForQuick','get',data,'application/x-www-form-urlencoded').then(res=>{
if (res.data.length>0) { if (res.data.length>0) {
searchData = res.data; searchData = res.data;
searchData.forEach((item,index)=>{ searchData.forEach((item,index)=>{
...@@ -301,7 +302,7 @@ ...@@ -301,7 +302,7 @@
}) })
// $.ajax({ // $.ajax({
// type:'get', // type:'get',
// url:'http://testmall.zhengzai.tv/admin/goodListForQuick', // url:phpMallUrl + '/admin/goodListForQuick',
// success:function(e){ // success:function(e){
// console.log(e) // console.log(e)
// } // }
......
...@@ -199,7 +199,8 @@ ...@@ -199,7 +199,8 @@
<th:block th:include="include :: select2-js" /> <th:block th:include="include :: select2-js" />
<th:block th:include="include :: bootstrap-suggest-js"/> <th:block th:include="include :: bootstrap-suggest-js"/>
</body> </body>
<script> <script th:inline="javascript">
var phpMallUrl = [[${phpMallUrl}]];
var roadShowId = '[[${roadShowId}]]'.replaceAll("\"", ""); var roadShowId = '[[${roadShowId}]]'.replaceAll("\"", "");
let prefix = ctx; let prefix = ctx;
let searchVal = ''; // 输入框内数据 let searchVal = ''; // 输入框内数据
......
...@@ -223,7 +223,8 @@ ...@@ -223,7 +223,8 @@
<th:block th:include="include :: select2-js" /> <th:block th:include="include :: select2-js" />
<th:block th:include="include :: bootstrap-suggest-js"/> <th:block th:include="include :: bootstrap-suggest-js"/>
</body> </body>
<script> <script th:inline="javascript">
var phpMallUrl = [[${phpMallUrl}]];
var roadShowId = '[[${roadShowId}]]'.replaceAll("\"", ""); var roadShowId = '[[${roadShowId}]]'.replaceAll("\"", "");
let prefix = ctx; let prefix = ctx;
let typeOne = '2'; // 类别 let typeOne = '2'; // 类别
...@@ -238,7 +239,7 @@ ...@@ -238,7 +239,7 @@
title: '' title: ''
} }
let str = ''; let str = '';
promiseMethods('http://testmall.zhengzai.tv/admin/goodListForQuick','get',data,'application/x-www-form-urlencoded').then(res=>{ promiseMethods(phpMallUrl + 'admin/goodListForQuick','get',data,'application/x-www-form-urlencoded').then(res=>{
if (res.data.length>0) { if (res.data.length>0) {
searchData = res.data; searchData = res.data;
searchData.forEach((item,index)=>{ searchData.forEach((item,index)=>{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment