系统管理-指令派单规则

This commit is contained in:
1378012178@qq.com 2025-12-25 15:23:38 +08:00
parent afe2da7eff
commit 76322ec3a4
7 changed files with 281 additions and 179 deletions

View File

@ -1,127 +0,0 @@
package com.nu.modules.config.sendorderrule.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nu.modules.config.sendorderrule.entity.SendOrderRule;
import com.nu.modules.config.sendorderrule.service.ISendOrderRuleService;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.system.query.QueryRuleEnum;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
/**
* @Description: 服务指令-派单规则配置主表
* @Author: caolei
* @Date: 2025-12-1
* @Version: V1.0
*/
@RestController
@RequestMapping("/services/sendorderrule")
@Slf4j
public class SendOrderRuleController extends JeecgController<SendOrderRule, ISendOrderRuleService> {
@Autowired
private ISendOrderRuleService service;
/**
* 分页列表查询
*
* @param sendOrderPriority
* @param pageNo
* @param pageSize
* @param req
* @return
*/
@ApiOperation(value = "派单规则配置主表-分页列表查询", notes = "派单规则配置主表-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<SendOrderRule>> queryPageList(SendOrderRule sendOrderPriority,
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
HttpServletRequest req) {
// 自定义查询规则
Map<String, QueryRuleEnum> ruleMap = new HashMap<>();
// 自定义多选的查询规则为LIKE_WITH_OR
ruleMap.put("izEnabled", QueryRuleEnum.LIKE_WITH_OR);
QueryWrapper<SendOrderRule> queryWrapper = QueryGenerator.initQueryWrapper(sendOrderPriority, req.getParameterMap(), ruleMap);
Page<SendOrderRule> page = new Page<SendOrderRule>(pageNo, pageSize);
IPage<SendOrderRule> pageList = service.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 添加
*
* @param sendOrderPriority
* @return
*/
@ApiOperation(value = "派单规则配置主表-添加", notes = "派单规则配置主表-添加")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody SendOrderRule sendOrderPriority) {
service.save(sendOrderPriority);
return Result.OK("添加成功!");
}
/**
* 编辑
*
* @param directiveTag
* @return
*/
@ApiOperation(value = "派单规则配置主表-编辑", notes = "派单规则配置主表-编辑")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST})
public Result<String> edit(@RequestBody SendOrderRule directiveTag) {
service.updateById(directiveTag);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@ApiOperation(value = "派单规则配置主表-通过id删除", notes = "派单规则配置主表-通过id删除")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name = "id", required = true) String id) {
service.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@ApiOperation(value = "派单规则配置主表-批量删除", notes = "派单规则配置主表-批量删除")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
this.service.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
@ApiOperation(value = "派单规则配置主表-通过id查询", notes = "派单规则配置主表-通过id查询")
@GetMapping(value = "/queryById")
public Result<SendOrderRule> queryById(@RequestParam(name = "id", required = true) String id) {
SendOrderRule directiveTag = service.getById(id);
if (directiveTag == null) {
return Result.error("未找到对应数据");
}
return Result.OK(directiveTag);
}
}

View File

@ -0,0 +1,157 @@
package com.nu.modules.config.sendorderrule.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nu.modules.config.sendorderrule.entity.SendOrderRuleSub;
import com.nu.modules.config.sendorderrule.service.ISendOrderRuleSubService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.common.system.query.QueryGenerator;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Arrays;
/**
* @Description: 服务指令-派单规则配置子表
* @Author: jeecg-boot
* @Date: 2025-12-25
* @Version: V1.0
*/
@Api(tags="服务指令-派单规则配置子表")
@RestController
@RequestMapping("/sendorderrule/sendOrderRuleSub")
@Slf4j
public class SendOrderRuleSubController extends JeecgController<SendOrderRuleSub, ISendOrderRuleSubService> {
@Autowired
private ISendOrderRuleSubService sendOrderRuleSubService;
/**
* 分页列表查询
*
* @param sendOrderRuleSub
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "服务指令-派单规则配置子表-分页列表查询")
@ApiOperation(value="服务指令-派单规则配置子表-分页列表查询", notes="服务指令-派单规则配置子表-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<SendOrderRuleSub>> queryPageList(SendOrderRuleSub sendOrderRuleSub,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<SendOrderRuleSub> queryWrapper = QueryGenerator.initQueryWrapper(sendOrderRuleSub, req.getParameterMap());
Page<SendOrderRuleSub> page = new Page<SendOrderRuleSub>(pageNo, pageSize);
queryWrapper.orderByAsc("sort");
IPage<SendOrderRuleSub> pageList = sendOrderRuleSubService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 添加
*
* @param sendOrderRuleSub
* @return
*/
@AutoLog(value = "服务指令-派单规则配置子表-添加")
@ApiOperation(value="服务指令-派单规则配置子表-添加", notes="服务指令-派单规则配置子表-添加")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody SendOrderRuleSub sendOrderRuleSub) {
sendOrderRuleSubService.save(sendOrderRuleSub);
return Result.OK("添加成功!");
}
/**
* 编辑
*
* @param sendOrderRuleSub
* @return
*/
@AutoLog(value = "服务指令-派单规则配置子表-编辑")
@ApiOperation(value="服务指令-派单规则配置子表-编辑", notes="服务指令-派单规则配置子表-编辑")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody SendOrderRuleSub sendOrderRuleSub) {
sendOrderRuleSubService.updateById(sendOrderRuleSub);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "服务指令-派单规则配置子表-通过id删除")
@ApiOperation(value="服务指令-派单规则配置子表-通过id删除", notes="服务指令-派单规则配置子表-通过id删除")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
sendOrderRuleSubService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "服务指令-派单规则配置子表-批量删除")
@ApiOperation(value="服务指令-派单规则配置子表-批量删除", notes="服务指令-派单规则配置子表-批量删除")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.sendOrderRuleSubService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
//@AutoLog(value = "服务指令-派单规则配置子表-通过id查询")
@ApiOperation(value="服务指令-派单规则配置子表-通过id查询", notes="服务指令-派单规则配置子表-通过id查询")
@GetMapping(value = "/queryById")
public Result<SendOrderRuleSub> queryById(@RequestParam(name="id",required=true) String id) {
SendOrderRuleSub sendOrderRuleSub = sendOrderRuleSubService.getById(id);
if(sendOrderRuleSub==null) {
return Result.error("未找到对应数据");
}
return Result.OK(sendOrderRuleSub);
}
/**
* 导出excel
*
* @param request
* @param sendOrderRuleSub
*/
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, SendOrderRuleSub sendOrderRuleSub) {
return super.exportXls(request, sendOrderRuleSub, SendOrderRuleSub.class, "服务指令-派单规则配置子表");
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, SendOrderRuleSub.class);
}
}

View File

@ -1,14 +1,14 @@
package com.nu.modules.config.sendorderrule.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
@ -27,33 +27,45 @@ import java.util.List;
@ApiModel(value="nu_config_service_send_order_rule对象", description="服务指令-派单规则配置主表")
public class SendOrderRule implements Serializable {
private static final long serialVersionUID = 1L;
/**id*/
/**ID*/
@TableId(type = IdType.ASSIGN_ID)
private String id;
/**规则编码值*/
private Integer ruleCode;
@ApiModelProperty(value = "ID")
private java.lang.String id;
/**规则编码*/
@Excel(name = "规则编码", width = 15)
@ApiModelProperty(value = "规则编码")
private java.lang.String ruleCode;
/**规则名称*/
private String ruleName;
/**是否启用 Y启用 N未启用*/
private String izEnabled;
@Excel(name = "规则名称", width = 15)
@ApiModelProperty(value = "规则名称")
private java.lang.String ruleName;
/**是否启用*/
@Excel(name = "是否启用", width = 15)
@ApiModelProperty(value = "是否启用")
@Dict(dicCode = "iz_enabled")
private java.lang.String izEnabled;
/**创建人*/
private String createBy;
@ApiModelProperty(value = "创建人")
private java.lang.String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
/**更新人*/
private String updateBy;
@ApiModelProperty(value = "更新人")
private java.lang.String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
/**是否删除 0未删除 1删除*/
private String delFlag;
@Excel(name = "是否删除 0未删除 1删除", width = 15)
@ApiModelProperty(value = "是否删除 0未删除 1删除")
@TableLogic
private java.lang.String delFlag;
@TableField(exist = false)
private List<SendOrderRuleSub> sendOrderRuleSubList;

View File

@ -2,12 +2,16 @@ package com.nu.modules.config.sendorderrule.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
@ -15,50 +19,89 @@ import java.io.Serializable;
/**
* @Description: 服务指令-派单规则配置子表
* @Author: caolei
* @Date: 2025-12-1
* @Date: 2025-12-1
* @Version: V1.0
*/
@Data
@TableName("nu_config_service_send_order_rule_sub")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="nu_config_service_send_order_rule_sub对象", description="服务指令-派单规则配置子表")
@ApiModel(value = "nu_config_service_send_order_rule_sub对象", description = "服务指令-派单规则配置子表")
public class SendOrderRuleSub implements Serializable {
private static final long serialVersionUID = 1L;
/**id*/
/**
* ID
*/
@TableId(type = IdType.ASSIGN_ID)
private String id;
/**是否启用 Y启用 N未启用*/
private String mainId;
/**规则编码值*/
@ApiModelProperty(value = "ID")
private java.lang.String id;
/**
* 主表ID
*/
@Excel(name = "主表ID", width = 15)
@ApiModelProperty(value = "主表ID")
private java.lang.String mainId;
/**
* 规则编码值
*/
@Excel(name = "规则编码值", width = 15)
@ApiModelProperty(value = "规则编码值")
private Integer ruleCode;
/**规则名称*/
private String ruleName;
/**是否启用 Y启用 N未启用*/
private String izEnabled;
/**系数*/
/**
* 规则名称
*/
@Excel(name = "规则名称", width = 15)
@ApiModelProperty(value = "规则名称")
private java.lang.String ruleName;
/**
* 是否启用 Y启用 N未启用
*/
@Excel(name = "是否启用 Y启用 N未启用", width = 15)
@ApiModelProperty(value = "是否启用 Y启用 N未启用")
@Dict(dicCode = "iz_enabled")
private java.lang.String izEnabled;
/**
* 系数
*/
@Excel(name = "系数", width = 15)
@ApiModelProperty(value = "系数")
private Integer coefficient;
/**排序*/
/**
* 排序
*/
@Excel(name = "排序", width = 15)
@ApiModelProperty(value = "排序")
private Integer sort;
/**创建人*/
private String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
/**
* 创建人
*/
@ApiModelProperty(value = "创建人")
private java.lang.String createBy;
/**
* 创建日期
*/
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
/**更新人*/
private String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
/**
* 更新人
*/
@ApiModelProperty(value = "更新人")
private java.lang.String updateBy;
/**
* 更新日期
*/
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
/**是否删除 0未删除 1删除*/
private String delFlag;
/**
* 是否删除 0未删除 1删除
*/
@Excel(name = "是否删除 0未删除 1删除", width = 15)
@ApiModelProperty(value = "是否删除 0未删除 1删除")
@TableLogic
private java.lang.String delFlag;
}

View File

@ -2,6 +2,7 @@ package com.nu.modules.config.sendorderrule.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.nu.modules.config.sendorderrule.entity.SendOrderRule;
import org.jeecg.common.api.vo.Result;
/**
* @Description: 服务指令-派单规则配置主表
@ -11,4 +12,5 @@ import com.nu.modules.config.sendorderrule.entity.SendOrderRule;
*/
public interface ISendOrderRuleService extends IService<SendOrderRule> {
boolean enabledRule(SendOrderRule sendOrderRule);
}

View File

@ -1,5 +1,6 @@
package com.nu.modules.config.sendorderrule.service.impl;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.nu.modules.config.sendorderrule.entity.SendOrderRule;
import com.nu.modules.config.sendorderrule.mapper.SendOrderRuleMapper;
@ -9,10 +10,24 @@ import org.springframework.stereotype.Service;
/**
* @Description: 服务指令-派单规则配置主表
* @Author: caolei
* @Date: 2025-12-1
* @Date: 2025-12-1
* @Version: V1.0
*/
@Service
public class SendOrderRuleServiceImpl extends ServiceImpl<SendOrderRuleMapper, SendOrderRule> implements ISendOrderRuleService {
@Override
public boolean enabledRule(SendOrderRule sendOrderRule) {
UpdateWrapper<SendOrderRule> uw = new UpdateWrapper<>();
uw.ne("id", sendOrderRule.getId());
SendOrderRule stopData = new SendOrderRule();
stopData.setIzEnabled("N");
baseMapper.update(stopData, uw);
SendOrderRule useData = new SendOrderRule();
useData.setId(sendOrderRule.getId());
useData.setIzEnabled("Y");
baseMapper.updateById(useData);
return true;
}
}

View File

@ -802,7 +802,7 @@ public class ConfigServiceDirectiveServiceImpl extends ServiceImpl<ConfigService
JSONObject deptInfo = sysBaseAPI.getDeptInfo();
Map<String, String> result = Maps.newHashMap();
if (StringUtils.isNotBlank(orgCode) && orgCode.equals(deptInfo.getString("code"))) {
return "-1";
return "-2";
}
return orgCode;