diff --git a/ant-design-vue/src/views/modules/injectSpotData/TtInjectSpotDataList.vue b/ant-design-vue/src/views/modules/injectSpotData/TtInjectSpotDataList.vue new file mode 100644 index 0000000..b2df23c --- /dev/null +++ b/ant-design-vue/src/views/modules/injectSpotData/TtInjectSpotDataList.vue @@ -0,0 +1,317 @@ + + + + \ No newline at end of file diff --git a/ant-design-vue/src/views/modules/injectSpotData/TtInjectSpotData_menu_insert.sql b/ant-design-vue/src/views/modules/injectSpotData/TtInjectSpotData_menu_insert.sql new file mode 100644 index 0000000..a4c25ea --- /dev/null +++ b/ant-design-vue/src/views/modules/injectSpotData/TtInjectSpotData_menu_insert.sql @@ -0,0 +1,26 @@ +-- 注意:该页面对应的前台目录为views/injectspotdata文件夹下 +-- 如果你想更改到其他目录,请修改sql中component字段对应的值 + + +INSERT INTO sys_permission(id, parent_id, name, url, component, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_route, is_leaf, keep_alive, hidden, hide_tab, description, status, del_flag, rule_flag, create_by, create_time, update_by, update_time, internal_or_external) +VALUES ('2023020511096670090', NULL, 'tt_inject_spot_data', '/injectspotdata/ttInjectSpotDataList', 'injectspotdata/TtInjectSpotDataList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2023-02-05 11:09:09', NULL, NULL, 0); + +-- 权限控制sql +-- 新增 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020511096670091', '2023020511096670090', '添加tt_inject_spot_data', NULL, NULL, 0, NULL, NULL, 2, 'injectspotdata:tt_inject_spot_data:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 11:09:09', NULL, NULL, 0, 0, '1', 0); +-- 编辑 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020511096670092', '2023020511096670090', '编辑tt_inject_spot_data', NULL, NULL, 0, NULL, NULL, 2, 'injectspotdata:tt_inject_spot_data:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 11:09:09', NULL, NULL, 0, 0, '1', 0); +-- 删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020511096670093', '2023020511096670090', '删除tt_inject_spot_data', NULL, NULL, 0, NULL, NULL, 2, 'injectspotdata:tt_inject_spot_data:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 11:09:09', NULL, NULL, 0, 0, '1', 0); +-- 批量删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020511096670094', '2023020511096670090', '批量删除tt_inject_spot_data', NULL, NULL, 0, NULL, NULL, 2, 'injectspotdata:tt_inject_spot_data:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 11:09:09', NULL, NULL, 0, 0, '1', 0); +-- 导出excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020511096680095', '2023020511096670090', '导出excel_tt_inject_spot_data', NULL, NULL, 0, NULL, NULL, 2, 'injectspotdata:tt_inject_spot_data:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 11:09:09', NULL, NULL, 0, 0, '1', 0); +-- 导入excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020511096680096', '2023020511096670090', '导入excel_tt_inject_spot_data', NULL, NULL, 0, NULL, NULL, 2, 'injectspotdata:tt_inject_spot_data:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 11:09:09', NULL, NULL, 0, 0, '1', 0); \ No newline at end of file diff --git a/ant-design-vue/src/views/modules/injectSpotData/modules/TtInjectSpotDataForm.vue b/ant-design-vue/src/views/modules/injectSpotData/modules/TtInjectSpotDataForm.vue new file mode 100644 index 0000000..662128a --- /dev/null +++ b/ant-design-vue/src/views/modules/injectSpotData/modules/TtInjectSpotDataForm.vue @@ -0,0 +1,194 @@ + + + \ No newline at end of file diff --git a/ant-design-vue/src/views/modules/injectSpotData/modules/TtInjectSpotDataModal.Style#Drawer.vue b/ant-design-vue/src/views/modules/injectSpotData/modules/TtInjectSpotDataModal.Style#Drawer.vue new file mode 100644 index 0000000..21f9bc2 --- /dev/null +++ b/ant-design-vue/src/views/modules/injectSpotData/modules/TtInjectSpotDataModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/ant-design-vue/src/views/modules/injectSpotData/modules/TtInjectSpotDataModal.vue b/ant-design-vue/src/views/modules/injectSpotData/modules/TtInjectSpotDataModal.vue new file mode 100644 index 0000000..67687b2 --- /dev/null +++ b/ant-design-vue/src/views/modules/injectSpotData/modules/TtInjectSpotDataModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/ant-design-vue/src/views/modules/ipqcmadata/TtIpqcMaDataList.vue b/ant-design-vue/src/views/modules/ipqcmadata/TtIpqcMaDataList.vue new file mode 100644 index 0000000..52041fa --- /dev/null +++ b/ant-design-vue/src/views/modules/ipqcmadata/TtIpqcMaDataList.vue @@ -0,0 +1,288 @@ + + + + \ No newline at end of file diff --git a/ant-design-vue/src/views/modules/ipqcmadata/TtIpqcMaData_menu_insert.sql b/ant-design-vue/src/views/modules/ipqcmadata/TtIpqcMaData_menu_insert.sql new file mode 100644 index 0000000..ffa38ac --- /dev/null +++ b/ant-design-vue/src/views/modules/ipqcmadata/TtIpqcMaData_menu_insert.sql @@ -0,0 +1,26 @@ +-- 注意:该页面对应的前台目录为views/ipqcmadata文件夹下 +-- 如果你想更改到其他目录,请修改sql中component字段对应的值 + + +INSERT INTO sys_permission(id, parent_id, name, url, component, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_route, is_leaf, keep_alive, hidden, hide_tab, description, status, del_flag, rule_flag, create_by, create_time, update_by, update_time, internal_or_external) +VALUES ('2023020509154700580', NULL, 'tt_ipqc_ma_data', '/ipqcmadata/ttIpqcMaDataList', 'ipqcmadata/TtIpqcMaDataList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2023-02-05 09:15:58', NULL, NULL, 0); + +-- 权限控制sql +-- 新增 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509154700581', '2023020509154700580', '添加tt_ipqc_ma_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcmadata:tt_ipqc_ma_data:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:58', NULL, NULL, 0, 0, '1', 0); +-- 编辑 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509154710582', '2023020509154700580', '编辑tt_ipqc_ma_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcmadata:tt_ipqc_ma_data:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:58', NULL, NULL, 0, 0, '1', 0); +-- 删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509154710583', '2023020509154700580', '删除tt_ipqc_ma_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcmadata:tt_ipqc_ma_data:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:58', NULL, NULL, 0, 0, '1', 0); +-- 批量删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509154710584', '2023020509154700580', '批量删除tt_ipqc_ma_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcmadata:tt_ipqc_ma_data:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:58', NULL, NULL, 0, 0, '1', 0); +-- 导出excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509154710585', '2023020509154700580', '导出excel_tt_ipqc_ma_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcmadata:tt_ipqc_ma_data:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:58', NULL, NULL, 0, 0, '1', 0); +-- 导入excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509154710586', '2023020509154700580', '导入excel_tt_ipqc_ma_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcmadata:tt_ipqc_ma_data:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:58', NULL, NULL, 0, 0, '1', 0); \ No newline at end of file diff --git a/ant-design-vue/src/views/modules/ipqcmadata/modules/TtIpqcMaDataForm.vue b/ant-design-vue/src/views/modules/ipqcmadata/modules/TtIpqcMaDataForm.vue new file mode 100644 index 0000000..40b8eb8 --- /dev/null +++ b/ant-design-vue/src/views/modules/ipqcmadata/modules/TtIpqcMaDataForm.vue @@ -0,0 +1,138 @@ + + + \ No newline at end of file diff --git a/ant-design-vue/src/views/modules/ipqcmadata/modules/TtIpqcMaDataModal.Style#Drawer.vue b/ant-design-vue/src/views/modules/ipqcmadata/modules/TtIpqcMaDataModal.Style#Drawer.vue new file mode 100644 index 0000000..de2ea61 --- /dev/null +++ b/ant-design-vue/src/views/modules/ipqcmadata/modules/TtIpqcMaDataModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/ant-design-vue/src/views/modules/ipqcmadata/modules/TtIpqcMaDataModal.vue b/ant-design-vue/src/views/modules/ipqcmadata/modules/TtIpqcMaDataModal.vue new file mode 100644 index 0000000..6b52a79 --- /dev/null +++ b/ant-design-vue/src/views/modules/ipqcmadata/modules/TtIpqcMaDataModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/controller/TtInjectSpotDataController.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/controller/TtInjectSpotDataController.java new file mode 100644 index 0000000..b8a3e07 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/controller/TtInjectSpotDataController.java @@ -0,0 +1,184 @@ +package org.jeecg.modules.demo.injectspotdata.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.demo.injectspotdata.entity.TtInjectSpotData; +import org.jeecg.modules.demo.injectspotdata.service.ITtInjectSpotDataService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + + /** + * @Description: tt_inject_spot_data + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Api(tags="tt_inject_spot_data") +@RestController +@RequestMapping("/injectspotdata/ttInjectSpotData") +@Slf4j +public class TtInjectSpotDataController extends JeecgController { + @Autowired + private ITtInjectSpotDataService ttInjectSpotDataService; + + /** + * 分页列表查询 + * + * @param ttInjectSpotData + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "tt_inject_spot_data-分页列表查询") + @ApiOperation(value="tt_inject_spot_data-分页列表查询", notes="tt_inject_spot_data-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(TtInjectSpotData ttInjectSpotData, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(ttInjectSpotData, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + if(ttInjectSpotData.getStartDayName() != null){ + queryWrapper.gt("day_name", ttInjectSpotData.getStartDayName()); + } + if(ttInjectSpotData.getEndDayName() != null){ + queryWrapper.lt("day_name", ttInjectSpotData.getEndDayName()); + } + IPage pageList = ttInjectSpotDataService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param ttInjectSpotData + * @return + */ + @AutoLog(value = "tt_inject_spot_data-添加") + @ApiOperation(value="tt_inject_spot_data-添加", notes="tt_inject_spot_data-添加") + //@RequiresPermissions("injectspotdata:tt_inject_spot_data:add") + @PostMapping(value = "/add") + public Result add(@RequestBody TtInjectSpotData ttInjectSpotData) { + ttInjectSpotDataService.save(ttInjectSpotData); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param ttInjectSpotData + * @return + */ + @AutoLog(value = "tt_inject_spot_data-编辑") + @ApiOperation(value="tt_inject_spot_data-编辑", notes="tt_inject_spot_data-编辑") + //@RequiresPermissions("injectspotdata:tt_inject_spot_data:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody TtInjectSpotData ttInjectSpotData) { + ttInjectSpotDataService.updateById(ttInjectSpotData); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "tt_inject_spot_data-通过id删除") + @ApiOperation(value="tt_inject_spot_data-通过id删除", notes="tt_inject_spot_data-通过id删除") + //@RequiresPermissions("injectspotdata:tt_inject_spot_data:delete") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + ttInjectSpotDataService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "tt_inject_spot_data-批量删除") + @ApiOperation(value="tt_inject_spot_data-批量删除", notes="tt_inject_spot_data-批量删除") + //@RequiresPermissions("injectspotdata:tt_inject_spot_data:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.ttInjectSpotDataService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "tt_inject_spot_data-通过id查询") + @ApiOperation(value="tt_inject_spot_data-通过id查询", notes="tt_inject_spot_data-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + TtInjectSpotData ttInjectSpotData = ttInjectSpotDataService.getById(id); + if(ttInjectSpotData==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(ttInjectSpotData); + } + + /** + * 导出excel + * + * @param request + * @param ttInjectSpotData + */ + //@RequiresPermissions("injectspotdata:tt_inject_spot_data:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, TtInjectSpotData ttInjectSpotData) { + return super.exportXls(request, ttInjectSpotData, TtInjectSpotData.class, "tt_inject_spot_data"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + //@RequiresPermissions("injectspotdata:tt_inject_spot_data:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, TtInjectSpotData.class); + } + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/entity/TtInjectSpotData.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/entity/TtInjectSpotData.java new file mode 100644 index 0000000..3ceecfe --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/entity/TtInjectSpotData.java @@ -0,0 +1,125 @@ +package org.jeecg.modules.demo.injectspotdata.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; + +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: tt_inject_spot_data + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Data +@TableName("tt_inject_spot_data") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="tt_inject_spot_data对象", description="tt_inject_spot_data") +public class TtInjectSpotData implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private Integer id; + /**日期*/ + @Excel(name = "日期", width = 15, format = "yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "日期") + private Date dayName; + /**机台*/ + @Excel(name = "机台", width = 15) + @ApiModelProperty(value = "机台") + private String equipNo; + /**定模设定值*/ + @Excel(name = "定模设定值", width = 15) + @ApiModelProperty(value = "定模设定值") + private String fixedMoldCfgTemp; + /**定模实际值*/ + @Excel(name = "定模实际值", width = 15) + @ApiModelProperty(value = "定模实际值") + private String fixedMoldActTemp; + /**动模设定值*/ + @Excel(name = "动模设定值", width = 15) + @ApiModelProperty(value = "动模设定值") + private String dynamicMoldCfgTemp; + /**动模实际值*/ + @Excel(name = "动模实际值", width = 15) + @ApiModelProperty(value = "动模实际值") + private String dynamicMoldActTemp; + /**液压油温度*/ + @Excel(name = "液压油温度", width = 15) + @ApiModelProperty(value = "液压油温度") + private String hydraulicOilTemp; + /**干燥机滤芯*/ + @Excel(name = "干燥机滤芯", width = 15) + @ApiModelProperty(value = "干燥机滤芯") + private String dryer; + /**机台润滑油量*/ + @Excel(name = "机台润滑油量", width = 15) + @ApiModelProperty(value = "机台润滑油量") + private String lubricateOil; + /**清扫*/ + @Excel(name = "清扫", width = 15) + @ApiModelProperty(value = "清扫") + private String clean; + /**是否漏油/水*/ + @Excel(name = "是否漏油/水", width = 15) + @ApiModelProperty(value = "是否漏油/水") + private String noLeakageOil; + /**动作确认*/ + @Excel(name = "动作确认", width = 15) + @ApiModelProperty(value = "动作确认") + private String actConfirm; + /**压力计*/ + @Excel(name = "压力计", width = 15) + @ApiModelProperty(value = "压力计") + private String pressureGauge; + /**模具松紧*/ + @Excel(name = "模具松紧", width = 15) + @ApiModelProperty(value = "模具松紧") + private String moldTightness; + /**材料干燥温度设定值*/ + @Excel(name = "材料干燥温度设定值", width = 15) + @ApiModelProperty(value = "材料干燥温度设定值") + private String materialDryCfgTemp; + /**材料干燥温度实际值*/ + @Excel(name = "材料干燥温度实际值", width = 15) + @ApiModelProperty(value = "材料干燥温度实际值") + private String materialDryActTemp; + /**担当*/ + @Excel(name = "担当", width = 15) + @ApiModelProperty(value = "担当") + private String operator; + /**确认*/ + @Excel(name = "确认", width = 15) + @ApiModelProperty(value = "确认") + private String confirmUser; + /**备注*/ + @Excel(name = "备注", width = 15) + @ApiModelProperty(value = "备注") + private String remark; + @TableField(exist = false) + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "开始日期") + private Date startDayName; + @TableField(exist = false) + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "结束日期") + private Date endDayName; +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/mapper/TtInjectSpotDataMapper.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/mapper/TtInjectSpotDataMapper.java new file mode 100644 index 0000000..0964263 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/mapper/TtInjectSpotDataMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.demo.injectspotdata.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.demo.injectspotdata.entity.TtInjectSpotData; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: tt_inject_spot_data + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface TtInjectSpotDataMapper extends BaseMapper { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/mapper/xml/TtInjectSpotDataMapper.xml b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/mapper/xml/TtInjectSpotDataMapper.xml new file mode 100644 index 0000000..14412d4 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/mapper/xml/TtInjectSpotDataMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/service/ITtInjectSpotDataService.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/service/ITtInjectSpotDataService.java new file mode 100644 index 0000000..4a71ef8 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/service/ITtInjectSpotDataService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.demo.injectspotdata.service; + +import org.jeecg.modules.demo.injectspotdata.entity.TtInjectSpotData; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: tt_inject_spot_data + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface ITtInjectSpotDataService extends IService { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/service/impl/TtInjectSpotDataServiceImpl.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/service/impl/TtInjectSpotDataServiceImpl.java new file mode 100644 index 0000000..f31bcb0 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/service/impl/TtInjectSpotDataServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.demo.injectspotdata.service.impl; + +import org.jeecg.modules.demo.injectspotdata.entity.TtInjectSpotData; +import org.jeecg.modules.demo.injectspotdata.mapper.TtInjectSpotDataMapper; +import org.jeecg.modules.demo.injectspotdata.service.ITtInjectSpotDataService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: tt_inject_spot_data + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Service +public class TtInjectSpotDataServiceImpl extends ServiceImpl implements ITtInjectSpotDataService { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/vue/TtInjectSpotDataList.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/vue/TtInjectSpotDataList.vue new file mode 100644 index 0000000..33fed86 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/vue/TtInjectSpotDataList.vue @@ -0,0 +1,282 @@ + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/vue/TtInjectSpotData_menu_insert.sql b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/vue/TtInjectSpotData_menu_insert.sql new file mode 100644 index 0000000..a4c25ea --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/vue/TtInjectSpotData_menu_insert.sql @@ -0,0 +1,26 @@ +-- 注意:该页面对应的前台目录为views/injectspotdata文件夹下 +-- 如果你想更改到其他目录,请修改sql中component字段对应的值 + + +INSERT INTO sys_permission(id, parent_id, name, url, component, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_route, is_leaf, keep_alive, hidden, hide_tab, description, status, del_flag, rule_flag, create_by, create_time, update_by, update_time, internal_or_external) +VALUES ('2023020511096670090', NULL, 'tt_inject_spot_data', '/injectspotdata/ttInjectSpotDataList', 'injectspotdata/TtInjectSpotDataList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2023-02-05 11:09:09', NULL, NULL, 0); + +-- 权限控制sql +-- 新增 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020511096670091', '2023020511096670090', '添加tt_inject_spot_data', NULL, NULL, 0, NULL, NULL, 2, 'injectspotdata:tt_inject_spot_data:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 11:09:09', NULL, NULL, 0, 0, '1', 0); +-- 编辑 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020511096670092', '2023020511096670090', '编辑tt_inject_spot_data', NULL, NULL, 0, NULL, NULL, 2, 'injectspotdata:tt_inject_spot_data:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 11:09:09', NULL, NULL, 0, 0, '1', 0); +-- 删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020511096670093', '2023020511096670090', '删除tt_inject_spot_data', NULL, NULL, 0, NULL, NULL, 2, 'injectspotdata:tt_inject_spot_data:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 11:09:09', NULL, NULL, 0, 0, '1', 0); +-- 批量删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020511096670094', '2023020511096670090', '批量删除tt_inject_spot_data', NULL, NULL, 0, NULL, NULL, 2, 'injectspotdata:tt_inject_spot_data:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 11:09:09', NULL, NULL, 0, 0, '1', 0); +-- 导出excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020511096680095', '2023020511096670090', '导出excel_tt_inject_spot_data', NULL, NULL, 0, NULL, NULL, 2, 'injectspotdata:tt_inject_spot_data:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 11:09:09', NULL, NULL, 0, 0, '1', 0); +-- 导入excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020511096680096', '2023020511096670090', '导入excel_tt_inject_spot_data', NULL, NULL, 0, NULL, NULL, 2, 'injectspotdata:tt_inject_spot_data:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 11:09:09', NULL, NULL, 0, 0, '1', 0); \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/vue/modules/TtInjectSpotDataForm.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/vue/modules/TtInjectSpotDataForm.vue new file mode 100644 index 0000000..662128a --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/vue/modules/TtInjectSpotDataForm.vue @@ -0,0 +1,194 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/vue/modules/TtInjectSpotDataModal.Style#Drawer.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/vue/modules/TtInjectSpotDataModal.Style#Drawer.vue new file mode 100644 index 0000000..21f9bc2 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/vue/modules/TtInjectSpotDataModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/vue/modules/TtInjectSpotDataModal.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/vue/modules/TtInjectSpotDataModal.vue new file mode 100644 index 0000000..67687b2 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/injectspotdata/vue/modules/TtInjectSpotDataModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/controller/TtIpqcDeDataController.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/controller/TtIpqcDeDataController.java new file mode 100644 index 0000000..c8b4432 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/controller/TtIpqcDeDataController.java @@ -0,0 +1,178 @@ +package org.jeecg.modules.demo.ipqcdedata.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.demo.ipqcdedata.entity.TtIpqcDeData; +import org.jeecg.modules.demo.ipqcdedata.service.ITtIpqcDeDataService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + + /** + * @Description: tt_ipqc_de_data + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Api(tags="tt_ipqc_de_data") +@RestController +@RequestMapping("/ipqcdedata/ttIpqcDeData") +@Slf4j +public class TtIpqcDeDataController extends JeecgController { + @Autowired + private ITtIpqcDeDataService ttIpqcDeDataService; + + /** + * 分页列表查询 + * + * @param ttIpqcDeData + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "tt_ipqc_de_data-分页列表查询") + @ApiOperation(value="tt_ipqc_de_data-分页列表查询", notes="tt_ipqc_de_data-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(TtIpqcDeData ttIpqcDeData, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(ttIpqcDeData, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = ttIpqcDeDataService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param ttIpqcDeData + * @return + */ + @AutoLog(value = "tt_ipqc_de_data-添加") + @ApiOperation(value="tt_ipqc_de_data-添加", notes="tt_ipqc_de_data-添加") + //@RequiresPermissions("ipqcdedata:tt_ipqc_de_data:add") + @PostMapping(value = "/add") + public Result add(@RequestBody TtIpqcDeData ttIpqcDeData) { + ttIpqcDeDataService.save(ttIpqcDeData); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param ttIpqcDeData + * @return + */ + @AutoLog(value = "tt_ipqc_de_data-编辑") + @ApiOperation(value="tt_ipqc_de_data-编辑", notes="tt_ipqc_de_data-编辑") + //@RequiresPermissions("ipqcdedata:tt_ipqc_de_data:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody TtIpqcDeData ttIpqcDeData) { + ttIpqcDeDataService.updateById(ttIpqcDeData); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "tt_ipqc_de_data-通过id删除") + @ApiOperation(value="tt_ipqc_de_data-通过id删除", notes="tt_ipqc_de_data-通过id删除") + //@RequiresPermissions("ipqcdedata:tt_ipqc_de_data:delete") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + ttIpqcDeDataService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "tt_ipqc_de_data-批量删除") + @ApiOperation(value="tt_ipqc_de_data-批量删除", notes="tt_ipqc_de_data-批量删除") + //@RequiresPermissions("ipqcdedata:tt_ipqc_de_data:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.ttIpqcDeDataService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "tt_ipqc_de_data-通过id查询") + @ApiOperation(value="tt_ipqc_de_data-通过id查询", notes="tt_ipqc_de_data-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + TtIpqcDeData ttIpqcDeData = ttIpqcDeDataService.getById(id); + if(ttIpqcDeData==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(ttIpqcDeData); + } + + /** + * 导出excel + * + * @param request + * @param ttIpqcDeData + */ + //@RequiresPermissions("ipqcdedata:tt_ipqc_de_data:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, TtIpqcDeData ttIpqcDeData) { + return super.exportXls(request, ttIpqcDeData, TtIpqcDeData.class, "tt_ipqc_de_data"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + //@RequiresPermissions("ipqcdedata:tt_ipqc_de_data:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, TtIpqcDeData.class); + } + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/entity/TtIpqcDeData.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/entity/TtIpqcDeData.java new file mode 100644 index 0000000..cba3d4f --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/entity/TtIpqcDeData.java @@ -0,0 +1,99 @@ +package org.jeecg.modules.demo.ipqcdedata.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableLogic; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: tt_ipqc_de_data + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Data +@TableName("tt_ipqc_de_data") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="tt_ipqc_de_data对象", description="tt_ipqc_de_data") +public class TtIpqcDeData implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private Integer id; + /**主表id,对应tt_ipqc_ma_data中的id列*/ + @Excel(name = "主表id,对应tt_ipqc_ma_data中的id列", width = 15) + @ApiModelProperty(value = "主表id,对应tt_ipqc_ma_data中的id列") + private Integer mId; + /**机台*/ + @Excel(name = "机台", width = 15) + @ApiModelProperty(value = "机台") + private String equipNo; + /**操作工*/ + @Excel(name = "操作工", width = 15) + @ApiModelProperty(value = "操作工") + private String operator; + /**规格*/ + @Excel(name = "规格", width = 15) + @ApiModelProperty(value = "规格") + private String spec; + /**胶料型号*/ + @Excel(name = "胶料型号", width = 15) + @ApiModelProperty(value = "胶料型号") + private String glueType; + /**时间(单位:秒)*/ + @Excel(name = "时间(单位:秒)", width = 15) + @ApiModelProperty(value = "时间(单位:秒)") + private String sulfTime; + /**最低温度(℃)*/ + @Excel(name = "最低温度(℃)", width = 15) + @ApiModelProperty(value = "最低温度(℃)") + private String sulfTemp1; + /**最高温度(℃)*/ + @Excel(name = "最高温度(℃)", width = 15) + @ApiModelProperty(value = "最高温度(℃)") + private String sulfTemp2; + /**压力(Mpa)*/ + @Excel(name = "压力(Mpa)", width = 15) + @ApiModelProperty(value = "压力(Mpa)") + private String sulfPressure; + /**厚度(mm)*/ + @Excel(name = "厚度(mm)", width = 15) + @ApiModelProperty(value = "厚度(mm)") + private String height; + /**外径(mm)*/ + @Excel(name = "外径(mm)", width = 15) + @ApiModelProperty(value = "外径(mm)") + private String externalSize; + /**孔径(mm)*/ + @Excel(name = "孔径(mm)", width = 15) + @ApiModelProperty(value = "孔径(mm)") + private String apertureSize; + /**硬度(A)*/ + @Excel(name = "硬度(A)", width = 15) + @ApiModelProperty(value = "硬度(A)") + private String hardness; + /**外观检查结果*/ + @Excel(name = "外观检查结果", width = 15) + @ApiModelProperty(value = "外观检查结果") + private String desc1; + /**质检确认结果*/ + @Excel(name = "质检确认结果", width = 15) + @ApiModelProperty(value = "质检确认结果") + private String desc2; +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/mapper/TtIpqcDeDataMapper.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/mapper/TtIpqcDeDataMapper.java new file mode 100644 index 0000000..aa64663 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/mapper/TtIpqcDeDataMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.demo.ipqcdedata.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.demo.ipqcdedata.entity.TtIpqcDeData; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: tt_ipqc_de_data + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface TtIpqcDeDataMapper extends BaseMapper { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/mapper/xml/TtIpqcDeDataMapper.xml b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/mapper/xml/TtIpqcDeDataMapper.xml new file mode 100644 index 0000000..4b18605 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/mapper/xml/TtIpqcDeDataMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/service/ITtIpqcDeDataService.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/service/ITtIpqcDeDataService.java new file mode 100644 index 0000000..f21e1d4 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/service/ITtIpqcDeDataService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.demo.ipqcdedata.service; + +import org.jeecg.modules.demo.ipqcdedata.entity.TtIpqcDeData; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: tt_ipqc_de_data + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface ITtIpqcDeDataService extends IService { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/service/impl/TtIpqcDeDataServiceImpl.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/service/impl/TtIpqcDeDataServiceImpl.java new file mode 100644 index 0000000..fb1056e --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/service/impl/TtIpqcDeDataServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.demo.ipqcdedata.service.impl; + +import org.jeecg.modules.demo.ipqcdedata.entity.TtIpqcDeData; +import org.jeecg.modules.demo.ipqcdedata.mapper.TtIpqcDeDataMapper; +import org.jeecg.modules.demo.ipqcdedata.service.ITtIpqcDeDataService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: tt_ipqc_de_data + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Service +public class TtIpqcDeDataServiceImpl extends ServiceImpl implements ITtIpqcDeDataService { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/vue/TtIpqcDeDataList.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/vue/TtIpqcDeDataList.vue new file mode 100644 index 0000000..c15e9fa --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/vue/TtIpqcDeDataList.vue @@ -0,0 +1,255 @@ + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/vue/TtIpqcDeData_menu_insert.sql b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/vue/TtIpqcDeData_menu_insert.sql new file mode 100644 index 0000000..86bbb38 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/vue/TtIpqcDeData_menu_insert.sql @@ -0,0 +1,26 @@ +-- 注意:该页面对应的前台目录为views/ipqcdedata文件夹下 +-- 如果你想更改到其他目录,请修改sql中component字段对应的值 + + +INSERT INTO sys_permission(id, parent_id, name, url, component, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_route, is_leaf, keep_alive, hidden, hide_tab, description, status, del_flag, rule_flag, create_by, create_time, update_by, update_time, internal_or_external) +VALUES ('2023020509156360410', NULL, 'tt_ipqc_de_data', '/ipqcdedata/ttIpqcDeDataList', 'ipqcdedata/TtIpqcDeDataList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2023-02-05 09:15:41', NULL, NULL, 0); + +-- 权限控制sql +-- 新增 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509156360411', '2023020509156360410', '添加tt_ipqc_de_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcdedata:tt_ipqc_de_data:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:41', NULL, NULL, 0, 0, '1', 0); +-- 编辑 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509156360412', '2023020509156360410', '编辑tt_ipqc_de_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcdedata:tt_ipqc_de_data:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:41', NULL, NULL, 0, 0, '1', 0); +-- 删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509156360413', '2023020509156360410', '删除tt_ipqc_de_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcdedata:tt_ipqc_de_data:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:41', NULL, NULL, 0, 0, '1', 0); +-- 批量删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509156360414', '2023020509156360410', '批量删除tt_ipqc_de_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcdedata:tt_ipqc_de_data:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:41', NULL, NULL, 0, 0, '1', 0); +-- 导出excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509156360415', '2023020509156360410', '导出excel_tt_ipqc_de_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcdedata:tt_ipqc_de_data:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:41', NULL, NULL, 0, 0, '1', 0); +-- 导入excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509156360416', '2023020509156360410', '导入excel_tt_ipqc_de_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcdedata:tt_ipqc_de_data:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:41', NULL, NULL, 0, 0, '1', 0); \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/vue/modules/TtIpqcDeDataForm.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/vue/modules/TtIpqcDeDataForm.vue new file mode 100644 index 0000000..5f7b716 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/vue/modules/TtIpqcDeDataForm.vue @@ -0,0 +1,174 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/vue/modules/TtIpqcDeDataModal.Style#Drawer.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/vue/modules/TtIpqcDeDataModal.Style#Drawer.vue new file mode 100644 index 0000000..2ef3c69 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/vue/modules/TtIpqcDeDataModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/vue/modules/TtIpqcDeDataModal.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/vue/modules/TtIpqcDeDataModal.vue new file mode 100644 index 0000000..fe4823a --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcdedata/vue/modules/TtIpqcDeDataModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/controller/TtIpqcMaDataController.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/controller/TtIpqcMaDataController.java new file mode 100644 index 0000000..252f8dd --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/controller/TtIpqcMaDataController.java @@ -0,0 +1,199 @@ +package org.jeecg.modules.demo.ipqcmadata.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.demo.ipqcmadata.entity.TtIpqcMaData; +import org.jeecg.modules.demo.ipqcmadata.service.ITtIpqcMaDataService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + + /** + * @Description: tt_ipqc_ma_data + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Api(tags="tt_ipqc_ma_data") +@RestController +@RequestMapping("/ipqcmadata/ttIpqcMaData") +@Slf4j +public class TtIpqcMaDataController extends JeecgController { + @Autowired + private ITtIpqcMaDataService ttIpqcMaDataService; + + /** + * 分页列表查询 + * + * @param ttIpqcMaData + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "tt_ipqc_ma_data-分页列表查询") + @ApiOperation(value="tt_ipqc_ma_data-分页列表查询", notes="tt_ipqc_ma_data-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(TtIpqcMaData ttIpqcMaData, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(ttIpqcMaData, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = ttIpqcMaDataService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 分页列表查询 + * + * @param ttIpqcMaData + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "tt_ipqc_ma_data-分页列表查询") + @ApiOperation(value="tt_ipqc_ma_data-分页列表查询", notes="tt_ipqc_ma_data-分页列表查询") + @GetMapping(value = "/queryPageList") + public Result>> queryPageList2(TtIpqcMaData ttIpqcMaData, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + Page page = new Page(pageNo, pageSize); + IPage> pageList = ttIpqcMaDataService.queryPage(page, ttIpqcMaData); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param ttIpqcMaData + * @return + */ + @AutoLog(value = "tt_ipqc_ma_data-添加") + @ApiOperation(value="tt_ipqc_ma_data-添加", notes="tt_ipqc_ma_data-添加") + //@RequiresPermissions("ipqcmadata:tt_ipqc_ma_data:add") + @PostMapping(value = "/add") + public Result add(@RequestBody TtIpqcMaData ttIpqcMaData) { + ttIpqcMaDataService.save(ttIpqcMaData); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param ttIpqcMaData + * @return + */ + @AutoLog(value = "tt_ipqc_ma_data-编辑") + @ApiOperation(value="tt_ipqc_ma_data-编辑", notes="tt_ipqc_ma_data-编辑") + //@RequiresPermissions("ipqcmadata:tt_ipqc_ma_data:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody TtIpqcMaData ttIpqcMaData) { + ttIpqcMaDataService.updateById(ttIpqcMaData); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "tt_ipqc_ma_data-通过id删除") + @ApiOperation(value="tt_ipqc_ma_data-通过id删除", notes="tt_ipqc_ma_data-通过id删除") + //@RequiresPermissions("ipqcmadata:tt_ipqc_ma_data:delete") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + ttIpqcMaDataService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "tt_ipqc_ma_data-批量删除") + @ApiOperation(value="tt_ipqc_ma_data-批量删除", notes="tt_ipqc_ma_data-批量删除") + //@RequiresPermissions("ipqcmadata:tt_ipqc_ma_data:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.ttIpqcMaDataService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "tt_ipqc_ma_data-通过id查询") + @ApiOperation(value="tt_ipqc_ma_data-通过id查询", notes="tt_ipqc_ma_data-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + TtIpqcMaData ttIpqcMaData = ttIpqcMaDataService.getById(id); + if(ttIpqcMaData==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(ttIpqcMaData); + } + + /** + * 导出excel + * + * @param request + * @param ttIpqcMaData + */ + //@RequiresPermissions("ipqcmadata:tt_ipqc_ma_data:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, TtIpqcMaData ttIpqcMaData) { + return super.exportXls(request, ttIpqcMaData, TtIpqcMaData.class, "tt_ipqc_ma_data"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + //@RequiresPermissions("ipqcmadata:tt_ipqc_ma_data:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, TtIpqcMaData.class); + } + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/entity/TtIpqcMaData.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/entity/TtIpqcMaData.java new file mode 100644 index 0000000..26cba6e --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/entity/TtIpqcMaData.java @@ -0,0 +1,77 @@ +package org.jeecg.modules.demo.ipqcmadata.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; + +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: tt_ipqc_ma_data + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Data +@TableName("tt_ipqc_ma_data") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="tt_ipqc_ma_data对象", description="tt_ipqc_ma_data") +public class TtIpqcMaData implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private Integer id; + /**日期名称*/ + @Excel(name = "日期名称", width = 15, format = "yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "日期名称") + private Date dayName; + /**班次名称*/ + @Excel(name = "班次名称", width = 15) + @ApiModelProperty(value = "班次名称") + private String shiftName; + /**参考标准*/ + @Excel(name = "参考标准", width = 15) + @ApiModelProperty(value = "参考标准") + private String ipqcStandard; + /**ipqc用户*/ + @Excel(name = "ipqc用户", width = 15) + @ApiModelProperty(value = "ipqc用户") + private String ipqcUser; + /**硫化主管*/ + @Excel(name = "硫化主管", width = 15) + @ApiModelProperty(value = "硫化主管") + private String sulfUser; + /**品质主管*/ + @Excel(name = "品质主管", width = 15) + @ApiModelProperty(value = "品质主管") + private String qaUser; + + @TableField(exist = false) + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "开始日期") + private Date startDayName; + @TableField(exist = false) + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "结束日期") + private Date endDayName; + @TableField(exist = false) + @ApiModelProperty(value = "机台") + private String equipNo; +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/mapper/TtIpqcMaDataMapper.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/mapper/TtIpqcMaDataMapper.java new file mode 100644 index 0000000..149e530 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/mapper/TtIpqcMaDataMapper.java @@ -0,0 +1,21 @@ +package org.jeecg.modules.demo.ipqcmadata.mapper; + +import java.util.List; +import java.util.Map; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.demo.ipqcmadata.entity.TtIpqcMaData; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: tt_ipqc_ma_data + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface TtIpqcMaDataMapper extends BaseMapper { + + IPage> queryPage(Page page, TtIpqcMaData ttIpqcMaData); +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/mapper/xml/TtIpqcMaDataMapper.xml b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/mapper/xml/TtIpqcMaDataMapper.xml new file mode 100644 index 0000000..01df043 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/mapper/xml/TtIpqcMaDataMapper.xml @@ -0,0 +1,21 @@ + + + + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/service/ITtIpqcMaDataService.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/service/ITtIpqcMaDataService.java new file mode 100644 index 0000000..c4bdecd --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/service/ITtIpqcMaDataService.java @@ -0,0 +1,20 @@ +package org.jeecg.modules.demo.ipqcmadata.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.jeecg.modules.demo.ipqcmadata.entity.TtIpqcMaData; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; +import java.util.Map; + +/** + * @Description: tt_ipqc_ma_data + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface ITtIpqcMaDataService extends IService { + + IPage> queryPage(Page page, TtIpqcMaData ttIpqcMaData); +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/service/impl/TtIpqcMaDataServiceImpl.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/service/impl/TtIpqcMaDataServiceImpl.java new file mode 100644 index 0000000..e8a1a77 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/service/impl/TtIpqcMaDataServiceImpl.java @@ -0,0 +1,31 @@ +package org.jeecg.modules.demo.ipqcmadata.service.impl; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.jeecg.modules.demo.ipqcmadata.entity.TtIpqcMaData; +import org.jeecg.modules.demo.ipqcmadata.mapper.TtIpqcMaDataMapper; +import org.jeecg.modules.demo.ipqcmadata.service.ITtIpqcMaDataService; +import org.jeecg.modules.demo.kanbanpsrate.mapper.TtKanbanPsRateMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +import java.util.List; +import java.util.Map; + +/** + * @Description: tt_ipqc_ma_data + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Service +public class TtIpqcMaDataServiceImpl extends ServiceImpl implements ITtIpqcMaDataService { + @Autowired + private TtIpqcMaDataMapper ttIpqcMaDataMapper; + @Override + public IPage> queryPage(Page page, TtIpqcMaData ttIpqcMaData) { + return ttIpqcMaDataMapper.queryPage(page, ttIpqcMaData); + } +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/vue/TtIpqcMaDataList.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/vue/TtIpqcMaDataList.vue new file mode 100644 index 0000000..a7dfb95 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/vue/TtIpqcMaDataList.vue @@ -0,0 +1,204 @@ + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/vue/TtIpqcMaData_menu_insert.sql b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/vue/TtIpqcMaData_menu_insert.sql new file mode 100644 index 0000000..ffa38ac --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/vue/TtIpqcMaData_menu_insert.sql @@ -0,0 +1,26 @@ +-- 注意:该页面对应的前台目录为views/ipqcmadata文件夹下 +-- 如果你想更改到其他目录,请修改sql中component字段对应的值 + + +INSERT INTO sys_permission(id, parent_id, name, url, component, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_route, is_leaf, keep_alive, hidden, hide_tab, description, status, del_flag, rule_flag, create_by, create_time, update_by, update_time, internal_or_external) +VALUES ('2023020509154700580', NULL, 'tt_ipqc_ma_data', '/ipqcmadata/ttIpqcMaDataList', 'ipqcmadata/TtIpqcMaDataList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2023-02-05 09:15:58', NULL, NULL, 0); + +-- 权限控制sql +-- 新增 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509154700581', '2023020509154700580', '添加tt_ipqc_ma_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcmadata:tt_ipqc_ma_data:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:58', NULL, NULL, 0, 0, '1', 0); +-- 编辑 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509154710582', '2023020509154700580', '编辑tt_ipqc_ma_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcmadata:tt_ipqc_ma_data:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:58', NULL, NULL, 0, 0, '1', 0); +-- 删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509154710583', '2023020509154700580', '删除tt_ipqc_ma_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcmadata:tt_ipqc_ma_data:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:58', NULL, NULL, 0, 0, '1', 0); +-- 批量删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509154710584', '2023020509154700580', '批量删除tt_ipqc_ma_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcmadata:tt_ipqc_ma_data:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:58', NULL, NULL, 0, 0, '1', 0); +-- 导出excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509154710585', '2023020509154700580', '导出excel_tt_ipqc_ma_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcmadata:tt_ipqc_ma_data:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:58', NULL, NULL, 0, 0, '1', 0); +-- 导入excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509154710586', '2023020509154700580', '导入excel_tt_ipqc_ma_data', NULL, NULL, 0, NULL, NULL, 2, 'ipqcmadata:tt_ipqc_ma_data:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:15:58', NULL, NULL, 0, 0, '1', 0); \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/vue/modules/TtIpqcMaDataForm.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/vue/modules/TtIpqcMaDataForm.vue new file mode 100644 index 0000000..40b8eb8 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/vue/modules/TtIpqcMaDataForm.vue @@ -0,0 +1,138 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/vue/modules/TtIpqcMaDataModal.Style#Drawer.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/vue/modules/TtIpqcMaDataModal.Style#Drawer.vue new file mode 100644 index 0000000..de2ea61 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/vue/modules/TtIpqcMaDataModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/vue/modules/TtIpqcMaDataModal.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/vue/modules/TtIpqcMaDataModal.vue new file mode 100644 index 0000000..6b52a79 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/ipqcmadata/vue/modules/TtIpqcMaDataModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/controller/TtKanbanEquipRateController.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/controller/TtKanbanEquipRateController.java new file mode 100644 index 0000000..17baacf --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/controller/TtKanbanEquipRateController.java @@ -0,0 +1,195 @@ +package org.jeecg.modules.demo.kanbanequiprate.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.demo.kanbanequiprate.entity.TtKanbanEquipRate; +import org.jeecg.modules.demo.kanbanequiprate.service.ITtKanbanEquipRateService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecg.modules.demo.kanbanpassrate.entity.TtKanbanPassRate; +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + + /** + * @Description: tt_kanban_equip_rate + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Api(tags="tt_kanban_equip_rate") +@RestController +@RequestMapping("/kanbanequiprate/ttKanbanEquipRate") +@Slf4j +public class TtKanbanEquipRateController extends JeecgController { + @Autowired + private ITtKanbanEquipRateService ttKanbanEquipRateService; + + /** + * 分页列表查询 + * + * @param ttKanbanEquipRate + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "tt_kanban_equip_rate-分页列表查询") + @ApiOperation(value="tt_kanban_equip_rate-分页列表查询", notes="tt_kanban_equip_rate-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(TtKanbanEquipRate ttKanbanEquipRate, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(ttKanbanEquipRate, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = ttKanbanEquipRateService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 看板6列表查询 + * + * @param ttKanbanEquipRate + * @return + */ + //@AutoLog(value = "tt_kanban_equip_rate-分页列表查询") + @ApiOperation(value="tt_kanban_equip_rate-看板6列表查询", notes="tt_kanban_equip_rate-看板6列表查询") + @GetMapping(value = "/queryList") + public Result> queryList(TtKanbanEquipRate ttKanbanEquipRate) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("company_id", 1); + List kanbanEquipRateList = ttKanbanEquipRateService.list(queryWrapper); + return Result.OK(kanbanEquipRateList); + } + + /** + * 添加 + * + * @param ttKanbanEquipRate + * @return + */ + @AutoLog(value = "tt_kanban_equip_rate-添加") + @ApiOperation(value="tt_kanban_equip_rate-添加", notes="tt_kanban_equip_rate-添加") + //@RequiresPermissions("kanbanequiprate:tt_kanban_equip_rate:add") + @PostMapping(value = "/add") + public Result add(@RequestBody TtKanbanEquipRate ttKanbanEquipRate) { + ttKanbanEquipRateService.save(ttKanbanEquipRate); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param ttKanbanEquipRate + * @return + */ + @AutoLog(value = "tt_kanban_equip_rate-编辑") + @ApiOperation(value="tt_kanban_equip_rate-编辑", notes="tt_kanban_equip_rate-编辑") + //@RequiresPermissions("kanbanequiprate:tt_kanban_equip_rate:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody TtKanbanEquipRate ttKanbanEquipRate) { + ttKanbanEquipRateService.updateById(ttKanbanEquipRate); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "tt_kanban_equip_rate-通过id删除") + @ApiOperation(value="tt_kanban_equip_rate-通过id删除", notes="tt_kanban_equip_rate-通过id删除") + //@RequiresPermissions("kanbanequiprate:tt_kanban_equip_rate:delete") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + ttKanbanEquipRateService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "tt_kanban_equip_rate-批量删除") + @ApiOperation(value="tt_kanban_equip_rate-批量删除", notes="tt_kanban_equip_rate-批量删除") + //@RequiresPermissions("kanbanequiprate:tt_kanban_equip_rate:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.ttKanbanEquipRateService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "tt_kanban_equip_rate-通过id查询") + @ApiOperation(value="tt_kanban_equip_rate-通过id查询", notes="tt_kanban_equip_rate-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + TtKanbanEquipRate ttKanbanEquipRate = ttKanbanEquipRateService.getById(id); + if(ttKanbanEquipRate==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(ttKanbanEquipRate); + } + + /** + * 导出excel + * + * @param request + * @param ttKanbanEquipRate + */ + //@RequiresPermissions("kanbanequiprate:tt_kanban_equip_rate:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, TtKanbanEquipRate ttKanbanEquipRate) { + return super.exportXls(request, ttKanbanEquipRate, TtKanbanEquipRate.class, "tt_kanban_equip_rate"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + //@RequiresPermissions("kanbanequiprate:tt_kanban_equip_rate:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, TtKanbanEquipRate.class); + } + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/entity/TtKanbanEquipRate.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/entity/TtKanbanEquipRate.java new file mode 100644 index 0000000..72e5d35 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/entity/TtKanbanEquipRate.java @@ -0,0 +1,55 @@ +package org.jeecg.modules.demo.kanbanequiprate.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableLogic; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: tt_kanban_equip_rate + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Data +@TableName("tt_kanban_equip_rate") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="tt_kanban_equip_rate对象", description="tt_kanban_equip_rate") +public class TtKanbanEquipRate implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private Integer id; + /**月份名称*/ + @Excel(name = "月份名称", width = 15) + @ApiModelProperty(value = "月份名称") + private String monthName; + /**设备名称*/ + @Excel(name = "设备名称", width = 15) + @ApiModelProperty(value = "设备名称") + private String equipName; + /**设备利用率*/ + @Excel(name = "设备利用率", width = 15) + @ApiModelProperty(value = "设备利用率") + private BigDecimal utiliRate; + /**公司id, 1表示电气元器件,2表示轨道扣件*/ + @Excel(name = "公司id, 1表示电气元器件,2表示轨道扣件", width = 15) + @ApiModelProperty(value = "公司id, 1表示电气元器件,2表示轨道扣件") + private Integer companyId; +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/mapper/TtKanbanEquipRateMapper.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/mapper/TtKanbanEquipRateMapper.java new file mode 100644 index 0000000..9931234 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/mapper/TtKanbanEquipRateMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.demo.kanbanequiprate.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.demo.kanbanequiprate.entity.TtKanbanEquipRate; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: tt_kanban_equip_rate + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface TtKanbanEquipRateMapper extends BaseMapper { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/mapper/xml/TtKanbanEquipRateMapper.xml b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/mapper/xml/TtKanbanEquipRateMapper.xml new file mode 100644 index 0000000..29759e4 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/mapper/xml/TtKanbanEquipRateMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/service/ITtKanbanEquipRateService.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/service/ITtKanbanEquipRateService.java new file mode 100644 index 0000000..894a7e7 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/service/ITtKanbanEquipRateService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.demo.kanbanequiprate.service; + +import org.jeecg.modules.demo.kanbanequiprate.entity.TtKanbanEquipRate; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: tt_kanban_equip_rate + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface ITtKanbanEquipRateService extends IService { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/service/impl/TtKanbanEquipRateServiceImpl.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/service/impl/TtKanbanEquipRateServiceImpl.java new file mode 100644 index 0000000..bdb2499 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/service/impl/TtKanbanEquipRateServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.demo.kanbanequiprate.service.impl; + +import org.jeecg.modules.demo.kanbanequiprate.entity.TtKanbanEquipRate; +import org.jeecg.modules.demo.kanbanequiprate.mapper.TtKanbanEquipRateMapper; +import org.jeecg.modules.demo.kanbanequiprate.service.ITtKanbanEquipRateService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: tt_kanban_equip_rate + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Service +public class TtKanbanEquipRateServiceImpl extends ServiceImpl implements ITtKanbanEquipRateService { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/vue/TtKanbanEquipRateList.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/vue/TtKanbanEquipRateList.vue new file mode 100644 index 0000000..22940e7 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/vue/TtKanbanEquipRateList.vue @@ -0,0 +1,189 @@ + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/vue/TtKanbanEquipRate_menu_insert.sql b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/vue/TtKanbanEquipRate_menu_insert.sql new file mode 100644 index 0000000..8581cf1 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/vue/TtKanbanEquipRate_menu_insert.sql @@ -0,0 +1,26 @@ +-- 注意:该页面对应的前台目录为views/kanbanequiprate文件夹下 +-- 如果你想更改到其他目录,请修改sql中component字段对应的值 + + +INSERT INTO sys_permission(id, parent_id, name, url, component, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_route, is_leaf, keep_alive, hidden, hide_tab, description, status, del_flag, rule_flag, create_by, create_time, update_by, update_time, internal_or_external) +VALUES ('2023020509133980400', NULL, 'tt_kanban_equip_rate', '/kanbanequiprate/ttKanbanEquipRateList', 'kanbanequiprate/TtKanbanEquipRateList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2023-02-05 09:13:40', NULL, NULL, 0); + +-- 权限控制sql +-- 新增 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509133980401', '2023020509133980400', '添加tt_kanban_equip_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanequiprate:tt_kanban_equip_rate:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:40', NULL, NULL, 0, 0, '1', 0); +-- 编辑 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509133980402', '2023020509133980400', '编辑tt_kanban_equip_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanequiprate:tt_kanban_equip_rate:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:40', NULL, NULL, 0, 0, '1', 0); +-- 删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509133980403', '2023020509133980400', '删除tt_kanban_equip_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanequiprate:tt_kanban_equip_rate:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:40', NULL, NULL, 0, 0, '1', 0); +-- 批量删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509133980404', '2023020509133980400', '批量删除tt_kanban_equip_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanequiprate:tt_kanban_equip_rate:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:40', NULL, NULL, 0, 0, '1', 0); +-- 导出excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509133980405', '2023020509133980400', '导出excel_tt_kanban_equip_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanequiprate:tt_kanban_equip_rate:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:40', NULL, NULL, 0, 0, '1', 0); +-- 导入excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509133980406', '2023020509133980400', '导入excel_tt_kanban_equip_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanequiprate:tt_kanban_equip_rate:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:40', NULL, NULL, 0, 0, '1', 0); \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/vue/modules/TtKanbanEquipRateForm.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/vue/modules/TtKanbanEquipRateForm.vue new file mode 100644 index 0000000..659b334 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/vue/modules/TtKanbanEquipRateForm.vue @@ -0,0 +1,128 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/vue/modules/TtKanbanEquipRateModal.Style#Drawer.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/vue/modules/TtKanbanEquipRateModal.Style#Drawer.vue new file mode 100644 index 0000000..1c7f11e --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/vue/modules/TtKanbanEquipRateModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/vue/modules/TtKanbanEquipRateModal.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/vue/modules/TtKanbanEquipRateModal.vue new file mode 100644 index 0000000..7325dc1 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanequiprate/vue/modules/TtKanbanEquipRateModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/controller/TtKanbanInWhController.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/controller/TtKanbanInWhController.java new file mode 100644 index 0000000..7fbff77 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/controller/TtKanbanInWhController.java @@ -0,0 +1,194 @@ +package org.jeecg.modules.demo.kanbaninwh.controller; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.demo.kanbaninwh.entity.TtKanbanInWh; +import org.jeecg.modules.demo.kanbaninwh.service.ITtKanbanInWhService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecg.modules.demo.kanbanplan.entity.TtKanbanPlan; +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + + /** + * @Description: tt_kanban_in_wh + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Api(tags="tt_kanban_in_wh") +@RestController +@RequestMapping("/kanbaninwh/ttKanbanInWh") +@Slf4j +public class TtKanbanInWhController extends JeecgController { + @Autowired + private ITtKanbanInWhService ttKanbanInWhService; + + /** + * 分页列表查询 + * + * @param ttKanbanInWh + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "tt_kanban_in_wh-分页列表查询") + @ApiOperation(value="tt_kanban_in_wh-分页列表查询", notes="tt_kanban_in_wh-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(TtKanbanInWh ttKanbanInWh, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(ttKanbanInWh, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = ttKanbanInWhService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 看板2列表查询 + * + * @param ttKanbanInWh + * @return + */ + //@AutoLog(value = "tt_kanban_in_wh-分页列表查询") + @ApiOperation(value="tt_kanban_in_wh-看板2列表查询", notes="tt_kanban_in_wh-看板2列表查询") + @GetMapping(value = "/queryList") + public Result> queryList(TtKanbanInWh ttKanbanInWh) { + List kanbanInWhList = ttKanbanInWhService.kanbanInWhList(); + return Result.OK(kanbanInWhList); + } + + /** + * 添加 + * + * @param ttKanbanInWh + * @return + */ + @AutoLog(value = "tt_kanban_in_wh-添加") + @ApiOperation(value="tt_kanban_in_wh-添加", notes="tt_kanban_in_wh-添加") + //@RequiresPermissions("kanbaninwh:tt_kanban_in_wh:add") + @PostMapping(value = "/add") + public Result add(@RequestBody TtKanbanInWh ttKanbanInWh) { + ttKanbanInWhService.save(ttKanbanInWh); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param ttKanbanInWh + * @return + */ + @AutoLog(value = "tt_kanban_in_wh-编辑") + @ApiOperation(value="tt_kanban_in_wh-编辑", notes="tt_kanban_in_wh-编辑") + //@RequiresPermissions("kanbaninwh:tt_kanban_in_wh:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody TtKanbanInWh ttKanbanInWh) { + ttKanbanInWhService.updateById(ttKanbanInWh); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "tt_kanban_in_wh-通过id删除") + @ApiOperation(value="tt_kanban_in_wh-通过id删除", notes="tt_kanban_in_wh-通过id删除") + //@RequiresPermissions("kanbaninwh:tt_kanban_in_wh:delete") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + ttKanbanInWhService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "tt_kanban_in_wh-批量删除") + @ApiOperation(value="tt_kanban_in_wh-批量删除", notes="tt_kanban_in_wh-批量删除") + //@RequiresPermissions("kanbaninwh:tt_kanban_in_wh:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.ttKanbanInWhService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "tt_kanban_in_wh-通过id查询") + @ApiOperation(value="tt_kanban_in_wh-通过id查询", notes="tt_kanban_in_wh-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + TtKanbanInWh ttKanbanInWh = ttKanbanInWhService.getById(id); + if(ttKanbanInWh==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(ttKanbanInWh); + } + + /** + * 导出excel + * + * @param request + * @param ttKanbanInWh + */ + //@RequiresPermissions("kanbaninwh:tt_kanban_in_wh:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, TtKanbanInWh ttKanbanInWh) { + return super.exportXls(request, ttKanbanInWh, TtKanbanInWh.class, "tt_kanban_in_wh"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + //@RequiresPermissions("kanbaninwh:tt_kanban_in_wh:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, TtKanbanInWh.class); + } + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/entity/TtKanbanInWh.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/entity/TtKanbanInWh.java new file mode 100644 index 0000000..0f0de2e --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/entity/TtKanbanInWh.java @@ -0,0 +1,61 @@ +package org.jeecg.modules.demo.kanbaninwh.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableLogic; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: tt_kanban_in_wh + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Data +@TableName("tt_kanban_in_wh") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="tt_kanban_in_wh对象", description="tt_kanban_in_wh") +public class TtKanbanInWh implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private Integer id; + /**日期*/ + @Excel(name = "日期", width = 15, format = "yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "日期") + private Date dayName; + /**日期名称*/ + @Excel(name = "日期名称", width = 15) + @ApiModelProperty(value = "日期名称") + private String dayDesc; + /**产品类型id,1表示底座,2表示胶塞*/ + @Excel(name = "产品类型id,1表示底座,2表示胶塞", width = 15) + @ApiModelProperty(value = "产品类型id,1表示底座,2表示胶塞") + private Integer typeId; + /**入库数量*/ + @Excel(name = "入库数量", width = 15) + @ApiModelProperty(value = "入库数量") + private BigDecimal inQty; + /**公司id, 1表示电气元器件,2表示轨道扣件*/ + @Excel(name = "公司id, 1表示电气元器件,2表示轨道扣件", width = 15) + @ApiModelProperty(value = "公司id, 1表示电气元器件,2表示轨道扣件") + private Integer companyId; +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/mapper/TtKanbanInWhMapper.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/mapper/TtKanbanInWhMapper.java new file mode 100644 index 0000000..a3e1959 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/mapper/TtKanbanInWhMapper.java @@ -0,0 +1,18 @@ +package org.jeecg.modules.demo.kanbaninwh.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.demo.kanbaninwh.entity.TtKanbanInWh; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: tt_kanban_in_wh + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface TtKanbanInWhMapper extends BaseMapper { + + List kanbanInWhList(); +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/mapper/xml/TtKanbanInWhMapper.xml b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/mapper/xml/TtKanbanInWhMapper.xml new file mode 100644 index 0000000..0716f3c --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/mapper/xml/TtKanbanInWhMapper.xml @@ -0,0 +1,10 @@ + + + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/service/ITtKanbanInWhService.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/service/ITtKanbanInWhService.java new file mode 100644 index 0000000..b864566 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/service/ITtKanbanInWhService.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.demo.kanbaninwh.service; + +import org.jeecg.modules.demo.kanbaninwh.entity.TtKanbanInWh; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + * @Description: tt_kanban_in_wh + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface ITtKanbanInWhService extends IService { + + List kanbanInWhList(); +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/service/impl/TtKanbanInWhServiceImpl.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/service/impl/TtKanbanInWhServiceImpl.java new file mode 100644 index 0000000..ea97fb3 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/service/impl/TtKanbanInWhServiceImpl.java @@ -0,0 +1,28 @@ +package org.jeecg.modules.demo.kanbaninwh.service.impl; + +import org.jeecg.modules.demo.kanbaninwh.entity.TtKanbanInWh; +import org.jeecg.modules.demo.kanbaninwh.mapper.TtKanbanInWhMapper; +import org.jeecg.modules.demo.kanbaninwh.service.ITtKanbanInWhService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +import java.util.List; + +/** + * @Description: tt_kanban_in_wh + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Service +public class TtKanbanInWhServiceImpl extends ServiceImpl implements ITtKanbanInWhService { + @Autowired + private TtKanbanInWhMapper TtKanbanInWhMapper; + + @Override + public List kanbanInWhList() { + return TtKanbanInWhMapper.kanbanInWhList(); + } +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/vue/TtKanbanInWhList.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/vue/TtKanbanInWhList.vue new file mode 100644 index 0000000..42ec72d --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/vue/TtKanbanInWhList.vue @@ -0,0 +1,198 @@ + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/vue/TtKanbanInWh_menu_insert.sql b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/vue/TtKanbanInWh_menu_insert.sql new file mode 100644 index 0000000..ad65052 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/vue/TtKanbanInWh_menu_insert.sql @@ -0,0 +1,26 @@ +-- 注意:该页面对应的前台目录为views/kanbaninwh文件夹下 +-- 如果你想更改到其他目录,请修改sql中component字段对应的值 + + +INSERT INTO sys_permission(id, parent_id, name, url, component, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_route, is_leaf, keep_alive, hidden, hide_tab, description, status, del_flag, rule_flag, create_by, create_time, update_by, update_time, internal_or_external) +VALUES ('2023020509134860030', NULL, 'tt_kanban_in_wh', '/kanbaninwh/ttKanbanInWhList', 'kanbaninwh/TtKanbanInWhList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2023-02-05 09:13:03', NULL, NULL, 0); + +-- 权限控制sql +-- 新增 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509134860031', '2023020509134860030', '添加tt_kanban_in_wh', NULL, NULL, 0, NULL, NULL, 2, 'kanbaninwh:tt_kanban_in_wh:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:03', NULL, NULL, 0, 0, '1', 0); +-- 编辑 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509134860032', '2023020509134860030', '编辑tt_kanban_in_wh', NULL, NULL, 0, NULL, NULL, 2, 'kanbaninwh:tt_kanban_in_wh:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:03', NULL, NULL, 0, 0, '1', 0); +-- 删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509134860033', '2023020509134860030', '删除tt_kanban_in_wh', NULL, NULL, 0, NULL, NULL, 2, 'kanbaninwh:tt_kanban_in_wh:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:03', NULL, NULL, 0, 0, '1', 0); +-- 批量删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509134870034', '2023020509134860030', '批量删除tt_kanban_in_wh', NULL, NULL, 0, NULL, NULL, 2, 'kanbaninwh:tt_kanban_in_wh:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:03', NULL, NULL, 0, 0, '1', 0); +-- 导出excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509134870035', '2023020509134860030', '导出excel_tt_kanban_in_wh', NULL, NULL, 0, NULL, NULL, 2, 'kanbaninwh:tt_kanban_in_wh:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:03', NULL, NULL, 0, 0, '1', 0); +-- 导入excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509134870036', '2023020509134860030', '导入excel_tt_kanban_in_wh', NULL, NULL, 0, NULL, NULL, 2, 'kanbaninwh:tt_kanban_in_wh:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:03', NULL, NULL, 0, 0, '1', 0); \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/vue/modules/TtKanbanInWhForm.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/vue/modules/TtKanbanInWhForm.vue new file mode 100644 index 0000000..e55d905 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/vue/modules/TtKanbanInWhForm.vue @@ -0,0 +1,139 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/vue/modules/TtKanbanInWhModal.Style#Drawer.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/vue/modules/TtKanbanInWhModal.Style#Drawer.vue new file mode 100644 index 0000000..0126c87 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/vue/modules/TtKanbanInWhModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/vue/modules/TtKanbanInWhModal.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/vue/modules/TtKanbanInWhModal.vue new file mode 100644 index 0000000..6d15308 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbaninwh/vue/modules/TtKanbanInWhModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/controller/TtKanbanPassRateController.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/controller/TtKanbanPassRateController.java new file mode 100644 index 0000000..78616d6 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/controller/TtKanbanPassRateController.java @@ -0,0 +1,196 @@ +package org.jeecg.modules.demo.kanbanpassrate.controller; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.demo.kanbanpassrate.entity.TtKanbanPassRate; +import org.jeecg.modules.demo.kanbanpassrate.service.ITtKanbanPassRateService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecg.modules.demo.kanbanplan.entity.TtKanbanPlan; +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + + /** + * @Description: tt_kanban_pass_rate + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Api(tags="tt_kanban_pass_rate") +@RestController +@RequestMapping("/kanbanpassrate/ttKanbanPassRate") +@Slf4j +public class TtKanbanPassRateController extends JeecgController { + @Autowired + private ITtKanbanPassRateService ttKanbanPassRateService; + + /** + * 分页列表查询 + * + * @param ttKanbanPassRate + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "tt_kanban_pass_rate-分页列表查询") + @ApiOperation(value="tt_kanban_pass_rate-分页列表查询", notes="tt_kanban_pass_rate-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(TtKanbanPassRate ttKanbanPassRate, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(ttKanbanPassRate, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = ttKanbanPassRateService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 看板3列表查询 + * + * @param ttKanbanPassRate + * @return + */ + //@AutoLog(value = "tt_kanban_pass_rate-分页列表查询") + @ApiOperation(value="tt_kanban_pass_rate-看板3列表查询", notes="tt_kanban_plan-看板3列表查询") + @GetMapping(value = "/queryList") + public Result> queryList(TtKanbanPassRate ttKanbanPassRate) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("company_id", 1); + List kanbanPassRateList = ttKanbanPassRateService.list(queryWrapper); + return Result.OK(kanbanPassRateList); + } + + /** + * 添加 + * + * @param ttKanbanPassRate + * @return + */ + @AutoLog(value = "tt_kanban_pass_rate-添加") + @ApiOperation(value="tt_kanban_pass_rate-添加", notes="tt_kanban_pass_rate-添加") + //@RequiresPermissions("kanbanpassrate:tt_kanban_pass_rate:add") + @PostMapping(value = "/add") + public Result add(@RequestBody TtKanbanPassRate ttKanbanPassRate) { + ttKanbanPassRateService.save(ttKanbanPassRate); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param ttKanbanPassRate + * @return + */ + @AutoLog(value = "tt_kanban_pass_rate-编辑") + @ApiOperation(value="tt_kanban_pass_rate-编辑", notes="tt_kanban_pass_rate-编辑") + //@RequiresPermissions("kanbanpassrate:tt_kanban_pass_rate:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody TtKanbanPassRate ttKanbanPassRate) { + ttKanbanPassRateService.updateById(ttKanbanPassRate); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "tt_kanban_pass_rate-通过id删除") + @ApiOperation(value="tt_kanban_pass_rate-通过id删除", notes="tt_kanban_pass_rate-通过id删除") + //@RequiresPermissions("kanbanpassrate:tt_kanban_pass_rate:delete") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + ttKanbanPassRateService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "tt_kanban_pass_rate-批量删除") + @ApiOperation(value="tt_kanban_pass_rate-批量删除", notes="tt_kanban_pass_rate-批量删除") + //@RequiresPermissions("kanbanpassrate:tt_kanban_pass_rate:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.ttKanbanPassRateService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "tt_kanban_pass_rate-通过id查询") + @ApiOperation(value="tt_kanban_pass_rate-通过id查询", notes="tt_kanban_pass_rate-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + TtKanbanPassRate ttKanbanPassRate = ttKanbanPassRateService.getById(id); + if(ttKanbanPassRate==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(ttKanbanPassRate); + } + + /** + * 导出excel + * + * @param request + * @param ttKanbanPassRate + */ + //@RequiresPermissions("kanbanpassrate:tt_kanban_pass_rate:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, TtKanbanPassRate ttKanbanPassRate) { + return super.exportXls(request, ttKanbanPassRate, TtKanbanPassRate.class, "tt_kanban_pass_rate"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + //@RequiresPermissions("kanbanpassrate:tt_kanban_pass_rate:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, TtKanbanPassRate.class); + } + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/entity/TtKanbanPassRate.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/entity/TtKanbanPassRate.java new file mode 100644 index 0000000..108723c --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/entity/TtKanbanPassRate.java @@ -0,0 +1,51 @@ +package org.jeecg.modules.demo.kanbanpassrate.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableLogic; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: tt_kanban_pass_rate + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Data +@TableName("tt_kanban_pass_rate") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="tt_kanban_pass_rate对象", description="tt_kanban_pass_rate") +public class TtKanbanPassRate implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private Integer id; + /**月份名称*/ + @Excel(name = "月份名称", width = 15) + @ApiModelProperty(value = "月份名称") + private String monthName; + /**产品合格率*/ + @Excel(name = "产品合格率", width = 15) + @ApiModelProperty(value = "产品合格率") + private BigDecimal passRate; + /**公司id, 1表示老厂,2表示新厂*/ + @Excel(name = "公司id, 1表示老厂,2表示新厂", width = 15) + @ApiModelProperty(value = "公司id, 1表示老厂,2表示新厂") + private Integer companyId; +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/mapper/TtKanbanPassRateMapper.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/mapper/TtKanbanPassRateMapper.java new file mode 100644 index 0000000..a55965d --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/mapper/TtKanbanPassRateMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.demo.kanbanpassrate.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.demo.kanbanpassrate.entity.TtKanbanPassRate; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: tt_kanban_pass_rate + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface TtKanbanPassRateMapper extends BaseMapper { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/mapper/xml/TtKanbanPassRateMapper.xml b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/mapper/xml/TtKanbanPassRateMapper.xml new file mode 100644 index 0000000..fb361cc --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/mapper/xml/TtKanbanPassRateMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/service/ITtKanbanPassRateService.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/service/ITtKanbanPassRateService.java new file mode 100644 index 0000000..4fa366f --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/service/ITtKanbanPassRateService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.demo.kanbanpassrate.service; + +import org.jeecg.modules.demo.kanbanpassrate.entity.TtKanbanPassRate; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: tt_kanban_pass_rate + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface ITtKanbanPassRateService extends IService { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/service/impl/TtKanbanPassRateServiceImpl.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/service/impl/TtKanbanPassRateServiceImpl.java new file mode 100644 index 0000000..f5a6d35 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/service/impl/TtKanbanPassRateServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.demo.kanbanpassrate.service.impl; + +import org.jeecg.modules.demo.kanbanpassrate.entity.TtKanbanPassRate; +import org.jeecg.modules.demo.kanbanpassrate.mapper.TtKanbanPassRateMapper; +import org.jeecg.modules.demo.kanbanpassrate.service.ITtKanbanPassRateService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: tt_kanban_pass_rate + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Service +public class TtKanbanPassRateServiceImpl extends ServiceImpl implements ITtKanbanPassRateService { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/vue/TtKanbanPassRateList.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/vue/TtKanbanPassRateList.vue new file mode 100644 index 0000000..89de0cb --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/vue/TtKanbanPassRateList.vue @@ -0,0 +1,183 @@ + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/vue/TtKanbanPassRate_menu_insert.sql b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/vue/TtKanbanPassRate_menu_insert.sql new file mode 100644 index 0000000..d76f1cc --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/vue/TtKanbanPassRate_menu_insert.sql @@ -0,0 +1,26 @@ +-- 注意:该页面对应的前台目录为views/kanbanpassrate文件夹下 +-- 如果你想更改到其他目录,请修改sql中component字段对应的值 + + +INSERT INTO sys_permission(id, parent_id, name, url, component, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_route, is_leaf, keep_alive, hidden, hide_tab, description, status, del_flag, rule_flag, create_by, create_time, update_by, update_time, internal_or_external) +VALUES ('2023020509138920180', NULL, 'tt_kanban_pass_rate', '/kanbanpassrate/ttKanbanPassRateList', 'kanbanpassrate/TtKanbanPassRateList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2023-02-05 09:13:18', NULL, NULL, 0); + +-- 权限控制sql +-- 新增 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509138920181', '2023020509138920180', '添加tt_kanban_pass_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanpassrate:tt_kanban_pass_rate:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:18', NULL, NULL, 0, 0, '1', 0); +-- 编辑 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509138920182', '2023020509138920180', '编辑tt_kanban_pass_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanpassrate:tt_kanban_pass_rate:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:18', NULL, NULL, 0, 0, '1', 0); +-- 删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509138920183', '2023020509138920180', '删除tt_kanban_pass_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanpassrate:tt_kanban_pass_rate:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:18', NULL, NULL, 0, 0, '1', 0); +-- 批量删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509138920184', '2023020509138920180', '批量删除tt_kanban_pass_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanpassrate:tt_kanban_pass_rate:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:18', NULL, NULL, 0, 0, '1', 0); +-- 导出excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509138920185', '2023020509138920180', '导出excel_tt_kanban_pass_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanpassrate:tt_kanban_pass_rate:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:18', NULL, NULL, 0, 0, '1', 0); +-- 导入excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509138920186', '2023020509138920180', '导入excel_tt_kanban_pass_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanpassrate:tt_kanban_pass_rate:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:13:18', NULL, NULL, 0, 0, '1', 0); \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/vue/modules/TtKanbanPassRateForm.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/vue/modules/TtKanbanPassRateForm.vue new file mode 100644 index 0000000..ef473fb --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/vue/modules/TtKanbanPassRateForm.vue @@ -0,0 +1,120 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/vue/modules/TtKanbanPassRateModal.Style#Drawer.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/vue/modules/TtKanbanPassRateModal.Style#Drawer.vue new file mode 100644 index 0000000..1fa1733 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/vue/modules/TtKanbanPassRateModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/vue/modules/TtKanbanPassRateModal.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/vue/modules/TtKanbanPassRateModal.vue new file mode 100644 index 0000000..111f739 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpassrate/vue/modules/TtKanbanPassRateModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/controller/TtKanbanPlanController.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/controller/TtKanbanPlanController.java new file mode 100644 index 0000000..07cca0f --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/controller/TtKanbanPlanController.java @@ -0,0 +1,199 @@ +package org.jeecg.modules.demo.kanbanplan.controller; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.demo.kanbanplan.entity.TtKanbanPlan; +import org.jeecg.modules.demo.kanbanplan.service.ITtKanbanPlanService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + + /** + * @Description: tt_kanban_plan + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Api(tags="tt_kanban_plan") +@RestController +@RequestMapping("/kanbanplan/ttKanbanPlan") +@Slf4j +public class TtKanbanPlanController extends JeecgController { + @Autowired + private ITtKanbanPlanService ttKanbanPlanService; + + /** + * 分页列表查询 + * + * @param ttKanbanPlan + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "tt_kanban_plan-分页列表查询") + @ApiOperation(value="tt_kanban_plan-分页列表查询", notes="tt_kanban_plan-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(TtKanbanPlan ttKanbanPlan, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(ttKanbanPlan, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = ttKanbanPlanService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 看板1列表查询 + * + * @param ttKanbanPlan + * @return + */ + //@AutoLog(value = "tt_kanban_plan-分页列表查询") + @ApiOperation(value="tt_kanban_plan-看板1列表查询", notes="tt_kanban_plan-看板1列表查询") + @GetMapping(value = "/queryList") + public Result> queryList(TtKanbanPlan ttKanbanPlan) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("company_id", 1); + List list = new ArrayList<>(); + list.add("type_id"); + list.add("month_name"); + queryWrapper.orderByAsc(list); + List kanbanPlanList = ttKanbanPlanService.list(queryWrapper); + return Result.OK(kanbanPlanList); + } + + /** + * 添加 + * + * @param ttKanbanPlan + * @return + */ + @AutoLog(value = "tt_kanban_plan-添加") + @ApiOperation(value="tt_kanban_plan-添加", notes="tt_kanban_plan-添加") + //@RequiresPermissions("kanbanplan:tt_kanban_plan:add") + @PostMapping(value = "/add") + public Result add(@RequestBody TtKanbanPlan ttKanbanPlan) { + ttKanbanPlanService.save(ttKanbanPlan); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param ttKanbanPlan + * @return + */ + @AutoLog(value = "tt_kanban_plan-编辑") + @ApiOperation(value="tt_kanban_plan-编辑", notes="tt_kanban_plan-编辑") + //@RequiresPermissions("kanbanplan:tt_kanban_plan:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody TtKanbanPlan ttKanbanPlan) { + ttKanbanPlanService.updateById(ttKanbanPlan); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "tt_kanban_plan-通过id删除") + @ApiOperation(value="tt_kanban_plan-通过id删除", notes="tt_kanban_plan-通过id删除") + //@RequiresPermissions("kanbanplan:tt_kanban_plan:delete") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + ttKanbanPlanService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "tt_kanban_plan-批量删除") + @ApiOperation(value="tt_kanban_plan-批量删除", notes="tt_kanban_plan-批量删除") + //@RequiresPermissions("kanbanplan:tt_kanban_plan:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.ttKanbanPlanService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "tt_kanban_plan-通过id查询") + @ApiOperation(value="tt_kanban_plan-通过id查询", notes="tt_kanban_plan-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + TtKanbanPlan ttKanbanPlan = ttKanbanPlanService.getById(id); + if(ttKanbanPlan==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(ttKanbanPlan); + } + + /** + * 导出excel + * + * @param request + * @param ttKanbanPlan + */ + //@RequiresPermissions("kanbanplan:tt_kanban_plan:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, TtKanbanPlan ttKanbanPlan) { + return super.exportXls(request, ttKanbanPlan, TtKanbanPlan.class, "tt_kanban_plan"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + //@RequiresPermissions("kanbanplan:tt_kanban_plan:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, TtKanbanPlan.class); + } + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/entity/TtKanbanPlan.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/entity/TtKanbanPlan.java new file mode 100644 index 0000000..26bf616 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/entity/TtKanbanPlan.java @@ -0,0 +1,59 @@ +package org.jeecg.modules.demo.kanbanplan.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableLogic; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: tt_kanban_plan + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Data +@TableName("tt_kanban_plan") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="tt_kanban_plan对象", description="tt_kanban_plan") +public class TtKanbanPlan implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private Integer id; + /**月份名称*/ + @Excel(name = "月份名称", width = 15) + @ApiModelProperty(value = "月份名称") + private String monthName; + /**产品类型id,1表示底座,2表示胶塞*/ + @Excel(name = "产品类型id,1表示底座,2表示胶塞", width = 15) + @ApiModelProperty(value = "产品类型id,1表示底座,2表示胶塞") + private Integer typeId; + /**计划数量*/ + @Excel(name = "计划数量", width = 15) + @ApiModelProperty(value = "计划数量") + private BigDecimal planQty; + /**公司id, 1表示电气元器件,2表示轨道扣件*/ + @Excel(name = "公司id, 1表示电气元器件,2表示轨道扣件", width = 15) + @ApiModelProperty(value = "公司id, 1表示电气元器件,2表示轨道扣件") + private Integer companyId; + /**年份名称*/ + @Excel(name = "年份名称", width = 15) + @ApiModelProperty(value = "年份名称") + private String yearName; +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/mapper/TtKanbanPlanMapper.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/mapper/TtKanbanPlanMapper.java new file mode 100644 index 0000000..7481510 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/mapper/TtKanbanPlanMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.demo.kanbanplan.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.demo.kanbanplan.entity.TtKanbanPlan; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: tt_kanban_plan + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface TtKanbanPlanMapper extends BaseMapper { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/mapper/xml/TtKanbanPlanMapper.xml b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/mapper/xml/TtKanbanPlanMapper.xml new file mode 100644 index 0000000..0244e7c --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/mapper/xml/TtKanbanPlanMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/service/ITtKanbanPlanService.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/service/ITtKanbanPlanService.java new file mode 100644 index 0000000..5380fff --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/service/ITtKanbanPlanService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.demo.kanbanplan.service; + +import org.jeecg.modules.demo.kanbanplan.entity.TtKanbanPlan; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: tt_kanban_plan + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface ITtKanbanPlanService extends IService { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/service/impl/TtKanbanPlanServiceImpl.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/service/impl/TtKanbanPlanServiceImpl.java new file mode 100644 index 0000000..d6081be --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/service/impl/TtKanbanPlanServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.demo.kanbanplan.service.impl; + +import org.jeecg.modules.demo.kanbanplan.entity.TtKanbanPlan; +import org.jeecg.modules.demo.kanbanplan.mapper.TtKanbanPlanMapper; +import org.jeecg.modules.demo.kanbanplan.service.ITtKanbanPlanService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: tt_kanban_plan + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Service +public class TtKanbanPlanServiceImpl extends ServiceImpl implements ITtKanbanPlanService { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/vue/TtKanbanPlanList.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/vue/TtKanbanPlanList.vue new file mode 100644 index 0000000..3cde841 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/vue/TtKanbanPlanList.vue @@ -0,0 +1,195 @@ + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/vue/TtKanbanPlan_menu_insert.sql b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/vue/TtKanbanPlan_menu_insert.sql new file mode 100644 index 0000000..034e10b --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/vue/TtKanbanPlan_menu_insert.sql @@ -0,0 +1,26 @@ +-- 注意:该页面对应的前台目录为views/kanbanplan文件夹下 +-- 如果你想更改到其他目录,请修改sql中component字段对应的值 + + +INSERT INTO sys_permission(id, parent_id, name, url, component, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_route, is_leaf, keep_alive, hidden, hide_tab, description, status, del_flag, rule_flag, create_by, create_time, update_by, update_time, internal_or_external) +VALUES ('2023020509128490290', NULL, 'tt_kanban_plan', '/kanbanplan/ttKanbanPlanList', 'kanbanplan/TtKanbanPlanList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2023-02-05 09:12:29', NULL, NULL, 0); + +-- 权限控制sql +-- 新增 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509128490291', '2023020509128490290', '添加tt_kanban_plan', NULL, NULL, 0, NULL, NULL, 2, 'kanbanplan:tt_kanban_plan:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:29', NULL, NULL, 0, 0, '1', 0); +-- 编辑 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509128490292', '2023020509128490290', '编辑tt_kanban_plan', NULL, NULL, 0, NULL, NULL, 2, 'kanbanplan:tt_kanban_plan:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:29', NULL, NULL, 0, 0, '1', 0); +-- 删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509128490293', '2023020509128490290', '删除tt_kanban_plan', NULL, NULL, 0, NULL, NULL, 2, 'kanbanplan:tt_kanban_plan:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:29', NULL, NULL, 0, 0, '1', 0); +-- 批量删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509128490294', '2023020509128490290', '批量删除tt_kanban_plan', NULL, NULL, 0, NULL, NULL, 2, 'kanbanplan:tt_kanban_plan:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:29', NULL, NULL, 0, 0, '1', 0); +-- 导出excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509128490295', '2023020509128490290', '导出excel_tt_kanban_plan', NULL, NULL, 0, NULL, NULL, 2, 'kanbanplan:tt_kanban_plan:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:29', NULL, NULL, 0, 0, '1', 0); +-- 导入excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509128490296', '2023020509128490290', '导入excel_tt_kanban_plan', NULL, NULL, 0, NULL, NULL, 2, 'kanbanplan:tt_kanban_plan:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:29', NULL, NULL, 0, 0, '1', 0); \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/vue/modules/TtKanbanPlanForm.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/vue/modules/TtKanbanPlanForm.vue new file mode 100644 index 0000000..fe0372f --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/vue/modules/TtKanbanPlanForm.vue @@ -0,0 +1,136 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/vue/modules/TtKanbanPlanModal.Style#Drawer.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/vue/modules/TtKanbanPlanModal.Style#Drawer.vue new file mode 100644 index 0000000..bea674d --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/vue/modules/TtKanbanPlanModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/vue/modules/TtKanbanPlanModal.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/vue/modules/TtKanbanPlanModal.vue new file mode 100644 index 0000000..46ed313 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanplan/vue/modules/TtKanbanPlanModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/controller/TtKanbanPsRateController.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/controller/TtKanbanPsRateController.java new file mode 100644 index 0000000..69ea02e --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/controller/TtKanbanPsRateController.java @@ -0,0 +1,193 @@ +package org.jeecg.modules.demo.kanbanpsrate.controller; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.demo.kanbaninwh.entity.TtKanbanInWh; +import org.jeecg.modules.demo.kanbanpsrate.entity.TtKanbanPsRate; +import org.jeecg.modules.demo.kanbanpsrate.service.ITtKanbanPsRateService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + + /** + * @Description: tt_kanban_ps_rate + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Api(tags="tt_kanban_ps_rate") +@RestController +@RequestMapping("/kanbanpsrate/ttKanbanPsRate") +@Slf4j +public class TtKanbanPsRateController extends JeecgController { + @Autowired + private ITtKanbanPsRateService ttKanbanPsRateService; + + /** + * 分页列表查询 + * + * @param ttKanbanPsRate + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "tt_kanban_ps_rate-分页列表查询") + @ApiOperation(value="tt_kanban_ps_rate-分页列表查询", notes="tt_kanban_ps_rate-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(TtKanbanPsRate ttKanbanPsRate, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(ttKanbanPsRate, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = ttKanbanPsRateService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 看板5列表查询 + * + * @param ttKanbanPsRate + * @return + */ + //@AutoLog(value = "tt_kanban_ps_rate-分页列表查询") + @ApiOperation(value="tt_kanban_ps_rate-看板5列表查询", notes="tt_kanban_ps_rate-看板5列表查询") + @GetMapping(value = "/queryList") + public Result> queryList(TtKanbanPsRate ttKanbanPsRate) { + List kanbanPsRateList = ttKanbanPsRateService.kanbanPsRateList(); + return Result.OK(kanbanPsRateList); + } + + /** + * 添加 + * + * @param ttKanbanPsRate + * @return + */ + @AutoLog(value = "tt_kanban_ps_rate-添加") + @ApiOperation(value="tt_kanban_ps_rate-添加", notes="tt_kanban_ps_rate-添加") + //@RequiresPermissions("kanbanpsrate:tt_kanban_ps_rate:add") + @PostMapping(value = "/add") + public Result add(@RequestBody TtKanbanPsRate ttKanbanPsRate) { + ttKanbanPsRateService.save(ttKanbanPsRate); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param ttKanbanPsRate + * @return + */ + @AutoLog(value = "tt_kanban_ps_rate-编辑") + @ApiOperation(value="tt_kanban_ps_rate-编辑", notes="tt_kanban_ps_rate-编辑") + //@RequiresPermissions("kanbanpsrate:tt_kanban_ps_rate:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody TtKanbanPsRate ttKanbanPsRate) { + ttKanbanPsRateService.updateById(ttKanbanPsRate); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "tt_kanban_ps_rate-通过id删除") + @ApiOperation(value="tt_kanban_ps_rate-通过id删除", notes="tt_kanban_ps_rate-通过id删除") + //@RequiresPermissions("kanbanpsrate:tt_kanban_ps_rate:delete") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + ttKanbanPsRateService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "tt_kanban_ps_rate-批量删除") + @ApiOperation(value="tt_kanban_ps_rate-批量删除", notes="tt_kanban_ps_rate-批量删除") + //@RequiresPermissions("kanbanpsrate:tt_kanban_ps_rate:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.ttKanbanPsRateService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "tt_kanban_ps_rate-通过id查询") + @ApiOperation(value="tt_kanban_ps_rate-通过id查询", notes="tt_kanban_ps_rate-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + TtKanbanPsRate ttKanbanPsRate = ttKanbanPsRateService.getById(id); + if(ttKanbanPsRate==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(ttKanbanPsRate); + } + + /** + * 导出excel + * + * @param request + * @param ttKanbanPsRate + */ + //@RequiresPermissions("kanbanpsrate:tt_kanban_ps_rate:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, TtKanbanPsRate ttKanbanPsRate) { + return super.exportXls(request, ttKanbanPsRate, TtKanbanPsRate.class, "tt_kanban_ps_rate"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + //@RequiresPermissions("kanbanpsrate:tt_kanban_ps_rate:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, TtKanbanPsRate.class); + } + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/entity/TtKanbanPsRate.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/entity/TtKanbanPsRate.java new file mode 100644 index 0000000..ced439c --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/entity/TtKanbanPsRate.java @@ -0,0 +1,61 @@ +package org.jeecg.modules.demo.kanbanpsrate.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableLogic; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: tt_kanban_ps_rate + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Data +@TableName("tt_kanban_ps_rate") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="tt_kanban_ps_rate对象", description="tt_kanban_ps_rate") +public class TtKanbanPsRate implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private Integer id; + /**日期*/ + @Excel(name = "日期", width = 15, format = "yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "日期") + private Date dayName; + /**日期名称*/ + @Excel(name = "日期名称", width = 15) + @ApiModelProperty(value = "日期名称") + private String dayDesc; + /**工序名称*/ + @Excel(name = "工序名称", width = 15) + @ApiModelProperty(value = "工序名称") + private String psName; + /**工序达成率*/ + @Excel(name = "工序达成率", width = 15) + @ApiModelProperty(value = "工序达成率") + private BigDecimal psRate; + /**公司id, 1表示电气元器件,2表示轨道扣件*/ + @Excel(name = "公司id, 1表示电气元器件,2表示轨道扣件", width = 15) + @ApiModelProperty(value = "公司id, 1表示电气元器件,2表示轨道扣件") + private Integer companyId; +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/mapper/TtKanbanPsRateMapper.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/mapper/TtKanbanPsRateMapper.java new file mode 100644 index 0000000..ebbec1f --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/mapper/TtKanbanPsRateMapper.java @@ -0,0 +1,18 @@ +package org.jeecg.modules.demo.kanbanpsrate.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.demo.kanbanpsrate.entity.TtKanbanPsRate; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: tt_kanban_ps_rate + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface TtKanbanPsRateMapper extends BaseMapper { + + List kanbanPsRateList(); +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/mapper/xml/TtKanbanPsRateMapper.xml b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/mapper/xml/TtKanbanPsRateMapper.xml new file mode 100644 index 0000000..5dfb860 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/mapper/xml/TtKanbanPsRateMapper.xml @@ -0,0 +1,11 @@ + + + + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/service/ITtKanbanPsRateService.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/service/ITtKanbanPsRateService.java new file mode 100644 index 0000000..eba5ab0 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/service/ITtKanbanPsRateService.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.demo.kanbanpsrate.service; + +import org.jeecg.modules.demo.kanbanpsrate.entity.TtKanbanPsRate; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + * @Description: tt_kanban_ps_rate + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface ITtKanbanPsRateService extends IService { + + List kanbanPsRateList(); +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/service/impl/TtKanbanPsRateServiceImpl.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/service/impl/TtKanbanPsRateServiceImpl.java new file mode 100644 index 0000000..07dcdb1 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/service/impl/TtKanbanPsRateServiceImpl.java @@ -0,0 +1,29 @@ +package org.jeecg.modules.demo.kanbanpsrate.service.impl; + +import org.jeecg.modules.demo.kanbaninwh.mapper.TtKanbanInWhMapper; +import org.jeecg.modules.demo.kanbanpsrate.entity.TtKanbanPsRate; +import org.jeecg.modules.demo.kanbanpsrate.mapper.TtKanbanPsRateMapper; +import org.jeecg.modules.demo.kanbanpsrate.service.ITtKanbanPsRateService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +import java.util.List; + +/** + * @Description: tt_kanban_ps_rate + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Service +public class TtKanbanPsRateServiceImpl extends ServiceImpl implements ITtKanbanPsRateService { + @Autowired + private TtKanbanPsRateMapper TtKanbanInWhMapper; + + @Override + public List kanbanPsRateList() { + return TtKanbanInWhMapper.kanbanPsRateList(); + } +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/vue/TtKanbanPsRateList.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/vue/TtKanbanPsRateList.vue new file mode 100644 index 0000000..41a251a --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/vue/TtKanbanPsRateList.vue @@ -0,0 +1,198 @@ + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/vue/TtKanbanPsRate_menu_insert.sql b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/vue/TtKanbanPsRate_menu_insert.sql new file mode 100644 index 0000000..f80cb66 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/vue/TtKanbanPsRate_menu_insert.sql @@ -0,0 +1,26 @@ +-- 注意:该页面对应的前台目录为views/kanbanpsrate文件夹下 +-- 如果你想更改到其他目录,请修改sql中component字段对应的值 + + +INSERT INTO sys_permission(id, parent_id, name, url, component, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_route, is_leaf, keep_alive, hidden, hide_tab, description, status, del_flag, rule_flag, create_by, create_time, update_by, update_time, internal_or_external) +VALUES ('202302050912550470', NULL, 'tt_kanban_ps_rate', '/kanbanpsrate/ttKanbanPsRateList', 'kanbanpsrate/TtKanbanPsRateList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2023-02-05 09:12:47', NULL, NULL, 0); + +-- 权限控制sql +-- 新增 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('202302050912550471', '202302050912550470', '添加tt_kanban_ps_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanpsrate:tt_kanban_ps_rate:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:47', NULL, NULL, 0, 0, '1', 0); +-- 编辑 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('202302050912550472', '202302050912550470', '编辑tt_kanban_ps_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanpsrate:tt_kanban_ps_rate:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:47', NULL, NULL, 0, 0, '1', 0); +-- 删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('202302050912550473', '202302050912550470', '删除tt_kanban_ps_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanpsrate:tt_kanban_ps_rate:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:47', NULL, NULL, 0, 0, '1', 0); +-- 批量删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('202302050912550474', '202302050912550470', '批量删除tt_kanban_ps_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanpsrate:tt_kanban_ps_rate:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:47', NULL, NULL, 0, 0, '1', 0); +-- 导出excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('202302050912550475', '202302050912550470', '导出excel_tt_kanban_ps_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanpsrate:tt_kanban_ps_rate:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:47', NULL, NULL, 0, 0, '1', 0); +-- 导入excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('202302050912550476', '202302050912550470', '导入excel_tt_kanban_ps_rate', NULL, NULL, 0, NULL, NULL, 2, 'kanbanpsrate:tt_kanban_ps_rate:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:47', NULL, NULL, 0, 0, '1', 0); \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/vue/modules/TtKanbanPsRateForm.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/vue/modules/TtKanbanPsRateForm.vue new file mode 100644 index 0000000..7ad9d3b --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/vue/modules/TtKanbanPsRateForm.vue @@ -0,0 +1,139 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/vue/modules/TtKanbanPsRateModal.Style#Drawer.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/vue/modules/TtKanbanPsRateModal.Style#Drawer.vue new file mode 100644 index 0000000..4b78a47 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/vue/modules/TtKanbanPsRateModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/vue/modules/TtKanbanPsRateModal.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/vue/modules/TtKanbanPsRateModal.vue new file mode 100644 index 0000000..656e763 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbanpsrate/vue/modules/TtKanbanPsRateModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/controller/TtKanbanSalesController.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/controller/TtKanbanSalesController.java new file mode 100644 index 0000000..caf9c97 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/controller/TtKanbanSalesController.java @@ -0,0 +1,201 @@ +package org.jeecg.modules.demo.kanbansales.controller; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.demo.kanbanplan.entity.TtKanbanPlan; +import org.jeecg.modules.demo.kanbansales.entity.TtKanbanSales; +import org.jeecg.modules.demo.kanbansales.service.ITtKanbanSalesService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + + /** + * @Description: tt_kanban_sales + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Api(tags="tt_kanban_sales") +@RestController +@RequestMapping("/kanbansales/ttKanbanSales") +@Slf4j +public class TtKanbanSalesController extends JeecgController { + @Autowired + private ITtKanbanSalesService ttKanbanSalesService; + + /** + * 分页列表查询 + * + * @param ttKanbanSales + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "tt_kanban_sales-分页列表查询") + @ApiOperation(value="tt_kanban_sales-分页列表查询", notes="tt_kanban_sales-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(TtKanbanSales ttKanbanSales, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(ttKanbanSales, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = ttKanbanSalesService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 看板4列表查询 + * + * @param ttKanbanSales + * @return + */ + //@AutoLog(value = "tt_kanban_sales-分页列表查询") + @ApiOperation(value="tt_kanban_sales-看板4列表查询", notes="tt_kanban_sales-看板4列表查询") + @GetMapping(value = "/queryList") + public Result> queryList(TtKanbanSales ttKanbanSales) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("company_id", 1); + List list = new ArrayList<>(); + list.add("type_id"); + list.add("year_name"); + list.add("month_name"); + queryWrapper.orderByAsc(list); + List kanbanSalesList = ttKanbanSalesService.list(queryWrapper); + return Result.OK(kanbanSalesList); + } + + /** + * 添加 + * + * @param ttKanbanSales + * @return + */ + @AutoLog(value = "tt_kanban_sales-添加") + @ApiOperation(value="tt_kanban_sales-添加", notes="tt_kanban_sales-添加") + //@RequiresPermissions("kanbansales:tt_kanban_sales:add") + @PostMapping(value = "/add") + public Result add(@RequestBody TtKanbanSales ttKanbanSales) { + ttKanbanSalesService.save(ttKanbanSales); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param ttKanbanSales + * @return + */ + @AutoLog(value = "tt_kanban_sales-编辑") + @ApiOperation(value="tt_kanban_sales-编辑", notes="tt_kanban_sales-编辑") + //@RequiresPermissions("kanbansales:tt_kanban_sales:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody TtKanbanSales ttKanbanSales) { + ttKanbanSalesService.updateById(ttKanbanSales); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "tt_kanban_sales-通过id删除") + @ApiOperation(value="tt_kanban_sales-通过id删除", notes="tt_kanban_sales-通过id删除") + //@RequiresPermissions("kanbansales:tt_kanban_sales:delete") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + ttKanbanSalesService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "tt_kanban_sales-批量删除") + @ApiOperation(value="tt_kanban_sales-批量删除", notes="tt_kanban_sales-批量删除") + //@RequiresPermissions("kanbansales:tt_kanban_sales:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.ttKanbanSalesService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "tt_kanban_sales-通过id查询") + @ApiOperation(value="tt_kanban_sales-通过id查询", notes="tt_kanban_sales-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + TtKanbanSales ttKanbanSales = ttKanbanSalesService.getById(id); + if(ttKanbanSales==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(ttKanbanSales); + } + + /** + * 导出excel + * + * @param request + * @param ttKanbanSales + */ + //@RequiresPermissions("kanbansales:tt_kanban_sales:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, TtKanbanSales ttKanbanSales) { + return super.exportXls(request, ttKanbanSales, TtKanbanSales.class, "tt_kanban_sales"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + //@RequiresPermissions("kanbansales:tt_kanban_sales:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, TtKanbanSales.class); + } + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/entity/TtKanbanSales.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/entity/TtKanbanSales.java new file mode 100644 index 0000000..27f9117 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/entity/TtKanbanSales.java @@ -0,0 +1,59 @@ +package org.jeecg.modules.demo.kanbansales.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableLogic; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: tt_kanban_sales + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Data +@TableName("tt_kanban_sales") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="tt_kanban_sales对象", description="tt_kanban_sales") +public class TtKanbanSales implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private Integer id; + /**月份名称*/ + @Excel(name = "月份名称", width = 15) + @ApiModelProperty(value = "月份名称") + private String monthName; + /**产品类型id,1表示底座,2表示胶塞*/ + @Excel(name = "产品类型id,1表示底座,2表示胶塞", width = 15) + @ApiModelProperty(value = "产品类型id,1表示底座,2表示胶塞") + private Integer typeId; + /**销售数量*/ + @Excel(name = "销售数量", width = 15) + @ApiModelProperty(value = "销售数量") + private BigDecimal salesQty; + /**公司id, 1表示电气元器件,2表示轨道扣件*/ + @Excel(name = "公司id, 1表示电气元器件,2表示轨道扣件", width = 15) + @ApiModelProperty(value = "公司id, 1表示电气元器件,2表示轨道扣件") + private Integer companyId; + /**年份名称*/ + @Excel(name = "年份名称", width = 15) + @ApiModelProperty(value = "年份名称") + private String yearName; +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/mapper/TtKanbanSalesMapper.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/mapper/TtKanbanSalesMapper.java new file mode 100644 index 0000000..cb1bd70 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/mapper/TtKanbanSalesMapper.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.demo.kanbansales.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import org.jeecg.modules.demo.kanbansales.entity.TtKanbanSales; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: tt_kanban_sales + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface TtKanbanSalesMapper extends BaseMapper { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/mapper/xml/TtKanbanSalesMapper.xml b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/mapper/xml/TtKanbanSalesMapper.xml new file mode 100644 index 0000000..fe9b828 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/mapper/xml/TtKanbanSalesMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/service/ITtKanbanSalesService.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/service/ITtKanbanSalesService.java new file mode 100644 index 0000000..c4c5b99 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/service/ITtKanbanSalesService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.demo.kanbansales.service; + +import org.jeecg.modules.demo.kanbansales.entity.TtKanbanSales; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: tt_kanban_sales + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +public interface ITtKanbanSalesService extends IService { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/service/impl/TtKanbanSalesServiceImpl.java b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/service/impl/TtKanbanSalesServiceImpl.java new file mode 100644 index 0000000..42a5848 --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/service/impl/TtKanbanSalesServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.demo.kanbansales.service.impl; + +import org.jeecg.modules.demo.kanbansales.entity.TtKanbanSales; +import org.jeecg.modules.demo.kanbansales.mapper.TtKanbanSalesMapper; +import org.jeecg.modules.demo.kanbansales.service.ITtKanbanSalesService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: tt_kanban_sales + * @Author: jeecg-boot + * @Date: 2023-02-05 + * @Version: V1.0 + */ +@Service +public class TtKanbanSalesServiceImpl extends ServiceImpl implements ITtKanbanSalesService { + +} diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/vue/TtKanbanSalesList.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/vue/TtKanbanSalesList.vue new file mode 100644 index 0000000..9626a0c --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/vue/TtKanbanSalesList.vue @@ -0,0 +1,195 @@ + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/vue/TtKanbanSales_menu_insert.sql b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/vue/TtKanbanSales_menu_insert.sql new file mode 100644 index 0000000..369758f --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/vue/TtKanbanSales_menu_insert.sql @@ -0,0 +1,26 @@ +-- 注意:该页面对应的前台目录为views/kanbansales文件夹下 +-- 如果你想更改到其他目录,请修改sql中component字段对应的值 + + +INSERT INTO sys_permission(id, parent_id, name, url, component, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_route, is_leaf, keep_alive, hidden, hide_tab, description, status, del_flag, rule_flag, create_by, create_time, update_by, update_time, internal_or_external) +VALUES ('2023020509127590130', NULL, 'tt_kanban_sales', '/kanbansales/ttKanbanSalesList', 'kanbansales/TtKanbanSalesList', NULL, NULL, 0, NULL, '1', 0.00, 0, NULL, 1, 0, 0, 0, 0, NULL, '1', 0, 0, 'admin', '2023-02-05 09:12:13', NULL, NULL, 0); + +-- 权限控制sql +-- 新增 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509127590131', '2023020509127590130', '添加tt_kanban_sales', NULL, NULL, 0, NULL, NULL, 2, 'kanbansales:tt_kanban_sales:add', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:13', NULL, NULL, 0, 0, '1', 0); +-- 编辑 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509127590132', '2023020509127590130', '编辑tt_kanban_sales', NULL, NULL, 0, NULL, NULL, 2, 'kanbansales:tt_kanban_sales:edit', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:13', NULL, NULL, 0, 0, '1', 0); +-- 删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509127590133', '2023020509127590130', '删除tt_kanban_sales', NULL, NULL, 0, NULL, NULL, 2, 'kanbansales:tt_kanban_sales:delete', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:13', NULL, NULL, 0, 0, '1', 0); +-- 批量删除 +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509127590134', '2023020509127590130', '批量删除tt_kanban_sales', NULL, NULL, 0, NULL, NULL, 2, 'kanbansales:tt_kanban_sales:deleteBatch', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:13', NULL, NULL, 0, 0, '1', 0); +-- 导出excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509127590135', '2023020509127590130', '导出excel_tt_kanban_sales', NULL, NULL, 0, NULL, NULL, 2, 'kanbansales:tt_kanban_sales:exportXls', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:13', NULL, NULL, 0, 0, '1', 0); +-- 导入excel +INSERT INTO sys_permission(id, parent_id, name, url, component, is_route, component_name, redirect, menu_type, perms, perms_type, sort_no, always_show, icon, is_leaf, keep_alive, hidden, hide_tab, description, create_by, create_time, update_by, update_time, del_flag, rule_flag, status, internal_or_external) +VALUES ('2023020509127590136', '2023020509127590130', '导入excel_tt_kanban_sales', NULL, NULL, 0, NULL, NULL, 2, 'kanbansales:tt_kanban_sales:importExcel', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2023-02-05 09:12:13', NULL, NULL, 0, 0, '1', 0); \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/vue/modules/TtKanbanSalesForm.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/vue/modules/TtKanbanSalesForm.vue new file mode 100644 index 0000000..d3de9ca --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/vue/modules/TtKanbanSalesForm.vue @@ -0,0 +1,136 @@ + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/vue/modules/TtKanbanSalesModal.Style#Drawer.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/vue/modules/TtKanbanSalesModal.Style#Drawer.vue new file mode 100644 index 0000000..ff9094f --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/vue/modules/TtKanbanSalesModal.Style#Drawer.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/vue/modules/TtKanbanSalesModal.vue b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/vue/modules/TtKanbanSalesModal.vue new file mode 100644 index 0000000..23d30df --- /dev/null +++ b/linkage-boot/linkage-module-demo/src/main/java/org/jeecg/modules/demo/kanbansales/vue/modules/TtKanbanSalesModal.vue @@ -0,0 +1,60 @@ + + + \ No newline at end of file