提交 7f200094 authored 作者: 王亚乐's avatar 王亚乐

jysk

上级 b527ae06
package com.web.admin.jysk.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.common.entity.temp.Msg;
import com.common.entity.temp.TableBack;
import com.common.tool.StringUtils;
import com.web.admin.jysk.entity.WebContentAgent;
import com.web.admin.jysk.service.impl.WebContentAgentServiceImpl;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import java.util.Date;
/**
* <p>
* 招聘岗位 前端控制器
* </p>
*
* @author lwx
* @since 2021-10-09
*/
@Controller
@Slf4j
public class WebContentAgentController {
@Autowired
private WebContentAgentServiceImpl agentService;
/*校园招聘*/
@GetMapping("/jysk/agent/campus")
public String toCampusIndex() {
return "jysk/agent/campus";
}
/*社会招聘*/
@GetMapping("/jysk/agent/society")
public String toSocietyIndex() {
return "jysk/agent/society";
}
@GetMapping("/jysk/agent/add")
public String add() {
return "jysk/agent/edit";
}
@GetMapping("/jysk/agent/socAdd")
public String socAdd() {
return "jysk/agent/socedit";
}
@ApiOperation("充电桩信息")
@PostMapping("/jysk/agent/list")
public @ResponseBody
Object list(Integer page, Integer limit, String agentName) {
QueryWrapper<WebContentAgent> query = new QueryWrapper<>();
query.orderByDesc("create_time");
if (StringUtils.isNotEmpty(agentName)) {
query.and(q -> q.like("agent_name", agentName));
}
query.and(q -> q.eq("is_deleted", "F"));
IPage<WebContentAgent> iPage = new Page<>(page, limit);
IPage<WebContentAgent> jobIPage = agentService.page(iPage, query);
return new TableBack(0, "数据加载成功", (int) jobIPage.getTotal(), jobIPage.getRecords());
}
@PostMapping("/jysk/agent/save")
public @ResponseBody
Object save(@RequestBody WebContentAgent webContentagent) {
boolean flag = false;
webContentagent.setIs_deleted("F");
if (webContentagent.getId() == null) {
webContentagent.setCreate_time(new Date());
flag = agentService.save(webContentagent);
} else {
flag = agentService.updateById(webContentagent);
}
if (!flag) {
return new Msg(500, "添加失败");
}
return new Msg(200, "添加成功");
}
@PostMapping("/jysk/agent/delete")
public @ResponseBody
Object delete(Integer id) {
WebContentAgent agent = agentService.getById(id);
agent.setIs_deleted("T");
boolean update = agentService.saveOrUpdate(agent);
if (update) {
return new Msg(200, "删除成功");
} else {
return new Msg(500, "删除失败");
}
}
}
\ No newline at end of file
package com.web.admin.jysk.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 充电桩信息
* </p>
*
* @since 2024-06-16
*/
@Data
@ApiModel(value = "WebContentAgent对象", description = "代理商信息")
@TableName("web_content_agent")
public class WebContentAgent implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
private String info_common;
@ApiModelProperty(value = "代理商名称")
private String agent_name;
@ApiModelProperty(value = "代理商简介")
private String agent_intro;
@ApiModelProperty(value = "是否删除")
private String is_deleted = "F";
@ApiModelProperty(value = "创建时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date create_time;
}
\ No newline at end of file
...@@ -60,6 +60,4 @@ public class WebContentChargingStation implements Serializable { ...@@ -60,6 +60,4 @@ public class WebContentChargingStation implements Serializable {
@ApiModelProperty(value = "创建时间") @ApiModelProperty(value = "创建时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date create_time; private Date create_time;
} }
\ No newline at end of file
package com.web.admin.jysk.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.web.admin.jysk.entity.WebContentAgent;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface WebContentAgentMapper extends BaseMapper<WebContentAgent> {
}
\ No newline at end of file
package com.web.admin.jysk.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.web.admin.jysk.entity.WebContentAgent;
/**
* <p>
* 招聘岗位 服务类
* </p>
*
* @author lwx
* @since 2021-10-09
*/
public interface WebContentAgentService extends IService<WebContentAgent> {
}
package com.web.admin.jysk.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.web.admin.jysk.entity.WebContentAgent;
import com.web.admin.jysk.entity.WebContentChargingStation;
import com.web.admin.jysk.mapper.WebContentAgentMapper;
import com.web.admin.jysk.mapper.WebContentChargingStationMapper;
import com.web.admin.jysk.service.WebContentAgentService;
import com.web.admin.jysk.service.WebContentChargingStationService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* <p>
* 招聘岗位 服务实现类
* </p>
*
* @author lwx
* @since 2021-10-09
*/
@Service
public class WebContentAgentServiceImpl extends ServiceImpl<WebContentAgentMapper, WebContentAgent> implements WebContentAgentService {
}
\ No newline at end of file
...@@ -27,7 +27,7 @@ public class WebContentChargingStationServiceImpl extends ServiceImpl<WebContent ...@@ -27,7 +27,7 @@ public class WebContentChargingStationServiceImpl extends ServiceImpl<WebContent
@Override @Override
public void saveChargeStationList(List<WebContentChargingStation> chargeStationList) { public void saveChargeStationList(List<WebContentChargingStation> chargeStationList) {
deleteChargeStationList(); //deleteChargeStationList();
for(WebContentChargingStation webContentChargingStation : chargeStationList){ for(WebContentChargingStation webContentChargingStation : chargeStationList){
contentChargingStationMapper.insert(webContentChargingStation); contentChargingStationMapper.insert(webContentChargingStation);
} }
......
<!DOCTYPE html SYSTEM "http://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-spring4-4.dtd">
<html lang="zh-CN" xmlns="http://www.w3.org/1999/xhtml"
xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="utf-8">
<title>充电桩信息列表</title>
<meta name="viewport"
content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="../../doa/css/oksub.css">
</head>
<body>
<div class="ok-body" style="padding-top: 0;">
<div style="margin-top: 10px;">
<input type="text" id="agentName" style="width: 150px; display: inline-block;" name="agentName"
placeholder="请输入代理商名称" autocomplete="off" class="layui-input">
<button class="layui-btn" id="btnsearch"><i class="layui-icon">&#xe615;</i></button>
<button id="reset" class="layui-btn icon-btn"><i class="layui-icon">&#xe669;</i>重置</button>
</div>
<!--数据表格-->
<table class="layui-hide" id="tableId" lay-filter="tableFilter"></table>
</div>
<!--js逻辑-->
<script src="../../doa/layui/layui.js"></script>
<script src="../../doa/js/jquery.min.js"></script>
<script type="text/javascript" th:inline="none">
function downLoadTemplate() {
window.location.href = '/jysk/chargingStation/downloadTemplate'
}
layui.use(["element", "table", "tree", "okLayer", "jquery", "okUtils", "upload"], function () {
let table = layui.table;
let okLayer = layui.okLayer;
let okUtils = layui.okUtils;
let $ = layui.$;
var upload = layui.upload;
$('.layui-col-md3').css("height", (window.screen.availHeight - 210) + "px");
let userTable = table.render({
elem: '#tableId',
url: '/jysk/agent/list',
where: {projectName: ""},
method: "post",
toolbar: true,
page: true,
limit: 10,
toolbar: "#toolbarTpl",
cols: [[
{title: "序号", templet: "#xuhao", width: 60},
{field: "agent_name", title: "代理商名称"},
{field: "agent_intro", title: "代理商简介"},
{
field: "creatTime",
title: "创建时间",
width: 180,
templet: "<div>{{layui.util.toDateString(d.create_time,'yyyy-MM-dd HH:mm:ss')}}</div>"
},
{title: "操作", width: 220, align: "center", fixed: "right", templet: "#operationTpl"}
]],
done: function (res, curr, count) {
}
});
$("#btnsearch").click(function () {
userTable.reload({
where: {agentName: $("#agentName").val()}
, page: {
curr: userTable.config.page.curr
}
});
});
// 重置事件
$("#reset").click(function () {
$("#agentName").val("");
userTable.reload({
where: {agentName: $("#agentName").val()}
, page: {
curr: userTable.config.page.curr
}
});
})
table.on("toolbar(tableFilter)", function (obj) {
switch (obj.event) {
case "add":
add();
break;
case "query":
userTable.reload();
break;
}
});
table.on("tool(tableFilter)", function (obj) {
let data = obj.data;
switch (obj.event) {
case "edit":
edit(data);
break;
case "view":
view(data);
break;
case "del":
del(data.id);
break;
}
});
function add() {
okLayer.open("添加代理商", "/jysk/agent/add", "100%", "100%", function (layero) {
}, function () {
userTable.reload();
})
}
function del(id) {
okLayer.confirm("确定要删除吗?", function () {
$.ajax({
url: "/jysk/agent/delete",
type: "POST",
data: {id: id},
dataType: "json",
success: function (data) {
userTable.reload({
page: {
curr: userTable.config.page.curr
}
});
okUtils.tableSuccessMsg(data.msg);
userTable.reload();
}
});
})
}
function edit(data){
okLayer.open("修改代理商信息", "/jysk/agent/add", "100%", "100%", function (layero) {
let iframeWin = window[layero.find("iframe")[0]["name"]];
iframeWin.initForm(data);
}, function () {
userTable.reload();
})
}
function view(data){
okLayer.open("查看代理商信息", "/jysk/agent/view", "100%", "100%", function (layero) {
let iframeWin = window[layero.find("iframe")[0]["name"]];
iframeWin.initForm(data);
}, function () {
userTable.reload();
})
}
window.openPic = function(url){
layer.open({
type: 1,
title: false,
shadeClose: true,
area: ['500px', '350px'], //宽高
content: '<img src="'+url+'" width="500px" height="350px">'
});
}
})
</script>
<!-- 序号 -->
<script type="text/html" id="xuhao">
{{d.LAY_TABLE_INDEX+1}}
</script>
<!-- 头工具栏模板 -->
<script type="text/html" id="toolbarTpl">
<div class="layui-btn-container">
<button class="layui-btn layui-btn-sm layui-btn-normal"
lay-event="query"><i class="layui-icon">&#xe9aa;</i>刷
</button>
<button class="layui-btn layui-btn-sm layui-btn-normal"
lay-event="add"><i class="layui-icon">&#xe608;</i>添
</button>
</div>
</script>
<!-- 行工具栏模板 -->
<script type="text/html" id="operationTpl">
<a href="javascript:" title="编辑" lay-event="edit"><i class="layui-icon">&#xe642;</i>编辑</a>
<!-- <a href="javascript:" title="查看" lay-event="view"><i class="layui-icon">&#xe639;</i>详情</a>-->
<a class="btn_del layui-btn-danger layui-btn layui-btn-xs" href="javascript:" title="删除" lay-event="del">删除</a>
</script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html SYSTEM "http://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-spring4-4.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>编辑职位</title>
<meta name="viewport"
content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" th:href="@{/doa/css/oksub.css}">
<link rel="stylesheet" type="text/css" th:href="@{/doa/css/bootstrap.css}">
<link rel="stylesheet" th:href="@{/doa/summernote/summernote.css}">
<script th:src="@{/doa/js/jquery.min.js}"></script>
<script th:src="@{/doa/js/bootstrap.min.js}"></script>
<script th:src="@{/doa/summernote/summernote.js}"></script>
<script th:src="@{/doa/summernote/lang/summernote-zh-CN.js}"></script> <!-- 中文-->
<link rel="stylesheet" type="text/css" th:href="@{/doa/css/taginput.css}">
</head>
<style type="text/css">
.contentRow{
display: flex;
gap: 10px;
padding-top: 10px;
}
.layui-laydate-content>.layui-laydate-list {
padding-bottom: 0px;
overflow: hidden;
}
.layui-laydate-content>.layui-laydate-list>li{
width:50%
}
.merge-box .scrollbox .merge-list {
padding-bottom: 5px;
}
.layui-form-label {
width: 100px;
}
.layui-input-block {
margin-left: 130px;
}
</style>
<body>
<div class="ok-body">
<!--form表单-->
<form class="layui-form ok-form" lay-filter="filter" style="width: 100%;margin-top: 20px;">
<input type="hidden" name="id"/>
<div class="layui-form-item">
<label class="layui-form-label">代理商名称:</label>
<div class="layui-input-block">
<input type="text" name="agent_name" placeholder="代理商名称"
autocomplete="off" class="layui-input" lay-verify="required">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">代理商简介:</label>
<div class="layui-input-block">
<textarea name="agent_intro" placeholder="请输入代理商简介" class="layui-textarea"
autocomplete="off" maxlength="2000"></textarea>
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<button class="layui-btn" lay-submit lay-filter="edit">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
</div>
</form>
</div>
<!--js逻辑-->
<script th:src="@{/doa/layui/layui.js}"></script>
<script th:src="@{/doa/js/common.js}"></script>
<script th:src="@{/doa/summernote/summernoteplug.js}"></script>
<script th:src="@{/doa/js/tagsinput.js}"></script>
<script type="text/javascript" th:inline="none">
let initData;
let okLayer, form, $, element,upload;
function initForm(data) {
let jsonString = JSON.stringify(data);
initData = JSON.parse(jsonString);
}
layui.use(["element", "form", "table", "tree", "okLayer", "layer", "jquery", "transfer","upload","laydate"], function () {
element = layui.element;
form = layui.form;
okLayer = layui.okLayer;
let layer = layui.layer;
$ = layui.$;
let laydate=layui.laydate;
upload = layui.upload;
// let loadIndex = layer.load();
laydate.render({
elem: '#newsTime'
,type: 'datetime'
,trigger: 'click'
});
function load() {
if (initData) {
if(initData.job_type!=null){
var shtr = initData.job_type;
var arr=[];
arr = shtr.split(';').filter(item=> item !='');
for(var i=0;i<arr.length;i++){
var html = "<div class=\"contentRow\">\n" +
" <div>\n" +
" <div class=\"layui-input-inline\" style=\"display: flex;gap: 5px;margin-left: 15px;\">\n" +
" <input type=\"text\" class=\"layui-input jobType\" id=\"jobType" + i + "\" placeholder=\"类型\">\n" +
" </div>\n" +
" </div>\n" +
" <div class=\"layui-input-inline\" style=\"width:30px;line-height: 40px; height: 40px;display: flex;\">\n" +
" <i class=\"layui-icon layui-icon-reduce-circle delinkRow\" onclick=\"delFunc($(this))\"></i>\n" +
" </div>\n" +
"</div>";
$(".row").append(html);
form.render();
let rowitem = $(".contentRow");
rowitem.find("#jobType"+i).val(arr[i]);
}
}
form.val("filter", initData);
form.render("select")
$("#job_content").summernote('code', initData.job_content);
}
}
setTimeout(function () {
load();
}, 500);
let height = $("#job_content").attr("job_content");
$("#job_content").summernote({
height: height === undefined ? 300 : height,
tabsize: 2,
lang: 'zh-CN',
fontNames: ['黑体', '宋体', '微软雅黑'],
callbacks: {
onImageUpload: function (files) {
//上传图片到服务器
for (let i = 0; i < files.length; i++) {
let formData = new FormData();
formData.append('file', files[i]);
$.ajax({
url: '/file/upload',//后台文件上传接口
type: 'POST',
data: formData,
processData: false,
contentType: false,
success: function (res) {
$('#job_content').summernote('insertImage', res.data.src);
}, error: function () {
alert("上传失败");
}
});
}
}
},
buttons: {
file: myfile
}
});
initsummernote("#job_content");
delFunc = function (t){
var thisHang = $(t).parent().parent();
thisHang.remove();
}
function formatminutes(date){
// var aa = $(".laydate-time-list li ol")[1];
// var showtime = $($(".laydate-time-list li ol")[1]).find("li");
// for (var i = 0; i < showtime.length; i++) {
// var t00 = showtime[i].innerText;
// if (t00 != "00" && t00 != "20" && t00 != "30" && t00 != "40" && t00 != "50") {
// showtime[i].remove()
// }
// }
$($(".laydate-time-list li ol")[2]).find("li").remove(); //清空秒
}
wordLeg = function (obj){
var currleg = $(obj).val().length;
var length = $(obj).attr('maxlength');
if (currleg > length) {
layer.msg('字数请在' + length + '字以内');
} else {
$('.text_count').text(currleg);
}
}
$(".uploadimg").click(function () {
let tag = $(this);
okLayer.open("选择图片", "/admin/file/index", "100%", "100%", function (layero) {
let iframeWin = window[layero.find("iframe")[0]["name"]];
iframeWin.settag({
setpath: function (data) {
$(tag).prev("input").val(data.filepath);
}
});
}, function () {
});
});
$(".addlinkRow").click(function () {
var nextLine = document.getElementsByClassName("jobType");
var a = nextLine.length;
var html = "<div class=\"contentRow\">\n" +
" <div>\n" +
" <div class=\"layui-input-inline\" style=\"display: flex;gap: 5px;margin-left: 15px;\">\n" +
" <input type=\"text\" class=\"layui-input jobType\" id=\"jobType" + a + "\" placeholder=\"类型\">\n" +
" </div>\n" +
" </div>\n" +
" <div class=\"layui-input-inline\" style=\"width:30px;line-height: 40px; height: 40px;display: flex;\">\n" +
" <i class=\"layui-icon layui-icon-reduce-circle delinkRow\" onclick=\"delFunc($(this))\"></i>\n" +
" </div>\n" +
"</div>";
$(".row").append(html);
form.render();
})
form.on("submit(edit)", function (data) {
$.ajax({
url: "/jysk/agent/save",
type: "POST",
data: JSON.stringify(data.field),
dataType: "json",
contentType: "application/json; charset=UTF-8",
success: function (data) {
if (data.code == 200) {
okLayer.greenTickMsg(data.msg, function () {
parent.layer.close(parent.layer.getFrameIndex(window.name));
});
} else {
okLayer.greenTickMsg(data.msg, null);
}
}
});
return false;
});
//关闭弹窗
function closeWindow() {
//先得到当前iframe层的索引
let index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);
}
})
</script>
</body>
</html>
<!DOCTYPE html SYSTEM "http://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-spring4-4.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>编辑职位</title>
<meta name="viewport"
content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" th:href="@{/doa/css/oksub.css}">
<link rel="stylesheet" type="text/css" th:href="@{/doa/css/bootstrap.css}">
<link rel="stylesheet" th:href="@{/doa/summernote/summernote.css}">
<script th:src="@{/doa/js/jquery.min.js}"></script>
<script th:src="@{/doa/js/bootstrap.min.js}"></script>
<script th:src="@{/doa/summernote/summernote.js}"></script>
<script th:src="@{/doa/summernote/lang/summernote-zh-CN.js}"></script> <!-- 中文-->
<link rel="stylesheet" type="text/css" th:href="@{/doa/css/taginput.css}">
</head>
<style type="text/css">
.contentRow{
display: flex;
gap: 10px;
padding-top: 10px;
}
.layui-laydate-content>.layui-laydate-list {
padding-bottom: 0px;
overflow: hidden;
}
.layui-laydate-content>.layui-laydate-list>li{
width:50%
}
.merge-box .scrollbox .merge-list {
padding-bottom: 5px;
}
.layui-form-label {
width: 100px;
}
.layui-input-block {
margin-left: 130px;
}
</style>
<body>
<div class="ok-body">
<!--form表单-->
<form class="layui-form ok-form" lay-filter="filter" style="width: 100%;margin-top: 20px;">
<input type="hidden" name="id"/>
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">语言:</label>
<div class="layui-input-block">
<select name="type" lay-verify="required">
<option value="">请选择语言</option>
<option value="1">中文</option>
<option value="2">英文</option>
</select>
</div>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">职位名称:</label>
<div class="layui-input-block">
<input type="text" name="job_name" placeholder="职位名称"
autocomplete="off" class="layui-input" lay-verify="required">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">岗位类型:</label>
<div class="layui-input-block">
<div class="layui-input-inline">
<button type="button" class="layui-btn layui-btn-normal addlinkRow">添加岗位类型</button>
</div>
<div class="layui-form-item row">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">岗位城市:</label>
<div class="layui-input-block">
<input type="text" name="job_address" placeholder="岗位城市"
autocomplete="off" class="layui-input" lay-verify="required">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">岗位人数:</label>
<div class="layui-input-block">
<input type="text" name="job_count" placeholder="岗位人数"
autocomplete="off" class="layui-input" lay-verify="required">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">岗位学历:</label>
<div class="layui-input-block">
<input type="text" name="job_record" placeholder="岗位学历"
autocomplete="off" class="layui-input" lay-verify="required">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">职位内容:</label>
<div class="layui-input-block">
<textarea placeholder="请输入内容" name="job_content" class="layui-textarea" id="job_content" lay-verify="job_content"></textarea>
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<button class="layui-btn" lay-submit lay-filter="edit">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
</div>
</form>
</div>
<!--js逻辑-->
<script th:src="@{/doa/layui/layui.js}"></script>
<script th:src="@{/doa/js/common.js}"></script>
<script th:src="@{/doa/summernote/summernoteplug.js}"></script>
<script th:src="@{/doa/js/tagsinput.js}"></script>
<script type="text/javascript" th:inline="none">
let initData;
let okLayer, form, $, element,upload;
function initForm(data) {
let jsonString = JSON.stringify(data);
initData = JSON.parse(jsonString);
}
layui.use(["element", "form", "table", "tree", "okLayer", "layer", "jquery", "transfer","upload","laydate"], function () {
element = layui.element;
form = layui.form;
okLayer = layui.okLayer;
let layer = layui.layer;
$ = layui.$;
let laydate=layui.laydate;
upload = layui.upload;
// let loadIndex = layer.load();
laydate.render({
elem: '#newsTime'
,type: 'datetime'
,trigger: 'click'
});
function load() {
if (initData) {
if(initData.job_type!=null){
var shtr = initData.job_type;
var arr=[];
arr = shtr.split(';').filter(item=> item !='');
for(var i=0;i<arr.length;i++){
var html = "<div class=\"contentRow\">\n" +
" <div>\n" +
" <div class=\"layui-input-inline\" style=\"display: flex;gap: 5px;margin-left: 15px;\">\n" +
" <input type=\"text\" class=\"layui-input jobType\" id=\"jobType" + i + "\" placeholder=\"类型\">\n" +
" </div>\n" +
" </div>\n" +
" <div class=\"layui-input-inline\" style=\"width:30px;line-height: 40px; height: 40px;display: flex;\">\n" +
" <i class=\"layui-icon layui-icon-reduce-circle delinkRow\" onclick=\"delFunc($(this))\"></i>\n" +
" </div>\n" +
"</div>";
$(".row").append(html);
form.render();
let rowitem = $(".contentRow");
rowitem.find("#jobType"+i).val(arr[i]);
}
}
form.val("filter", initData);
form.render("select")
$("#job_content").summernote('code', initData.job_content);
}
}
setTimeout(function () {
load();
}, 500);
let height = $("#job_content").attr("job_content");
$("#job_content").summernote({
height: height === undefined ? 300 : height,
tabsize: 2,
lang: 'zh-CN',
fontNames: ['黑体', '宋体', '微软雅黑'],
callbacks: {
onImageUpload: function (files) {
//上传图片到服务器
for (let i = 0; i < files.length; i++) {
let formData = new FormData();
formData.append('file', files[i]);
$.ajax({
url: '/file/upload',//后台文件上传接口
type: 'POST',
data: formData,
processData: false,
contentType: false,
success: function (res) {
$('#job_content').summernote('insertImage', res.data.src);
}, error: function () {
alert("上传失败");
}
});
}
}
},
buttons: {
file: myfile
}
});
initsummernote("#job_content");
delFunc = function (t){
var thisHang = $(t).parent().parent();
thisHang.remove();
}
function formatminutes(date){
// var aa = $(".laydate-time-list li ol")[1];
// var showtime = $($(".laydate-time-list li ol")[1]).find("li");
// for (var i = 0; i < showtime.length; i++) {
// var t00 = showtime[i].innerText;
// if (t00 != "00" && t00 != "20" && t00 != "30" && t00 != "40" && t00 != "50") {
// showtime[i].remove()
// }
// }
$($(".laydate-time-list li ol")[2]).find("li").remove(); //清空秒
}
wordLeg = function (obj){
var currleg = $(obj).val().length;
var length = $(obj).attr('maxlength');
if (currleg > length) {
layer.msg('字数请在' + length + '字以内');
} else {
$('.text_count').text(currleg);
}
}
$(".uploadimg").click(function () {
let tag = $(this);
okLayer.open("选择图片", "/admin/file/index", "100%", "100%", function (layero) {
let iframeWin = window[layero.find("iframe")[0]["name"]];
iframeWin.settag({
setpath: function (data) {
$(tag).prev("input").val(data.filepath);
}
});
}, function () {
});
});
$(".addlinkRow").click(function () {
var nextLine = document.getElementsByClassName("jobType");
var a = nextLine.length;
var html = "<div class=\"contentRow\">\n" +
" <div>\n" +
" <div class=\"layui-input-inline\" style=\"display: flex;gap: 5px;margin-left: 15px;\">\n" +
" <input type=\"text\" class=\"layui-input jobType\" id=\"jobType" + a + "\" placeholder=\"类型\">\n" +
" </div>\n" +
" </div>\n" +
" <div class=\"layui-input-inline\" style=\"width:30px;line-height: 40px; height: 40px;display: flex;\">\n" +
" <i class=\"layui-icon layui-icon-reduce-circle delinkRow\" onclick=\"delFunc($(this))\"></i>\n" +
" </div>\n" +
"</div>";
$(".row").append(html);
form.render();
})
form.on("submit(edit)", function (data) {
var jobTypeContent="";
lay('.contentRow').each(function(index,item) {
var jobType = document.getElementById("jobType"+index);
if(jobType.value != ""){
jobTypeContent +=jobType.value+';';
}
})
if($("#job_content").summernote('code') == null || $("#job_content").summernote('code')==''){
okLayer.yellowQuestionMsg("请填写职位内容", null);
return false;
}
data.field.job_type=jobTypeContent;
data.field.invite_type=2;
data.field.job_content=$('#job_content').summernote('code');
$.ajax({
url: "/shunyan/job/save",
type: "POST",
data: JSON.stringify(data.field),
dataType: "json",
contentType: "application/json; charset=UTF-8",
success: function (data) {
if (data.code == 200) {
okLayer.greenTickMsg(data.msg, function () {
parent.layer.close(parent.layer.getFrameIndex(window.name));
});
} else {
okLayer.greenTickMsg(data.msg, null);
}
}
});
return false;
});
//关闭弹窗
function closeWindow() {
//先得到当前iframe层的索引
let index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);
}
})
</script>
</body>
</html>
<!DOCTYPE html SYSTEM "http://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-spring4-4.dtd">
<html lang="zh-CN" xmlns="http://www.w3.org/1999/xhtml"
xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="utf-8">
<title>社招列表</title>
<meta name="viewport"
content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="../../doa/css/oksub.css">
</head>
<body>
<div class="ok-body" style="padding-top: 0;">
<div style="margin-top: 10px;">
<input type="text" id="searchContent" style="width: 150px; display: inline-block;" name="searchContent"
placeholder="请输入名称" autocomplete="off" class="layui-input">
<button class="layui-btn" id="btnsearch"><i class="layui-icon">&#xe615;</i></button>
<button id="reset" class="layui-btn icon-btn"><i class="layui-icon">&#xe669;</i>重置</button>
</div>
<!--数据表格-->
<table class="layui-hide" id="tableId" lay-filter="tableFilter"></table>
</div>
<!--js逻辑-->
<script src="../../doa/layui/layui.js"></script>
<script type="text/javascript" th:inline="none">
layui.use(["element", "table", "tree", "okLayer", "jquery", "okUtils"], function () {
let table = layui.table;
let okLayer = layui.okLayer;
let okUtils = layui.okUtils;
let $ = layui.$;
$('.layui-col-md3').css("height", (window.screen.availHeight - 210) + "px");
let userTable = table.render({
elem: '#tableId',
url: '/shunyan/job/list',
where: {keyword: "",invitetype:2},
method: "post",
toolbar: true,
page: true,
limit: 10,
toolbar: "#toolbarTpl",
cols: [[
{title: "序号", templet: "#xuhao", width: 60},
{field: "job_name", title: "职位名称"},
{field: "job_type", title: "岗位类型"},
{field: "job_address", title: "城市"},
{field: "job_count", title: "招聘人数"},
{field: "job_record", title: "学历"},
{
field: "creatTime",
title: "创建时间",
width: 180,
templet: "<div>{{layui.util.toDateString(d.create_time, 'yyyy-MM-dd HH:mm:ss')}}</div> "
},
{title: "操作", width: 220, align: "center", fixed: "right", templet: "#operationTpl"}
]],
done: function (res, curr, count) {
}
});
$("#btnsearch").click(function () {
userTable.reload({
where: {keyword: $("#searchContent").val(),invitetype:2}
, page: {
curr: userTable.config.page.curr
}
});
});
// 重置事件
$("#reset").click(function () {
$("#searchContent").val("");
userTable.reload({
where: {keyword: $("#searchContent").val()}
, page: {
curr: userTable.config.page.curr
}
});
})
table.on("toolbar(tableFilter)", function (obj) {
switch (obj.event) {
case "add":
add();
break;
case "query":
userTable.reload();
break;
}
});
table.on("tool(tableFilter)", function (obj) {
let data = obj.data;
switch (obj.event) {
case "edit":
edit(data);
break;
case "view":
view(data);
break;
case "del":
del(data.id);
break;
}
});
function add() {
okLayer.open("添加产品", "/shunyan/job/socAdd", "100%", "100%", function (layero) {
}, function () {
userTable.reload();
})
}
function del(id) {
okLayer.confirm("确定要删除吗?", function () {
$.ajax({
url: "/shunyan/job/delete",
type: "POST",
data: {id: id},
dataType: "json",
success: function (data) {
userTable.reload({
page: {
curr: userTable.config.page.curr
}
});
okUtils.tableSuccessMsg(data.msg);
}
});
})
}
function edit(data){
okLayer.open("修改产品", "/shunyan/job/add", "100%", "100%", function (layero) {
let iframeWin = window[layero.find("iframe")[0]["name"]];
iframeWin.initForm(data);
}, function () {
userTable.reload();
})
}
function view(data){
okLayer.open("查看产品", "/shunyan/job/view", "100%", "100%", function (layero) {
let iframeWin = window[layero.find("iframe")[0]["name"]];
iframeWin.initForm(data);
}, function () {
userTable.reload();
})
}
window.openPic = function(url){
layer.open({
type: 1,
title: false,
shadeClose: true,
area: ['500px', '350px'], //宽高
content: '<img src="'+url+'" width="500px" height="350px">'
});
}
})
</script>
<!-- 序号 -->
<script type="text/html" id="xuhao">
{{d.LAY_TABLE_INDEX+1}}
</script>
<!-- 头工具栏模板 -->
<script type="text/html" id="toolbarTpl">
<div class="layui-btn-container">
<button class="layui-btn layui-btn-sm layui-btn-normal"
lay-event="query"><i class="layui-icon">&#xe9aa;</i>刷
</button>
<button class="layui-btn layui-btn-sm layui-btn-normal"
lay-event="add"><i class="layui-icon">&#xe608;</i>添
</button>
</div>
</script>
<!-- 行工具栏模板 -->
<script type="text/html" id="operationTpl">
<a href="javascript:" title="编辑" lay-event="edit"><i class="layui-icon">&#xe642;</i>编辑</a>
<!-- <a href="javascript:" title="查看" lay-event="view"><i class="layui-icon">&#xe639;</i>详情</a>-->
<a class="btn_del layui-btn-danger layui-btn layui-btn-xs" href="javascript:" title="删除" lay-event="del">删除</a>
</script>
</body>
</html>
\ No newline at end of file
2024:07:02 17:04:05.172 [restartedMain] INFO com.web.admin.AdminApplication:55- Starting AdminApplication on wangyale with PID 19416 (D:\ideaworkspace\jysk\admin\target\classes started by wangy in D:\ideaworkspace\jysk)
2024:07:02 17:04:05.178 [restartedMain] INFO com.web.admin.AdminApplication:655- The following profiles are active: dev
2024:07:02 17:04:07.799 [restartedMain] WARN c.b.m.core.metadata.TableInfoHelper:398- This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "com.common.entity.system.Config"
2024:07:02 17:04:10.988 [restartedMain] INFO c.alibaba.druid.pool.DruidDataSource:990- {dataSource-1} inited
2024:07:02 17:04:11.159 [restartedMain] WARN c.b.m.core.metadata.TableInfoHelper:398- This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "com.common.entity.temp.PhoneCode"
2024:07:02 17:04:11.787 [restartedMain] INFO com.web.admin.AdminApplication:61- Started AdminApplication in 7.116 seconds (JVM running for 8.445)
2024:07:02 17:18:46.551 [SpringContextShutdownHook] INFO c.alibaba.druid.pool.DruidDataSource:2043- {dataSource-1} closing ...
2024:07:02 17:18:46.559 [SpringContextShutdownHook] INFO c.alibaba.druid.pool.DruidDataSource:2116- {dataSource-1} closed
2024:07:02 17:18:48.694 [restartedMain] INFO com.web.admin.AdminApplication:55- Starting AdminApplication on wangyale with PID 20264 (D:\ideaworkspace\jysk\admin\target\classes started by wangy in D:\ideaworkspace\jysk)
2024:07:02 17:18:48.695 [restartedMain] INFO com.web.admin.AdminApplication:655- The following profiles are active: dev
2024:07:02 17:18:50.552 [restartedMain] WARN c.b.m.core.metadata.TableInfoHelper:398- This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "com.common.entity.system.Config"
2024:07:02 17:18:53.344 [restartedMain] INFO c.alibaba.druid.pool.DruidDataSource:990- {dataSource-1} inited
2024:07:02 17:18:53.454 [restartedMain] WARN c.b.m.core.metadata.TableInfoHelper:398- This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "com.common.entity.temp.PhoneCode"
2024:07:02 17:18:53.967 [restartedMain] INFO com.web.admin.AdminApplication:61- Started AdminApplication in 5.67 seconds (JVM running for 6.477)
2024:07:02 17:19:15.624 [http-nio-9009-exec-4] INFO c.w.admin.controller.IndexController:46- request.getSession().getId()=7219D8FF1CB566FCC481F25E09050283
2024:07:02 17:19:16.496 [http-nio-9009-exec-9] INFO c.w.admin.controller.IndexController:46- request.getSession().getId()=7219D8FF1CB566FCC481F25E09050283
2024:07:02 17:19:18.772 [http-nio-9009-exec-1] INFO c.w.admin.controller.IndexController:46- request.getSession().getId()=7219D8FF1CB566FCC481F25E09050283
2024:07:02 17:19:19.690 [http-nio-9009-exec-10] INFO c.w.admin.controller.IndexController:46- request.getSession().getId()=7219D8FF1CB566FCC481F25E09050283
2024:07:02 21:41:12.468 [http-nio-9009-exec-4] INFO c.w.admin.controller.IndexController:46- request.getSession().getId()=B476EB355EF3D5E5901D1BDCDE4B349E
2024:07:02 22:23:49.072 [SpringContextShutdownHook] INFO c.alibaba.druid.pool.DruidDataSource:2043- {dataSource-1} closing ...
2024:07:02 22:23:49.075 [SpringContextShutdownHook] INFO c.alibaba.druid.pool.DruidDataSource:2116- {dataSource-1} closed
2024:06:25 15:24:16.939 [restartedMain] INFO com.web.admin.AdminApplication:55- Starting AdminApplication on wangyale with PID 20348 (D:\ideaworkspace\jysk\admin\target\classes started by wangy in D:\ideaworkspace\jysk) 2024:07:04 21:15:44.813 [restartedMain] INFO com.web.admin.AdminApplication:55- Starting AdminApplication on wangyale with PID 21016 (D:\ideaworkspace\jysk\admin\target\classes started by wangy in D:\ideaworkspace\jysk)
2024:06:25 15:24:16.953 [restartedMain] INFO com.web.admin.AdminApplication:655- The following profiles are active: test 2024:07:04 21:15:44.820 [restartedMain] INFO com.web.admin.AdminApplication:655- The following profiles are active: dev
2024:06:25 15:24:23.050 [restartedMain] INFO c.alibaba.druid.pool.DruidDataSource:990- {dataSource-1} inited 2024:07:04 21:15:47.569 [restartedMain] WARN c.b.m.core.metadata.TableInfoHelper:398- This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "com.common.entity.system.Config"
2024:06:25 15:24:24.526 [restartedMain] INFO com.web.admin.AdminApplication:61- Started AdminApplication in 8.278 seconds (JVM running for 9.762) 2024:07:04 21:15:51.461 [restartedMain] INFO c.alibaba.druid.pool.DruidDataSource:990- {dataSource-1} inited
2024:06:25 15:25:58.864 [SpringContextShutdownHook] INFO c.alibaba.druid.pool.DruidDataSource:2043- {dataSource-1} closing ... 2024:07:04 21:15:51.634 [restartedMain] WARN c.b.m.core.metadata.TableInfoHelper:398- This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "com.common.entity.temp.PhoneCode"
2024:06:25 15:25:58.883 [SpringContextShutdownHook] INFO c.alibaba.druid.pool.DruidDataSource:2116- {dataSource-1} closed 2024:07:04 21:15:52.259 [restartedMain] INFO com.web.admin.AdminApplication:61- Started AdminApplication in 7.859 seconds (JVM running for 9.263)
2024:06:25 15:26:01.326 [restartedMain] INFO com.web.admin.AdminApplication:55- Starting AdminApplication on wangyale with PID 14968 (D:\ideaworkspace\jysk\admin\target\classes started by wangy in D:\ideaworkspace\jysk) 2024:07:04 21:16:00.542 [http-nio-9009-exec-5] INFO c.w.admin.controller.IndexController:46- request.getSession().getId()=F4F85BE58EC9A9AC603CBC81AEBF8567
2024:06:25 15:26:01.327 [restartedMain] INFO com.web.admin.AdminApplication:655- The following profiles are active: dev 2024:07:04 21:18:37.764 [http-nio-9009-exec-5] INFO c.w.admin.controller.IndexController:46- request.getSession().getId()=47E600F0CBBB5A1B0C80C9C74D0CAD01
2024:06:25 15:26:03.363 [restartedMain] WARN c.b.m.core.metadata.TableInfoHelper:398- This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "com.common.entity.system.Config" 2024:07:04 21:23:27.710 [SpringContextShutdownHook] INFO c.alibaba.druid.pool.DruidDataSource:2043- {dataSource-1} closing ...
2024:06:25 15:26:07.141 [restartedMain] INFO c.alibaba.druid.pool.DruidDataSource:990- {dataSource-1} inited 2024:07:04 21:23:27.714 [SpringContextShutdownHook] INFO c.alibaba.druid.pool.DruidDataSource:2116- {dataSource-1} closed
2024:06:25 15:26:07.279 [restartedMain] WARN c.b.m.core.metadata.TableInfoHelper:398- This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "com.common.entity.temp.PhoneCode" 2024:07:04 21:23:30.060 [restartedMain] INFO com.web.admin.AdminApplication:55- Starting AdminApplication on wangyale with PID 21160 (D:\ideaworkspace\jysk\admin\target\classes started by wangy in D:\ideaworkspace\jysk)
2024:06:25 15:26:08.019 [restartedMain] INFO com.web.admin.AdminApplication:61- Started AdminApplication in 7.055 seconds (JVM running for 7.724) 2024:07:04 21:23:30.060 [restartedMain] INFO com.web.admin.AdminApplication:655- The following profiles are active: dev
2024:06:25 15:26:34.895 [http-nio-9009-exec-7] INFO c.w.admin.controller.IndexController:46- request.getSession().getId()=BAAAFCAD65C5D366A7233CE2164FC212 2024:07:04 21:23:31.908 [restartedMain] WARN c.b.m.core.metadata.TableInfoHelper:398- This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "com.common.entity.system.Config"
2024:07:04 21:23:34.692 [restartedMain] INFO c.alibaba.druid.pool.DruidDataSource:990- {dataSource-1} inited
2024:07:04 21:23:34.794 [restartedMain] WARN c.b.m.core.metadata.TableInfoHelper:398- This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "com.common.entity.temp.PhoneCode"
2024:07:04 21:23:35.323 [restartedMain] INFO com.web.admin.AdminApplication:61- Started AdminApplication in 5.642 seconds (JVM running for 6.365)
2024:07:04 21:23:40.723 [http-nio-9009-exec-4] INFO c.w.admin.controller.IndexController:46- request.getSession().getId()=785C259FFC5763D983D8991C0240CF17
2024:07:04 21:26:28.458 [SpringContextShutdownHook] INFO c.alibaba.druid.pool.DruidDataSource:2043- {dataSource-1} closing ...
2024:07:04 21:26:28.462 [SpringContextShutdownHook] INFO c.alibaba.druid.pool.DruidDataSource:2116- {dataSource-1} closed
2024:07:04 21:26:30.698 [restartedMain] INFO com.web.admin.AdminApplication:55- Starting AdminApplication on wangyale with PID 21140 (D:\ideaworkspace\jysk\admin\target\classes started by wangy in D:\ideaworkspace\jysk)
2024:07:04 21:26:30.699 [restartedMain] INFO com.web.admin.AdminApplication:655- The following profiles are active: dev
2024:07:04 21:26:32.510 [restartedMain] WARN c.b.m.core.metadata.TableInfoHelper:398- This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "com.common.entity.system.Config"
2024:07:04 21:26:35.275 [restartedMain] INFO c.alibaba.druid.pool.DruidDataSource:990- {dataSource-1} inited
2024:07:04 21:26:35.398 [restartedMain] WARN c.b.m.core.metadata.TableInfoHelper:398- This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "com.common.entity.temp.PhoneCode"
2024:07:04 21:26:35.975 [restartedMain] INFO com.web.admin.AdminApplication:61- Started AdminApplication in 5.649 seconds (JVM running for 6.316)
2024:07:04 21:26:41.771 [http-nio-9009-exec-3] INFO c.w.admin.controller.IndexController:46- request.getSession().getId()=4A54D6EAE239F95DE1C050056ADB3482
2024:07:04 21:32:32.325 [SpringContextShutdownHook] INFO c.alibaba.druid.pool.DruidDataSource:2043- {dataSource-1} closing ...
2024:07:04 21:32:32.327 [SpringContextShutdownHook] INFO c.alibaba.druid.pool.DruidDataSource:2116- {dataSource-1} closed
2024:07:04 21:32:34.514 [restartedMain] INFO com.web.admin.AdminApplication:55- Starting AdminApplication on wangyale with PID 16216 (D:\ideaworkspace\jysk\admin\target\classes started by wangy in D:\ideaworkspace\jysk)
2024:07:04 21:32:34.514 [restartedMain] INFO com.web.admin.AdminApplication:655- The following profiles are active: dev
2024:07:04 21:32:36.313 [restartedMain] WARN c.b.m.core.metadata.TableInfoHelper:398- This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "com.common.entity.system.Config"
2024:07:04 21:32:39.106 [restartedMain] INFO c.alibaba.druid.pool.DruidDataSource:990- {dataSource-1} inited
2024:07:04 21:32:39.214 [restartedMain] WARN c.b.m.core.metadata.TableInfoHelper:398- This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "com.common.entity.temp.PhoneCode"
2024:07:04 21:32:39.771 [restartedMain] INFO com.web.admin.AdminApplication:61- Started AdminApplication in 5.643 seconds (JVM running for 6.3)
2024:07:04 21:32:48.774 [http-nio-9009-exec-7] INFO c.w.admin.controller.IndexController:46- request.getSession().getId()=0A8A7FF918B09649CCEDE7432C736399
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论