工器具个体管理

This commit is contained in:
hayu 2024-07-20 22:28:17 +08:00
parent 3d7becfad4
commit 10eb940bab
13 changed files with 605 additions and 276 deletions

View File

@ -5,6 +5,7 @@ import com.bonus.aqgqj.annotation.LogAnnotation;
import com.bonus.aqgqj.basis.entity.dto.ToolsManageDto;
import com.bonus.aqgqj.basis.service.ToolsManageService;
import com.bonus.aqgqj.model.PasswordConfig;
import com.bonus.aqgqj.model.Role;
import com.bonus.aqgqj.model.SysUser;
import com.bonus.aqgqj.system.dao.UserDao;
import com.bonus.aqgqj.system.service.UserService;
@ -33,9 +34,10 @@ import java.util.Objects;
/**
* 工器具管理
* 工器具个体管理
* @author hay
*/
@Api(tags = "工器具管理")
@Api(tags = "工器具个体管理")
@RestController
@RequestMapping("/tools/")
public class ToolsManageController {
@ -47,7 +49,7 @@ public class ToolsManageController {
@PostMapping(value = "getList")
@DecryptAndVerify(decryptedClass = ToolsManageDto.class)
@LogAnnotation(operModul = "系统管理-用户管理", operation = "查询用列表", operDesc = "系统级事件",operType="查询")
@LogAnnotation(operModul = "工器具管理-工器具个体管理", operation = "查询用列表", operDesc = "系统级事件",operType="查询")
@PreAuthorize("@pms.hasPermission('sys:tools:query')" )
public ServerResponse listUsers(EncryptedReq<ToolsManageDto> data) {
PageHelper.startPage(data.getData().getPage(), data.getData().getLimit());
@ -61,4 +63,34 @@ public class ToolsManageController {
return ServerResponse.createErrorPage(data.getData().getPage(),data.getData().getLimit());
}
@PostMapping(value = "getDetailsList")
@DecryptAndVerify(decryptedClass = ToolsManageDto.class)
@LogAnnotation(operModul = "工器具管理-工器具个体管理详情", operation = "查询用列表", operDesc = "系统级事件",operType="查询")
@PreAuthorize("@pms.hasPermission('sys:tools:query')" )
public ServerResponse getDetailsList(EncryptedReq<ToolsManageDto> data) {
PageHelper.startPage(data.getData().getPage(), data.getData().getLimit());
try {
List<ToolsManageDto> list = toolsManageService.getDetailsList(data.getData());
PageInfo<ToolsManageDto> pageInfo = new PageInfo<>(list);
return ServerResponse.createSuccessPage(pageInfo,data.getData().getPage(),data.getData().getLimit());
} catch (Exception e) {
log.error(e.toString(),e);
}
return ServerResponse.createErrorPage(data.getData().getPage(),data.getData().getLimit());
}
@PostMapping(value = "all")
@LogAnnotation(operModul = "工器具管理", operation = "查询所有工器具", operDesc = "系统级事件",operType="查询")
@PreAuthorize("@pms.hasPermission('sys:tools:query')" )
public ServerResponse getAll() {
try {
List<ToolsManageDto> list = toolsManageService.listTools();
return ServerResponse.createSuccess(list);
}catch (Exception e){
log.error(e.toString(),e);
}
return ServerResponse.createErroe("操作失败");
}
}

View File

@ -25,4 +25,23 @@ public interface ToolsManageDao {
*/
List<ToolsManageDto> list(ToolsManageDto bean);
/**
* 获取工器具
* @param id
* @return
*/
String getSampleTools(Integer id);
/**
* 获取详情列表
* @param data
* @return
*/
List<ToolsManageDto> getDetailsList(ToolsManageDto data);
/**
* 获取工器具
* @return
*/
List<ToolsManageDto> listTools();
}

View File

@ -3,119 +3,76 @@ package com.bonus.aqgqj.basis.entity.dto;
import com.bonus.aqgqj.base.entity.PageEntity;
import lombok.Data;
/**
* 工器具个体管理
* @author hay
*/
@Data
public class ToolsManageDto extends PageEntity {
private static final long serialVersionUID = -6525908145032868837L;
private Long id;
private Integer id;
/**
* 登录
*
*/
private String loginName;
private String name;
/**
* 用户名
* 送样单位
*/
private String username;
private String customName;
/**
* 工号
* 送样人
*/
private String userCode;
private String sampleUser;
/**
* 单位部门
* 送样时间
*/
private String orgName;
private String sampleTime;
/**
* 角色名称
* 送样设备
*/
private String roleName;
private String password;
private String oldPassword;
private String sampleTools;
/**
* 手机号
* 收样人
*/
private String phone;
private String collectSamplesUser;
/**
* 用户类型
* 收样时间
*/
private String userType;
private String email;
private Integer sex;
private Integer state;
private String collectSamplesTime;
/**
* 角色id
* 班组
*/
private String roleId;
private String teamName;
/**
* 组织机构id
* 设备编号
*/
private Integer orgId;
private String devTypeCode;
/**
* 所属单位
* 生产厂家
*/
private String unit;
private String factoryName;
/**
* 所属部门
* 生产日期
*/
private String dept;
private String produceDate;
/**
* 登录权限
* 设备规格
*/
private String loginType;
private String devModule;
private String headImgUrl;
private String delFlag;
/**
* 账号类型
*/
private int type;
/**
* 休眠时间
*/
private String sleepTime;
private String updatePasswordTime;
/**
* 临时账号时间
*/
private String lsTime;
/**
* 登录时间
*/
private String loginTimes;
private String status;
private String newUser;
public interface Status {
int DISABLED = 0;
int VALID = 1;
int LOCKED = 2;
}
}

View File

@ -10,6 +10,10 @@ import com.bonus.aqgqj.utils.ServerResponse;
import java.util.List;
import java.util.Map;
/**
* 工器具个体管理
* @author hay
*/
public interface ToolsManageService {
/**
* 查询列表
@ -18,4 +22,16 @@ public interface ToolsManageService {
*/
List<ToolsManageDto> list(ToolsManageDto bean);
/**
* 详情列表
* @param data
* @return
*/
List<ToolsManageDto> getDetailsList(ToolsManageDto data);
/**
* 工器具列表
* @return
*/
List<ToolsManageDto> listTools();
}

View File

@ -5,6 +5,7 @@ import com.bonus.aqgqj.basis.dao.ToolsManageDao;
import com.bonus.aqgqj.basis.entity.dto.ToolsManageDto;
import com.bonus.aqgqj.basis.service.ToolsManageService;
import com.bonus.aqgqj.model.PasswordConfig;
import com.bonus.aqgqj.model.Role;
import com.bonus.aqgqj.model.SysUser;
import com.bonus.aqgqj.system.dao.UserDao;
import com.bonus.aqgqj.system.service.UserService;
@ -23,6 +24,11 @@ import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
/**
* @description 工器具个体管理
* @author hay
* @date 2024/7/20 16:10
*/
@Slf4j
@Service
public class ToolsManageServiceImpl implements ToolsManageService {
@ -32,11 +38,34 @@ public class ToolsManageServiceImpl implements ToolsManageService {
private ToolsManageDao toolsManageDao;
/**
* 查询用户列表
* 查询列表
* @param bean
* @return
*/
@Override
public List<ToolsManageDto> list(ToolsManageDto bean) {
return toolsManageDao.list(bean);
List<ToolsManageDto> list = toolsManageDao.list(bean);
for (ToolsManageDto dto : list){
String sampleTools = toolsManageDao.getSampleTools(dto.getId());
dto.setSampleTools(sampleTools);
}
return list;
}
/**
* 查询详情列表
* @param data
* @return
*/
@Override
public List<ToolsManageDto> getDetailsList(ToolsManageDto data) {
return toolsManageDao.getDetailsList(data);
}
@Override
public List<ToolsManageDto> listTools() {
List<ToolsManageDto> list = toolsManageDao.listTools();
return list;
}

View File

@ -3,44 +3,58 @@
<mapper namespace="com.bonus.aqgqj.basis.dao.ToolsManageDao">
<select id="list" resultType="com.bonus.aqgqj.basis.entity.dto.ToolsManageDto">
SELECT
t.id,
t.login_name AS loginName,
t.user_name AS username,
t.user_code AS userCode,
t.sex,
t.org_id as orgId,
CONCAT(so.org_name,'/',t.team_name) as orgName,
sr.role_name roleName,
t.phone AS phone,
t.team_id as teamId,
t.team_name as teamName,
CASE
t.user_type
WHEN '0' THEN
'内部用户'
WHEN '1' THEN
'外部用户' ELSE ''
END userType,
t.state AS state,
t.del_flag AS delFlag
FROM
sys_user t
LEFT JOIN sys_role sr ON sr.role_id = t.role_id
LEFT JOIN sys_org so ON so.org_id = t.org_id
where t.del_flag = 0
<if test="username != null and username != ''">
and t.user_name like concat('%', #{username}, '%')
SELECT ts.id,
tc.custom_name as customName,
ts.sample_user as sampleUser,
ts.sample_time as sampleTime,
su.user_name as collectSamplesUser,
tsd.create_time as collectSamplesTime,
tt.team_name as teamName
FROM tb_sample ts
LEFT JOIN tb_custom tc
on tc.id = ts.custom_id
LEFT JOIN tb_sample_device tsd on tsd.sample_id = ts.id
LEFT JOIN sys_user su on su.id = tsd.create_user
LEFT JOIN tb_team tt on tt.id = ts.team_id
WHERE ts.del_flag = '0'
<if test="collectSamplesUser != null and collectSamplesUser != ''">
AND su.user_name like concat('%', #{collectSamplesUser}, '%')
</if>
<if test="phone != null and phone != ''">
and t.phone like concat('%', #{phone}, '%')
<if test="sampleTools != null and sampleTools != ''">
and tsd.dev_type_name like concat('%',#{sampleTools}, '%')
</if>
<if test="orgId != null and orgId != ''">
and t.org_id = #{orgId}
GROUP BY ts.id
</select>
<select id="getSampleTools" resultType="java.lang.String">
SELECT GROUP_CONCAT(aa.dev_type_name SEPARATOR '、') AS sampleTools
FROM (SELECT DISTINCT tsd.dev_type_name
FROM tb_sample_device tsd
LEFT JOIN tb_sample ts ON ts.id = tsd.sample_id
WHERE tsd.sample_id = #{id}
AND tsd.del_falg = '0') aa
</select>
<select id="getDetailsList" resultType="com.bonus.aqgqj.basis.entity.dto.ToolsManageDto">
select
tsd.id,
tsd.dev_type_name as sampleTools,
tsd.dev_type_code as devTypeCode,
tsd.dev_module as devModule
from
tb_sample_device tsd
where tsd.del_falg = 0
and tsd.sample_id = #{id}
<if test="sampleTools != null and sampleTools != ''">
and tsd.dev_type_name like concat('%',#{sampleTools}, '%')
</if>
<if test="userType != null and userType != ''">
and t.user_type = #{userType}
</if>
order by t.del_flag ASC , t.state,t.create_time DESC
</select>
<select id="listTools" resultType="com.bonus.aqgqj.basis.entity.dto.ToolsManageDto">
select
id,
dict_name as name
from
sys_distinct
where
p_id = 92
and del_flag = 0
</select>
</mapper>

View File

@ -0,0 +1,280 @@
let form, layer, table, tableIns;
let pageNum = 1, limitSize = 10; // 默认第一页分页数量为10
let orgData,selectOrgId;
let idParam;
function setParams(params){
idParam = JSON.parse(params).id;
layui.use(['form', 'layer', 'table', 'laydate'], function () {
form = layui.form;
layer = layui.layer;
table = layui.table;
layui.form.render();
pages(1, 10, 1);
getToolsSelected();
})
}
function pages(pageNum, pageSize, typeNum) {
let params = getReqParams(pageNum, pageSize, typeNum);
let url = dataUrl + "/tools/getDetailsList"
ajaxRequest(url, "POST", params, true, function () {
}, function (result) {
console.log(result);
if (result.code === 200) {
if (result.data) {
initTable(result.data, result.limit, result.curr)
laypages(result.count, result.curr, result.limit)
}
} else if (result.code === 500) {
layer.alert(result.msg, {icon: 2})
}
}, function (xhr) {
error(xhr)
});
}
function getToolsSelected() {
let url = dataUrl + '/tools/all';
ajaxRequest(url, "POST", null, true, function () {
}, function (result) {
if (result.code === 200) {
setSelectValue(result.data, 'sampleTools');
// return result.data
} else {
layer.alert(result.msg, {icon: 2})
}
}, function (xhr) {
error(xhr)
});
}
function laypages(total, page, limit) {
layui.use(['laypage'], function () {
let laypage = layui.laypage;
laypage.render({
elem: 'voi-page',
count: total,
curr: page,
limit: limit,
limits: [10, 20, 50, 100, 200, 500],
layout: ['prev', 'page', 'next', 'skip', 'count', 'limit'],
groups: 5,
jump: function (obj, first) {
if (!first) {
pageNum = obj.curr, limitSize = obj.limit;
pages(obj.curr, obj.limit, null);
}
}
});
})
}
/*初始化表格*/
function initTable(dataList, limit, page) {
let loadingMsg = layer.msg("数据加载中,请稍候...", {icon: 16, scrollbar: false, time: 0,});
tableIns = table.render({
elem: "#table_data",
height: "full-130",
data: dataList,
limit: limit,
cols: [
[
//表头
{title: "序号", width: 80, unresize: true, align: "center",
templet: function (d) {
return (page - 1) * limit + d.LAY_INDEX;
}
},
{field: "sampleTools", title: "设备类型", unresize: true, align: "center"},
{field: "devTypeCode", title: "设备编号", unresize: true, align: "center"},
{field: "factoryName", title: "生产厂家", unresize: true, align: "center"},
{field: "produceDate", title: "生产日期", unresize: true, align: "center"},
{field: "devModule", title: "设备规格", unresize: true, align: "center"},
{
field: "view1", title: "检测报告", unresize: true, align: "center",
templet: function (d) {
return '<a href="#" style="color: blue;" onclick="handleClick1(\'' + d.id + '\')">查看</a>';
}
},
{
field: "view2", title: "合格证", unresize: true, align: "center", templet: function (d) {
return '<a href="#" style="color: blue;" onclick="handleClick2(\'' + d.id + '\')">查看</a>';
}
},
{
field: "view3", title: "设备二维码", unresize: true, align: "center", templet: function (d) {
return '<a href="#" style="color: blue;" onclick="handleClick3(\'' + d.id + '\')">查看</a>';
}
},
],
],
done: function (res, curr, count) {
layer.close(loadingMsg);
table.resize("table_data");
count || this.elem.next(".layui-table-view").find(".layui-table-header").css("display", "inline-block");
count || this.elem.next(".layui-table-view").find(".layui-table-box").css("overflow", "auto");
},
});
}
function handleClick1(view1) {
alert('Clicked on: ' + view1);
}
function handleClick2(view1) {
alert('Clicked on: ' + view1);
}
function handleClick3(view1) {
alert('Clicked on: ' + view1);
}
// 获取参数
function getReqParams(page, limit, type) {
var selectedValue =$('#sampleTools').val()
// 2. 查找对应的选项文本
var selectedText = $('#sampleTools option[value="' + selectedValue + '"]').text();
if (selectedText=='请选择'){
selectedText=''
}
let obj = {};
if (!type) {
obj = {
page: page + "",
limit: limit + "",
id: idParam,
sampleTools: selectedText,
collectSamplesUser:$('#collectSamplesUser').val()
};
} else {
obj = {
page: '1',
limit: '10',
id: idParam,
sampleTools: selectedText,
collectSamplesUser: ''
};
}
console.log(obj)
obj={
encryptedData:encryptCBC(JSON.stringify(obj))
}
return obj;
}
// 查询/重置
function query() {
let pattern = new RegExp("[%_<>]");
if (pattern.test($("#loginName").val())) {
$("#loginName").val('');
return layer.msg('用户名查询包含特殊字符,请重新输入', {
icon: 2,
time: 2000 //2秒关闭如果不配置默认是3秒
});
}
if (pattern.test($("#phone").val())) {
$("#phone").val('');
return layer.msg('手机号查询包含特殊字符,请重新输入', {
icon: 2,
time: 2000 //2秒关闭如果不配置默认是3秒
});
}
pageNum = 1;
pages(1, limitSize);
}
//重置
function reset() {
pages(1, limitSize, 1)
}
function reloadData() {
pages(pageNum, limitSize);
}
// 新增/修改平台用户
function addData(id) {
if (id) {
title = '详情';
}
let param = {
'id': id
}
openIframe2("addOrEditUser", title, "child/toolsFrom.html", '100%', '100%', param);
}
/*删除用户*/
function delData(id) {
layer.confirm("确定删除吗?", {
move: false
}, function () {
let loadingMsg = layer.msg('数据删除中,请稍候...', {icon: 16, scrollbar: false, time: 0});
let url = dataUrl + "/users/delById";
let params = {
'id': id
}
params={
encryptedData:encryptCBC(JSON.stringify(params))
}
ajaxRequest(url, "POST", params, true, function () {
}, function (result) {
layer.close(loadingMsg); // 关闭提示层
if (result.code === 200) {
parent.layer.msg(result.msg, {icon: 1})
query()
} else if (result.code === 500) {
layer.alert(result.msg, {icon: 2})
}
}, function (xhr) {
layer.close(loadingMsg); // 关闭提示层
error(xhr)
});
})
}
// 启用/停用/解除锁定
function editUserAccountStatus(id, status, type) {
let url = dataUrl + "/sys/user/editUserAccountStatus?token=" + token;
let params = {
'id': id,
'accountStatus': status,
'type': type
}
ajaxRequest(url, "POST", params, true, function () {
}, function (result) {
if (result.code === 200) {
if(type){
reloadData();
}
parent.layer.msg(result.msg, {icon: 1})
} else if (result.code === 500) {
layer.alert(result.msg, {icon: 2})
}
}, function (xhr) {
error(xhr)
});
}
// 管理员修改密码
function resetPwd(id) {
let param = {
'id': id,
'type': '1'
}
openIframe2("addOrEditUnifyUser", '修改密码', "password.html", '770px', '400px', param);
}
/*下拉选表单赋值*/
function setSelectValue(list, selectName) {
console.log("list",list)
let html = '<option value="" selected>请选择</option>';
$.each(list, function (index, item) {
html += '<option value="' + item.id + '">' + item.name + '</option>';
})
$('#' + selectName).empty().append(html);
layui.form.render();
}

View File

@ -1,46 +1,36 @@
let form, layer, dtree, table, tableIns;
let form, layer, table, tableIns;
let pageNum = 1, limitSize = 10; // 默认第一页分页数量为10
let orgData,selectOrgId;
layui.config({
base: "../../js/layui-v2.6.8/dtree/", //此处路径请自行处理, 可以使用绝对路径
}).extend({
dtree: 'dtree'
}).use(['form', 'layer', 'table','dtree', 'laydate'], function () {
layui.use(['form', 'layer', 'table', 'laydate'], function () {
form = layui.form;
layer = layui.layer;
table = layui.table;
dtree = layui.dtree;
layui.form.render();
orgData = getOrgTree();
pages(1, 10, 1);
form.on('switch(is-state)', function (obj) {
console.log(obj);
let url = dataUrl + "/users/updateEnableState";
let params = {
'id': this.value,
'state': obj.elem.checked ? 1 : 0
}
params={
encryptedData:encryptCBC(JSON.stringify(params))
}
ajaxRequest(url, "POST", params, true, function () {}, function (result) {
console.log(result)
reloadData();
if (result.status === 200) {
parent.layer.msg(result.data, {icon: 1})
} else if (result.status === 204) {
parent.layer.alert(result.msg, {icon: 2})
}
}, function (xhr) {
error(xhr)
});
});
getToolsSelected();
})
function getToolsSelected() {
let url = dataUrl + '/tools/all';
ajaxRequest(url, "POST", null, true, function () {
}, function (result) {
if (result.code === 200) {
setSelectValue(result.data, 'sampleTools');
// return result.data
} else {
layer.alert(result.msg, {icon: 2})
}
}, function (xhr) {
error(xhr)
});
}
function pages(pageNum, pageSize, typeNum) {
let params = getReqParams(pageNum, pageSize, typeNum);
let url = dataUrl + "/users/getList"
let url = dataUrl + "/tools/getList"
ajaxRequest(url, "POST", params, true, function () {
}, function (result) {
console.log(result);
@ -95,21 +85,21 @@ function initTable(dataList, limit, page) {
return (page - 1) * limit + d.LAY_INDEX;
}
},
{field: "loginName", title: "送样单位", unresize: true, align: "center"},
{field: "username", title: "送样人", unresize: true, align: "center"},
{field: "userCode", title: "送样时间", unresize: true, align: "center"},
{field: "orgName", title: "送样设备", unresize: true, align: "center"},
{field: "roleName", title: "收样人", unresize: true, align: "center"},
{field: "phone", title: "收样时间", unresize: true, align: "center"},
{field: "userType", title: "试验班组", unresize: true, align: "center"},
{title: "操作", unresize: true, width: 300, align: "center",
{field: "customName", title: "送样单位", unresize: true, align: "center"},
{field: "sampleUser", title: "送样人", unresize: true, align: "center"},
{field: "sampleTime", title: "送样时间", unresize: true, align: "center"},
{field: "sampleTools", title: "送样设备", unresize: true, align: "center"},
{field: "collectSamplesUser", title: "收样人", unresize: true, align: "center"},
{field: "collectSamplesTime", title: "收样时间", unresize: true, align: "center"},
{field: "teamName", title: "试验班组", unresize: true, align: "center"},
{title: "操作", unresize: true, width: 85, align: "center",
templet: function (d) {
let html = '';
// let updaetpwd="<a class=\"layui-icon layui-icon-password\" style='cursor:pointer;' title='修改密码' onclick=\"resetPwd('" + d.id + "')\"></a>";
let del="<a class=\"layui-icon layui-icon-delete\" style='cursor:pointer;' title='删除' onclick=\"delData('" + d.id + "')\"></a>"
let edit="<a class=\"layui-icon layui-icon-edit\" style='cursor:pointer;' title='修改' onclick=\"addData('" + d.id + "')\"></a>";
html=edit+del;
// let del="<a class=\"layui-icon layui-icon-delete\" style='cursor:pointer;' title='删除' onclick=\"delData('" + d.id + "')\"></a>"
let view="<a class=\"layui-icon layui-icon-form\" style='cursor:pointer;' title='查看' onclick=\"addData('" + d.id + "')\"></a>";
html=view;
if(d.delFlag==1){
return '';
}
@ -130,24 +120,25 @@ function initTable(dataList, limit, page) {
// 获取参数
function getReqParams(page, limit, type) {
var selectedValue =$('#sampleTools').val()
// 2. 查找对应的选项文本
var selectedText = $('#sampleTools option[value="' + selectedValue + '"]').text();
if (selectedText=='请选择'){
selectedText=''
}
let obj = {};
if (!type) {
obj = {
page: page + "",
limit: limit + "",
userName: $('#userName').val(),
phone: $('#phone').val(),
orgId: $('#orgId').val(),
userType: $('#userType').val(),
sampleTools: selectedText,
collectSamplesUser:$('#collectSamplesUser').val()
};
} else {
obj = {
page: '1',
limit: '10',
userName: '',
phone:'',
orgId:'',
userType: '',
collectSamplesUser: ''
};
}
console.log(obj)
@ -191,43 +182,13 @@ function reloadData() {
// 新增/修改平台用户
function addData(id) {
let title = '新增用户'
if (id) {
title = '修改用户';
title = '工器具个体管理/详情';
}
let param = {
'id': id
}
openIframe2("addOrEditUser", title, "child/userForm.html", '1000px', '625px', param);
}
/*删除用户*/
function delData(id) {
layer.confirm("确定删除吗?", {
move: false
}, function () {
let loadingMsg = layer.msg('数据删除中,请稍候...', {icon: 16, scrollbar: false, time: 0});
let url = dataUrl + "/users/delById";
let params = {
'id': id
}
params={
encryptedData:encryptCBC(JSON.stringify(params))
}
ajaxRequest(url, "POST", params, true, function () {
}, function (result) {
layer.close(loadingMsg); // 关闭提示层
if (result.code === 200) {
parent.layer.msg(result.msg, {icon: 1})
query()
} else if (result.code === 500) {
layer.alert(result.msg, {icon: 2})
}
}, function (xhr) {
layer.close(loadingMsg); // 关闭提示层
error(xhr)
});
})
openIframe2("addOrEditUser", title, "child/toolsForm.html", '100%', '100%', param);
}
// 启用/停用/解除锁定
@ -262,47 +223,10 @@ function resetPwd(id) {
openIframe2("addOrEditUnifyUser", '修改密码', "password.html", '770px', '400px', param);
}
function getOrgTree() {
let data = [];
let url = dataUrl + '/users/getOrg';
ajaxRequest(url, "POST", null, true, function () {
}, function (result) {
if (result.code === 200) {
console.log(result,"getOrgTree")
data = result.data;
setOrgTree(data)
} else {
layer.alert(result.msg, {icon: 2})
}
}, function (xhr) {
error(xhr)
});
return data;
}
function setOrgTree(data){
console.log("data",data)
orgTree = dtree.renderSelect({
elem: "#orgId",
data: data,
dataFormat: "list",
skin: "laySimple",
line: true, // 显示树线
checkbar: false, //开启复选框
done: function (data, url, first) {
console.log($('#orgId').val())
if (first) {
var params = dtree.dataInit("orgId", $('#orgId').val());
var selectParam = dtree.selectVal("orgId");
console.log(params)
}
}
});
}
/*下拉选表单赋值*/
function setSelectValue(list, selectName) {
let html = '<option value="" selected>单位部门</option>';
console.log("list",list)
let html = '<option value="" selected>请选择</option>';
$.each(list, function (index, item) {
html += '<option value="' + item.id + '">' + item.name + '</option>';
})

View File

@ -24,10 +24,9 @@
</div>
</div>
<div class="layui-form-item" style="margin-top: 2%;">
<label class="layui-form-label"><i style="padding: 0 10px;">*</i>角色编码</label>
<label class="layui-form-label">角色编码</label>
<div class="layui-input-inline">
<input class="layui-input" placeholder="角色编码" type="text" name="roleCode" id="roleCode" maxlength="25"
lay-verify="required">
<input class="layui-input" placeholder="角色编码" type="text" name="roleCode" id="roleCode" maxlength="25">
</div>
</div>
<div class="layui-form-item" style="margin-top: 2%;">

View File

@ -0,0 +1,37 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Dynamic Table</title>
<style>
table, th, td {
border: 1px solid black;
border-collapse: collapse;
}
th, td {
padding: 10px;
text-align: left;
}
</style>
</head>
<body>
<button onclick="fillTable()">Fill Table</button>
<table id="dynamicTable">
<tr>
<th>序号</th>
<th>名称</th>
<th>规格型号</th>
<th>唯一标识号</th>
<th>检验日期</th>
<th>下次检验日期</th>
<th>试验人员</th>
<th>送检单位</th>
</tr>
<!-- 动态行将在这里插入 -->
</table>
<script src="script.js"></script>
</body>
</html>

View File

@ -0,0 +1,52 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="../../../js/layui-v2.6.8/css/layui.css" media="all">
<link rel="stylesheet" href="../../../js/layui-v2.6.8/dtree/dtree.css">
<link rel="stylesheet" href="../../../js/layui-v2.6.8/dtree/font/dtreefont.css">
<link rel="stylesheet" href="../../../css/table-common2.css">
<script src="../../../js/libs/jquery-2.1.1.min.js" charset="UTF-8" type="text/javascript"></script>
<script src="../../../js/layui-v2.6.8/layui.js" charset="UTF-8" type="text/javascript"></script>
<script src="../../../js/publicJs.js"></script>
<script src="../../../js/commonUtils.js"></script>
<script src="../../../js/openIframe.js"></script>
<script src="../../../js/my/aes.js"></script>
<script src="../../../js/ajaxRequest.js"></script>
<title>详情</title>
</head>
<body>
<div id="content">
<div class="basic-search-box layout">
<form class="layui-form basic-form" onsubmit="return false;">
<div class="layui-form-item">
<div class="layui-inline" style="padding: 0 0 0 10px;">
<div class="layui-input-inline">
<select id="sampleTools" name="sampleTools" class="form-control input-sm">
</select>
</div>
</div>
<!-- <div class="layui-inline" style="padding: 0 0 0 10px;">-->
<!-- <div class="layui-input-inline">-->
<!-- <input type="text" id="collectSamplesUser" maxlength="30" class="layui-input" autocomplete="off" placeholder="请输入收样人">-->
<!-- </div>-->
<!-- </div>-->
<div class="layui-inline btns">
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm btn-1" onclick="query(1)">查询
</button>
</div>
</div>
</form>
</div>
<div class="table-box" table-responsive style="z-index: 1;">
<table id="table_data" class="table" lay-filter="table_data"></table>
<div id="voi-page" class="layout"></div>
</div>
</div>
</body>
<script src="../../../js/tools/child/toolsForm.js" charset="UTF-8" type="text/javascript"></script>
</html>

View File

@ -9,6 +9,7 @@
<script src="../../js/libs/jquery-2.1.1.min.js" charset="UTF-8" type="text/javascript"></script>
<script src="../../js/layui-v2.6.8/layui.js" charset="UTF-8" type="text/javascript"></script>
<script src="../../js/publicJs.js"></script>
<script src="../../js/dict.js"></script>
<script src="../../js/commonUtils.js"></script>
<script src="../../js/openIframe.js"></script>
<script src="../../js/my/aes.js"></script>
@ -23,14 +24,14 @@
<div class="layui-inline" style="padding: 0 0 0 10px;">
<div class="layui-input-inline">
<select id="devTypeId" name="userType" class="form-control input-sm">
<select id="sampleTools" name="sampleTools" class="form-control input-sm">
</select>
</div>
</div>
<div class="layui-inline" style="padding: 0 0 0 10px;">
<div class="layui-input-inline">
<input type="text" id="userName" maxlength="30" class="layui-input" autocomplete="off" placeholder="请输入用户名">
<input type="text" id="collectSamplesUser" maxlength="30" class="layui-input" autocomplete="off" placeholder="请输入收样人">
</div>
</div>
@ -38,12 +39,12 @@
<div class="layui-inline btns">
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm btn-1" onclick="query(1)">查询
</button>
<button type="button" class="layui-btn layui-btn-primary layui-btn-sm btn-2"
onclick="addData(null)">
<div class="layout" style="justify-content: space-around;"><img
src="../../img/form/add_icon3.png">
<p>新增</p></div>
</button>
<!-- <button type="button" class="layui-btn layui-btn-primary layui-btn-sm btn-2"-->
<!-- onclick="addData(null)">-->
<!-- <div class="layout" style="justify-content: space-around;"><img-->
<!-- src="../../img/form/add_icon3.png">-->
<!-- <p>新增</p></div>-->
<!-- </button>-->
</div>
</div>
</form>
@ -60,11 +61,5 @@
}
</style>
<script type="text/html" id="is-state">
<input type="checkbox" name="state" value="{{d.id}}" lay-skin="switch" lay-text="开|关"
lay-filter="is-state"
{{ d.state== 1 ? 'checked' : '' }}>
</script>
<script src="../../js/tools/toolsMge.js" charset="UTF-8" type="text/javascript"></script>
</html>

View File

@ -107,31 +107,6 @@
</div>
</div>
<!-- <div class="layui-form-item">-->
<!-- <label class="layui-form-label"><i style="padding: 0 10px;">*</i>登录权限</label>-->
<!-- <div class="layui-input-inline" id="cbGuDing" >-->
<!-- <input type="checkbox" name="loginType" value="1" title="后台" lay-skin="primary" checked>-->
<!-- <input type="checkbox" name="loginType" value="2" title="大屏" lay-skin="primary">-->
<!-- <input type="checkbox" name="loginType" value="3" title="app" lay-skin="primary">-->
<!-- <input type="hidden" id="loginType" />-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="layui-form-item">-->
<!-- <label class="layui-form-label">邮箱</label>-->
<!-- <div class="layui-input-inline">-->
<!-- <input class="layui-input" autocomplete="off"-->
<!-- maxlength="50" id="email" name="email">-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="layui-form-item">-->
<!-- <label class="layui-form-label">部门</label>-->
<!-- <div class="layui-input-inline">-->
<!-- <input class="layui-input" type="text" id="dept" name="dept" autocomplete="off"-->
<!-- maxlength="50">-->
<!-- </div>-->
<!-- </div>-->
<button type="submit" id="formSubmit" class="layui-btn" lay-submit="" lay-filter="formData"
style="display: none;"></button>
</form>