Commit c8e462b3 by ghxdhr

通知公告、操作记录的代码及sql

parent 1c897ad5
package com.patzn.cloud.service.lims.hmhj.controller;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.api.RestConstants;
import com.patzn.cloud.commons.api.RestResult;
import com.patzn.cloud.commons.controller.ServiceController;
import com.patzn.cloud.service.hmhj.entity.NoticeAnnouncement;
import com.patzn.cloud.service.lims.hmhj.service.INoticeAnnouncementService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 通知公告表 前端控制器
*
* @author patzn
* @since 2021-07-25
*/
@Api(tags = "通知公告表")
@RestController
@RequestMapping("/v1/announcement")
public class NoticeAnnouncementController extends ServiceController {
@Autowired
private INoticeAnnouncementService noticeAnnouncementService;
@ApiOperation("分页列表")
@ApiImplicitParams({
@ApiImplicitParam(name = RestConstants.PAGE_PAGE, value = "请求数据的页码", required = true, paramType = "query", dataTypeClass = Integer.class),
@ApiImplicitParam(name = RestConstants.PAGE_ROWS, value = "每页条数", required = true, paramType = "query", dataTypeClass = Integer.class),
})
@PostMapping("/page")
public RestResult<Page<NoticeAnnouncement>> getPage(NoticeAnnouncement noticeAnnouncement) {
return success(noticeAnnouncementService.page(getPage(), noticeAnnouncement));
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@GetMapping("/{id}")
public RestResult<NoticeAnnouncement> get(@PathVariable("id") Long id) {
return success(noticeAnnouncementService.getById(id));
}
@ApiOperation("根据 id 修改信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@PutMapping("/{id}")
public RestResult<Boolean> edit(@PathVariable("id") Long id, NoticeAnnouncement noticeAnnouncement) {
noticeAnnouncement.setId(id);
return success(noticeAnnouncementService.updateAndRecord(noticeAnnouncement));
}
@ApiOperation("添加")
@PostMapping("/")
public RestResult<Boolean> add(NoticeAnnouncement noticeAnnouncement) {
return success(noticeAnnouncementService.save(noticeAnnouncement));
}
@ApiOperation("根据 ids 删除")
@ApiImplicitParams({
@ApiImplicitParam(name = "ids", value = "主键列表", required = true, paramType = "query", allowMultiple = true, dataTypeClass = Long.class),
})
@DeleteMapping("/")
public RestResult<Boolean> delete(@RequestParam("ids") List<Long> ids) {
return success(noticeAnnouncementService.removeByIds(ids));
}
}
package com.patzn.cloud.service.lims.hmhj.controller;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.api.RestConstants;
import com.patzn.cloud.commons.api.RestResult;
import com.patzn.cloud.commons.controller.ServiceController;
import com.patzn.cloud.service.hmhj.entity.NoticeRecord;
import com.patzn.cloud.service.lims.hmhj.service.INoticeRecordService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 通知公告操作日志 前端控制器
*
* @author patzn
* @since 2021-07-25
*/
@Api(tags = "通知公告操作日志")
@RestController
@RequestMapping("/v1/record")
public class NoticeRecordController extends ServiceController {
@Autowired
private INoticeRecordService noticeRecordService;
@ApiOperation("分页列表")
@ApiImplicitParams({
@ApiImplicitParam(name = RestConstants.PAGE_PAGE, value = "请求数据的页码", required = true, paramType = "query", dataTypeClass = Integer.class),
@ApiImplicitParam(name = RestConstants.PAGE_ROWS, value = "每页条数", required = true, paramType = "query", dataTypeClass = Integer.class),
})
@PostMapping("/page")
public RestResult<Page<NoticeRecord>> getPage(NoticeRecord noticeRecord) {
return success(noticeRecordService.page(getPage(), noticeRecord));
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@GetMapping("/{id}")
public RestResult<NoticeRecord> get(@PathVariable("id") Long id) {
return success(noticeRecordService.getById(id));
}
@ApiOperation("根据 id 修改信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@PutMapping("/{id}")
public RestResult<Boolean> edit(@PathVariable("id") Long id, NoticeRecord noticeRecord) {
noticeRecord.setId(id);
return success(noticeRecordService.updateById(noticeRecord));
}
@ApiOperation("添加")
@PostMapping("/")
public RestResult<Boolean> add(NoticeRecord noticeRecord) {
return success(noticeRecordService.save(noticeRecord));
}
@ApiOperation("根据 ids 删除")
@ApiImplicitParams({
@ApiImplicitParam(name = "ids", value = "主键列表", required = true, paramType = "query", allowMultiple = true, dataTypeClass = Long.class),
})
@DeleteMapping("/")
public RestResult<Boolean> delete(@RequestParam("ids") List<Long> ids) {
return success(noticeRecordService.removeByIds(ids));
}
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.entity.NoticeAnnouncement;
/**
* <p>
* 通知公告表 Mapper 接口
* </p>
*
* @author patzn
* @since 2021-07-25
*/
public interface NoticeAnnouncementMapper extends BatchMapper<NoticeAnnouncement> {
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.entity.NoticeRecord;
/**
* <p>
* 通知公告操作日志 Mapper 接口
* </p>
*
* @author patzn
* @since 2021-07-25
*/
public interface NoticeRecordMapper extends BatchMapper<NoticeRecord> {
}
package com.patzn.cloud.service.lims.hmhj.service;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.service.IBaseService;
import com.patzn.cloud.service.hmhj.entity.NoticeAnnouncement;
import java.util.List;
/**
* 通知公告表 服务类
*
* @author patzn
* @since 2021-07-25
*/
public interface INoticeAnnouncementService extends IBaseService<NoticeAnnouncement> {
Page<NoticeAnnouncement> page(Page<NoticeAnnouncement> page, NoticeAnnouncement noticeAnnouncement);
boolean removeByIds(List<Long> ids);
boolean updateAndRecord(NoticeAnnouncement noticeAnnouncement);
}
package com.patzn.cloud.service.lims.hmhj.service;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.service.IBaseService;
import com.patzn.cloud.service.hmhj.entity.NoticeRecord;
import java.util.List;
/**
* 通知公告操作日志 服务类
*
* @author patzn
* @since 2021-07-25
*/
public interface INoticeRecordService extends IBaseService<NoticeRecord> {
Page<NoticeRecord> page(Page<NoticeRecord> page, NoticeRecord noticeRecord);
boolean removeByIds(List<Long> ids);
}
package com.patzn.cloud.service.lims.hmhj.service.impl;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.controller.LoginHelper;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.hmhj.entity.NoticeAnnouncement;
import com.patzn.cloud.service.hmhj.entity.NoticeRecord;
import com.patzn.cloud.service.lims.base.service.ILmsPropertyService;
import com.patzn.cloud.service.lims.hmhj.mapper.NoticeAnnouncementMapper;
import com.patzn.cloud.service.lims.hmhj.service.INoticeAnnouncementService;
import com.patzn.cloud.service.lims.hmhj.service.INoticeRecordService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 通知公告表 服务实现类
*
* @author patzn
* @since 2021-07-25
*/
@Service
public class NoticeAnnouncementServiceImpl extends BaseServiceImpl<NoticeAnnouncementMapper, NoticeAnnouncement> implements INoticeAnnouncementService {
@Autowired
private ILmsPropertyService lmsPropertyService;
@Autowired
private INoticeRecordService noticeRecordService;
@Override
public Page<NoticeAnnouncement> page(Page<NoticeAnnouncement> page, NoticeAnnouncement noticeAnnouncement) {
Wrapper wrapper = new EntityWrapper<>(noticeAnnouncement);
return this.page(page, wrapper);
}
@Override
public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0;
}
@Override
public boolean updateAndRecord(NoticeAnnouncement noticeAnnouncement) {
/* 更新时添加对比信息 */
NoticeAnnouncement naInDB = this.getById(noticeAnnouncement.getId());
String remark = lmsPropertyService.getCompareDifferent(noticeAnnouncement, naInDB, "通知公告对比", "修改信息:");
if (StringUtils.isNotEmpty(remark)) {
NoticeRecord record = new NoticeRecord();
record.setNoticeId(noticeAnnouncement.getId());
record.setRemark(remark);
record.setOperator(LoginHelper.getAccount().getUserName());
record.setOperatorId(LoginHelper.getAccount().getUserId());
noticeRecordService.save(record);
}
return this.updateById(noticeAnnouncement);
}
}
package com.patzn.cloud.service.lims.hmhj.service.impl;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.hmhj.entity.NoticeRecord;
import com.patzn.cloud.service.lims.hmhj.mapper.NoticeRecordMapper;
import com.patzn.cloud.service.lims.hmhj.service.INoticeRecordService;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 通知公告操作日志 服务实现类
*
* @author patzn
* @since 2021-07-25
*/
@Service
public class NoticeRecordServiceImpl extends BaseServiceImpl<NoticeRecordMapper, NoticeRecord> implements INoticeRecordService {
@Override
public Page<NoticeRecord> page(Page<NoticeRecord> page, NoticeRecord noticeRecord) {
Wrapper wrapper = new EntityWrapper<>(noticeRecord);
return this.page(page, wrapper);
}
@Override
public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.patzn.cloud.service.lims.hmhj.mapper.NoticeAnnouncementMapper">
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.patzn.cloud.service.lims.hmhj.mapper.NoticeRecordMapper">
</mapper>
-- ghx
-- ghx
-- 通知公告表
CREATE TABLE "public"."notice_announcement" (
"id" int8 NOT NULL,
"content" varchar(255),
"uid" int8,
"ctime" timestamp(0),
"deleted" int2 DEFAULT 0,
"company_id" int8,
"lid" int8,
"ltime" timestamp(0)
)
;
COMMENT ON COLUMN "public"."notice_announcement"."id" IS '主键';
COMMENT ON COLUMN "public"."notice_announcement"."content" IS '内容';
COMMENT ON COLUMN "public"."notice_announcement"."uid" IS '创建人id';
COMMENT ON COLUMN "public"."notice_announcement"."ctime" IS '创建时间';
COMMENT ON COLUMN "public"."notice_announcement"."deleted" IS '是否删除(0否1是)';
COMMENT ON COLUMN "public"."notice_announcement"."company_id" IS '公司id';
COMMENT ON COLUMN "public"."notice_announcement"."lid" IS '最后修改人';
COMMENT ON COLUMN "public"."notice_announcement"."ltime" IS '最后修改时间';
COMMENT ON TABLE "public"."notice_announcement" IS '通知公告表';
-- 通知记录表
CREATE TABLE "public"."notice_record" (
"id" int8 NOT NULL,
"notice_id" int8,
"remark" varchar(255),
"ctime" timestamp(0),
"uid" int8,
"lid" int8,
"ltime" timestamp(0),
"deleted" int2 DEFAULT 0,
"company_id" int8,
"operator" varchar(50),
"operator_id" int8
)
;
COMMENT ON COLUMN "public"."notice_record"."id" IS '主键';
COMMENT ON COLUMN "public"."notice_record"."notice_id" IS '通知公告ID';
COMMENT ON COLUMN "public"."notice_record"."remark" IS '操作原因';
COMMENT ON COLUMN "public"."notice_record"."ctime" IS '创建时间';
COMMENT ON COLUMN "public"."notice_record"."uid" IS '创建人ID';
COMMENT ON COLUMN "public"."notice_record"."lid" IS '最后修改人ID';
COMMENT ON COLUMN "public"."notice_record"."ltime" IS '最后修改时间';
COMMENT ON COLUMN "public"."notice_record"."deleted" IS '是否删除0否1是';
COMMENT ON COLUMN "public"."notice_record"."company_id" IS '企业ID';
COMMENT ON COLUMN "public"."notice_record"."operator" IS '操作人';
COMMENT ON COLUMN "public"."notice_record"."operator_id" IS '操作人ID';
COMMENT ON TABLE "public"."notice_record" IS '通知公告操作日志';
INSERT INTO "public"."lms_property"("id", "name", "key", "code", "label", "type", "remark", "status", "sort", "ctime", "company_id", "pid") VALUES (1061920543901593604, '内容', NULL, 'content', NULL, '通知公告对比', NULL, 1, 1, '2021-07-25 11:23:32', NULL, 0);
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