懒羊羊
2023-09-19 3d2401cf8ea9ae3d830c0568e7751e2e8cc8db22
工位设备客户基础表
已添加45个文件
4154 ■■■■■ 文件已修改
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/controller/CustomInfoController.java 143 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/entity/CustomInfo.java 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/mapper/CustomInfoMapper.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/mapper/mapping/CustomInfoMapper.xml 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/model/params/CustomInfoParam.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/model/result/CustomInfoResult.java 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/service/CustomInfoService.java 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/service/impl/CustomInfoServiceImpl.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/controller/EquipmentInfoController.java 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/entity/EquipmentInfo.java 300 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/mapper/EquipmentInfoMapper.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/mapper/mapping/EquipmentInfoMapper.xml 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/model/params/EquipmentInfoParam.java 118 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/model/result/EquipmentInfoResult.java 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/service/EquipmentInfoService.java 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/service/impl/EquipmentInfoServiceImpl.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/controller/LocationInfoController.java 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/entity/LocationInfo.java 225 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/mapper/LocationInfoMapper.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/mapper/mapping/LocationInfoMapper.xml 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/model/params/LocationInfoParam.java 93 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/model/result/LocationInfoResult.java 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/service/LocationInfoService.java 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/service/impl/LocationInfoServiceImpl.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/sqls/customInfo_menus.sql 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/sqls/equipmentInfo_menus.sql 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/sqls/locationInfo_menus.sql 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/assets/modular/bs/customInfo/customInfo.js 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/assets/modular/bs/customInfo/customInfo_add.js 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/assets/modular/bs/customInfo/customInfo_edit.js 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/assets/modular/bs/equipmentInfo/equipmentInfo.js 141 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/assets/modular/bs/equipmentInfo/equipmentInfo_add.js 103 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/assets/modular/bs/equipmentInfo/equipmentInfo_edit.js 130 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/assets/modular/bs/locationInfo/locationInfo.js 156 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/assets/modular/bs/locationInfo/locationInfo_add.js 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/assets/modular/bs/locationInfo/locationInfo_edit.js 111 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/pages/modular/bs/customInfo/customInfo.html 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/pages/modular/bs/customInfo/customInfo_add.html 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/pages/modular/bs/customInfo/customInfo_edit.html 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/pages/modular/bs/equipmentInfo/equipmentInfo.html 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/pages/modular/bs/equipmentInfo/equipmentInfo_add.html 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/pages/modular/bs/equipmentInfo/equipmentInfo_edit.html 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/pages/modular/bs/locationInfo/locationInfo.html 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/pages/modular/bs/locationInfo/locationInfo_add.html 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/webapp/pages/modular/bs/locationInfo/locationInfo_edit.html 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/controller/CustomInfoController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,143 @@
package cn.stylefeng.guns.modular.zsx.bs.custom.controller;
import cn.hutool.log.Log;
import cn.stylefeng.guns.base.auth.context.LoginContextHolder;
import cn.stylefeng.guns.base.pojo.page.LayuiPageInfo;
import cn.stylefeng.guns.modular.zsx.bs.custom.entity.CustomInfo;
import cn.stylefeng.guns.modular.zsx.bs.custom.model.params.CustomInfoParam;
import cn.stylefeng.guns.modular.zsx.bs.custom.service.CustomInfoService;
import cn.stylefeng.roses.core.base.controller.BaseController;
import cn.stylefeng.roses.kernel.model.response.ResponseData;
import cn.stylefeng.roses.core.mutidatasource.annotion.DataSource;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.Date;
/**
 * å®¢æˆ·ä¿¡æ¯æŽ§åˆ¶å™¨
 *
 * @author ruimin
 * @Date 2023-09-18 15:38:50
 */
@Controller
@RequestMapping("/customInfo")
public class CustomInfoController extends BaseController {
    private String PREFIX = "/modular/bs/customInfo";
    @Autowired
    private CustomInfoService customInfoService;
    /**
     * è·³è½¬åˆ°ä¸»é¡µé¢
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @RequestMapping("")
    public String index() {
        return PREFIX + "/customInfo.html";
    }
    /**
     * æ–°å¢žé¡µé¢
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @RequestMapping("/add")
    public String add() {
        return PREFIX + "/customInfo_add.html";
    }
    /**
     * ç¼–辑页面
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @RequestMapping("/edit")
    public String edit() {
        return PREFIX + "/customInfo_edit.html";
    }
    /**
     * æ–°å¢žæŽ¥å£
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @RequestMapping("/addItem")
    @ResponseBody
    @DataSource(name = "self")
    public ResponseData addItem(CustomInfoParam customInfoParam) {
        customInfoParam.setCreateTime(new Date());
        customInfoParam.setCreateUser(LoginContextHolder.getContext().getUser().getName());
        this.customInfoService.add(customInfoParam);
        return ResponseData.success();
    }
    /**
     * ç¼–辑接口
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @RequestMapping("/editItem")
    @ResponseBody
    @DataSource(name = "self")
    public ResponseData editItem(CustomInfoParam customInfoParam) {
        customInfoParam.setUpdateTime(new Date());
        customInfoParam.setUpdateUser(LoginContextHolder.getContext().getUser().getName());
        this.customInfoService.update(customInfoParam);
        return ResponseData.success();
    }
    /**
     * åˆ é™¤æŽ¥å£
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @RequestMapping("/delete")
    @ResponseBody
    @DataSource(name = "self")
    public ResponseData delete(CustomInfoParam customInfoParam) {
        this.customInfoService.delete(customInfoParam);
        return ResponseData.success();
    }
    /**
     * æŸ¥çœ‹è¯¦æƒ…接口
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @RequestMapping("/detail")
    @ResponseBody
    @DataSource(name = "self")
    public ResponseData detail(CustomInfoParam customInfoParam) {
        CustomInfo detail = this.customInfoService.getById(customInfoParam.getId());
        return ResponseData.success(detail);
    }
    /**
     * æŸ¥è¯¢åˆ—表
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @ResponseBody
    @RequestMapping("/list")
    @DataSource(name = "self")
    public LayuiPageInfo list(CustomInfoParam customInfoParam) {
        return this.customInfoService.findPageBySpec(customInfoParam);
    }
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/entity/CustomInfo.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,180 @@
package cn.stylefeng.guns.modular.zsx.bs.custom.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
/**
 * <p>
 * å®¢æˆ·ä¿¡æ¯
 * </p>
 *
 * @author ruimin
 * @since 2023-09-18
 */
@TableName("bs_custom_info")
public class CustomInfo implements Serializable {
    private static final long serialVersionUID=1L;
    /**
     * id
     */
      @TableId(value = "id", type = IdType.ID_WORKER)
    private Long id;
    /**
     * å®¢æˆ·ç¼–号
     */
    @TableField("customer_code")
    private String customerCode;
    /**
     * å®¢æˆ·åç§°
     */
    @TableField("customer_name")
    private String customerName;
    /**
     * å®¢æˆ·ç±»åž‹
     */
    @TableField("customer_type")
    private String customerType;
    /**
     * è”系方式
     */
    @TableField("contact")
    private String contact;
    /**
     * å¤‡æ³¨
     */
    @TableField("remarks")
    private String remarks;
    /**
     * åˆ›å»ºæ—¶é—´
     */
      @TableField(value = "create_time", fill = FieldFill.INSERT)
    private Date createTime;
    /**
     * åˆ›å»ºç”¨æˆ·
     */
      @TableField(value = "create_user", fill = FieldFill.INSERT)
    private String createUser;
    /**
     * ä¿®æ”¹æ—¶é—´
     */
      @TableField(value = "update_time", fill = FieldFill.UPDATE)
    private Date updateTime;
    /**
     * ä¿®æ”¹ç”¨æˆ·
     */
      @TableField(value = "update_user", fill = FieldFill.UPDATE)
    private String updateUser;
    public Long getId() {
        return id;
    }
    public void setId(Long id) {
        this.id = id;
    }
    public String getCustomerCode() {
        return customerCode;
    }
    public void setCustomerCode(String customerCode) {
        this.customerCode = customerCode;
    }
    public String getCustomerName() {
        return customerName;
    }
    public void setCustomerName(String customerName) {
        this.customerName = customerName;
    }
    public String getCustomerType() {
        return customerType;
    }
    public void setCustomerType(String customerType) {
        this.customerType = customerType;
    }
    public String getContact() {
        return contact;
    }
    public void setContact(String contact) {
        this.contact = contact;
    }
    public String getRemarks() {
        return remarks;
    }
    public void setRemarks(String remarks) {
        this.remarks = remarks;
    }
    public Date getCreateTime() {
        return createTime;
    }
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    public String getCreateUser() {
        return createUser;
    }
    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }
    public Date getUpdateTime() {
        return updateTime;
    }
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
    public String getUpdateUser() {
        return updateUser;
    }
    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser;
    }
    @Override
    public String toString() {
        return "CustomInfo{" +
        "id=" + id +
        ", customerCode=" + customerCode +
        ", customerName=" + customerName +
        ", customerType=" + customerType +
        ", contact=" + contact +
        ", remarks=" + remarks +
        ", createTime=" + createTime +
        ", createUser=" + createUser +
        ", updateTime=" + updateTime +
        ", updateUser=" + updateUser +
        "}";
    }
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/mapper/CustomInfoMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,56 @@
package cn.stylefeng.guns.modular.zsx.bs.custom.mapper;
import cn.stylefeng.guns.modular.zsx.bs.custom.entity.CustomInfo;
import cn.stylefeng.guns.modular.zsx.bs.custom.model.params.CustomInfoParam;
import cn.stylefeng.guns.modular.zsx.bs.custom.model.result.CustomInfoResult;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * å®¢æˆ·ä¿¡æ¯ Mapper æŽ¥å£
 * </p>
 *
 * @author ruimin
 * @since 2023-09-18
 */
public interface CustomInfoMapper extends BaseMapper<CustomInfo> {
    /**
     * èŽ·å–列表
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    List<CustomInfoResult> customList(@Param("paramCondition") CustomInfoParam paramCondition);
    /**
     * èŽ·å–map列表
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    List<Map<String, Object>> customMapList(@Param("paramCondition") CustomInfoParam paramCondition);
    /**
     * èŽ·å–分页实体列表
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    Page<CustomInfoResult> customPageList(@Param("page") Page page, @Param("paramCondition") CustomInfoParam paramCondition);
    /**
     * èŽ·å–分页map列表
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    Page<Map<String, Object>> customPageMapList(@Param("page") Page page, @Param("paramCondition") CustomInfoParam paramCondition);
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/mapper/mapping/CustomInfoMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,85 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.stylefeng.guns.modular.zsx.bs.custom.mapper.CustomInfoMapper">
    <!-- é€šç”¨æŸ¥è¯¢æ˜ å°„结果 -->
    <resultMap id="BaseResultMap" type="cn.stylefeng.guns.modular.zsx.bs.custom.entity.CustomInfo">
        <id column="id" property="id" />
        <result column="customer_code" property="customerCode" />
        <result column="customer_name" property="customerName" />
        <result column="customer_type" property="customerType" />
        <result column="contact" property="contact" />
        <result column="remarks" property="remarks" />
        <result column="create_time" property="createTime" />
        <result column="create_user" property="createUser" />
        <result column="update_time" property="updateTime" />
        <result column="update_user" property="updateUser" />
    </resultMap>
    <!-- é€šç”¨æŸ¥è¯¢ç»“果列 -->
    <sql id="Base_Column_List">
        id AS "id", customer_code AS "customerCode", customer_name AS "customerName", customer_type AS "customerType", contact AS "contact", remarks AS "remarks", create_time AS "createTime", create_user AS "createUser", update_time AS "updateTime", update_user AS "updateUser"
    </sql>
    <select id="customList" resultType="cn.stylefeng.guns.modular.zsx.bs.custom.model.result.CustomInfoResult" parameterType="cn.stylefeng.guns.modular.zsx.bs.custom.model.params.CustomInfoParam">
        select
        <include refid="Base_Column_List"/>
        from bs_custom_info where 1 = 1
        <if test="paramCondition.customerCode != null and paramCondition.customerCode != ''">
            and customer_code like CONCAT('%',#{paramCondition.customerCode},'%')
        </if>
        <if test="paramCondition.customerName != null and paramCondition.customerName != ''">
            and customer_name like CONCAT('%',#{paramCondition.customerName},'%')
        </if>
        <if test="paramCondition.customerType != null and paramCondition.customerType != ''">
            and customer_type like CONCAT('%',#{paramCondition.customerType},'%')
        </if>
    </select>
    <select id="customMapList" resultType="map" parameterType="cn.stylefeng.guns.modular.zsx.bs.custom.model.params.CustomInfoParam">
        select
        <include refid="Base_Column_List"/>
        from bs_custom_info where 1 = 1
        <if test="paramCondition.customerCode != null and paramCondition.customerCode != ''">
            and customer_code like CONCAT('%',#{paramCondition.customerCode},'%')
        </if>
        <if test="paramCondition.customerName != null and paramCondition.customerName != ''">
            and customer_name like CONCAT('%',#{paramCondition.customerName},'%')
        </if>
        <if test="paramCondition.customerType != null and paramCondition.customerType != ''">
            and customer_type like CONCAT('%',#{paramCondition.customerType},'%')
        </if>
    </select>
    <select id="customPageList" resultType="cn.stylefeng.guns.modular.zsx.bs.custom.model.result.CustomInfoResult" parameterType="cn.stylefeng.guns.modular.zsx.bs.custom.model.params.CustomInfoParam">
        select
        <include refid="Base_Column_List"/>
        from bs_custom_info where 1 = 1
        <if test="paramCondition.customerCode != null and paramCondition.customerCode != ''">
            and customer_code like CONCAT('%',#{paramCondition.customerCode},'%')
        </if>
        <if test="paramCondition.customerName != null and paramCondition.customerName != ''">
            and customer_name like CONCAT('%',#{paramCondition.customerName},'%')
        </if>
        <if test="paramCondition.customerType != null and paramCondition.customerType != ''">
            and customer_type like CONCAT('%',#{paramCondition.customerType},'%')
        </if>
    </select>
    <select id="customPageMapList" resultType="map" parameterType="cn.stylefeng.guns.modular.zsx.bs.custom.model.params.CustomInfoParam">
        select
        <include refid="Base_Column_List"/>
        from bs_custom_info where 1 = 1
        <if test="paramCondition.customerCode != null and paramCondition.customerCode != ''">
            and customer_code like CONCAT('%',#{paramCondition.customerCode},'%')
        </if>
        <if test="paramCondition.customerName != null and paramCondition.customerName != ''">
            and customer_name like CONCAT('%',#{paramCondition.customerName},'%')
        </if>
        <if test="paramCondition.customerType != null and paramCondition.customerType != ''">
            and customer_type like CONCAT('%',#{paramCondition.customerType},'%')
        </if>
    </select>
</mapper>
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/model/params/CustomInfoParam.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,78 @@
package cn.stylefeng.guns.modular.zsx.bs.custom.model.params;
import lombok.Data;
import cn.stylefeng.roses.kernel.model.validator.BaseValidatingParam;
import java.util.Date;
import java.io.Serializable;
import java.math.BigDecimal;
/**
 * <p>
 * å®¢æˆ·ä¿¡æ¯
 * </p>
 *
 * @author ruimin
 * @since 2023-09-18
 */
@Data
public class CustomInfoParam implements Serializable, BaseValidatingParam {
    private static final long serialVersionUID = 1L;
    /**
     * id
     */
    private Long id;
    /**
     * å®¢æˆ·ç¼–号
     */
    private String customerCode;
    /**
     * å®¢æˆ·åç§°
     */
    private String customerName;
    /**
     * å®¢æˆ·ç±»åž‹
     */
    private String customerType;
    /**
     * è”系方式
     */
    private String contact;
    /**
     * å¤‡æ³¨
     */
    private String remarks;
    /**
     * åˆ›å»ºæ—¶é—´
     */
    private Date createTime;
    /**
     * åˆ›å»ºç”¨æˆ·
     */
    private String createUser;
    /**
     * ä¿®æ”¹æ—¶é—´
     */
    private Date updateTime;
    /**
     * ä¿®æ”¹ç”¨æˆ·
     */
    private String updateUser;
    @Override
    public String checkParam() {
        return null;
    }
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/model/result/CustomInfoResult.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,72 @@
package cn.stylefeng.guns.modular.zsx.bs.custom.model.result;
import lombok.Data;
import java.util.Date;
import java.io.Serializable;
import java.math.BigDecimal;
/**
 * <p>
 * å®¢æˆ·ä¿¡æ¯
 * </p>
 *
 * @author ruimin
 * @since 2023-09-18
 */
@Data
public class CustomInfoResult implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * id
     */
    private Long id;
    /**
     * å®¢æˆ·ç¼–号
     */
    private String customerCode;
    /**
     * å®¢æˆ·åç§°
     */
    private String customerName;
    /**
     * å®¢æˆ·ç±»åž‹
     */
    private String customerType;
    /**
     * è”系方式
     */
    private String contact;
    /**
     * å¤‡æ³¨
     */
    private String remarks;
    /**
     * åˆ›å»ºæ—¶é—´
     */
    private Date createTime;
    /**
     * åˆ›å»ºç”¨æˆ·
     */
    private String createUser;
    /**
     * ä¿®æ”¹æ—¶é—´
     */
    private Date updateTime;
    /**
     * ä¿®æ”¹ç”¨æˆ·
     */
    private String updateUser;
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/service/CustomInfoService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,69 @@
package cn.stylefeng.guns.modular.zsx.bs.custom.service;
import cn.stylefeng.guns.base.pojo.page.LayuiPageInfo;
import cn.stylefeng.guns.modular.zsx.bs.custom.entity.CustomInfo;
import cn.stylefeng.guns.modular.zsx.bs.custom.model.params.CustomInfoParam;
import cn.stylefeng.guns.modular.zsx.bs.custom.model.result.CustomInfoResult;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
 * <p>
 * å®¢æˆ·ä¿¡æ¯ æœåŠ¡ç±»
 * </p>
 *
 * @author ruimin
 * @since 2023-09-18
 */
public interface CustomInfoService extends IService<CustomInfo> {
    /**
     * æ–°å¢ž
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    void add(CustomInfoParam param);
    /**
     * åˆ é™¤
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    void delete(CustomInfoParam param);
    /**
     * æ›´æ–°
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    void update(CustomInfoParam param);
    /**
     * æŸ¥è¯¢å•æ¡æ•°æ®ï¼ŒSpecification模式
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    CustomInfoResult findBySpec(CustomInfoParam param);
    /**
     * æŸ¥è¯¢åˆ—表,Specification模式
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    List<CustomInfoResult> findListBySpec(CustomInfoParam param);
    /**
     * æŸ¥è¯¢åˆ†é¡µæ•°æ®ï¼ŒSpecification模式
     *
     * @author ruimin
     * @Date 2023-09-18
     */
     LayuiPageInfo findPageBySpec(CustomInfoParam param);
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/custom/service/impl/CustomInfoServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,84 @@
package cn.stylefeng.guns.modular.zsx.bs.custom.service.impl;
import cn.stylefeng.guns.base.pojo.page.LayuiPageFactory;
import cn.stylefeng.guns.base.pojo.page.LayuiPageInfo;
import cn.stylefeng.guns.modular.zsx.bs.custom.entity.CustomInfo;
import cn.stylefeng.guns.modular.zsx.bs.custom.mapper.CustomInfoMapper;
import cn.stylefeng.guns.modular.zsx.bs.custom.model.params.CustomInfoParam;
import cn.stylefeng.guns.modular.zsx.bs.custom.model.result.CustomInfoResult;
import  cn.stylefeng.guns.modular.zsx.bs.custom.service.CustomInfoService;
import cn.stylefeng.roses.core.util.ToolUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import java.io.Serializable;
import java.util.List;
/**
 * <p>
 * å®¢æˆ·ä¿¡æ¯ æœåŠ¡å®žçŽ°ç±»
 * </p>
 *
 * @author ruimin
 * @since 2023-09-18
 */
@Service
public class CustomInfoServiceImpl extends ServiceImpl<CustomInfoMapper, CustomInfo> implements CustomInfoService {
    @Override
    public void add(CustomInfoParam param){
        CustomInfo entity = getEntity(param);
        this.save(entity);
    }
    @Override
    public void delete(CustomInfoParam param){
        this.removeById(getKey(param));
    }
    @Override
    public void update(CustomInfoParam param){
        CustomInfo oldEntity = getOldEntity(param);
        CustomInfo newEntity = getEntity(param);
        ToolUtil.copyProperties(newEntity, oldEntity);
        this.updateById(newEntity);
    }
    @Override
    public CustomInfoResult findBySpec(CustomInfoParam param){
        return null;
    }
    @Override
    public List<CustomInfoResult> findListBySpec(CustomInfoParam param){
        return null;
    }
    @Override
    public LayuiPageInfo findPageBySpec(CustomInfoParam param){
        Page pageContext = getPageContext();
        IPage page = this.baseMapper.customPageList(pageContext, param);
        return LayuiPageFactory.createPageInfo(page);
    }
    private Serializable getKey(CustomInfoParam param){
        return param.getId();
    }
    private Page getPageContext() {
        return LayuiPageFactory.defaultPage();
    }
    private CustomInfo getOldEntity(CustomInfoParam param) {
        return this.getById(getKey(param));
    }
    private CustomInfo getEntity(CustomInfoParam param) {
        CustomInfo entity = new CustomInfo();
        ToolUtil.copyProperties(param, entity);
        return entity;
    }
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/controller/EquipmentInfoController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,136 @@
package cn.stylefeng.guns.modular.zsx.bs.equipment.controller;
import cn.stylefeng.guns.base.pojo.page.LayuiPageInfo;
import cn.stylefeng.guns.modular.zsx.bs.equipment.entity.EquipmentInfo;
import cn.stylefeng.guns.modular.zsx.bs.equipment.model.params.EquipmentInfoParam;
import cn.stylefeng.guns.modular.zsx.bs.equipment.service.EquipmentInfoService;
import cn.stylefeng.roses.core.base.controller.BaseController;
import cn.stylefeng.roses.kernel.model.response.ResponseData;
import cn.stylefeng.roses.core.mutidatasource.annotion.DataSource;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
/**
 * è®¾å¤‡æ¡£æ¡ˆæŽ§åˆ¶å™¨
 *
 * @author ruimin
 * @Date 2023-09-18 15:50:49
 */
@Controller
@RequestMapping("/equipmentInfo")
public class EquipmentInfoController extends BaseController {
    private String PREFIX = "/modular/bs/equipmentInfo";
    @Autowired
    private EquipmentInfoService equipmentInfoService;
    /**
     * è·³è½¬åˆ°ä¸»é¡µé¢
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @RequestMapping("")
    public String index() {
        return PREFIX + "/equipmentInfo.html";
    }
    /**
     * æ–°å¢žé¡µé¢
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @RequestMapping("/add")
    public String add() {
        return PREFIX + "/equipmentInfo_add.html";
    }
    /**
     * ç¼–辑页面
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @RequestMapping("/edit")
    public String edit() {
        return PREFIX + "/equipmentInfo_edit.html";
    }
    /**
     * æ–°å¢žæŽ¥å£
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @RequestMapping("/addItem")
    @ResponseBody
    @DataSource(name = "self")
    public ResponseData addItem(EquipmentInfoParam equipmentInfoParam) {
        this.equipmentInfoService.add(equipmentInfoParam);
        return ResponseData.success();
    }
    /**
     * ç¼–辑接口
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @RequestMapping("/editItem")
    @ResponseBody
    @DataSource(name = "self")
    public ResponseData editItem(EquipmentInfoParam equipmentInfoParam) {
        this.equipmentInfoService.update(equipmentInfoParam);
        return ResponseData.success();
    }
    /**
     * åˆ é™¤æŽ¥å£
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @RequestMapping("/delete")
    @ResponseBody
    @DataSource(name = "self")
    public ResponseData delete(EquipmentInfoParam equipmentInfoParam) {
        this.equipmentInfoService.delete(equipmentInfoParam);
        return ResponseData.success();
    }
    /**
     * æŸ¥çœ‹è¯¦æƒ…接口
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @RequestMapping("/detail")
    @ResponseBody
    @DataSource(name = "self")
    public ResponseData detail(EquipmentInfoParam equipmentInfoParam) {
        EquipmentInfo detail = this.equipmentInfoService.getById(equipmentInfoParam.getId());
        return ResponseData.success(detail);
    }
    /**
     * æŸ¥è¯¢åˆ—表
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    @ResponseBody
    @RequestMapping("/list")
    @DataSource(name = "self")
    public LayuiPageInfo list(EquipmentInfoParam equipmentInfoParam) {
        return this.equipmentInfoService.findPageBySpec(equipmentInfoParam);
    }
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/entity/EquipmentInfo.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,300 @@
package cn.stylefeng.guns.modular.zsx.bs.equipment.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
/**
 * <p>
 * è®¾å¤‡æ¡£æ¡ˆ
 * </p>
 *
 * @author ruimin
 * @since 2023-09-18
 */
@TableName("bs_equipment_info")
public class EquipmentInfo implements Serializable {
    private static final long serialVersionUID=1L;
    /**
     * ä¸»é”®id
     */
      @TableId(value = "id", type = IdType.ID_WORKER)
    private Long id;
    /**
     * è®¾å¤‡ç¼–号
     */
    @TableField("equipment_no")
    private String equipmentNo;
    /**
     * è®¾å¤‡åç§°
     */
    @TableField("equipment_name")
    private String equipmentName;
    /**
     * è®¾å¤‡ç±»åž‹
     */
    @TableField("equipment_type")
    private String equipmentType;
    /**
     * è§„格型号
     */
    @TableField("equipment_model")
    private String equipmentModel;
    /**
     * è½¦é—´ç¼–号
     */
    @TableField("workshop_code")
    private String workshopCode;
    /**
     * äº§çº¿ç¼–号
     */
    @TableField("production_line_code")
    private String productionLineCode;
    /**
     * å·¥ä½ç¼–号
     */
    @TableField("location_code")
    private String locationCode;
    /**
     * ä¾›åº”商编号
     */
    @TableField("supplier_code")
    private String supplierCode;
    /**
     * é¢„留字段1
     */
    @TableField("spare_field_1")
    private String spareField1;
    /**
     * é¢„留字段2
     */
    @TableField("spare_field_2")
    private String spareField2;
    /**
     * é¢„留字段3
     */
    @TableField("spare_field_3")
    private String spareField3;
    /**
     * é¢„留字段4
     */
    @TableField("spare_field_4")
    private String spareField4;
    /**
     * å¤‡æ³¨
     */
    @TableField("remark")
    private String remark;
    /**
     * åˆ›å»ºç”¨æˆ·
     */
      @TableField(value = "create_user", fill = FieldFill.INSERT)
    private String createUser;
    /**
     * åˆ›å»ºæ—¶é—´
     */
      @TableField(value = "create_time", fill = FieldFill.INSERT)
    private Date createTime;
    /**
     * æ›´æ”¹ç”¨æˆ·
     */
      @TableField(value = "update_user", fill = FieldFill.UPDATE)
    private String updateUser;
    /**
     * æ›´æ”¹æ—¶é—´
     */
      @TableField(value = "update_time", fill = FieldFill.UPDATE)
    private Date updateTime;
    public Long getId() {
        return id;
    }
    public void setId(Long id) {
        this.id = id;
    }
    public String getEquipmentNo() {
        return equipmentNo;
    }
    public void setEquipmentNo(String equipmentNo) {
        this.equipmentNo = equipmentNo;
    }
    public String getEquipmentName() {
        return equipmentName;
    }
    public void setEquipmentName(String equipmentName) {
        this.equipmentName = equipmentName;
    }
    public String getEquipmentType() {
        return equipmentType;
    }
    public void setEquipmentType(String equipmentType) {
        this.equipmentType = equipmentType;
    }
    public String getEquipmentModel() {
        return equipmentModel;
    }
    public void setEquipmentModel(String equipmentModel) {
        this.equipmentModel = equipmentModel;
    }
    public String getWorkshopCode() {
        return workshopCode;
    }
    public void setWorkshopCode(String workshopCode) {
        this.workshopCode = workshopCode;
    }
    public String getProductionLineCode() {
        return productionLineCode;
    }
    public void setProductionLineCode(String productionLineCode) {
        this.productionLineCode = productionLineCode;
    }
    public String getLocationCode() {
        return locationCode;
    }
    public void setLocationCode(String locationCode) {
        this.locationCode = locationCode;
    }
    public String getSupplierCode() {
        return supplierCode;
    }
    public void setSupplierCode(String supplierCode) {
        this.supplierCode = supplierCode;
    }
    public String getSpareField1() {
        return spareField1;
    }
    public void setSpareField1(String spareField1) {
        this.spareField1 = spareField1;
    }
    public String getSpareField2() {
        return spareField2;
    }
    public void setSpareField2(String spareField2) {
        this.spareField2 = spareField2;
    }
    public String getSpareField3() {
        return spareField3;
    }
    public void setSpareField3(String spareField3) {
        this.spareField3 = spareField3;
    }
    public String getSpareField4() {
        return spareField4;
    }
    public void setSpareField4(String spareField4) {
        this.spareField4 = spareField4;
    }
    public String getRemark() {
        return remark;
    }
    public void setRemark(String remark) {
        this.remark = remark;
    }
    public String getCreateUser() {
        return createUser;
    }
    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }
    public Date getCreateTime() {
        return createTime;
    }
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    public String getUpdateUser() {
        return updateUser;
    }
    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser;
    }
    public Date getUpdateTime() {
        return updateTime;
    }
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
    @Override
    public String toString() {
        return "EquipmentInfo{" +
        "id=" + id +
        ", equipmentNo=" + equipmentNo +
        ", equipmentName=" + equipmentName +
        ", equipmentType=" + equipmentType +
        ", equipmentModel=" + equipmentModel +
        ", workshopCode=" + workshopCode +
        ", productionLineCode=" + productionLineCode +
        ", locationCode=" + locationCode +
        ", supplierCode=" + supplierCode +
        ", spareField1=" + spareField1 +
        ", spareField2=" + spareField2 +
        ", spareField3=" + spareField3 +
        ", spareField4=" + spareField4 +
        ", remark=" + remark +
        ", createUser=" + createUser +
        ", createTime=" + createTime +
        ", updateUser=" + updateUser +
        ", updateTime=" + updateTime +
        "}";
    }
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/mapper/EquipmentInfoMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,56 @@
package cn.stylefeng.guns.modular.zsx.bs.equipment.mapper;
import cn.stylefeng.guns.modular.zsx.bs.equipment.entity.EquipmentInfo;
import cn.stylefeng.guns.modular.zsx.bs.equipment.model.params.EquipmentInfoParam;
import cn.stylefeng.guns.modular.zsx.bs.equipment.model.result.EquipmentInfoResult;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * è®¾å¤‡æ¡£æ¡ˆ Mapper æŽ¥å£
 * </p>
 *
 * @author ruimin
 * @since 2023-09-18
 */
public interface EquipmentInfoMapper extends BaseMapper<EquipmentInfo> {
    /**
     * èŽ·å–列表
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    List<EquipmentInfoResult> customList(@Param("paramCondition") EquipmentInfoParam paramCondition);
    /**
     * èŽ·å–map列表
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    List<Map<String, Object>> customMapList(@Param("paramCondition") EquipmentInfoParam paramCondition);
    /**
     * èŽ·å–分页实体列表
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    Page<EquipmentInfoResult> customPageList(@Param("page") Page page, @Param("paramCondition") EquipmentInfoParam paramCondition);
    /**
     * èŽ·å–分页map列表
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    Page<Map<String, Object>> customPageMapList(@Param("page") Page page, @Param("paramCondition") EquipmentInfoParam paramCondition);
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/mapper/mapping/EquipmentInfoMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,72 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.stylefeng.guns.modular.zsx.bs.equipment.mapper.EquipmentInfoMapper">
    <!-- é€šç”¨æŸ¥è¯¢æ˜ å°„结果 -->
    <resultMap id="BaseResultMap" type="cn.stylefeng.guns.modular.zsx.bs.equipment.entity.EquipmentInfo">
        <id column="id" property="id" />
        <result column="equipment_no" property="equipmentNo" />
        <result column="equipment_name" property="equipmentName" />
        <result column="equipment_type" property="equipmentType" />
        <result column="equipment_model" property="equipmentModel" />
        <result column="workshop_code" property="workshopCode" />
        <result column="production_line_code" property="productionLineCode" />
        <result column="location_code" property="locationCode" />
        <result column="supplier_code" property="supplierCode" />
        <result column="spare_field_1" property="spareField1" />
        <result column="spare_field_2" property="spareField2" />
        <result column="spare_field_3" property="spareField3" />
        <result column="spare_field_4" property="spareField4" />
        <result column="remark" property="remark" />
        <result column="create_user" property="createUser" />
        <result column="create_time" property="createTime" />
        <result column="update_user" property="updateUser" />
        <result column="update_time" property="updateTime" />
    </resultMap>
    <!-- é€šç”¨æŸ¥è¯¢ç»“果列 -->
    <sql id="Base_Column_List">
        id AS "id", equipment_no AS "equipmentNo", equipment_name AS "equipmentName", equipment_type AS "equipmentType", equipment_model AS "equipmentModel", workshop_code AS "workshopCode", production_line_code AS "productionLineCode", location_code AS "locationCode", supplier_code AS "supplierCode", spare_field_1 AS "spareField1", spare_field_2 AS "spareField2", spare_field_3 AS "spareField3", spare_field_4 AS "spareField4", remark AS "remark", create_user AS "createUser", create_time AS "createTime", update_user AS "updateUser", update_time AS "updateTime"
    </sql>
    <select id="customList" resultType="cn.stylefeng.guns.modular.zsx.bs.equipment.model.result.EquipmentInfoResult" parameterType="cn.stylefeng.guns.modular.zsx.bs.equipment.model.params.EquipmentInfoParam">
        select
        <include refid="Base_Column_List"/>
        from bs_equipment_info where 1 = 1
        <if test="paramCondition.equipmentNo != null and paramCondition.equipmentNo != ''">
            and equipment_no like CONCAT('%',#{paramCondition.equipmentNo},'%')
        </if>
        <if test="paramCondition.equipmentName != null and paramCondition.equipmentName != ''">
            and equipment_name like CONCAT('%',#{paramCondition.equipmentName},'%')
        </if>
        <if test="paramCondition.equipmentType != null and paramCondition.equipmentType != ''">
            and equipment_type like CONCAT('%',#{paramCondition.equipmentType},'%')
        </if>
        <if test="paramCondition.workshopCode != null and paramCondition.workshopCode != ''">
            and workshop_code like CONCAT('%',#{paramCondition.workshopCode},'%')
        </if>
        <if test="paramCondition.productionLineCode != null and paramCondition.productionLineCode != ''">
            and production_line_code like CONCAT('%',#{paramCondition.productionLineCode},'%')
        </if>
    </select>
    <select id="customMapList" resultType="map" parameterType="cn.stylefeng.guns.modular.zsx.bs.equipment.model.params.EquipmentInfoParam">
        select
        <include refid="Base_Column_List"/>
        from bs_equipment_info where 1 = 1
    </select>
    <select id="customPageList" resultType="cn.stylefeng.guns.modular.zsx.bs.equipment.model.result.EquipmentInfoResult" parameterType="cn.stylefeng.guns.modular.zsx.bs.equipment.model.params.EquipmentInfoParam">
        select
        <include refid="Base_Column_List"/>
        from bs_equipment_info where 1 = 1
    </select>
    <select id="customPageMapList" resultType="map" parameterType="cn.stylefeng.guns.modular.zsx.bs.equipment.model.params.EquipmentInfoParam">
        select
        <include refid="Base_Column_List"/>
        from bs_equipment_info where 1 = 1
    </select>
</mapper>
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/model/params/EquipmentInfoParam.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,118 @@
package cn.stylefeng.guns.modular.zsx.bs.equipment.model.params;
import lombok.Data;
import cn.stylefeng.roses.kernel.model.validator.BaseValidatingParam;
import java.util.Date;
import java.io.Serializable;
import java.math.BigDecimal;
/**
 * <p>
 * è®¾å¤‡æ¡£æ¡ˆ
 * </p>
 *
 * @author ruimin
 * @since 2023-09-18
 */
@Data
public class EquipmentInfoParam implements Serializable, BaseValidatingParam {
    private static final long serialVersionUID = 1L;
    /**
     * ä¸»é”®id
     */
    private Long id;
    /**
     * è®¾å¤‡ç¼–号
     */
    private String equipmentNo;
    /**
     * è®¾å¤‡åç§°
     */
    private String equipmentName;
    /**
     * è®¾å¤‡ç±»åž‹
     */
    private String equipmentType;
    /**
     * è§„格型号
     */
    private String equipmentModel;
    /**
     * è½¦é—´ç¼–号
     */
    private String workshopCode;
    /**
     * äº§çº¿ç¼–号
     */
    private String productionLineCode;
    /**
     * å·¥ä½ç¼–号
     */
    private String locationCode;
    /**
     * ä¾›åº”商编号
     */
    private String supplierCode;
    /**
     * é¢„留字段1
     */
    private String spareField1;
    /**
     * é¢„留字段2
     */
    private String spareField2;
    /**
     * é¢„留字段3
     */
    private String spareField3;
    /**
     * é¢„留字段4
     */
    private String spareField4;
    /**
     * å¤‡æ³¨
     */
    private String remark;
    /**
     * åˆ›å»ºç”¨æˆ·
     */
    private String createUser;
    /**
     * åˆ›å»ºæ—¶é—´
     */
    private Date createTime;
    /**
     * æ›´æ”¹ç”¨æˆ·
     */
    private String updateUser;
    /**
     * æ›´æ”¹æ—¶é—´
     */
    private Date updateTime;
    @Override
    public String checkParam() {
        return null;
    }
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/model/result/EquipmentInfoResult.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,112 @@
package cn.stylefeng.guns.modular.zsx.bs.equipment.model.result;
import lombok.Data;
import java.util.Date;
import java.io.Serializable;
import java.math.BigDecimal;
/**
 * <p>
 * è®¾å¤‡æ¡£æ¡ˆ
 * </p>
 *
 * @author ruimin
 * @since 2023-09-18
 */
@Data
public class EquipmentInfoResult implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * ä¸»é”®id
     */
    private Long id;
    /**
     * è®¾å¤‡ç¼–号
     */
    private String equipmentNo;
    /**
     * è®¾å¤‡åç§°
     */
    private String equipmentName;
    /**
     * è®¾å¤‡ç±»åž‹
     */
    private String equipmentType;
    /**
     * è§„格型号
     */
    private String equipmentModel;
    /**
     * è½¦é—´ç¼–号
     */
    private String workshopCode;
    /**
     * äº§çº¿ç¼–号
     */
    private String productionLineCode;
    /**
     * å·¥ä½ç¼–号
     */
    private String locationCode;
    /**
     * ä¾›åº”商编号
     */
    private String supplierCode;
    /**
     * é¢„留字段1
     */
    private String spareField1;
    /**
     * é¢„留字段2
     */
    private String spareField2;
    /**
     * é¢„留字段3
     */
    private String spareField3;
    /**
     * é¢„留字段4
     */
    private String spareField4;
    /**
     * å¤‡æ³¨
     */
    private String remark;
    /**
     * åˆ›å»ºç”¨æˆ·
     */
    private String createUser;
    /**
     * åˆ›å»ºæ—¶é—´
     */
    private Date createTime;
    /**
     * æ›´æ”¹ç”¨æˆ·
     */
    private String updateUser;
    /**
     * æ›´æ”¹æ—¶é—´
     */
    private Date updateTime;
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/service/EquipmentInfoService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,69 @@
package cn.stylefeng.guns.modular.zsx.bs.equipment.service;
import cn.stylefeng.guns.base.pojo.page.LayuiPageInfo;
import cn.stylefeng.guns.modular.zsx.bs.equipment.entity.EquipmentInfo;
import cn.stylefeng.guns.modular.zsx.bs.equipment.model.params.EquipmentInfoParam;
import cn.stylefeng.guns.modular.zsx.bs.equipment.model.result.EquipmentInfoResult;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
 * <p>
 * è®¾å¤‡æ¡£æ¡ˆ æœåŠ¡ç±»
 * </p>
 *
 * @author ruimin
 * @since 2023-09-18
 */
public interface EquipmentInfoService extends IService<EquipmentInfo> {
    /**
     * æ–°å¢ž
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    void add(EquipmentInfoParam param);
    /**
     * åˆ é™¤
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    void delete(EquipmentInfoParam param);
    /**
     * æ›´æ–°
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    void update(EquipmentInfoParam param);
    /**
     * æŸ¥è¯¢å•æ¡æ•°æ®ï¼ŒSpecification模式
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    EquipmentInfoResult findBySpec(EquipmentInfoParam param);
    /**
     * æŸ¥è¯¢åˆ—表,Specification模式
     *
     * @author ruimin
     * @Date 2023-09-18
     */
    List<EquipmentInfoResult> findListBySpec(EquipmentInfoParam param);
    /**
     * æŸ¥è¯¢åˆ†é¡µæ•°æ®ï¼ŒSpecification模式
     *
     * @author ruimin
     * @Date 2023-09-18
     */
     LayuiPageInfo findPageBySpec(EquipmentInfoParam param);
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/equipment/service/impl/EquipmentInfoServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,84 @@
package cn.stylefeng.guns.modular.zsx.bs.equipment.service.impl;
import cn.stylefeng.guns.base.pojo.page.LayuiPageFactory;
import cn.stylefeng.guns.base.pojo.page.LayuiPageInfo;
import cn.stylefeng.guns.modular.zsx.bs.equipment.entity.EquipmentInfo;
import cn.stylefeng.guns.modular.zsx.bs.equipment.mapper.EquipmentInfoMapper;
import cn.stylefeng.guns.modular.zsx.bs.equipment.model.params.EquipmentInfoParam;
import cn.stylefeng.guns.modular.zsx.bs.equipment.model.result.EquipmentInfoResult;
import  cn.stylefeng.guns.modular.zsx.bs.equipment.service.EquipmentInfoService;
import cn.stylefeng.roses.core.util.ToolUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import java.io.Serializable;
import java.util.List;
/**
 * <p>
 * è®¾å¤‡æ¡£æ¡ˆ æœåŠ¡å®žçŽ°ç±»
 * </p>
 *
 * @author ruimin
 * @since 2023-09-18
 */
@Service
public class EquipmentInfoServiceImpl extends ServiceImpl<EquipmentInfoMapper, EquipmentInfo> implements EquipmentInfoService {
    @Override
    public void add(EquipmentInfoParam param){
        EquipmentInfo entity = getEntity(param);
        this.save(entity);
    }
    @Override
    public void delete(EquipmentInfoParam param){
        this.removeById(getKey(param));
    }
    @Override
    public void update(EquipmentInfoParam param){
        EquipmentInfo oldEntity = getOldEntity(param);
        EquipmentInfo newEntity = getEntity(param);
        ToolUtil.copyProperties(newEntity, oldEntity);
        this.updateById(newEntity);
    }
    @Override
    public EquipmentInfoResult findBySpec(EquipmentInfoParam param){
        return null;
    }
    @Override
    public List<EquipmentInfoResult> findListBySpec(EquipmentInfoParam param){
        return null;
    }
    @Override
    public LayuiPageInfo findPageBySpec(EquipmentInfoParam param){
        Page pageContext = getPageContext();
        IPage page = this.baseMapper.customPageList(pageContext, param);
        return LayuiPageFactory.createPageInfo(page);
    }
    private Serializable getKey(EquipmentInfoParam param){
        return param.getId();
    }
    private Page getPageContext() {
        return LayuiPageFactory.defaultPage();
    }
    private EquipmentInfo getOldEntity(EquipmentInfoParam param) {
        return this.getById(getKey(param));
    }
    private EquipmentInfo getEntity(EquipmentInfoParam param) {
        EquipmentInfo entity = new EquipmentInfo();
        ToolUtil.copyProperties(param, entity);
        return entity;
    }
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/controller/LocationInfoController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,136 @@
package cn.stylefeng.guns.modular.zsx.bs.location.controller;
import cn.stylefeng.guns.base.pojo.page.LayuiPageInfo;
import cn.stylefeng.guns.modular.zsx.bs.location.entity.LocationInfo;
import cn.stylefeng.guns.modular.zsx.bs.location.model.params.LocationInfoParam;
import cn.stylefeng.guns.modular.zsx.bs.location.service.LocationInfoService;
import cn.stylefeng.roses.core.base.controller.BaseController;
import cn.stylefeng.roses.kernel.model.response.ResponseData;
import cn.stylefeng.roses.core.mutidatasource.annotion.DataSource;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
/**
 * å·¥ä½ä¿¡æ¯æŽ§åˆ¶å™¨
 *
 * @author ruimin
 * @Date 2023-09-19 11:01:29
 */
@Controller
@RequestMapping("/locationInfo")
public class LocationInfoController extends BaseController {
    private String PREFIX = "/modular/bs/locationInfo";
    @Autowired
    private LocationInfoService locationInfoService;
    /**
     * è·³è½¬åˆ°ä¸»é¡µé¢
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    @RequestMapping("")
    public String index() {
        return PREFIX + "/locationInfo.html";
    }
    /**
     * æ–°å¢žé¡µé¢
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    @RequestMapping("/add")
    public String add() {
        return PREFIX + "/locationInfo_add.html";
    }
    /**
     * ç¼–辑页面
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    @RequestMapping("/edit")
    public String edit() {
        return PREFIX + "/locationInfo_edit.html";
    }
    /**
     * æ–°å¢žæŽ¥å£
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    @RequestMapping("/addItem")
    @ResponseBody
    @DataSource(name = "self")
    public ResponseData addItem(LocationInfoParam locationInfoParam) {
        this.locationInfoService.add(locationInfoParam);
        return ResponseData.success();
    }
    /**
     * ç¼–辑接口
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    @RequestMapping("/editItem")
    @ResponseBody
    @DataSource(name = "self")
    public ResponseData editItem(LocationInfoParam locationInfoParam) {
        this.locationInfoService.update(locationInfoParam);
        return ResponseData.success();
    }
    /**
     * åˆ é™¤æŽ¥å£
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    @RequestMapping("/delete")
    @ResponseBody
    @DataSource(name = "self")
    public ResponseData delete(LocationInfoParam locationInfoParam) {
        this.locationInfoService.delete(locationInfoParam);
        return ResponseData.success();
    }
    /**
     * æŸ¥çœ‹è¯¦æƒ…接口
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    @RequestMapping("/detail")
    @ResponseBody
    @DataSource(name = "self")
    public ResponseData detail(LocationInfoParam locationInfoParam) {
        LocationInfo detail = this.locationInfoService.getById(locationInfoParam.getId());
        return ResponseData.success(detail);
    }
    /**
     * æŸ¥è¯¢åˆ—表
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    @ResponseBody
    @RequestMapping("/list")
    @DataSource(name = "self")
    public LayuiPageInfo list(LocationInfoParam locationInfoParam) {
        return this.locationInfoService.findPageBySpec(locationInfoParam);
    }
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/entity/LocationInfo.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,225 @@
package cn.stylefeng.guns.modular.zsx.bs.location.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
/**
 * <p>
 * å·¥ä½ä¿¡æ¯
 * </p>
 *
 * @author ruimin
 * @since 2023-09-19
 */
@TableName("bs_location_info")
public class LocationInfo implements Serializable {
    private static final long serialVersionUID=1L;
    /**
     * ä¸»é”®id
     */
      @TableId(value = "id", type = IdType.ID_WORKER)
    private Long id;
    /**
     * å·¥ä½ç¼–号
     */
    @TableField("location_code")
    private String locationCode;
    /**
     * å·¥ä½åç§°
     */
    @TableField("location_name")
    private String locationName;
    /**
     * å·¥ä½ç±»åž‹ï¼ˆ1自动2半自动3手动)
     */
    @TableField("location_type")
    private String locationType;
    /**
     * è½¦é—´ç¼–号
     */
    @TableField("workshop_code")
    private String workshopCode;
    /**
     * äº§çº¿ç¼–号
     */
    @TableField("production_line_code")
    private String productionLineCode;
    /**
     * é¢„留字段1
     */
    @TableField("spare_field_1")
    private String spareField1;
    /**
     * é¢„留字段2
     */
    @TableField("spare_field_2")
    private String spareField2;
    /**
     * å¤‡æ³¨
     */
    @TableField("remarks")
    private String remarks;
    /**
     * åˆ›å»ºç”¨æˆ·
     */
      @TableField(value = "create_user", fill = FieldFill.INSERT)
    private String createUser;
    /**
     * åˆ›å»ºæ—¶é—´
     */
      @TableField(value = "create_time", fill = FieldFill.INSERT)
    private Date createTime;
    /**
     * æ›´æ”¹ç”¨æˆ·
     */
      @TableField(value = "update_user", fill = FieldFill.UPDATE)
    private String updateUser;
    /**
     * æ›´æ”¹æ—¶é—´
     */
      @TableField(value = "update_time", fill = FieldFill.UPDATE)
    private Date updateTime;
    public Long getId() {
        return id;
    }
    public void setId(Long id) {
        this.id = id;
    }
    public String getLocationCode() {
        return locationCode;
    }
    public void setLocationCode(String locationCode) {
        this.locationCode = locationCode;
    }
    public String getLocationName() {
        return locationName;
    }
    public void setLocationName(String locationName) {
        this.locationName = locationName;
    }
    public String getLocationType() {
        return locationType;
    }
    public void setLocationType(String locationType) {
        this.locationType = locationType;
    }
    public String getWorkshopCode() {
        return workshopCode;
    }
    public void setWorkshopCode(String workshopCode) {
        this.workshopCode = workshopCode;
    }
    public String getProductionLineCode() {
        return productionLineCode;
    }
    public void setProductionLineCode(String productionLineCode) {
        this.productionLineCode = productionLineCode;
    }
    public String getSpareField1() {
        return spareField1;
    }
    public void setSpareField1(String spareField1) {
        this.spareField1 = spareField1;
    }
    public String getSpareField2() {
        return spareField2;
    }
    public void setSpareField2(String spareField2) {
        this.spareField2 = spareField2;
    }
    public String getRemarks() {
        return remarks;
    }
    public void setRemarks(String remarks) {
        this.remarks = remarks;
    }
    public String getCreateUser() {
        return createUser;
    }
    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }
    public Date getCreateTime() {
        return createTime;
    }
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    public String getUpdateUser() {
        return updateUser;
    }
    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser;
    }
    public Date getUpdateTime() {
        return updateTime;
    }
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
    @Override
    public String toString() {
        return "LocationInfo{" +
        "id=" + id +
        ", locationCode=" + locationCode +
        ", locationName=" + locationName +
        ", locationType=" + locationType +
        ", workshopCode=" + workshopCode +
        ", productionLineCode=" + productionLineCode +
        ", spareField1=" + spareField1 +
        ", spareField2=" + spareField2 +
        ", remarks=" + remarks +
        ", createUser=" + createUser +
        ", createTime=" + createTime +
        ", updateUser=" + updateUser +
        ", updateTime=" + updateTime +
        "}";
    }
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/mapper/LocationInfoMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,56 @@
package cn.stylefeng.guns.modular.zsx.bs.location.mapper;
import cn.stylefeng.guns.modular.zsx.bs.location.entity.LocationInfo;
import cn.stylefeng.guns.modular.zsx.bs.location.model.params.LocationInfoParam;
import cn.stylefeng.guns.modular.zsx.bs.location.model.result.LocationInfoResult;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * å·¥ä½ä¿¡æ¯ Mapper æŽ¥å£
 * </p>
 *
 * @author ruimin
 * @since 2023-09-19
 */
public interface LocationInfoMapper extends BaseMapper<LocationInfo> {
    /**
     * èŽ·å–列表
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    List<LocationInfoResult> customList(@Param("paramCondition") LocationInfoParam paramCondition);
    /**
     * èŽ·å–map列表
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    List<Map<String, Object>> customMapList(@Param("paramCondition") LocationInfoParam paramCondition);
    /**
     * èŽ·å–分页实体列表
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    Page<LocationInfoResult> customPageList(@Param("page") Page page, @Param("paramCondition") LocationInfoParam paramCondition);
    /**
     * èŽ·å–分页map列表
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    Page<Map<String, Object>> customPageMapList(@Param("page") Page page, @Param("paramCondition") LocationInfoParam paramCondition);
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/mapper/mapping/LocationInfoMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,112 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.stylefeng.guns.modular.zsx.bs.location.mapper.LocationInfoMapper">
    <!-- é€šç”¨æŸ¥è¯¢æ˜ å°„结果 -->
    <resultMap id="BaseResultMap" type="cn.stylefeng.guns.modular.zsx.bs.location.entity.LocationInfo">
        <id column="id" property="id" />
        <result column="location_code" property="locationCode" />
        <result column="location_name" property="locationName" />
        <result column="location_type" property="locationType" />
        <result column="workshop_code" property="workshopCode" />
        <result column="production_line_code" property="productionLineCode" />
        <result column="spare_field_1" property="spareField1" />
        <result column="spare_field_2" property="spareField2" />
        <result column="remarks" property="remarks" />
        <result column="create_user" property="createUser" />
        <result column="create_time" property="createTime" />
        <result column="update_user" property="updateUser" />
        <result column="update_time" property="updateTime" />
    </resultMap>
    <!-- é€šç”¨æŸ¥è¯¢ç»“果列 -->
    <sql id="Base_Column_List">
        id AS "id", location_code AS "locationCode", location_name AS "locationName", location_type AS "locationType", workshop_code AS "workshopCode", production_line_code AS "productionLineCode", spare_field_1 AS "spareField1", spare_field_2 AS "spareField2", remarks AS "remarks", create_user AS "createUser", create_time AS "createTime", update_user AS "updateUser", update_time AS "updateTime"
    </sql>
    <select id="customList" resultType="cn.stylefeng.guns.modular.zsx.bs.location.model.result.LocationInfoResult" parameterType="cn.stylefeng.guns.modular.zsx.bs.location.model.params.LocationInfoParam">
        select
        <include refid="Base_Column_List"/>
        from bs_location_info where 1 = 1
            <if test="paramCondition.locationCode != null and paramCondition.locationCode != ''">
                and location_code like CONCAT('%',#{paramCondition.locationCode},'%')
            </if>
            <if test="paramCondition.locationName != null and paramCondition.locationName != ''">
                and location_name like CONCAT('%',#{paramCondition.locationName},'%')
            </if>
            <if test="paramCondition.locationType != null and paramCondition.locationType != ''">
                and location_type like CONCAT('%',#{paramCondition.locationType},'%')
            </if>
            <if test="paramCondition.workshopCode != null and paramCondition.workshopCode != ''">
                and workshop_code like CONCAT('%',#{paramCondition.workshopCode},'%')
            </if>
            <if test="paramCondition.productionLineCode != null and paramCondition.productionLineCode != ''">
                and production_line_code like CONCAT('%',#{paramCondition.productionLineCode},'%')
            </if>
    </select>
    <select id="customMapList" resultType="map" parameterType="cn.stylefeng.guns.modular.zsx.bs.location.model.params.LocationInfoParam">
        select
        <include refid="Base_Column_List"/>
        from bs_location_info where 1 = 1
            <if test="paramCondition.locationCode != null and paramCondition.locationCode != ''">
                and location_code like CONCAT('%',#{paramCondition.locationCode},'%')
            </if>
            <if test="paramCondition.locationName != null and paramCondition.locationName != ''">
                and location_name like CONCAT('%',#{paramCondition.locationName},'%')
            </if>
            <if test="paramCondition.locationType != null and paramCondition.locationType != ''">
                and location_type like CONCAT('%',#{paramCondition.locationType},'%')
            </if>
            <if test="paramCondition.workshopCode != null and paramCondition.workshopCode != ''">
                and workshop_code like CONCAT('%',#{paramCondition.workshopCode},'%')
            </if>
            <if test="paramCondition.productionLineCode != null and paramCondition.productionLineCode != ''">
                and production_line_code like CONCAT('%',#{paramCondition.productionLineCode},'%')
            </if>
    </select>
    <select id="customPageList" resultType="cn.stylefeng.guns.modular.zsx.bs.location.model.result.LocationInfoResult" parameterType="cn.stylefeng.guns.modular.zsx.bs.location.model.params.LocationInfoParam">
        select
        <include refid="Base_Column_List"/>
        from bs_location_info where 1 = 1
            <if test="paramCondition.locationCode != null and paramCondition.locationCode != ''">
                and location_code like CONCAT('%',#{paramCondition.locationCode},'%')
            </if>
            <if test="paramCondition.locationName != null and paramCondition.locationName != ''">
                and location_name like CONCAT('%',#{paramCondition.locationName},'%')
            </if>
            <if test="paramCondition.locationType != null and paramCondition.locationType != ''">
                and location_type like CONCAT('%',#{paramCondition.locationType},'%')
            </if>
            <if test="paramCondition.workshopCode != null and paramCondition.workshopCode != ''">
                and workshop_code like CONCAT('%',#{paramCondition.workshopCode},'%')
            </if>
            <if test="paramCondition.productionLineCode != null and paramCondition.productionLineCode != ''">
                and production_line_code like CONCAT('%',#{paramCondition.productionLineCode},'%')
            </if>
    </select>
    <select id="customPageMapList" resultType="map" parameterType="cn.stylefeng.guns.modular.zsx.bs.location.model.params.LocationInfoParam">
        select
        <include refid="Base_Column_List"/>
        from bs_location_info where 1 = 1
            <if test="paramCondition.locationCode != null and paramCondition.locationCode != ''">
                and location_code like CONCAT('%',#{paramCondition.locationCode},'%')
            </if>
            <if test="paramCondition.locationName != null and paramCondition.locationName != ''">
                and location_name like CONCAT('%',#{paramCondition.locationName},'%')
            </if>
            <if test="paramCondition.locationType != null and paramCondition.locationType != ''">
                and location_type like CONCAT('%',#{paramCondition.locationType},'%')
            </if>
            <if test="paramCondition.workshopCode != null and paramCondition.workshopCode != ''">
                and workshop_code like CONCAT('%',#{paramCondition.workshopCode},'%')
            </if>
            <if test="paramCondition.productionLineCode != null and paramCondition.productionLineCode != ''">
                and production_line_code like CONCAT('%',#{paramCondition.productionLineCode},'%')
            </if>
    </select>
</mapper>
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/model/params/LocationInfoParam.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,93 @@
package cn.stylefeng.guns.modular.zsx.bs.location.model.params;
import lombok.Data;
import cn.stylefeng.roses.kernel.model.validator.BaseValidatingParam;
import java.util.Date;
import java.io.Serializable;
import java.math.BigDecimal;
/**
 * <p>
 * å·¥ä½ä¿¡æ¯
 * </p>
 *
 * @author ruimin
 * @since 2023-09-19
 */
@Data
public class LocationInfoParam implements Serializable, BaseValidatingParam {
    private static final long serialVersionUID = 1L;
    /**
     * ä¸»é”®id
     */
    private Long id;
    /**
     * å·¥ä½ç¼–号
     */
    private String locationCode;
    /**
     * å·¥ä½åç§°
     */
    private String locationName;
    /**
     * å·¥ä½ç±»åž‹ï¼ˆ1自动2半自动3手动)
     */
    private String locationType;
    /**
     * è½¦é—´ç¼–号
     */
    private String workshopCode;
    /**
     * äº§çº¿ç¼–号
     */
    private String productionLineCode;
    /**
     * é¢„留字段1
     */
    private String spareField1;
    /**
     * é¢„留字段2
     */
    private String spareField2;
    /**
     * å¤‡æ³¨
     */
    private String remarks;
    /**
     * åˆ›å»ºç”¨æˆ·
     */
    private String createUser;
    /**
     * åˆ›å»ºæ—¶é—´
     */
    private Date createTime;
    /**
     * æ›´æ”¹ç”¨æˆ·
     */
    private String updateUser;
    /**
     * æ›´æ”¹æ—¶é—´
     */
    private Date updateTime;
    @Override
    public String checkParam() {
        return null;
    }
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/model/result/LocationInfoResult.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,87 @@
package cn.stylefeng.guns.modular.zsx.bs.location.model.result;
import lombok.Data;
import java.util.Date;
import java.io.Serializable;
import java.math.BigDecimal;
/**
 * <p>
 * å·¥ä½ä¿¡æ¯
 * </p>
 *
 * @author ruimin
 * @since 2023-09-19
 */
@Data
public class LocationInfoResult implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * ä¸»é”®id
     */
    private Long id;
    /**
     * å·¥ä½ç¼–号
     */
    private String locationCode;
    /**
     * å·¥ä½åç§°
     */
    private String locationName;
    /**
     * å·¥ä½ç±»åž‹ï¼ˆ1自动2半自动3手动)
     */
    private String locationType;
    /**
     * è½¦é—´ç¼–号
     */
    private String workshopCode;
    /**
     * äº§çº¿ç¼–号
     */
    private String productionLineCode;
    /**
     * é¢„留字段1
     */
    private String spareField1;
    /**
     * é¢„留字段2
     */
    private String spareField2;
    /**
     * å¤‡æ³¨
     */
    private String remarks;
    /**
     * åˆ›å»ºç”¨æˆ·
     */
    private String createUser;
    /**
     * åˆ›å»ºæ—¶é—´
     */
    private Date createTime;
    /**
     * æ›´æ”¹ç”¨æˆ·
     */
    private String updateUser;
    /**
     * æ›´æ”¹æ—¶é—´
     */
    private Date updateTime;
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/service/LocationInfoService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,69 @@
package cn.stylefeng.guns.modular.zsx.bs.location.service;
import cn.stylefeng.guns.base.pojo.page.LayuiPageInfo;
import cn.stylefeng.guns.modular.zsx.bs.location.entity.LocationInfo;
import cn.stylefeng.guns.modular.zsx.bs.location.model.params.LocationInfoParam;
import cn.stylefeng.guns.modular.zsx.bs.location.model.result.LocationInfoResult;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
 * <p>
 * å·¥ä½ä¿¡æ¯ æœåŠ¡ç±»
 * </p>
 *
 * @author ruimin
 * @since 2023-09-19
 */
public interface LocationInfoService extends IService<LocationInfo> {
    /**
     * æ–°å¢ž
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    void add(LocationInfoParam param);
    /**
     * åˆ é™¤
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    void delete(LocationInfoParam param);
    /**
     * æ›´æ–°
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    void update(LocationInfoParam param);
    /**
     * æŸ¥è¯¢å•æ¡æ•°æ®ï¼ŒSpecification模式
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    LocationInfoResult findBySpec(LocationInfoParam param);
    /**
     * æŸ¥è¯¢åˆ—表,Specification模式
     *
     * @author ruimin
     * @Date 2023-09-19
     */
    List<LocationInfoResult> findListBySpec(LocationInfoParam param);
    /**
     * æŸ¥è¯¢åˆ†é¡µæ•°æ®ï¼ŒSpecification模式
     *
     * @author ruimin
     * @Date 2023-09-19
     */
     LayuiPageInfo findPageBySpec(LocationInfoParam param);
}
guns-vip-main/src/main/java/cn/stylefeng/guns/modular/zsx/bs/location/service/impl/LocationInfoServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,84 @@
package cn.stylefeng.guns.modular.zsx.bs.location.service.impl;
import cn.stylefeng.guns.base.pojo.page.LayuiPageFactory;
import cn.stylefeng.guns.base.pojo.page.LayuiPageInfo;
import cn.stylefeng.guns.modular.zsx.bs.location.entity.LocationInfo;
import cn.stylefeng.guns.modular.zsx.bs.location.mapper.LocationInfoMapper;
import cn.stylefeng.guns.modular.zsx.bs.location.model.params.LocationInfoParam;
import cn.stylefeng.guns.modular.zsx.bs.location.model.result.LocationInfoResult;
import  cn.stylefeng.guns.modular.zsx.bs.location.service.LocationInfoService;
import cn.stylefeng.roses.core.util.ToolUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import java.io.Serializable;
import java.util.List;
/**
 * <p>
 * å·¥ä½ä¿¡æ¯ æœåŠ¡å®žçŽ°ç±»
 * </p>
 *
 * @author ruimin
 * @since 2023-09-19
 */
@Service
public class LocationInfoServiceImpl extends ServiceImpl<LocationInfoMapper, LocationInfo> implements LocationInfoService {
    @Override
    public void add(LocationInfoParam param){
        LocationInfo entity = getEntity(param);
        this.save(entity);
    }
    @Override
    public void delete(LocationInfoParam param){
        this.removeById(getKey(param));
    }
    @Override
    public void update(LocationInfoParam param){
        LocationInfo oldEntity = getOldEntity(param);
        LocationInfo newEntity = getEntity(param);
        ToolUtil.copyProperties(newEntity, oldEntity);
        this.updateById(newEntity);
    }
    @Override
    public LocationInfoResult findBySpec(LocationInfoParam param){
        return null;
    }
    @Override
    public List<LocationInfoResult> findListBySpec(LocationInfoParam param){
        return null;
    }
    @Override
    public LayuiPageInfo findPageBySpec(LocationInfoParam param){
        Page pageContext = getPageContext();
        IPage page = this.baseMapper.customPageList(pageContext, param);
        return LayuiPageFactory.createPageInfo(page);
    }
    private Serializable getKey(LocationInfoParam param){
        return param.getId();
    }
    private Page getPageContext() {
        return LayuiPageFactory.defaultPage();
    }
    private LocationInfo getOldEntity(LocationInfoParam param) {
        return this.getById(getKey(param));
    }
    private LocationInfo getEntity(LocationInfoParam param) {
        LocationInfo entity = new LocationInfo();
        ToolUtil.copyProperties(param, entity);
        return entity;
    }
}
guns-vip-main/src/main/sqls/customInfo_menus.sql
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,4 @@
INSERT INTO `sys_menu`(`MENU_ID`, `CODE`, `PCODE`, `PCODES`, `NAME`, `ICON`, `URL`, `SORT`, `LEVELS`, `MENU_FLAG`, `DESCRIPTION`, `STATUS`, `NEW_PAGE_FLAG`, `OPEN_FLAG`, `SYSTEM_TYPE`, `CREATE_TIME`, `UPDATE_TIME`, `CREATE_USER`, `UPDATE_USER`) VALUES (1703674927420198913, 'CUSTOM_INFO', '0', '[0],', '客户信息', 'fa-star', '/customInfo', 999, 1, 'Y', '', 'ENABLE', '', '', 'BASE_SYSTEM', '2023-09-18 15:38:50', '2023-09-18 15:38:50', 1, 1);
INSERT INTO `sys_menu`(`MENU_ID`, `CODE`, `PCODE`, `PCODES`, `NAME`, `ICON`, `URL`, `SORT`, `LEVELS`, `MENU_FLAG`, `DESCRIPTION`, `STATUS`, `NEW_PAGE_FLAG`, `OPEN_FLAG`, `SYSTEM_TYPE`, `CREATE_TIME`, `UPDATE_TIME`, `CREATE_USER`, `UPDATE_USER`) VALUES (1703674927428587521, 'CUSTOM_INFO_ADD', 'CUSTOM_INFO', '[0],[CUSTOM_INFO],', '客户信息添加', 'fa-star', '', 999, 2, 'N', '', 'ENABLE', '', '', 'BASE_SYSTEM', '2023-09-18 15:38:50', '2023-09-18 15:38:50', 1, 1);
INSERT INTO `sys_menu`(`MENU_ID`, `CODE`, `PCODE`, `PCODES`, `NAME`, `ICON`, `URL`, `SORT`, `LEVELS`, `MENU_FLAG`, `DESCRIPTION`, `STATUS`, `NEW_PAGE_FLAG`, `OPEN_FLAG`, `SYSTEM_TYPE`, `CREATE_TIME`, `UPDATE_TIME`, `CREATE_USER`, `UPDATE_USER`) VALUES (1703674927428587522, 'CUSTOM_INFO_EDIT', 'CUSTOM_INFO', '[0],[CUSTOM_INFO],', '客户信息修改', 'fa-star', '', 999, 2, 'N', '', 'ENABLE', '', '', 'BASE_SYSTEM', '2023-09-18 15:38:50', '2023-09-18 15:38:50', 1, 1);
INSERT INTO `sys_menu`(`MENU_ID`, `CODE`, `PCODE`, `PCODES`, `NAME`, `ICON`, `URL`, `SORT`, `LEVELS`, `MENU_FLAG`, `DESCRIPTION`, `STATUS`, `NEW_PAGE_FLAG`, `OPEN_FLAG`, `SYSTEM_TYPE`, `CREATE_TIME`, `UPDATE_TIME`, `CREATE_USER`, `UPDATE_USER`) VALUES (1703674927428587523, 'CUSTOM_INFO_DELETE', 'CUSTOM_INFO', '[0],[CUSTOM_INFO],', '客户信息删除', 'fa-star', '', 999, 2, 'N', '', 'ENABLE', '', '', 'BASE_SYSTEM', '2023-09-18 15:38:50', '2023-09-18 15:38:50', 1, 1);
guns-vip-main/src/main/sqls/equipmentInfo_menus.sql
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,4 @@
INSERT INTO `sys_menu`(`MENU_ID`, `CODE`, `PCODE`, `PCODES`, `NAME`, `ICON`, `URL`, `SORT`, `LEVELS`, `MENU_FLAG`, `DESCRIPTION`, `STATUS`, `NEW_PAGE_FLAG`, `OPEN_FLAG`, `SYSTEM_TYPE`, `CREATE_TIME`, `UPDATE_TIME`, `CREATE_USER`, `UPDATE_USER`) VALUES (1703677943812665346, 'EQUIPMENT_INFO', '0', '[0],', '设备档案', 'fa-star', '/equipmentInfo', 999, 1, 'Y', '', 'ENABLE', '', '', 'BASE_SYSTEM', '2023-09-18 15:50:49', '2023-09-18 15:50:49', 1, 1);
INSERT INTO `sys_menu`(`MENU_ID`, `CODE`, `PCODE`, `PCODES`, `NAME`, `ICON`, `URL`, `SORT`, `LEVELS`, `MENU_FLAG`, `DESCRIPTION`, `STATUS`, `NEW_PAGE_FLAG`, `OPEN_FLAG`, `SYSTEM_TYPE`, `CREATE_TIME`, `UPDATE_TIME`, `CREATE_USER`, `UPDATE_USER`) VALUES (1703677943812665347, 'EQUIPMENT_INFO_ADD', 'EQUIPMENT_INFO', '[0],[EQUIPMENT_INFO],', '设备档案添加', 'fa-star', '', 999, 2, 'N', '', 'ENABLE', '', '', 'BASE_SYSTEM', '2023-09-18 15:50:49', '2023-09-18 15:50:49', 1, 1);
INSERT INTO `sys_menu`(`MENU_ID`, `CODE`, `PCODE`, `PCODES`, `NAME`, `ICON`, `URL`, `SORT`, `LEVELS`, `MENU_FLAG`, `DESCRIPTION`, `STATUS`, `NEW_PAGE_FLAG`, `OPEN_FLAG`, `SYSTEM_TYPE`, `CREATE_TIME`, `UPDATE_TIME`, `CREATE_USER`, `UPDATE_USER`) VALUES (1703677943812665348, 'EQUIPMENT_INFO_EDIT', 'EQUIPMENT_INFO', '[0],[EQUIPMENT_INFO],', '设备档案修改', 'fa-star', '', 999, 2, 'N', '', 'ENABLE', '', '', 'BASE_SYSTEM', '2023-09-18 15:50:49', '2023-09-18 15:50:49', 1, 1);
INSERT INTO `sys_menu`(`MENU_ID`, `CODE`, `PCODE`, `PCODES`, `NAME`, `ICON`, `URL`, `SORT`, `LEVELS`, `MENU_FLAG`, `DESCRIPTION`, `STATUS`, `NEW_PAGE_FLAG`, `OPEN_FLAG`, `SYSTEM_TYPE`, `CREATE_TIME`, `UPDATE_TIME`, `CREATE_USER`, `UPDATE_USER`) VALUES (1703677943812665349, 'EQUIPMENT_INFO_DELETE', 'EQUIPMENT_INFO', '[0],[EQUIPMENT_INFO],', '设备档案删除', 'fa-star', '', 999, 2, 'N', '', 'ENABLE', '', '', 'BASE_SYSTEM', '2023-09-18 15:50:49', '2023-09-18 15:50:49', 1, 1);
guns-vip-main/src/main/sqls/locationInfo_menus.sql
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,4 @@
INSERT INTO `sys_menu`(`MENU_ID`, `CODE`, `PCODE`, `PCODES`, `NAME`, `ICON`, `URL`, `SORT`, `LEVELS`, `MENU_FLAG`, `DESCRIPTION`, `STATUS`, `NEW_PAGE_FLAG`, `OPEN_FLAG`, `SYSTEM_TYPE`, `CREATE_TIME`, `UPDATE_TIME`, `CREATE_USER`, `UPDATE_USER`) VALUES (1703967521480073218, 'LOCATION_INFO', '0', '[0],', '工位信息', 'fa-star', '/locationInfo', 999, 1, 'Y', '', 'ENABLE', '', '', 'BASE_SYSTEM', '2023-09-19 11:01:29', '2023-09-19 11:01:29', 1, 1);
INSERT INTO `sys_menu`(`MENU_ID`, `CODE`, `PCODE`, `PCODES`, `NAME`, `ICON`, `URL`, `SORT`, `LEVELS`, `MENU_FLAG`, `DESCRIPTION`, `STATUS`, `NEW_PAGE_FLAG`, `OPEN_FLAG`, `SYSTEM_TYPE`, `CREATE_TIME`, `UPDATE_TIME`, `CREATE_USER`, `UPDATE_USER`) VALUES (1703967521480073219, 'LOCATION_INFO_ADD', 'LOCATION_INFO', '[0],[LOCATION_INFO],', '工位信息添加', 'fa-star', '', 999, 2, 'N', '', 'ENABLE', '', '', 'BASE_SYSTEM', '2023-09-19 11:01:29', '2023-09-19 11:01:29', 1, 1);
INSERT INTO `sys_menu`(`MENU_ID`, `CODE`, `PCODE`, `PCODES`, `NAME`, `ICON`, `URL`, `SORT`, `LEVELS`, `MENU_FLAG`, `DESCRIPTION`, `STATUS`, `NEW_PAGE_FLAG`, `OPEN_FLAG`, `SYSTEM_TYPE`, `CREATE_TIME`, `UPDATE_TIME`, `CREATE_USER`, `UPDATE_USER`) VALUES (1703967521480073220, 'LOCATION_INFO_EDIT', 'LOCATION_INFO', '[0],[LOCATION_INFO],', '工位信息修改', 'fa-star', '', 999, 2, 'N', '', 'ENABLE', '', '', 'BASE_SYSTEM', '2023-09-19 11:01:29', '2023-09-19 11:01:29', 1, 1);
INSERT INTO `sys_menu`(`MENU_ID`, `CODE`, `PCODE`, `PCODES`, `NAME`, `ICON`, `URL`, `SORT`, `LEVELS`, `MENU_FLAG`, `DESCRIPTION`, `STATUS`, `NEW_PAGE_FLAG`, `OPEN_FLAG`, `SYSTEM_TYPE`, `CREATE_TIME`, `UPDATE_TIME`, `CREATE_USER`, `UPDATE_USER`) VALUES (1703967521488461825, 'LOCATION_INFO_DELETE', 'LOCATION_INFO', '[0],[LOCATION_INFO],', '工位信息删除', 'fa-star', '', 999, 2, 'N', '', 'ENABLE', '', '', 'BASE_SYSTEM', '2023-09-19 11:01:29', '2023-09-19 11:01:29', 1, 1);
guns-vip-main/src/main/webapp/assets/modular/bs/customInfo/customInfo.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,136 @@
layui.use(['table', 'admin', 'ax', 'func'], function () {
    var $ = layui.$;
    var table = layui.table;
    var $ax = layui.ax;
    var admin = layui.admin;
    var func = layui.func;
    /**
     * å®¢æˆ·ä¿¡æ¯ç®¡ç†
     */
    var CustomInfo = {
        tableId: "customInfoTable"
    };
    /**
     * åˆå§‹åŒ–表格的列
     */
    CustomInfo.initColumn = function () {
        return [[
            {type: 'checkbox'},
            {field: 'id', hide: true, title: 'id'},
            {field: 'customerCode', sort: true, title: '客户编号'},
            {field: 'customerName', sort: true, title: '客户名称'},
            {field: 'customerType', sort: true, title: '客户类型'},
            {field: 'contact', sort: true, title: '联系方式'},
            {field: 'remarks', sort: true, title: '备注'},
            {field: 'createTime', sort: true, title: '创建时间',width: 160},
            {field: 'createUser', sort: true, title: '创建用户'},
            {field: 'updateTime', sort: true, title: '修改时间',width: 160},
            {field: 'updateUser', sort: true, title: '修改用户'},
            {fixed: 'right',width: 125, minWidth: 125, align: 'center', toolbar: '#tableBar', title: '操作'}
        ]];
    };
    /**
     * ç‚¹å‡»æŸ¥è¯¢æŒ‰é’®
     */
    CustomInfo.search = function () {
        var queryData = {};
        queryData['customerCode'] = $('#customerCode').val();
        queryData['customerName'] = $('#customerName').val();
        queryData['customerType'] = $('#customerType').val();
        table.reload(CustomInfo.tableId, {
            where: queryData, page: {curr: 1}
        });
    };
    /**
     * è·³è½¬åˆ°æ·»åŠ é¡µé¢
     */
    CustomInfo.jumpAddPage = function () {
        window.location.href = Feng.ctxPath + '/customInfo/add'
    };
    /**
    * è·³è½¬åˆ°ç¼–辑页面
    *
    * @param data ç‚¹å‡»æŒ‰é’®æ—¶å€™çš„行数据
    */
    CustomInfo.jumpEditPage = function (data) {
        window.location.href = Feng.ctxPath + '/customInfo/edit?id=' + data.id
    };
    /**
     * å¯¼å‡ºexcel按钮
     */
    CustomInfo.exportExcel = function () {
        var checkRows = table.checkStatus(CustomInfo.tableId);
        if (checkRows.data.length === 0) {
            Feng.error("请选择要导出的数据");
        } else {
            table.exportFile(tableResult.config.id, checkRows.data, 'xls');
        }
    };
    /**
     * ç‚¹å‡»åˆ é™¤
     *
     * @param data ç‚¹å‡»æŒ‰é’®æ—¶å€™çš„行数据
     */
    CustomInfo.onDeleteItem = function (data) {
        var operation = function () {
            var ajax = new $ax(Feng.ctxPath + "/customInfo/delete", function (data) {
                Feng.success("删除成功!");
                table.reload(CustomInfo.tableId);
            }, function (data) {
                Feng.error("删除失败!" + data.responseJSON.message + "!");
            });
            ajax.set("id", data.id);
            ajax.start();
        };
        Feng.confirm("是否删除?", operation);
    };
    // æ¸²æŸ“表格
    var tableResult = table.render({
        elem: '#' + CustomInfo.tableId,
        url: Feng.ctxPath + '/customInfo/list',
        page: true,
        height: "full-158",
        cellMinWidth: 100,
        cols: CustomInfo.initColumn()
    });
    // æœç´¢æŒ‰é’®ç‚¹å‡»äº‹ä»¶
    $('#btnSearch').click(function () {
        CustomInfo.search();
    });
    // æ·»åŠ æŒ‰é’®ç‚¹å‡»äº‹ä»¶
    $('#btnAdd').click(function () {
    CustomInfo.jumpAddPage();
    });
    // å¯¼å‡ºexcel
    $('#btnExp').click(function () {
        CustomInfo.exportExcel();
    });
    // å·¥å…·æ¡ç‚¹å‡»äº‹ä»¶
    table.on('tool(' + CustomInfo.tableId + ')', function (obj) {
        var data = obj.data;
        var layEvent = obj.event;
        if (layEvent === 'edit') {
            CustomInfo.jumpEditPage(data);
        } else if (layEvent === 'delete') {
            CustomInfo.onDeleteItem(data);
        }
    });
});
guns-vip-main/src/main/webapp/assets/modular/bs/customInfo/customInfo_add.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,59 @@
/**
 * æ·»åŠ æˆ–者修改页面
 */
var CustomInfoInfoDlg = {
    data: {
        id: "",
        customerCode: "",
        customerName: "",
        customerType: "",
        contact: "",
        remarks: "",
        createTime: "",
        createUser: "",
        updateTime: "",
        updateUser: ""
    }
};
layui.use(['form', 'admin', 'ax','laydate','upload','formSelects'], function () {
    var $ = layui.jquery;
    var $ax = layui.ax;
    var form = layui.form;
    var admin = layui.admin;
    //表单提交事件
    form.on('submit(btnSubmit)', function (data) {
        var ajax = new $ax(Feng.ctxPath + "/customInfo/addItem", function (data) {
            Feng.success("添加成功!");
            window.location.href = Feng.ctxPath + '/customInfo'
        }, function (data) {
            Feng.error("添加失败!" + data.responseJSON.message)
        });
        ajax.set(data.field);
        ajax.start();
        return false;
    });
    $('#cancel').click(function(){
        window.location.href = Feng.ctxPath + '/customInfo'
    });
});
guns-vip-main/src/main/webapp/assets/modular/bs/customInfo/customInfo_edit.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,63 @@
/**
 * è¯¦æƒ…对话框
 */
var CustomInfoInfoDlg = {
    data: {
        id: "",
        customerCode: "",
        customerName: "",
        customerType: "",
        contact: "",
        remarks: "",
        createTime: "",
        createUser: "",
        updateTime: "",
        updateUser: ""
    }
};
layui.use(['form', 'admin', 'ax','laydate','upload','formSelects'], function () {
    var $ = layui.jquery;
    var $ax = layui.ax;
    var form = layui.form;
    var admin = layui.admin;
    //获取详情信息,填充表单
    var ajax = new $ax(Feng.ctxPath + "/customInfo/detail?id=" + Feng.getUrlParam("id"));
    var result = ajax.start();
    form.val('customInfoForm', result.data);
    //表单提交事件
    form.on('submit(btnSubmit)', function (data) {
        var ajax = new $ax(Feng.ctxPath + "/customInfo/editItem", function (data) {
            Feng.success("更新成功!");
            window.location.href = Feng.ctxPath + '/customInfo'
        }, function (data) {
            Feng.error("更新失败!" + data.responseJSON.message)
        });
        ajax.set(data.field);
        ajax.start();
        return false;
    });
    $('#cancel').click(function(){
        window.location.href = Feng.ctxPath + '/customInfo'
    });
});
guns-vip-main/src/main/webapp/assets/modular/bs/equipmentInfo/equipmentInfo.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,141 @@
layui.use(['table', 'admin', 'ax', 'func'], function () {
    var $ = layui.$;
    var table = layui.table;
    var $ax = layui.ax;
    var admin = layui.admin;
    var func = layui.func;
    /**
     * è®¾å¤‡æ¡£æ¡ˆç®¡ç†
     */
    var EquipmentInfo = {
        tableId: "equipmentInfoTable"
    };
    /**
     * åˆå§‹åŒ–表格的列
     */
    EquipmentInfo.initColumn = function () {
        return [[
            {type: 'checkbox'},
            {field: 'id', hide: true, title: '主键id'},
            {field: 'equipmentNo', sort: true, title: '设备编号',width: 120},
            {field: 'equipmentName', sort: true, title: '设备名称',width: 220},
            {field: 'equipmentType', sort: true, title: '设备类型',width: 120},
            {field: 'equipmentModel', sort: true, title: '规格型号',width: 120},
            {field: 'workshopCode', sort: true, title: '车间编号',width: 120},
            {field: 'productionLineCode', sort: true, title: '产线编号',width: 120},
            {field: 'locationCode', sort: true, title: '工位编号',width: 120},
            {field: 'supplierCode', sort: true, title: '供应商编号',width: 120},
            {field: 'remark', sort: true, title: '备注'},
            {field: 'createUser', sort: true, title: '创建用户',width: 120},
            {field: 'createTime', sort: true, title: '创建时间',width: 160},
            {field: 'updateUser', sort: true, title: '更改用户',width: 120},
            {field: 'updateTime', sort: true, title: '更改时间',width: 160},
            {fixed: 'right',width: 125, minWidth: 125, align: 'center', toolbar: '#tableBar', title: '操作'}
        ]];
    };
    /**
     * ç‚¹å‡»æŸ¥è¯¢æŒ‰é’®
     */
    EquipmentInfo.search = function () {
        var queryData = {};
        queryData['equipmentNo'] = $('#equipmentNo').val();
        queryData['equipmentName'] = $('#equipmentName').val();
        queryData['equipmentType'] = $('#equipmentType').val();
        queryData['workshopCode'] = $('#workshopCode').val();
        queryData['productionLineCode'] = $('#productionLineCode').val();
        table.reload(EquipmentInfo.tableId, {
            where: queryData, page: {curr: 1}
        });
    };
    /**
     * è·³è½¬åˆ°æ·»åŠ é¡µé¢
     */
    EquipmentInfo.jumpAddPage = function () {
        window.location.href = Feng.ctxPath + '/equipmentInfo/add'
    };
    /**
    * è·³è½¬åˆ°ç¼–辑页面
    *
    * @param data ç‚¹å‡»æŒ‰é’®æ—¶å€™çš„行数据
    */
    EquipmentInfo.jumpEditPage = function (data) {
        window.location.href = Feng.ctxPath + '/equipmentInfo/edit?id=' + data.id
    };
    /**
     * å¯¼å‡ºexcel按钮
     */
    EquipmentInfo.exportExcel = function () {
        var checkRows = table.checkStatus(EquipmentInfo.tableId);
        if (checkRows.data.length === 0) {
            Feng.error("请选择要导出的数据");
        } else {
            table.exportFile(tableResult.config.id, checkRows.data, 'xls');
        }
    };
    /**
     * ç‚¹å‡»åˆ é™¤
     *
     * @param data ç‚¹å‡»æŒ‰é’®æ—¶å€™çš„行数据
     */
    EquipmentInfo.onDeleteItem = function (data) {
        var operation = function () {
            var ajax = new $ax(Feng.ctxPath + "/equipmentInfo/delete", function (data) {
                Feng.success("删除成功!");
                table.reload(EquipmentInfo.tableId);
            }, function (data) {
                Feng.error("删除失败!" + data.responseJSON.message + "!");
            });
            ajax.set("id", data.id);
            ajax.start();
        };
        Feng.confirm("是否删除?", operation);
    };
    // æ¸²æŸ“表格
    var tableResult = table.render({
        elem: '#' + EquipmentInfo.tableId,
        url: Feng.ctxPath + '/equipmentInfo/list',
        page: true,
        height: "full-158",
        cellMinWidth: 100,
        cols: EquipmentInfo.initColumn()
    });
    // æœç´¢æŒ‰é’®ç‚¹å‡»äº‹ä»¶
    $('#btnSearch').click(function () {
        EquipmentInfo.search();
    });
    // æ·»åŠ æŒ‰é’®ç‚¹å‡»äº‹ä»¶
    $('#btnAdd').click(function () {
    EquipmentInfo.jumpAddPage();
    });
    // å¯¼å‡ºexcel
    $('#btnExp').click(function () {
        EquipmentInfo.exportExcel();
    });
    // å·¥å…·æ¡ç‚¹å‡»äº‹ä»¶
    table.on('tool(' + EquipmentInfo.tableId + ')', function (obj) {
        var data = obj.data;
        var layEvent = obj.event;
        if (layEvent === 'edit') {
            EquipmentInfo.jumpEditPage(data);
        } else if (layEvent === 'delete') {
            EquipmentInfo.onDeleteItem(data);
        }
    });
});
guns-vip-main/src/main/webapp/assets/modular/bs/equipmentInfo/equipmentInfo_add.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,103 @@
/**
 * æ·»åŠ æˆ–者修改页面
 */
var EquipmentInfoInfoDlg = {
    data: {
        id: "",
        equipmentNo: "",
        equipmentName: "",
        equipmentType: "",
        equipmentModel: "",
        workshopCode: "",
        productionLineCode: "",
        locationCode: "",
        supplierCode: "",
        spareField1: "",
        spareField2: "",
        spareField3: "",
        spareField4: "",
        remark: "",
        createUser: "",
        createTime: "",
        updateUser: "",
        updateTime: ""
    }
};
layui.use(['form', 'admin', 'ax','laydate','upload','formSelects'], function () {
    var $ = layui.jquery;
    var $ax = layui.ax;
    var form = layui.form;
    var admin = layui.admin;
    $(document).ready(function () {
        $.ajax({
            type: "POST",
            contentType: "application/json;charset=UTF-8",
            url: Feng.ctxPath + '/workshopInfo/list',
            success: function (result) {
                $.each(result.data, function (index, value) {
                    $('#workshopCode').append(new Option(value.workshopCode));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                });
                layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
            },
        });
    });
    form.on("select", function (data) {
        switch(data.elem.id){
            case 'workshopCode':
                $.ajax({
                    type: "POST",
                    contentType: "application/json;charset=UTF-8",
                    url: Feng.ctxPath + '/lineInfo/list?workshopCode='+data.value,
                    success: function (result) {
                        $('#productionLineCode').empty();
                        $('#productionLineCode').append(new Option("请选择产线", ""));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                        $.each(result.data, function (index, value) {
                            $('#productionLineCode').append(new Option(value.lineCode));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                        });
                        layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
                    },
                });
                break;
            case 'productionLineCode':
                $.ajax({
                    type: "POST",
                    contentType: "application/json;charset=UTF-8",
                    url: Feng.ctxPath + '/locationInfo/list?productionLineCode='+data.value,
                    success: function (result) {
                        $('#locationCode').empty();
                        $('#locationCode').append(new Option("请选择工位", ""));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                        $.each(result.data, function (index, value) {
                            $('#locationCode').append(new Option(value.locationCode));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                        });
                        layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
                    },
                });
                break;
        }
    });
    //表单提交事件
    form.on('submit(btnSubmit)', function (data) {
        var ajax = new $ax(Feng.ctxPath + "/equipmentInfo/addItem", function (data) {
            Feng.success("添加成功!");
            window.location.href = Feng.ctxPath + '/equipmentInfo'
        }, function (data) {
            Feng.error("添加失败!" + data.responseJSON.message)
        });
        ajax.set(data.field);
        ajax.start();
        return false;
    });
    $('#cancel').click(function(){
        window.location.href = Feng.ctxPath + '/equipmentInfo'
    });
});
guns-vip-main/src/main/webapp/assets/modular/bs/equipmentInfo/equipmentInfo_edit.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,130 @@
/**
 * è¯¦æƒ…对话框
 */
var EquipmentInfoInfoDlg = {
    data: {
        id: "",
        equipmentNo: "",
        equipmentName: "",
        equipmentType: "",
        equipmentModel: "",
        workshopCode: "",
        productionLineCode: "",
        locationCode: "",
        supplierCode: "",
        spareField1: "",
        spareField2: "",
        spareField3: "",
        spareField4: "",
        remark: "",
        createUser: "",
        createTime: "",
        updateUser: "",
        updateTime: ""
    }
};
layui.use(['form', 'admin', 'ax','laydate','upload','formSelects'], function () {
    var $ = layui.jquery;
    var $ax = layui.ax;
    var form = layui.form;
    var admin = layui.admin;
    //获取详情信息,填充表单
    var ajax = new $ax(Feng.ctxPath + "/equipmentInfo/detail?id=" + Feng.getUrlParam("id"));
    var result = ajax.start();
    form.val('equipmentInfoForm', result.data);
    $(document).ready(function () {
        $.ajax({
            type: "POST",
            contentType: "application/json;charset=UTF-8",
            url: Feng.ctxPath + '/workshopInfo/list',
            success: function (result) {
                $.each(result.data, function (index, value) {
                    $('#workshopCode').append(new Option(value.workshopCode));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                });
                $('#workshopCode').val(resultForm.data.workshopCode);
                layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
            },
        });
        $.ajax({
            type: "POST",
            contentType: "application/json;charset=UTF-8",
            url: Feng.ctxPath + '/lineInfo/list?workshopCode='+resultForm.data.workshopCode,
            success: function (result) {
                console.log(result);
                $('#productionLineCode').empty();
                $.each(result.data, function (index, value) {
                    $('#productionLineCode').append(new Option(value.lineCode));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                });
                $('#productionLineCode').val(resultForm.data.productionLineCode);
                layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
            },
        });
        $.ajax({
            type: "POST",
            contentType: "application/json;charset=UTF-8",
            url: Feng.ctxPath + '/locationInfo/list?productionLineCode='+resultForm.data.productionLineCode,
            success: function (result) {
                $('#locationCode').empty();
                $.each(result.data, function (index, value) {
                    $('#locationCode').append(new Option(value.locationCode));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                });
                $('#locationCode').val(resultForm.data.locationCode);
                layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
            },
        });
    });
    form.on("select", function (data) {
        switch(data.elem.id){
            case 'workshopCode':
                $.ajax({
                    type: "POST",
                    contentType: "application/json;charset=UTF-8",
                    url: Feng.ctxPath + '/lineInfo/list?workshopCode='+data.value,
                    success: function (result) {
                        $('#productionLineCode').empty();
                        $.each(result.data, function (index, value) {
                            $('#productionLineCode').append(new Option(value.lineCode));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                        });
                        layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
                    },
                });
                break;
            case 'productionLineCode':
                $.ajax({
                    type: "POST",
                    contentType: "application/json;charset=UTF-8",
                    url: Feng.ctxPath + '/locationInfo/list?productionLineCode='+data.value,
                    success: function (result) {
                        $('#locationCode').empty();
                        $.each(result.data, function (index, value) {
                            $('#locationCode').append(new Option(value.locationCode));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                        });
                        layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
                    },
                });
                break;
        }
    });
    //表单提交事件
    form.on('submit(btnSubmit)', function (data) {
        var ajax = new $ax(Feng.ctxPath + "/equipmentInfo/editItem", function (data) {
            Feng.success("更新成功!");
            window.location.href = Feng.ctxPath + '/equipmentInfo'
        }, function (data) {
            Feng.error("更新失败!" + data.responseJSON.message)
        });
        ajax.set(data.field);
        ajax.start();
        return false;
    });
    $('#cancel').click(function(){
        window.location.href = Feng.ctxPath + '/equipmentInfo'
    });
});
guns-vip-main/src/main/webapp/assets/modular/bs/locationInfo/locationInfo.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,156 @@
layui.use(['table', 'admin', 'ax', 'func'], function () {
    var $ = layui.$;
    var table = layui.table;
    var $ax = layui.ax;
    var admin = layui.admin;
    var func = layui.func;
    /**
     * å·¥ä½ä¿¡æ¯ç®¡ç†
     */
    var LocationInfo = {
        tableId: "locationInfoTable"
    };
    getDictType();
    /**
     * åˆå§‹åŒ–表格的列
     */
    LocationInfo.initColumn = function () {
        return [[
            {type: 'checkbox'},
            {field: 'id', hide: true, title: '主键id'},
            {field: 'locationCode', sort: true, title: '工位编号'},
            {field: 'locationName', sort: true, title: '工位名称'},
            {field: 'locationType', sort: true, title: '工位类型(1自动2半自动3手动)'},
            {field: 'workshopCode', sort: true, title: '车间编号'},
            {field: 'productionLineCode', sort: true, title: '产线编号'},
            {field: 'spareField1', sort: true, title: '预留字段1'},
            {field: 'spareField2', sort: true, title: '预留字段2'},
            {field: 'remarks', sort: true, title: '备注'},
            {field: 'createUser', sort: true, title: '创建用户'},
            {field: 'createTime', sort: true, title: '创建时间'},
            {field: 'updateUser', sort: true, title: '更改用户'},
            {field: 'updateTime', sort: true, title: '更改时间'},
            {fixed: 'right',width: 125, minWidth: 125, align: 'center', toolbar: '#tableBar', title: '操作'}
        ]];
    };
    /**
     * ç‚¹å‡»æŸ¥è¯¢æŒ‰é’®
     */
    LocationInfo.search = function () {
        var queryData = {};
        queryData['locationCode'] = $('#locationCode').val();
        queryData['locationName'] = $('#locationName').val();
        queryData['locationType'] = $('#locationType').val();
        queryData['workshopCode'] = $('#workshopCode').val();
        queryData['productionLineCode'] = $('#productionLineCode').val();
        table.reload(LocationInfo.tableId, {
            where: queryData, page: {curr: 1}
        });
    };
    function getDictType(){
        $.ajax({
            type: "POST",
            contentType: "application/json;charset=UTF-8",
            url: Feng.ctxPath + '/dict/list?dictTypeId=1703969868646158337',
            success: function (result) {
                $.each(result.data, function (index, value) {
                    $('#locationType').append(new Option(value.name,value.code));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                });
                layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
            },
        });
    }
    /**
     * è·³è½¬åˆ°æ·»åŠ é¡µé¢
     */
    LocationInfo.jumpAddPage = function () {
        window.location.href = Feng.ctxPath + '/locationInfo/add'
    };
    /**
    * è·³è½¬åˆ°ç¼–辑页面
    *
    * @param data ç‚¹å‡»æŒ‰é’®æ—¶å€™çš„行数据
    */
    LocationInfo.jumpEditPage = function (data) {
        window.location.href = Feng.ctxPath + '/locationInfo/edit?id=' + data.id
    };
    /**
     * å¯¼å‡ºexcel按钮
     */
    LocationInfo.exportExcel = function () {
        var checkRows = table.checkStatus(LocationInfo.tableId);
        if (checkRows.data.length === 0) {
            Feng.error("请选择要导出的数据");
        } else {
            table.exportFile(tableResult.config.id, checkRows.data, 'xls');
        }
    };
    /**
     * ç‚¹å‡»åˆ é™¤
     *
     * @param data ç‚¹å‡»æŒ‰é’®æ—¶å€™çš„行数据
     */
    LocationInfo.onDeleteItem = function (data) {
        var operation = function () {
            var ajax = new $ax(Feng.ctxPath + "/locationInfo/delete", function (data) {
                Feng.success("删除成功!");
                table.reload(LocationInfo.tableId);
            }, function (data) {
                Feng.error("删除失败!" + data.responseJSON.message + "!");
            });
            ajax.set("id", data.id);
            ajax.start();
        };
        Feng.confirm("是否删除?", operation);
    };
    // æ¸²æŸ“表格
    var tableResult = table.render({
        elem: '#' + LocationInfo.tableId,
        url: Feng.ctxPath + '/locationInfo/list',
        page: true,
        height: "full-158",
        cellMinWidth: 100,
        cols: LocationInfo.initColumn()
    });
    // æœç´¢æŒ‰é’®ç‚¹å‡»äº‹ä»¶
    $('#btnSearch').click(function () {
        LocationInfo.search();
    });
    // æ·»åŠ æŒ‰é’®ç‚¹å‡»äº‹ä»¶
    $('#btnAdd').click(function () {
    LocationInfo.jumpAddPage();
    });
    // å¯¼å‡ºexcel
    $('#btnExp').click(function () {
        LocationInfo.exportExcel();
    });
    // å·¥å…·æ¡ç‚¹å‡»äº‹ä»¶
    table.on('tool(' + LocationInfo.tableId + ')', function (obj) {
        var data = obj.data;
        var layEvent = obj.event;
        if (layEvent === 'edit') {
            LocationInfo.jumpEditPage(data);
        } else if (layEvent === 'delete') {
            LocationInfo.onDeleteItem(data);
        }
    });
});
guns-vip-main/src/main/webapp/assets/modular/bs/locationInfo/locationInfo_add.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,94 @@
/**
 * æ·»åŠ æˆ–者修改页面
 */
var LocationInfoInfoDlg = {
    data: {
        id: "",
        locationCode: "",
        locationName: "",
        locationType: "",
        workshopCode: "",
        productionLineCode: "",
        spareField1: "",
        spareField2: "",
        remarks: "",
        createUser: "",
        createTime: "",
        updateUser: "",
        updateTime: ""
    }
};
layui.use(['form', 'admin', 'ax','laydate','upload','formSelects'], function () {
    var $ = layui.jquery;
    var $ax = layui.ax;
    var form = layui.form;
    var admin = layui.admin;
    $(document).ready(function () {
        getDictType();
        $.ajax({
            type: "POST",
            contentType: "application/json;charset=UTF-8",
            url: Feng.ctxPath + '/workshopInfo/list',
            success: function (result) {
                $.each(result.data, function (index, value) {
                    $('#workshopCode').append(new Option(value.workshopCode));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                });
                layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
            },
        });
    });
    form.on("select", function (data) {
        if (data.elem.id === "workshopCode") {
            $.ajax({
                type: "POST",
                contentType: "application/json;charset=UTF-8",
                url: Feng.ctxPath + '/lineInfo/list?workshopCode='+ $('#workshopCode').val(),
                success: function (result) {
                    $('#productionLineCode').empty();
                    $('#productionLineCode').append(new Option("请选择产线", ""));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                    $.each(result.data, function (index, value) {
                        $('#productionLineCode').append(new Option(value.lineCode, value.lineCode));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                    });
                    layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
                },
            });
        }
    });
    function getDictType(){
        $.ajax({
            type: "POST",
            contentType: "application/json;charset=UTF-8",
            url: Feng.ctxPath + '/dict/list?dictTypeId=1703969868646158337',
            success: function (result) {
                $.each(result.data, function (index, value) {
                    $('#locationType').append(new Option(value.name,value.code));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                });
                layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
            },
        });
    }
    //表单提交事件
    form.on('submit(btnSubmit)', function (data) {
        var ajax = new $ax(Feng.ctxPath + "/locationInfo/addItem", function (data) {
            Feng.success("添加成功!");
            window.location.href = Feng.ctxPath + '/locationInfo'
        }, function (data) {
            Feng.error("添加失败!" + data.responseJSON.message)
        });
        ajax.set(data.field);
        ajax.start();
        return false;
    });
    $('#cancel').click(function(){
        window.location.href = Feng.ctxPath + '/locationInfo'
    });
});
guns-vip-main/src/main/webapp/assets/modular/bs/locationInfo/locationInfo_edit.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,111 @@
/**
 * è¯¦æƒ…对话框
 */
var LocationInfoInfoDlg = {
    data: {
        id: "",
        locationCode: "",
        locationName: "",
        locationType: "",
        workshopCode: "",
        productionLineCode: "",
        spareField1: "",
        spareField2: "",
        remarks: "",
        createUser: "",
        createTime: "",
        updateUser: "",
        updateTime: ""
    }
};
layui.use(['form', 'admin', 'ax','laydate','upload','formSelects'], function () {
    var $ = layui.jquery;
    var $ax = layui.ax;
    var form = layui.form;
    var admin = layui.admin;
    //获取详情信息,填充表单
    var ajax = new $ax(Feng.ctxPath + "/locationInfo/detail?id=" + Feng.getUrlParam("id"));
    var result1 = ajax.start();
    form.val('locationInfoForm', result1.data);
    $(document).ready(function () {
        getDictType();
        $.ajax({
            type: "POST",
            contentType: "application/json;charset=UTF-8",
            url: Feng.ctxPath + '/workshopInfo/list',
            success: function (result) {
                $.each(result.data, function (index, value) {
                    $('#workshopCode').append(new Option(value.workshopCode));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                });
                $('#workshopCode').val(result1.data.workshopCode);
                layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
            },
        });
        $.ajax({
            type: "POST",
            contentType: "application/json;charset=UTF-8",
            url: Feng.ctxPath + '/lineInfo/list?workshopCode='+result1.data.workshopCode,
            success: function (result) {
                $.each(result.data, function (index, value) {
                    $('#productionLineCode').append(new Option(value.lineCode));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                });
                $('#productionLineCode').val(result1.data.productionLineCode);
                layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
            },
        });
    });
    form.on("select", function (data) {
        if (data.value !== "") {
            if (data.elem.id === "workshopCode") {
                $.ajax({
                    type: "POST",
                    contentType: "application/json;charset=UTF-8",
                    url: Feng.ctxPath + '/lineInfo/list?workshopCode='+data.value,
                    success: function (result) {
                        $('#productionLineCode').empty();
                        $.each(result.data, function (index, value) {
                            $('#productionLineCode').append(new Option(value.lineCode));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                        });
                        $('#productionLineCode').val(result1.data.productionLineCode);
                        layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
                    },
                });
            }
        }
    });
    function getDictType(){
        $.ajax({
            type: "POST",
            contentType: "application/json;charset=UTF-8",
            url: Feng.ctxPath + '/dict/list?dictTypeId=1703969868646158337',
            success: function (result) {
                $.each(result.data, function (index, value) {
                    $('#locationType').append(new Option(value.name,value.code));// ä¸‹æ‹‰èœå•é‡Œæ·»åŠ å…ƒç´ 
                });
                layui.form.render("select");//重新渲染 å›ºå®šå†™æ³•
            },
        });
    }
    //表单提交事件
    form.on('submit(btnSubmit)', function (data) {
        var ajax = new $ax(Feng.ctxPath + "/locationInfo/editItem", function (data) {
            Feng.success("更新成功!");
            window.location.href = Feng.ctxPath + '/locationInfo'
        }, function (data) {
            Feng.error("更新失败!" + data.responseJSON.message)
        });
        ajax.set(data.field);
        ajax.start();
        return false;
    });
    $('#cancel').click(function(){
        window.location.href = Feng.ctxPath + '/locationInfo'
    });
});
guns-vip-main/src/main/webapp/pages/modular/bs/customInfo/customInfo.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,50 @@
@layout("/common/_container.html",{js:["/assets/modular/bs/customInfo/customInfo.js"]}){
<div class="layui-body-header">
    <span class="layui-body-header-title">客户信息管理</span>
</div>
<div class="layui-fluid">
    <div class="layui-row layui-col-space15">
        <div class="layui-col-sm12 layui-col-md12 layui-col-lg12">
            <div class="layui-card">
                <div class="layui-card-body">
                    <div class="layui-form toolbar">
                        <div class="layui-form-item layui-row" >
                            <div class="layui-inline">
                                å®¢æˆ·ç¼–号:
                            </div>
                            <div class="layui-inline">
                                <input id="customerCode" class="layui-input" type="text" placeholder="客户编号"/>
                            </div>
                            <div class="layui-inline">
                                å®¢æˆ·åç§°:
                            </div>
                            <div class="layui-inline">
                                <input id="customerName" class="layui-input" type="text" placeholder="客户名称"/>
                            </div>
                            <div class="layui-inline">
                                å®¢æˆ·ç±»åž‹:
                            </div>
                            <div class="layui-inline">
                                <input id="customerType" class="layui-input" type="text" placeholder="客户类型"/>
                            </div>
                            <div class="layui-inline">
                                <button id="btnSearch" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
                                <button id="btnAdd" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>添加</button>
                                <button id="btnExp" class="layui-btn icon-btn"><i class="layui-icon">&#xe67d;</i>导出</button>
                            </div>
                        </div>
                    </div>
                    <table class="layui-table" id="customInfoTable" lay-filter="customInfoTable"></table>
                </div>
            </div>
        </div>
    </div>
</div>
<script type="text/html" id="tableBar">
    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a>
    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="delete">删除</a>
</script>
@}
guns-vip-main/src/main/webapp/pages/modular/bs/customInfo/customInfo_add.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,52 @@
@layout("/common/_form.html",{js:["/assets/modular/bs/customInfo/customInfo_add.js"],css:["/assets/expand/module/formSelects/formSelects-v4.css"]}){
<form class="layui-form" id="customInfoForm" lay-filter="customInfoForm">
    <div class="layui-fluid" style="padding-bottom: 75px;">
        <div class="layui-card">
            <div class="layui-card-header">基本信息</div>
            <div class="layui-card-body">
                <div class="layui-form-item layui-row">
                    <input name="id" type="hidden"/>
                    <div class="layui-inline layui-col-md12">
                        <label class="layui-form-label">客户编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="customerCode" name="customerCode" placeholder="请输入客户编号" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md12">
                        <label class="layui-form-label">客户名称<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="customerName" name="customerName" placeholder="请输入客户名称" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md12">
                        <label class="layui-form-label">客户类型<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="customerType" name="customerType" placeholder="请输入客户类型" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md12">
                        <label class="layui-form-label">联系方式</label>
                        <div class="layui-input-block">
                            <input id="contact" name="contact" placeholder="请输入联系方式" type="text" class="layui-input"/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md12">
                        <label class="layui-form-label">备注</label>
                        <div class="layui-input-block">
                            <input id="remarks" name="remarks" placeholder="请输入备注" type="text" class="layui-input"/>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="form-group-bottom text-center">
        <button class="layui-btn" lay-filter="btnSubmit" lay-submit>&emsp;提交&emsp;</button>
        <button type="reset" class="layui-btn layui-btn-primary" id="cancel">&emsp;取消&emsp;</button>
    </div>
</form>
@}
guns-vip-main/src/main/webapp/pages/modular/bs/customInfo/customInfo_edit.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,52 @@
@layout("/common/_form.html",{js:["/assets/modular/bs/customInfo/customInfo_edit.js"]}){
<form class="layui-form" id="customInfoForm" lay-filter="customInfoForm">
    <div class="layui-fluid" style="padding-bottom: 75px;">
        <div class="layui-card">
            <div class="layui-card-header">基本信息</div>
            <div class="layui-card-body">
                <div class="layui-form-item layui-row">
                    <input name="id" type="hidden"/>
                    <div class="layui-inline layui-col-md12">
                        <label class="layui-form-label">客户编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="customerCode" name="customerCode" placeholder="请输入客户编号" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md12">
                        <label class="layui-form-label">客户名称<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="customerName" name="customerName" placeholder="请输入客户名称" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md12">
                        <label class="layui-form-label">客户类型<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="customerType" name="customerType" placeholder="请输入客户类型" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md12">
                        <label class="layui-form-label">联系方式</label>
                        <div class="layui-input-block">
                            <input id="contact" name="contact" placeholder="请输入联系方式" type="text" class="layui-input"/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md12">
                        <label class="layui-form-label">备注</label>
                        <div class="layui-input-block">
                            <input id="remarks" name="remarks" placeholder="请输入备注" type="text" class="layui-input"/>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="form-group-bottom text-center">
        <button class="layui-btn" lay-filter="btnSubmit" lay-submit>&emsp;提交&emsp;</button>
        <button type="reset" class="layui-btn layui-btn-primary" id="cancel">&emsp;取消&emsp;</button>
    </div>
</form>
@}
guns-vip-main/src/main/webapp/pages/modular/bs/equipmentInfo/equipmentInfo.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,62 @@
@layout("/common/_container.html",{js:["/assets/modular/bs/equipmentInfo/equipmentInfo.js"]}){
<div class="layui-body-header">
    <span class="layui-body-header-title">设备档案管理</span>
</div>
<div class="layui-fluid">
    <div class="layui-row layui-col-space15">
        <div class="layui-col-sm12 layui-col-md12 layui-col-lg12">
            <div class="layui-card">
                <div class="layui-card-body">
                    <div class="layui-form toolbar">
                        <div class="layui-form-item layui-row" >
                            <div class="layui-inline">
                                è®¾å¤‡ç¼–号:
                            </div>
                            <div class="layui-inline">
                                <input id="equipmentNo" class="layui-input" type="text" placeholder="设备编号"/>
                            </div>
                            <div class="layui-inline">
                                è®¾å¤‡åç§°:
                            </div>
                            <div class="layui-inline">
                                <input id="equipmentName" class="layui-input" type="text" placeholder="设备名称"/>
                            </div>
                            <div class="layui-inline">
                                è®¾å¤‡ç±»åž‹:
                            </div>
                            <div class="layui-inline">
                                <input id="equipmentType" class="layui-input" type="text" placeholder="设备类型"/>
                            </div>
                            <div class="layui-inline">
                                è½¦é—´ç¼–号:
                            </div>
                            <div class="layui-inline">
                                <input id="workshopCode" class="layui-input" type="text" placeholder="车间编号"/>
                            </div>
                            <div class="layui-inline">
                                äº§çº¿ç¼–号:
                            </div>
                            <div class="layui-inline">
                                <input id="productionLineCode" class="layui-input" type="text" placeholder="产线编号"/>
                            </div>
                            <div class="layui-inline">
                                <button id="btnSearch" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
                                <button id="btnAdd" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>添加</button>
                                <button id="btnExp" class="layui-btn icon-btn"><i class="layui-icon">&#xe67d;</i>导出</button>
                            </div>
                        </div>
                    </div>
                    <table class="layui-table" id="equipmentInfoTable" lay-filter="equipmentInfoTable"></table>
                </div>
            </div>
        </div>
    </div>
</div>
<script type="text/html" id="tableBar">
    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a>
    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="delete">删除</a>
</script>
@}
guns-vip-main/src/main/webapp/pages/modular/bs/equipmentInfo/equipmentInfo_add.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,82 @@
@layout("/common/_form.html",{js:["/assets/modular/bs/equipmentInfo/equipmentInfo_add.js"],css:["/assets/expand/module/formSelects/formSelects-v4.css"]}){
<form class="layui-form" id="equipmentInfoForm" lay-filter="equipmentInfoForm">
    <div class="layui-fluid" style="padding-bottom: 75px;">
        <div class="layui-card">
            <div class="layui-card-header">基本信息</div>
            <div class="layui-card-body">
                <div class="layui-form-item layui-row">
                    <input name="id" type="hidden"/>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">设备编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="equipmentNo" name="equipmentNo" placeholder="请输入设备编号" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">设备名称<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="equipmentName" name="equipmentName" placeholder="请输入设备名称" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">设备类型<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="equipmentType" name="equipmentType" placeholder="请输入设备类型" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">规格型号</label>
                        <div class="layui-input-block">
                            <input id="equipmentModel" name="equipmentModel" placeholder="请输入规格型号" type="text" class="layui-input"/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">车间编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <select id="workshopCode" name="workshopCode" lay-filter="workshopCode">
                                <option value="">车间编号</option>
                            </select>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">产线编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <select id="productionLineCode" name="productionLineCode" lay-filter="productionLineCode">
                                <option value="">产线编号</option>
                            </select>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">工位编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <select id="locationCode" name="locationCode" lay-filter="locationCode">
                                <option value="">工位编号</option>
                            </select>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">供应商编号</label>
                        <div class="layui-input-block">
                            <input id="supplierCode" name="supplierCode" placeholder="请输入供应商编号" type="text" class="layui-input"/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">备注</label>
                        <div class="layui-input-block">
                            <input id="remark" name="remark" placeholder="请输入备注" type="text" class="layui-input"/>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="form-group-bottom text-center">
        <button class="layui-btn" lay-filter="btnSubmit" lay-submit>&emsp;提交&emsp;</button>
        <button type="reset" class="layui-btn layui-btn-primary" id="cancel">&emsp;取消&emsp;</button>
    </div>
</form>
@}
guns-vip-main/src/main/webapp/pages/modular/bs/equipmentInfo/equipmentInfo_edit.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,82 @@
@layout("/common/_form.html",{js:["/assets/modular/bs/equipmentInfo/equipmentInfo_edit.js"]}){
<form class="layui-form" id="equipmentInfoForm" lay-filter="equipmentInfoForm">
    <div class="layui-fluid" style="padding-bottom: 75px;">
        <div class="layui-card">
            <div class="layui-card-header">基本信息</div>
            <div class="layui-card-body">
                <div class="layui-form-item layui-row">
                    <input name="id" type="hidden"/>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">设备编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="equipmentNo" name="equipmentNo" placeholder="请输入设备编号" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">设备名称<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="equipmentName" name="equipmentName" placeholder="请输入设备名称" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">设备类型<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="equipmentType" name="equipmentType" placeholder="请输入设备类型" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">规格型号</label>
                        <div class="layui-input-block">
                            <input id="equipmentModel" name="equipmentModel" placeholder="请输入规格型号" type="text" class="layui-input"/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">车间编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <select id="workshopCode" name="workshopCode" lay-filter="workshopCode">
                                <option value="">车间编号</option>
                            </select>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">产线编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <select id="productionLineCode" name="productionLineCode" lay-filter="productionLineCode">
                                <option value="">产线编号</option>
                            </select>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">工位编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <select id="locationCode" name="locationCode" lay-filter="locationCode">
                                <option value="">工位编号</option>
                            </select>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">供应商编号</label>
                        <div class="layui-input-block">
                            <input id="supplierCode" name="supplierCode" placeholder="请输入供应商编号" type="text" class="layui-input"/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">备注</label>
                        <div class="layui-input-block">
                            <input id="remark" name="remark" placeholder="请输入备注" type="text" class="layui-input"/>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="form-group-bottom text-center">
        <button class="layui-btn" lay-filter="btnSubmit" lay-submit>&emsp;提交&emsp;</button>
        <button type="reset" class="layui-btn layui-btn-primary" id="cancel">&emsp;取消&emsp;</button>
    </div>
</form>
@}
guns-vip-main/src/main/webapp/pages/modular/bs/locationInfo/locationInfo.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,65 @@
@layout("/common/_container.html",{js:["/assets/modular/bs/locationInfo/locationInfo.js"]}){
<div class="layui-body-header">
    <span class="layui-body-header-title">工位信息管理</span>
</div>
<div class="layui-fluid">
    <div class="layui-row layui-col-space15">
        <div class="layui-col-sm12 layui-col-md12 layui-col-lg12">
            <div class="layui-card">
                <div class="layui-card-body">
                    <div class="layui-form toolbar">
                        <div class="layui-form-item">
                            <div class="layui-inline">
                                å·¥ä½ç¼–号
                            </div>
                            <div class="layui-inline">
                                <input id="locationCode" class="layui-input" type="text" placeholder="工位编号"/>
                            </div>
                            <div class="layui-inline">
                                å·¥ä½åç§°
                            </div>
                            <div class="layui-inline">
                                <input id="locationName" class="layui-input" type="text" placeholder="工位名称"/>
                            </div>
                            <div class="layui-inline">
                                å·¥ä½ç±»åž‹
                            </div>
                            <div class="layui-inline">
<!--                                <input id="locationType" class="layui-input" type="text" placeholder="工位类型"/>-->
                                <select id="locationType" name="locationType" lay-filter="locationType">
                                    <option value="">工位类型</option>
                                </select>
                            </div>
                            <div class="layui-inline">
                                è½¦é—´ç¼–号
                            </div>
                            <div class="layui-inline">
                                <input id="workshopCode" class="layui-input" type="text" placeholder="车间编号"/>
                            </div>
                            <div class="layui-inline">
                                äº§çº¿ç¼–号
                            </div>
                            <div class="layui-inline">
                                <input id="productionLineCode" class="layui-input" type="text" placeholder="产线编号"/>
                            </div>
                            <div class="layui-inline">
                                <button id="btnSearch" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
                                <button id="btnAdd" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>添加</button>
                                <button id="btnExp" class="layui-btn icon-btn"><i class="layui-icon">&#xe67d;</i>导出</button>
                            </div>
                        </div>
                    </div>
                    <table class="layui-table" id="locationInfoTable" lay-filter="locationInfoTable"></table>
                </div>
            </div>
        </div>
    </div>
</div>
<script type="text/html" id="tableBar">
    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a>
    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="delete">删除</a>
</script>
@}
guns-vip-main/src/main/webapp/pages/modular/bs/locationInfo/locationInfo_add.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,64 @@
@layout("/common/_form.html",{js:["/assets/modular/bs/locationInfo/locationInfo_add.js"],css:["/assets/expand/module/formSelects/formSelects-v4.css"]}){
<form class="layui-form" id="locationInfoForm" lay-filter="locationInfoForm">
    <div class="layui-fluid" style="padding-bottom: 75px;">
        <div class="layui-card">
            <div class="layui-card-header">基本信息</div>
            <div class="layui-card-body">
                <div class="layui-form-item layui-row">
                    <input name="id" type="hidden"/>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">工位编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="locationCode" name="locationCode" placeholder="请输入工位编号" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">工位名称<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="locationName" name="locationName" placeholder="请输入工位名称" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md12">
                           <label class="layui-form-label">工位类型<span style="color: red;">*</span></label>
                           <div class="layui-input-block">
                               <select id="locationType" name="locationType" lay-filter="locationType">
                                   <option value="">工位类型</option>
                               </select>
                           </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">车间编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <select id="workshopCode" name="workshopCode" lay-filter="workshopCode">
                                <option value="">车间编号</option>
                            </select>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">产线编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <select id="productionLineCode" name="productionLineCode" lay-filter="productionLineCode">
                                <option value="">产线编号</option>
                            </select>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md12">
                        <label class="layui-form-label">备注</label>
                        <div class="layui-input-block">
                            <textarea id="remarks" name="remarks" placeholder="请输入备注" class="layui-textarea"></textarea>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="form-group-bottom text-center">
        <button class="layui-btn" lay-filter="btnSubmit" lay-submit>&emsp;提交&emsp;</button>
        <button type="reset" class="layui-btn layui-btn-primary" id="cancel">&emsp;取消&emsp;</button>
    </div>
</form>
@}
guns-vip-main/src/main/webapp/pages/modular/bs/locationInfo/locationInfo_edit.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,64 @@
@layout("/common/_form.html",{js:["/assets/modular/bs/locationInfo/locationInfo_edit.js"]}){
<form class="layui-form" id="locationInfoForm" lay-filter="locationInfoForm">
    <div class="layui-fluid" style="padding-bottom: 75px;">
        <div class="layui-card">
            <div class="layui-card-header">基本信息</div>
            <div class="layui-card-body">
                <div class="layui-form-item layui-row">
                    <input name="id" type="hidden"/>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">工位编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="locationCode" name="locationCode" placeholder="请输入工位编号" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">工位名称<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <input id="locationName" name="locationName" placeholder="请输入工位名称" type="text" class="layui-input" lay-verify="required" required/>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md12">
                        <label class="layui-form-label">工位类型<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <select id="locationType" name="locationType" lay-filter="locationType">
                                <option value="">工位类型</option>
                            </select>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">车间编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <select id="workshopCode" name="workshopCode" lay-filter="workshopCode">
                                <option value="">车间编号</option>
                            </select>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md6">
                        <label class="layui-form-label">产线编号<span style="color: red;">*</span></label>
                        <div class="layui-input-block">
                            <select id="productionLineCode" name="productionLineCode" lay-filter="productionLineCode">
                                <option value="">产线编号</option>
                            </select>
                        </div>
                    </div>
                    <div class="layui-inline layui-col-md12">
                        <label class="layui-form-label">备注</label>
                        <div class="layui-input-block">
                            <textarea id="remarks" name="remarks" placeholder="请输入备注" class="layui-textarea"></textarea>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="form-group-bottom text-center">
        <button class="layui-btn" lay-filter="btnSubmit" lay-submit>&emsp;提交&emsp;</button>
        <button type="reset" class="layui-btn layui-btn-primary" id="cancel">&emsp;取消&emsp;</button>
    </div>
</form>
@}