Commit 5a1defd7 authored by lvzhuangzhuang's avatar lvzhuangzhuang

Merge remote-tracking branch 'origin/master'

parents 4ce0183e 820eb1f9
......@@ -10,7 +10,11 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
/**
* 模板转换页面接口
......@@ -83,4 +87,33 @@ public class ActSuppliesConvertController extends BaseController{
}
@PreAuthorize("@ss.hasPermi('ActSuppliesConvert:ActSuppliesConvert:converSupplies')")
@PostMapping("/converSupplies")
public TableDataInfo convertSupplies(@RequestBody String[] names){
List<String> name = Arrays.asList(names);
List<ActOperation> list = actSuppliesConvertService.converSupplies(name);
name = name.stream()
.map(str -> {
if (str == null) {
return null; // 保留原始的null值
}
for (int i = 0; i < list.size(); i++) {
if (str.equals(list.get(i).getDetaliesName())) {
return list.get(i).getSuppliesName();
}
}
return str;
})
.collect(Collectors.toList());
System.out.println(name.toString());
return getDataTable(name);
}
}
......@@ -103,6 +103,7 @@ public class ActSuppliesRoleDetailController extends BaseController
public AjaxResult add(@RequestBody ActSuppliesRoleDetail actSuppliesRoleDetail)
{
return toAjax(actSuppliesRoleDetailService.insertActSuppliesRoleDetail(actSuppliesRoleDetail));
}
/**
......
package com.ruoyi.system.domain;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
public class ActOperation extends BaseEntity {
private static final long serialVersionUID = 1L;
private Integer id;
private String OperationName;
private Integer status;
private String suppliesName;
private String detaliesName;
public Integer getId() {
return id;
......@@ -18,19 +20,28 @@ public class ActOperation extends BaseEntity {
this.id = id;
}
public String getOperationName() {
return OperationName;
public String getSuppliesName() {
return suppliesName;
}
public void setOperationName(String operationName) {
OperationName = operationName;
public void setSuppliesName(String operationName) {
suppliesName = operationName;
}
public Integer getStatus() {
return status;
public String getDetaliesName() {
return detaliesName;
}
public void setStatus(Integer status) {
this.status = status;
public void setDetaliesName(String detaliesName) {
this.detaliesName = detaliesName;
}
@Override
public String toString() {
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("suppliesName", getSuppliesName())
.append("detaliesName", getDetaliesName())
.toString();
}
}
package com.ruoyi.system.ex;
import com.ruoyi.system.web.ServiceCode;
public class ServiceException extends RuntimeException{
private ServiceCode serviceCode;
public ServiceException(ServiceCode serviceCode,String message) {
super(message);
this.serviceCode = serviceCode;
}
public ServiceCode getServiceCode(){
return serviceCode;
}
}
package com.ruoyi.system.mapper;
import com.ruoyi.system.domain.ActSupplies;
import com.ruoyi.system.domain.ActSuppliesRole;
import com.ruoyi.system.domain.ActSuppliesRoleDetail;
import com.ruoyi.system.domain.ActSuppliesTemplate;
import com.ruoyi.system.domain.*;
import java.util.List;
......@@ -18,4 +15,6 @@ public interface ActSuppliesConverMapper {
List<ActSuppliesRoleDetail> roleListid(Integer id);
ActSupplies selectSuppliesname(String name);
List<ActOperation> converSupplies(List<String> name);
}
......@@ -65,4 +65,13 @@ public interface ActSuppliesMapper
List<Integer> findall();
List<Integer> findAllId();
/**
* 根据物料总分类名称统计数量
* @param suppliesName
* @return
*/
public int countBySuppliesName(String suppliesName);
}
......@@ -3,6 +3,8 @@ package com.ruoyi.system.mapper;
import java.util.List;
import com.ruoyi.system.domain.ActSuppliesRole;
import com.ruoyi.system.domain.ActSuppliesTemplate;
import org.apache.ibatis.annotations.Param;
import org.springframework.security.core.parameters.P;
/**
* 导入规则Mapper接口
......@@ -63,4 +65,8 @@ public interface ActSuppliesRoleMapper
List<ActSuppliesTemplate> saveSid();
List<Integer> findall();
public int countByRoleName(String roleName);
}
......@@ -15,4 +15,6 @@ public interface IActSuppliesConvertService {
List<ActSuppliesRoleDetail> roleListid(Integer id);
ActSupplies selectSuppliesname(String name);
List<ActOperation> converSupplies(List<String> name);
}
......@@ -3,6 +3,7 @@ package com.ruoyi.system.service;
import java.util.List;
import com.ruoyi.system.domain.ActSuppliesRole;
import com.ruoyi.system.domain.ActSuppliesTemplate;
import org.springframework.stereotype.Repository;
/**
* 导入规则Service接口
......@@ -10,6 +11,7 @@ import com.ruoyi.system.domain.ActSuppliesTemplate;
* @author dongjg
* @date 2023-07-12
*/
@Repository
public interface IActSuppliesRoleService
{
/**
......
package com.ruoyi.system.service;
import com.ruoyi.system.domain.ActSupplies;
import org.springframework.stereotype.Repository;
import java.util.List;
......@@ -10,6 +11,7 @@ import java.util.List;
* @author ruoyi
* @date 2023-07-11
*/
@Repository
public interface IActSuppliesService
{
/**
......@@ -80,4 +82,6 @@ public interface IActSuppliesService
void setDisable(Long id);
List<Integer> findAllId();
}
......@@ -39,4 +39,9 @@ public class ActSuppliesConvertServiceImpl implements IActSuppliesConvertService
public ActSupplies selectSuppliesname(String name) {
return actSuppliesConverMapper.selectSuppliesname(name);
}
@Override
public List<ActOperation> converSupplies(List<String> name) {
return actSuppliesConverMapper.converSupplies(name);
}
}
......@@ -5,6 +5,9 @@ import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.system.domain.ActSupplies;
import com.ruoyi.system.domain.ActSuppliesDetails;
import com.ruoyi.system.domain.ActSuppliesTemplate;
import com.ruoyi.system.ex.ServiceException;
import com.ruoyi.system.web.ServiceCode;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.ActSuppliesRoleMapper;
......@@ -56,6 +59,16 @@ public class ActSuppliesRoleServiceImpl implements IActSuppliesRoleService
@Override
public int insertActSuppliesRole(ActSuppliesRole actSuppliesRole)
{
String roleName = actSuppliesRole.getRoleName();
int countByRoleName = actSuppliesRoleMapper.countByRoleName(roleName);
if(countByRoleName > 0){
String message = "添加规则失败,规则名称已被占用";
System.out.println(message);
throw new ServiceException(ServiceCode.ERR_CONFLICT,message);
}
ActSuppliesRole actSuppliesRole1 = new ActSuppliesRole();
BeanUtils.copyProperties(actSuppliesRole,actSuppliesRole1);
actSuppliesRole.setCreateTime(DateUtils.getNowDate());
return actSuppliesRoleMapper.insertActSuppliesRole(actSuppliesRole);
}
......@@ -69,6 +82,15 @@ public class ActSuppliesRoleServiceImpl implements IActSuppliesRoleService
@Override
public int updateActSuppliesRole(ActSuppliesRole actSuppliesRole)
{
String roleName = actSuppliesRole.getRoleName();
int countByRoleName = actSuppliesRoleMapper.countByRoleName(roleName);
if(countByRoleName > 0){
String message = "修改规则失败,新的规则名称已被占用";
System.out.println(message);
throw new ServiceException(ServiceCode.ERR_CONFLICT,message);
}
ActSuppliesRole actSuppliesRole2 = new ActSuppliesRole();
BeanUtils.copyProperties(actSuppliesRole,actSuppliesRole2);
actSuppliesRole.setUpdateTime(DateUtils.getNowDate());
return actSuppliesRoleMapper.updateActSuppliesRole(actSuppliesRole);
}
......
......@@ -2,13 +2,19 @@ package com.ruoyi.system.service.impl;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.system.domain.ActSupplies;
import com.ruoyi.system.ex.ServiceException;
import com.ruoyi.system.mapper.ActSuppliesMapper;
import com.ruoyi.system.service.IActSuppliesService;
import com.ruoyi.system.web.ServiceCode;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.sql.rowset.serial.SerialException;
import java.util.List;
import static jdk.nashorn.internal.runtime.regexp.joni.Config.log;
/**
* 物料总分类管理Service业务层处理
*
......@@ -16,6 +22,7 @@ import java.util.List;
* @date 2023-07-11
*/
@Service
public class ActSuppliesServiceImpl implements IActSuppliesService
{
@Autowired
......@@ -54,6 +61,16 @@ public class ActSuppliesServiceImpl implements IActSuppliesService
@Override
public int insertActSupplies(ActSupplies actSupplies)
{
String suppliesName= actSupplies.getSuppliesName();
int countBySuppliesName = actSuppliesMapper.countBySuppliesName(suppliesName);
if(countBySuppliesName > 0){
String message = "添加物料总分类管理失败,名称已被占用!";
System.out.println(message);
throw new ServiceException(ServiceCode.ERR_CONFLICT,message);
}
ActSupplies actSupplies1 = new ActSupplies();
BeanUtils.copyProperties(actSupplies,actSupplies1);
actSupplies.setCreateTime(DateUtils.getNowDate());
return actSuppliesMapper.insertActSupplies(actSupplies);
}
......@@ -67,6 +84,15 @@ public class ActSuppliesServiceImpl implements IActSuppliesService
@Override
public int updateActSupplies(ActSupplies actSupplies)
{
String suppliesName= actSupplies.getSuppliesName();
int countBySuppliesName = actSuppliesMapper.countBySuppliesName(suppliesName);
if(countBySuppliesName > 0) {
String message = "修改物料总分类管理失败,新的名称已被占用!";
System.out.println(message);
throw new ServiceException(ServiceCode.ERR_CONFLICT, message);
}
ActSupplies actSupplies1 = new ActSupplies();
BeanUtils.copyProperties(actSupplies,actSupplies1);
actSupplies.setUpdateTime(DateUtils.getNowDate());
return actSuppliesMapper.updateActSupplies(actSupplies);
}
......
......@@ -60,6 +60,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="updateTime" column="update_time" />
</resultMap>
<resultMap type="com.ruoyi.system.domain.ActOperation" id="ActOperationResult">
<result property="id" column="id" />
<result property="suppliesName" column="supplies_name" />
<result property="detaliesName" column="details_name" />
</resultMap>
<select id="templiteList" parameterType="com.ruoyi.system.domain.ActSuppliesTemplate" resultMap="SuppliesTemplateResult">
select id, det_id, template_name from act_supplies_template where status = 0
</select>
......@@ -80,6 +86,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
select id, supplies_name from act_supplies where id=(select sid from act_supplies_details where details_name = #{name})
</select>
<select id="converSupplies" parameterType="java.util.List" resultMap="ActOperationResult">
select id ,supplies_name, b.details_name from act_supplies a ,(
SELECT sid ,details_name
FROM act_supplies_details
WHERE details_name IN
<foreach item="name" collection="list" open="(" separator="," close=")">
#{name}
</foreach>
) b where a.id = b.sid
</select>
</mapper>
\ No newline at end of file
......@@ -17,10 +17,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="updateTime" column="update_time" />
</resultMap>
<sql id="selectActSuppliesVo">
select id, pid, supplies_name, order_num, status, create_by, create_time, update_by, update_time from act_supplies
</sql>
<select id="countBySuppliesName" resultType="int">
select count(*) from act_supplies where supplies_name=#{suppliesName}
</select>
<select id="selectActSuppliesList" parameterType="ActSupplies" resultMap="ActSuppliesResult">
select a.id,a.pid,b.supplies_name fname,a.supplies_name,a.status from act_supplies a left join act_supplies b on a.pid =b.id
<where>
......
......@@ -33,6 +33,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="findall" resultType="Integer">
select role_id from act_supplies_role_detail GROUP BY role_id
</select>
<select id="countByRoleName" resultType="int">
select count(*) from act_supplies_role where role_name=#{roleName}
</select>
<sql id="selectActSuppliesRoleVo">
select id, temp_id, role_name, status, create_by, create_time, update_by, update_time from act_supplies_role
......
......@@ -95,10 +95,6 @@ export function findName(name) {
}
// 模板转换页面查询规则对应用友物料名称
export function getSuppliesName(name) {
return request({
......
......@@ -284,7 +284,7 @@ export default {
let message = '操作成功,已经将【' + actSuppliesDetails.detailsName +'】的状态改为【'+ enableText[actSuppliesDetails.status] +'】 !';
this.$message({
message: message,
type:'success'
type:'error'
});
}else {
this.$message.error(response.message);
......
......@@ -108,7 +108,6 @@
<el-table-column label="状态" align="center">
<template slot-scope="scope">
<div>
<el-switch
@change="toggleEnable(scope.row)"
v-model="scope.row.status"
......@@ -117,7 +116,6 @@
active-color="#13ce66"
inactive-color="#cccccc">
</el-switch>
</div>
</template>
</el-table-column>
......@@ -140,7 +138,6 @@
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
......@@ -148,7 +145,6 @@
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改物料总分类管理对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
......@@ -264,27 +260,22 @@ export default {
let enableText=['启用','禁用'];
if(actSupplies.status == 0) {
toggleEnable(actSupplies.id).then((response) =>{
if(response.code == 200){
response.code == 200;
let message = '操作成功,已经将【' + actSupplies.suppliesName +'】的状态改为【'+ enableText[actSupplies.status] +'】 !';
this.$message({
message: message,
type:'success'
});
}else {
this.$message.error(response.message);
}
});
}else {
toggleDisable(actSupplies.id).then((response) =>{
if(response.code == 200){
response.code == 200;
let message = '操作成功,已经将【' + actSupplies.suppliesName +'】的状态改为【'+ enableText[actSupplies.status] +'】 !';
this.$message({
message: message,
type:'success'
type:'error'
});
}else {
this.$message.error(response.message);
}
});
}
},
......
......@@ -32,7 +32,6 @@
<el-select v-model="queryParams.status" placeholder="请选择状态">
<el-option label="启用" value="0"></el-option>
<el-option label="禁用" value="1"></el-option>
<el-option label="删除" value="2"></el-option>
</el-select>
</el-form-item>
<el-form-item>
......@@ -245,7 +244,7 @@ export default {
let message = '操作成功,已经将【' + suppliesrole.roleName +'】的状态改为【'+ enableText[suppliesrole.status] +'】 !';
this.$message({
message: message,
type:'success'
type:'error'
});
}else {
this.$message.error(response.message);
......
......@@ -2,6 +2,14 @@
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="上级规则" prop="roleId">
<!-- <el-input-->
<!-- v-model="queryParams.roleId"-->
<!-- placeholder="请输入导入规则ID"-->
<!-- clearable-->
<!-- size="small"-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<el-select v-model="queryParams.roleId" filterable placeholder="请选择关联项" >
<el-option
v-for="option in options1"
......@@ -22,12 +30,12 @@
</el-form-item>
<el-form-item label="状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择状态">
<el-option label="启用" :value="0"></el-option>
<el-option label="禁用" :value="1"></el-option>
<el-option label="启用" value="0"></el-option>
<el-option label="禁用" value="1"></el-option>
</el-select>
</el-form-item>
<el-form-item label="运算规则" prop="convertStatus">
<el-select v-model="queryParams.convertStatus" clearable filterable placeholder="请运算规则">
<el-form-item label="是否物料转换" prop="convertStatus">
<el-select v-model="queryParams.convertStatus" clearable filterable placeholder="请选择状态">
<el-option
v-for="option in options2"
:key="option.operationName"
......@@ -94,7 +102,7 @@
<el-table-column label="上级规则" align="center" prop="roleName" />
<el-table-column label="规则名称" align="center" prop="detailName" />
<el-table-column label="规则内容" align="center" prop="detailContent" />
<el-table-column label="运算规则" align="center">
<el-table-column label="运算方法" align="center">
<template slot-scope="scope">
<div>
<template v-if="scope.row.convertStatus === 0">
......@@ -173,36 +181,19 @@
></el-option>
</el-select>
</el-form-item>
<el-form-item label="转换数据" prop="detailYS">
<el-radio-group v-model="form.detailYS">
<el-radio :label="1" @change="showTemplate = true; showImport = false; showLie= false">单元格转换</el-radio>
<el-radio :label="2" @change="showTemplate = false; showImport = true; showLie= false">行转换</el-radio>
<el-radio :label="3" @change="showTemplate = false; showImport = false; showLie= true">列转换</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="模板表行坐标" prop="detailMH" v-if="showTemplate">
<el-input-number size="medium" v-model="form.detailMH" :min="1" :step="1">1</el-input-number>
</el-form-item>
<el-form-item label="模板表列坐标" prop="detailML" v-if="showTemplate">
<el-input-number size="medium" v-model="form.detailML" :min="1" :step="1">1</el-input-number>
</el-form-item>
<el-form-item label="导入表行坐标" prop="detailYH" v-if="showTemplate">
<el-input-number size="medium" v-model="form.detailYH" :min="1" :step="1">1</el-input-number>
</el-form-item>
<el-form-item label="导入表列坐标" prop="detailYL" v-if="showTemplate">
<el-input-number size="medium" v-model="form.detailYL" :min="1" :step="1">1</el-input-number>
</el-form-item>
<el-form-item label="模板表行坐标" prop="detailMH" v-if="showImport">
<!-- <el-form-item label="规则名称" prop="detailName">-->
<!-- <el-input v-model="form.detailName" placeholder="请输入规则名称" />-->
<!-- </el-form-item>-->
<el-form-item label="模板表行坐标" prop="detailMH">
<el-input-number size="medium" v-model="form.detailMH" :min="1" :step="1">1</el-input-number>
</el-form-item>
<el-form-item label="模板表列长度" prop="detailML" v-if="showImport">
<el-form-item label="模板表列坐标" prop="detailML">
<el-input-number size="medium" v-model="form.detailML" :min="1" :step="1">1</el-input-number>
</el-form-item>
<el-form-item label="导入表行坐标" prop="detailYH" v-if="showImport">
<el-form-item label="导入表行坐标" prop="detailYH">
<el-input-number size="medium" v-model="form.detailYH" :min="1" :step="1">1</el-input-number>
</el-form-item>
<el-form-item label="导入表列长度" prop="detailYL" v-if="showImport">
<el-form-item label="导入列行坐标" prop="detailYL">
<el-input-number size="medium" v-model="form.detailYL" :min="1" :step="1">1</el-input-number>
</el-form-item>
<el-form-item label="状态">
......@@ -212,6 +203,10 @@
</el-select>
</el-form-item>
<el-form-item label="运算方法" prop="convertStatus">
<!-- <el-select v-model="form.convertStatus">-->
<!-- <el-option label="启用物料转换" :value="0"></el-option>-->
<!-- <el-option label="禁用物料转换" :value="1"></el-option>-->
<!-- </el-select>-->
<el-select v-model="form.convertStatus" filterable placeholder="请选择运算方法" >
<el-option
v-for="option in options2"
......@@ -238,9 +233,9 @@ import {
addSuppliesroledetail,
updateSuppliesroledetail,
exportSuppliesroledetail,
saveSid,
toggleEnable,
toggleDisable,
saveSid,
saveOperation,
} from "@/api/system/suppliesroledetail";
import Editor from '@/components/Editor';
......@@ -287,9 +282,6 @@ export default {
// 表单参数
form: {
},
showTemplate: false, // 控制单元格的显示与隐藏
showImport: false, // 控制行转换的显示与隐藏
showLie: false, // 控制列转换的显示与隐藏
// 表单校验
rules: {
roleId:[
......@@ -323,6 +315,7 @@ export default {
},
methods: {
/**启用 */
toggleEnable(suppliesroledetail){
console.log('你点击了【' + suppliesroledetail.s+'】的开关控件,当前开关值:' + suppliesroledetail.status);
let enableText=['启用','禁用'];
......@@ -331,16 +324,23 @@ export default {
toggleEnable(suppliesroledetail.id).then((response) =>{
if(response.code == 200){
let message = '操作成功,已经将【' + suppliesroledetail.roleName +'】的状态改为【'+ enableText[suppliesroledetail.status] +'】 !';
this.$message({message: message,type:'success'});
this.$message({
message: message,
type:'success'
});
}else {
this.$message.error(response.message);
}
});
}else {
toggleDisable(suppliesroledetail.id).then((response) =>{
if(response.code == 200){
let message = '操作成功,已经将【' + suppliesroledetail.roleName +'】的状态改为【'+ enableText[suppliesroledetail.status] +'】 !';
this.$message({message: message, type:'success'});
this.$message({
message: message,
type:'error'
});
}else {
this.$message.error(response.message);
}
......@@ -453,7 +453,7 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$confirm('是否确认删除规则详情编号为"' + row.detailName + '"的数据项?', "警告", {
this.$confirm('是否确认删除规则详情编号为"' + ids + '"的数据项?', "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment