Commit 6e8acd67 by yubin

owners管理

parent c4a9a211
......@@ -122,19 +122,11 @@
<el-table-column label="银行账户" align="center" prop="bankAccount" />
<el-table-column label="是否激活" align="center" prop="isActive">
<template slot-scope="scope">
<el-button
:type="scope.row.isActive === 1 ? 'success' : 'danger'"
size="mini"
plain
@click="handleToggleActive(scope.row)"
>
{{ scope.row.isActive === 1 ? '是' : '否' }}
</el-button>
{{ scope.row.isActive === 1 ? '激活' : '未激活' }}
</template>
</el-table-column>
<el-table-column label="排序" align="center" prop="sortNo" />
<el-table-column label="创建日期" align="center" prop="createUserCode" />
<el-table-column label="排序号" align="center" prop="updateUserCode" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
......@@ -179,13 +171,11 @@
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="联系人" prop="contactPerson">
<el-input v-model="form.contactPerson" placeholder="请输入联系人" />
</el-form-item>
</el-col>
</el-row>
<el-col :span="12">
<el-form-item label="货主类型" prop="ownerType">
<el-select v-model="form.ownerType" placeholder="请选择货主类型" clearable style="width: 100%">
......@@ -198,6 +188,7 @@
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="联系电话" prop="contactPhone">
......@@ -216,48 +207,29 @@
<el-input v-model="form.address" type="textarea" placeholder="请输入内容" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="税号" prop="taxNumber">
<el-input v-model="form.taxNumber" placeholder="请输入税号" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="银行账户" prop="bankAccount">
<el-input v-model="form.bankAccount" placeholder="请输入银行账户" />
<el-form-item label="是否激活" prop="isActive">
<el-radio-group v-model="form.isActive" size="small">
<el-radio-button label="1">激活</el-radio-button>
<el-radio-button label="0">未激活</el-radio-button>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="排序" prop="sortNo">
<el-input v-model="form.sortNo" placeholder="请输入排序" />
<el-input-number v-model="form.sortNo" placeholder="请输入排序" :min="0" :step="1" style="width: 100%" />
</el-form-item>
</el-col>
</el-row>
<el-col :span="12">
<el-form-item label="是否激活" prop="isActive">
<el-select v-model="form.isActive" placeholder="请选择是否激活" clearable style="width: 100%">
<el-option
v-for="dict in dict.type.yes_no"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="创建日期" prop="createUserCode">
<el-input v-model="form.createUserCode" placeholder="请输入创建日期" />
<el-form-item label="税号" prop="taxNumber">
<el-input v-model="form.taxNumber" placeholder="请输入税号" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="排序号" prop="updateUserCode">
<el-input v-model="form.updateUserCode" placeholder="请输入排序号" />
<el-form-item label="银行账户" prop="bankAccount">
<el-input v-model="form.bankAccount" placeholder="请输入银行账户" />
</el-form-item>
</el-col>
</el-row>
......@@ -330,6 +302,31 @@ export default {
form: {},
// 表单校验
rules: {
ownerCode: [
{ required: true, message: '货主编码不能为空', trigger: 'blur' }
],
ownerName: [
{ required: true, message: '货主名称不能为空', trigger: 'blur' }
],
contactPerson: [
{ required: true, message: '联系人不能为空', trigger: 'blur' }
],
ownerType: [
{ required: true, message: '货主类型不能为空', trigger: 'blur' }
],
contactPhone: [
{ pattern: /^1[3-9]\d{9}$/, message: '请输入正确的手机号码格式', trigger: 'blur' }
],
email: [
{ type: 'email', message: '请输入正确的邮箱格式', trigger: 'blur' }
],
isActive: [
{ required: true, message: '是否激活不能为空', trigger: 'blur' }
],
sortNo: [
{ required: true, message: '排序不能为空', trigger: 'blur' },
{ type: 'number', message: '排序必须为数字值', trigger: 'blur' }
]
}
}
},
......@@ -444,20 +441,6 @@ export default {
/** 导入组件 */
handleImport() {
this.$refs.import.show()
},
/** 切换激活状态 */
handleToggleActive(row) {
const newStatus = row.isActive === 1 ? 0 : 1
const statusText = newStatus === 1 ? '激活' : '停用'
this.$modal.confirm(`确定要${statusText}该货主吗?`).then(() => {
return updateOwners({ ...row, isActive: newStatus })
}).then(() => {
this.$modal.msgSuccess(`${statusText}成功`)
this.getList()
}).catch(() => {
// 恢复原状态
row.isActive = row.isActive === 1 ? 0 : 1
})
}
}
}
......
......@@ -64,7 +64,9 @@ public class SysUserController extends BaseController
List<SysUser> list = userService.selectUserList(user);
return getDataTable(list);
}
/**
* 导出用户列表
*/
@Log(title = "用户管理", businessType = BusinessType.EXPORT)
@PreAuthorize("@ss.hasPermi('system:user:export')")
@PostMapping("/export")
......@@ -74,8 +76,9 @@ public class SysUserController extends BaseController
ExcelUtil<SysUser> util = new ExcelUtil<SysUser>(SysUser.class);
util.exportExcel(response, list, "用户数据");
}
@Log(title = "用户管理", businessType = BusinessType.IMPORT)
/**
* 导入用户数据
*/
@PreAuthorize("@ss.hasPermi('system:user:import')")
@PostMapping("/importData")
public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception
......@@ -86,7 +89,9 @@ public class SysUserController extends BaseController
String message = userService.importUser(userList, updateSupport, operName);
return success(message);
}
/**
* 导入用户模板
*/
@PostMapping("/importTemplate")
public void importTemplate(HttpServletResponse response)
{
......
......@@ -73,6 +73,7 @@ public class OwnersController extends BaseController
String message = ownersService.importOwners(ownersList, updateSupport, operName);
return success(message);
}
@PostMapping("/importTemplate")
public void importTemplate(HttpServletResponse response)
{
......
......@@ -29,7 +29,7 @@ public class Owners extends BaseEntity
private String ownerName;
/** 货主类型 1-供应商 2-客户 3-内部 检索条件 */
@Excel(name = "货主类型 1-供应商 2-客户 3-内部 ")
@Excel(name = "货主类型",dictType="owner_type")
private Long ownerType;
/** 联系人 */
......@@ -70,6 +70,9 @@ public class Owners extends BaseEntity
/** 排序号 */
private String updateUserCode;
/** 删除标识 1-是 0-否 */
private Long isUsed;
public void setId(String id)
{
this.id = id;
......@@ -210,6 +213,16 @@ public class Owners extends BaseEntity
return updateUserCode;
}
public void setIsUsed(Long isUsed)
{
this.isUsed = isUsed;
}
public Long getIsUsed()
{
return isUsed;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
......@@ -229,6 +242,7 @@ public class Owners extends BaseEntity
.append("createUserCode", getCreateUserCode())
.append("updateTime", getUpdateTime())
.append("updateUserCode", getUpdateUserCode())
.append("isUsed", getIsUsed())
.toString();
}
}
package com.ruoyi.inventory.service.impl;
import java.util.Date;
import java.util.List;
import java.util.UUID;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -57,7 +59,30 @@ public class OwnersServiceImpl implements IOwnersService
@Override
public int insertOwners(Owners owners)
{
owners.setCreateTime(DateUtils.getNowDate());
Long userId = SecurityUtils.getUserId();
String operId = userId.toString();
Date now = DateUtils.getNowDate();
// 填充创建人、创建时间、修改人、修改时间
owners.setCreateBy(operId);
owners.setCreateTime(now);
owners.setUpdateBy(operId);
owners.setUpdateTime(now);
// 填充创建用户编码和更新用户编码
owners.setCreateUserCode(operId);
owners.setUpdateUserCode(operId);
// 设置默认值
if (owners.getIsActive() == null)
{
owners.setIsActive(1L); // 默认激活
}
if (owners.getIsUsed() == null)
{
owners.setIsUsed(0L); // 默认未删除
}
if (owners.getSortNo() == null)
{
owners.setSortNo(0L); // 默认排序号
}
return ownersMapper.insertOwners(owners);
}
......@@ -72,11 +97,36 @@ public class OwnersServiceImpl implements IOwnersService
int failureNum = 0;
StringBuilder successMsg = new StringBuilder();
StringBuilder failureMsg = new StringBuilder();
Date now = DateUtils.getNowDate();
// 获取当前登录用户ID
Long userId = SecurityUtils.getUserId();
String operId = userId.toString();
for (Owners owners : ownersList)
{
try
{
owners.setId(UUID.randomUUID().toString());
// 填充创建人、创建时间、修改人、修改时间
owners.setCreateBy(operId);
owners.setCreateTime(now);
owners.setUpdateBy(operId);
owners.setUpdateTime(now);
// 填充创建用户编码和更新用户编码
owners.setCreateUserCode(operId);
owners.setUpdateUserCode(operId);
// 设置默认值
if (owners.getIsActive() == null)
{
owners.setIsActive(1L); // 默认激活
}
if (owners.getIsUsed() == null)
{
owners.setIsUsed(0L); // 默认未删除
}
if (owners.getSortNo() == null)
{
owners.setSortNo(0L); // 默认排序号
}
ownersMapper.insertOwners(owners);
successNum++;
successMsg.append("<br/>" + successNum + "、用户 " + owners.getOwnerName() + " 导入成功");
......@@ -110,7 +160,13 @@ public class OwnersServiceImpl implements IOwnersService
@Override
public int updateOwners(Owners owners)
{
owners.setUpdateTime(DateUtils.getNowDate());
Long userId = SecurityUtils.getUserId();
String operId = userId.toString();
Date now = DateUtils.getNowDate();
// 填充修改人、修改时间和更新用户编码
owners.setUpdateBy(operId);
owners.setUpdateTime(now);
owners.setUpdateUserCode(operId);
return ownersMapper.updateOwners(owners);
}
......
......@@ -21,15 +21,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="createUserCode" column="create_user_code" />
<result property="updateTime" column="update_time" />
<result property="updateUserCode" column="update_user_code" />
<result property="isUsed" column="is_used" />
</resultMap>
<sql id="selectOwnersVo">
select id, owner_code, owner_name, owner_type, contact_person, contact_phone, email, address, tax_number, bank_account, is_active, sort_no, create_time, create_user_code, update_time, update_user_code from owners
select id, owner_code, owner_name, owner_type, contact_person, contact_phone, email, address, tax_number, bank_account, is_active, sort_no, create_time, create_user_code, update_time, update_user_code, is_used from owners
</sql>
<select id="selectOwnersList" parameterType="Owners" resultMap="OwnersResult">
<include refid="selectOwnersVo"/>
<where>
where is_used = 0
<if test="ownerCode != null and ownerCode != ''"> and owner_code = #{ownerCode}</if>
<if test="ownerName != null and ownerName != ''"> and owner_name like concat('%', #{ownerName}, '%')</if>
<if test="ownerType != null "> and owner_type = #{ownerType}</if>
......@@ -43,7 +44,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="sortNo != null "> and sort_no = #{sortNo}</if>
<if test="createUserCode != null and createUserCode != ''"> and create_user_code = #{createUserCode}</if>
<if test="updateUserCode != null and updateUserCode != ''"> and update_user_code = #{updateUserCode}</if>
</where>
order by sort_no asc
</select>
<select id="selectOwnersById" parameterType="String" resultMap="OwnersResult">
......@@ -109,18 +110,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="createUserCode != null">create_user_code = #{createUserCode},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="updateUserCode != null">update_user_code = #{updateUserCode},</if>
<if test="isUsed != null">is_used = #{isUsed},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteOwnersById" parameterType="String">
delete from owners where id = #{id}
</delete>
<update id="deleteOwnersById" parameterType="String">
update owners set is_used = 1 where id = #{id}
</update>
<delete id="deleteOwnersByIds" parameterType="String">
delete from owners where id in
<update id="deleteOwnersByIds" parameterType="String">
update owners set is_used = 1 where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</update>
</mapper>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论