提交 07f4d43f authored 作者: 吴德鹏's avatar 吴德鹏

优化问题管理

上级 4d48a354
......@@ -241,7 +241,7 @@ public class TbCfStationItemController extends ApiBaseAction {
} else if (res == -1) {
return R.error("该商品已下架,不能置顶");
} else if (res == -2) {
return R.error("最多置顶300个商品");
return R.error("最多置顶2400个商品");
}
return R.error("置顶失败");
}
......
......@@ -8,7 +8,7 @@ import java.util.Date;
* 表名 tb_cf_problem
*
* @author lipengjun
* @date 2019-09-20 11:03:38
* @date 2020-10-12 14:26:55
*/
public class TbCfProblemEntity implements Serializable {
private static final long serialVersionUID = 1L;
......@@ -17,6 +17,10 @@ public class TbCfProblemEntity implements Serializable {
* 问题id
*/
private String problemId;
/**
* 类型 0:普通问题 1:物流问题
*/
private Integer type;
/**
* 问题明细
*/
......@@ -26,7 +30,7 @@ public class TbCfProblemEntity implements Serializable {
*/
private String answer;
/**
* 是否展示
* 是否展示 0:隐藏 1:展示
*/
private Integer enableFlag;
/**
......@@ -37,6 +41,10 @@ public class TbCfProblemEntity implements Serializable {
* 创建时间
*/
private Date createTime;
/**
* 更新时间
*/
private Date updateTime;
/**
* 设置:问题id
......@@ -51,6 +59,19 @@ public class TbCfProblemEntity implements Serializable {
public String getProblemId() {
return problemId;
}
/**
* 设置:类型 0:普通问题 1:物流问题
*/
public void setType(Integer type) {
this.type = type;
}
/**
* 获取:类型 0:普通问题 1:物流问题
*/
public Integer getType() {
return type;
}
/**
* 设置:问题明细
*/
......@@ -78,14 +99,14 @@ public class TbCfProblemEntity implements Serializable {
return answer;
}
/**
* 设置:是否展示
* 设置:是否展示 0:隐藏 1:展示
*/
public void setEnableFlag(Integer enableFlag) {
this.enableFlag = enableFlag;
}
/**
* 获取:是否展示
* 获取:是否展示 0:隐藏 1:展示
*/
public Integer getEnableFlag() {
return enableFlag;
......@@ -116,4 +137,17 @@ public class TbCfProblemEntity implements Serializable {
public Date getCreateTime() {
return createTime;
}
/**
* 设置:更新时间
*/
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
/**
* 获取:更新时间
*/
public Date getUpdateTime() {
return updateTime;
}
}
......@@ -40,6 +40,8 @@ public class AdvertisementItemServiceImpl implements AdvertisementItemService {
@Override
public int save(AdvertisementItemEntity advertisementItem) {
advertisementItem.setIsTop(0);
advertisementItem.setSort(0);
return advertisementItemDao.save(advertisementItem);
}
......
......@@ -41,11 +41,13 @@ public class TbCfProblemServiceImpl implements TbCfProblemService {
public int save(TbCfProblemEntity tbCfProblem) {
tbCfProblem.setProblemId(IdUtil.createIdbyUUID());
tbCfProblem.setCreateTime(new Date());
tbCfProblem.setUpdateTime(new Date());
return tbCfProblemDao.save(tbCfProblem);
}
@Override
public int update(TbCfProblemEntity tbCfProblem) {
tbCfProblem.setUpdateTime(new Date());
return tbCfProblemDao.update(tbCfProblem);
}
......
......@@ -489,7 +489,7 @@ public class TbCfStationItemServiceImpl implements TbCfStationItemService {
return -1;
}
int topCount = tbCfStationItemDao.queryTopCount();
if (topCount >= 300) {
if (topCount >= 2400) {
return -2;
}
item.setItemTop(1);
......
......@@ -5,21 +5,25 @@
<resultMap type="com.platform.entity.TbCfProblemEntity" id="tbCfProblemMap">
<result property="problemId" column="problem_id"/>
<result property="type" column="type"/>
<result property="question" column="question"/>
<result property="answer" column="answer"/>
<result property="enableFlag" column="enable_flag"/>
<result property="sort" column="sort"/>
<result property="createTime" column="create_time"/>
<result property="updateTime" column="update_time"/>
</resultMap>
<select id="queryObject" resultType="com.platform.entity.TbCfProblemEntity">
select
`problem_id`,
`type`,
`question`,
`answer`,
`enable_flag`,
`sort`,
`create_time`
`create_time`,
`update_time`
from tb_cf_problem
where problem_id = #{id}
</select>
......@@ -27,75 +31,83 @@
<select id="queryList" resultType="com.platform.entity.TbCfProblemEntity">
select
`problem_id`,
`type`,
`question`,
`answer`,
`enable_flag`,
`sort`,
`create_time`
`create_time`,
`update_time`
from tb_cf_problem
WHERE 1=1
<if test="name != null and name.trim() != ''">
AND name LIKE concat('%',#{name},'%')
AND question LIKE concat('%',#{name},'%')
</if>
<choose>
<when test="sidx != null and sidx.trim() != ''">
order by ${sidx} ${order}
</when>
<otherwise>
order by problem_id desc
order by type desc,sort asc
</otherwise>
</choose>
<if test="offset != null and limit != null">
limit #{offset}, #{limit}
</if>
</select>
<select id="queryTotal" resultType="int">
select count(*) from tb_cf_problem
WHERE 1=1
<if test="name != null and name.trim() != ''">
AND name LIKE concat('%',#{name},'%')
</if>
<if test="name != null and name.trim() != ''">
AND question LIKE concat('%',#{name},'%')
</if>
</select>
<insert id="save" parameterType="com.platform.entity.TbCfProblemEntity">
insert into tb_cf_problem(
`problem_id`,
`type`,
`question`,
`answer`,
`enable_flag`,
`sort`,
`create_time`)
`create_time`,
`update_time`)
values(
#{problemId},
#{type},
#{question},
#{answer},
#{enableFlag},
#{sort},
#{createTime})
#{createTime},
#{updateTime})
</insert>
<update id="update" parameterType="com.platform.entity.TbCfProblemEntity">
update tb_cf_problem
update tb_cf_problem
<set>
<if test="type != null">`type` = #{type}, </if>
<if test="question != null">`question` = #{question}, </if>
<if test="answer != null">`answer` = #{answer}, </if>
<if test="enableFlag != null">`enable_flag` = #{enableFlag}, </if>
<if test="sort != null">`sort` = #{sort}, </if>
<if test="createTime != null">`create_time` = #{createTime}</if>
<if test="createTime != null">`create_time` = #{createTime}, </if>
<if test="updateTime != null">`update_time` = #{updateTime}</if>
</set>
where problem_id = #{problemId}
</update>
<delete id="delete">
delete from tb_cf_problem where problem_id = #{value}
</delete>
<delete id="deleteBatch">
delete from tb_cf_problem where problem_id in
delete from tb_cf_problem where problem_id in
<foreach item="problemId" collection="array" open="(" separator="," close=")">
#{problemId}
</foreach>
</delete>
</mapper>
\ No newline at end of file
</mapper>
......@@ -2,13 +2,13 @@
#jdbc.username=root
#jdbc.password=root
#jdbc.url=jdbc:mysql://47.106.242.175:3306/chinafrica?allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8
#jdbc.username=root
#jdbc.password=diaoyun666
jdbc.url=jdbc:mysql://47.106.242.175:3306/chinafrica?allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8
jdbc.username=root
jdbc.password=diaoyun666
jdbc.url: jdbc:mysql://159.138.48.71:3306/chinafrica?useUnicode=true&characterEncoding=UTF-8&rewriteBatchedStatements=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull&useSSL=false
jdbc.username: root
jdbc.password: Diaoyunnuli.8
#jdbc.url: jdbc:mysql://159.138.48.71:3306/chinafrica?useUnicode=true&characterEncoding=UTF-8&rewriteBatchedStatements=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull&useSSL=false
#jdbc.username: root
#jdbc.password: Diaoyunnuli.8
jdbc.initialSize=5
jdbc.maxActive=30
......
......@@ -2,13 +2,13 @@
#jdbc.username=root
#jdbc.password=root
#jdbc.url=jdbc:mysql://47.106.242.175:3306/chinafrica?allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8
#jdbc.username=root
#jdbc.password=diaoyun666
jdbc.url=jdbc:mysql://47.106.242.175:3306/chinafrica?allowMultiQueries=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8
jdbc.username=root
jdbc.password=diaoyun666
jdbc.url: jdbc:mysql://159.138.48.71:3306/chinafrica?useUnicode=true&characterEncoding=UTF-8&rewriteBatchedStatements=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull&useSSL=false
jdbc.username: root
jdbc.password: Diaoyunnuli.8
#jdbc.url: jdbc:mysql://159.138.48.71:3306/chinafrica?useUnicode=true&characterEncoding=UTF-8&rewriteBatchedStatements=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull&useSSL=false
#jdbc.username: root
#jdbc.password: Diaoyunnuli.8
jdbc.initialSize=5
jdbc.maxActive=30
......
......@@ -38,24 +38,34 @@
<Card v-show="!showList">
<p slot="title">{{title}}</p>
<i-form ref="formValidate" :model="tbCfProblem" :rules="ruleValidate" :label-width="80">
<Form-item label="问题明细" prop="question">
<Form-item label="问题明细" prop="question" style="width: 800px">
<i-input v-model="tbCfProblem.question" placeholder="问题明细"/>
</Form-item>
<Form-item label="答案" prop="answer">
<Form-item label="类型" prop="type" style="width: 800px">
<i-select placeholder="请选择" v-model="tbCfProblem.type">
<i-option v-for="(el,i) in typeList" :key='i'
:value="el.value">{{el.label}}
</i-option>
</i-select>
</Form-item>
<br/>
<br/>
<Form-item label="答案" prop="answer" style="width: 800px">
<!-- 加载编辑器的容器 -->
<script id="container" name="content" type="text/plain">
</script>
<!--<i-input v-model="tbCfProblem.answer" placeholder="答案"/>-->
</Form-item>
<Form-item label="是否展示" prop="enableFlag">
<i-input v-model="tbCfProblem.enableFlag" placeholder="是否展示"/>
<Form-item label="是否展示" prop="enableFlag" style="width: 800px">
<i-select placeholder="请选择" v-model="tbCfProblem.enableFlag">
<i-option v-for="(el,i) in enableList" :key='i'
:value="el.value">{{el.label}}
</i-option>
</i-select>
</Form-item>
<Form-item label="排序" prop="sort">
<Form-item label="排序" prop="sort" style="width: 800px">
<i-input v-model="tbCfProblem.sort" placeholder="排序"/>
</Form-item>
<Form-item label="创建时间" prop="createTime">
<i-input v-model="tbCfProblem.createTime" placeholder="创建时间"/>
</Form-item>
<Form-item>
<i-button type="primary" @click="handleSubmit('formValidate')">提交</i-button>
<i-button type="warning" @click="reload" style="margin-left: 8px"/>返回</i-button>
......@@ -97,4 +107,4 @@
<script type="text/javascript" src="../statics/plugins/ueditor/ueditor.all.js"></script>
<script src="${rc.contextPath}/js/sys/tbcfproblem.js?_${date.systemTime}"></script>
</body>
</html>
\ No newline at end of file
</html>
......@@ -533,6 +533,7 @@ versionFormat = function (cellvalue) {
return returnStr;
};
moneyFormat = function (cellvalue) {
/* var returnStr = "未知";
if (!!cellvalue) {
......@@ -606,14 +607,14 @@ statusFormat1 = function (cellvalue) {
//状态 0:已删除 1:活动进行中 2:活动已关闭 3:活动已结束
adStatus = function (cellvalue) {
let returnStr = "未知"
if(cellvalue==0){
returnStr='已删除';
}else if(cellvalue==1){
returnStr='活动进行中';
}else if(cellvalue==2){
returnStr='活动已关闭';
}else if(cellvalue==3){
returnStr='活动已结束';
if (cellvalue == 0) {
returnStr = '已删除';
} else if (cellvalue == 1) {
returnStr = '活动进行中';
} else if (cellvalue == 2) {
returnStr = '活动已关闭';
} else if (cellvalue == 3) {
returnStr = '活动已结束';
}
return returnStr;
};
......@@ -634,6 +635,19 @@ validFormat = function (cellvalue) {
return returnStr;
};
typeFormat = function (cellvalue) {
let returnStr = "未知"
if (!!cellvalue || cellvalue == '0') {
if (cellvalue == '0') {
returnStr = "普通问题";
} else if (cellvalue == '1') {
returnStr = "物流问题";
}
}
return returnStr;
}
sortFormat = function (cellvalue) {
let returnStr = "未知"
if (!!cellvalue || cellvalue == '0') {
......
......@@ -2,12 +2,13 @@ $(function () {
$("#jqGrid").Grid({
url: '../tbcfproblem/list',
colModel: [
{label: 'problemId', name: 'problemId', index: 'problem_id', key: true, hidden: true},
{label: '问题明细', name: 'question', index: 'question', width: 80},
{label: '答案', name: 'answer', index: 'answer', width: 80,formatter:contentFormat},
{label: '是否展示', name: 'enableFlag', index: 'enable_flag', width: 80},
{label: '排序', name: 'sort', index: 'sort', width: 80},
{label: '创建时间', name: 'createTime', index: 'create_time', width: 80}],
{label: 'problemId', name: 'problemId', index: 'problem_id', key: true, hidden: true},
{label: '问题明细', name: 'question', index: 'question', width: 80},
{label: '类型 ', name: 'type', index: 'type', width: 80, formatter: typeFormat},
{label: '答案', name: 'answer', index: 'answer', width: 80, formatter: contentFormat},
{label: '是否展示', name: 'enableFlag', index: 'enable_flag', width: 80, formatter: validFormat},
{label: '排序', name: 'sort', index: 'sort', width: 80},
{label: '创建时间', name: 'createTime', index: 'create_time', width: 80}],
});
});
......@@ -17,124 +18,146 @@ $(function () {
* @type {UE.ui.Editor|*}
*/
var ue = UE.getEditor('container');
/**
* 获取文本框内容
* @returns {*|String|void}
*/
function getContent() {
var htmlContent = ue.getContent();
return htmlContent;
var htmlContent = ue.getContent();
return htmlContent;
}
/**
* 显示内容
* @param content
*/
function showContent(problemId) {
$('#contentModal').modal('show');
vm.getInfo(problemId,true);
$('#contentModal').modal('show');
vm.getInfo(problemId, true);
};
let vm = new Vue({
el: '#rrapp',
data: {
el: '#rrapp',
data: {
showList: true,
title: null,
tbCfProblem: {},
ruleValidate: {
name: [
{required: true, message: '名称不能为空', trigger: 'blur'}
]
},
q: {
name: ''
}
},
methods: {
query: function () {
vm.reload();
},
add: function () {
vm.showList = false;
vm.title = "新增";
vm.tbCfProblem = {};
},
update: function (event) {
typeList: [
{
value: 0,
label: '普通问题'
},
{
value: 1,
label: '物流问题'
}
],
enableList: [
{
value: 0,
label: '隐藏'
},
{
value: 1,
label: '显示'
}
],
tbCfProblem: {},
ruleValidate: {
name: [
{required: true, message: '名称不能为空', trigger: 'blur'}
]
},
q: {
name: ''
}
},
methods: {
query: function () {
vm.reload();
},
add: function () {
vm.showList = false;
vm.title = "新增";
vm.tbCfProblem = {};
},
update: function (event) {
let problemId = getSelectedRow("#jqGrid");
if (problemId == null) {
return;
}
vm.showList = false;
if (problemId == null) {
return;
}
vm.showList = false;
vm.title = "修改";
vm.getInfo(problemId);
},
saveOrUpdate: function (event) {
var answer=getContent();
vm.tbCfProblem.answer=encodeURI(answer);
},
saveOrUpdate: function (event) {
var answer = getContent();
vm.tbCfProblem.answer = encodeURI(answer);
let url = vm.tbCfProblem.problemId == null ? "../tbcfproblem/save" : "../tbcfproblem/update";
Ajax.request({
url: url,
url: url,
params: JSON.stringify(vm.tbCfProblem),
type: "POST",
contentType: "application/json",
contentType: "application/json",
successCallback: function (r) {
alert('操作成功', function (index) {
ue.setContent("");
ue.setContent("");
vm.reload();
});
}
});
},
del: function (event) {
});
},
del: function (event) {
let problemIds = getSelectedRows("#jqGrid");
if (problemIds == null){
return;
}
if (problemIds == null) {
return;
}
confirm('确定要删除选中的记录?', function () {
confirm('确定要删除选中的记录?', function () {
Ajax.request({
url: "../tbcfproblem/delete",
url: "../tbcfproblem/delete",
params: JSON.stringify(problemIds),
type: "POST",
contentType: "application/json",
contentType: "application/json",
successCallback: function () {
alert('操作成功', function (index) {
vm.reload();
});
}
});
});
},
getInfo: function(problemId,isShowDetail){
}
});
});
},
getInfo: function (problemId, isShowDetail) {
Ajax.request({
url: "../tbcfproblem/info/"+problemId,
url: "../tbcfproblem/info/" + problemId,
async: true,
successCallback: function (r) {
console.log(r)
r.tbCfProblem.answer=decodeURI(r.tbCfProblem.answer);
console.log(r)
r.tbCfProblem.answer = decodeURI(r.tbCfProblem.answer);
vm.tbCfProblem = r.tbCfProblem;
ue.setContent(vm.tbCfProblem.answer);
if(!!isShowDetail) {
var answer="无内容,请点击修改,添加内容";
if(!!vm.tbCfProblem.answer) {
answer=vm.tbCfProblem.answer;
}
$("#contentContainer").html(answer);
}
ue.setContent(vm.tbCfProblem.answer);
if (!!isShowDetail) {
var answer = "无内容,请点击修改,添加内容";
if (!!vm.tbCfProblem.answer) {
answer = vm.tbCfProblem.answer;
}
$("#contentContainer").html(answer);
}
}
});
},
reload: function (event) {
vm.showList = true;
},
reload: function (event) {
vm.showList = true;
let page = $("#jqGrid").jqGrid('getGridParam', 'page');
$("#jqGrid").jqGrid('setGridParam', {
$("#jqGrid").jqGrid('setGridParam', {
postData: {'name': vm.q.name},
page: page
}).trigger("reloadGrid");
vm.handleReset('formValidate');
},
reloadSearch: function() {
},
reloadSearch: function () {
vm.q = {
name: ''
};
......@@ -148,5 +171,5 @@ let vm = new Vue({
handleReset: function (name) {
handleResetForm(this, name);
}
}
});
\ No newline at end of file
}
});
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论