已经完成

仓库信息模块模块
master
森屿海巷 4 years ago
parent b655209d44
commit e27c87fd5c

@ -0,0 +1,129 @@
package com.ruoyi.web.controller.basic;
import java.util.List;
import com.ruoyi.web.controller.tool.UUIDTool;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.system.domain.BaseStoreInfo;
import com.ruoyi.system.service.IBaseStoreInfoService;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
/**
* Controller
*
* @author Frank zhou
* @date 2021-09-10
*/
@Controller
@RequestMapping("/system/basestoreinfo")
public class BaseStoreInfoController extends BaseController
{
private String prefix = "system/basestoreinfo";
@Autowired
private IBaseStoreInfoService baseStoreInfoService;
@RequiresPermissions("system:basestoreinfo:view")
@GetMapping()
public String basestoreinfo()
{
return prefix + "/basestoreinfo";
}
/**
*
*/
@RequiresPermissions("system:basestoreinfo:list")
@PostMapping("/list")
@ResponseBody
public TableDataInfo list(BaseStoreInfo baseStoreInfo)
{
startPage();
List<BaseStoreInfo> list = baseStoreInfoService.selectBaseStoreInfoList(baseStoreInfo);
return getDataTable(list);
}
/**
*
*/
@RequiresPermissions("system:basestoreinfo:export")
@Log(title = "仓库信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
@ResponseBody
public AjaxResult export(BaseStoreInfo baseStoreInfo)
{
List<BaseStoreInfo> list = baseStoreInfoService.selectBaseStoreInfoList(baseStoreInfo);
ExcelUtil<BaseStoreInfo> util = new ExcelUtil<BaseStoreInfo>(BaseStoreInfo.class);
return util.exportExcel(list, "仓库信息数据");
}
/**
*
*/
@GetMapping("/add")
public String add()
{
return prefix + "/add";
}
/**
*
*/
@RequiresPermissions("system:basestoreinfo:add")
@Log(title = "仓库信息", businessType = BusinessType.INSERT)
@PostMapping("/add")
@ResponseBody
public AjaxResult addSave(BaseStoreInfo baseStoreInfo)
{
baseStoreInfo.setObjid(UUIDTool.generate());
return toAjax(baseStoreInfoService.insertBaseStoreInfo(baseStoreInfo));
}
/**
*
*/
@GetMapping("/edit/{objid}")
public String edit(@PathVariable("objid") String objid, ModelMap mmap)
{
BaseStoreInfo baseStoreInfo = baseStoreInfoService.selectBaseStoreInfoByObjid(objid);
mmap.put("baseStoreInfo", baseStoreInfo);
return prefix + "/edit";
}
/**
*
*/
@RequiresPermissions("system:basestoreinfo:edit")
@Log(title = "仓库信息", businessType = BusinessType.UPDATE)
@PostMapping("/edit")
@ResponseBody
public AjaxResult editSave(BaseStoreInfo baseStoreInfo)
{
return toAjax(baseStoreInfoService.updateBaseStoreInfo(baseStoreInfo));
}
/**
*
*/
@RequiresPermissions("system:basestoreinfo:remove")
@Log(title = "仓库信息", businessType = BusinessType.DELETE)
@PostMapping( "/remove")
@ResponseBody
public AjaxResult remove(String ids)
{
return toAjax(baseStoreInfoService.deleteBaseStoreInfoByObjids(ids));
}
}

@ -0,0 +1,86 @@
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<head>
<th:block th:include="include :: header('新增仓库信息')" />
<th:block th:include="include :: datetimepicker-css" />
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-basestoreinfo-add">
<div class="form-group">
<label class="col-sm-3 control-label">仓库编码:</label>
<div class="col-sm-8">
<input name="storeCode" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">仓库名称:</label>
<div class="col-sm-8">
<input name="storeName" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">仓库位置:</label>
<div class="col-sm-8">
<input name="storePosition" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">库位数量:</label>
<div class="col-sm-8">
<input name="factAmount" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">占用数量:</label>
<div class="col-sm-8">
<input name="planAmount" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">仓库状态:</label>
<div class="col-sm-8">
<select name="storeStatus" class="form-control m-b" th:with="type=${@dict.getType('warehouse_status')}">
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">备注:</label>
<div class="col-sm-8">
<input name="remark" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">记录时间:</label>
<div class="col-sm-8">
<div class="input-group date">
<input name="recordTime" class="form-control" placeholder="yyyy-MM-dd" type="text">
<span class="input-group-addon"><i class="fa fa-calendar"></i></span>
</div>
</div>
</div>
</form>
</div>
<th:block th:include="include :: footer" />
<th:block th:include="include :: datetimepicker-js" />
<script th:inline="javascript">
var prefix = ctx + "system/basestoreinfo"
$("#form-basestoreinfo-add").validate({
focusCleanup: true
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/add", $('#form-basestoreinfo-add').serialize());
}
}
$("input[name='recordTime']").datetimepicker({
format: "yyyy-mm-dd",
minView: "month",
autoclose: true
});
</script>
</body>
</html>

@ -0,0 +1,122 @@
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<head>
<th:block th:include="include :: header('仓库信息列表')" />
</head>
<body class="gray-bg">
<div class="container-div">
<div class="row">
<div class="col-sm-12 search-collapse">
<form id="formId">
<div class="select-list">
<ul>
<li>
<label>仓库编码:</label>
<input type="text" name="storeCode"/>
</li>
<li>
<label>仓库名称:</label>
<input type="text" name="storeName"/>
</li>
<li>
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
</li>
</ul>
</div>
</form>
</div>
<div class="btn-group-sm" id="toolbar" role="group">
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:basestoreinfo:add">
<i class="fa fa-plus"></i> 添加
</a>
<a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="system:basestoreinfo:edit">
<i class="fa fa-edit"></i> 修改
</a>
<a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:basestoreinfo:remove">
<i class="fa fa-remove"></i> 删除
</a>
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:basestoreinfo:export">
<i class="fa fa-download"></i> 导出
</a>
</div>
<div class="col-sm-12 select-table table-striped">
<table id="bootstrap-table"></table>
</div>
</div>
</div>
<th:block th:include="include :: footer" />
<script th:inline="javascript">
var editFlag = [[${@permission.hasPermi('system:basestoreinfo:edit')}]];
var removeFlag = [[${@permission.hasPermi('system:basestoreinfo:remove')}]];
var storeStatusDatas = [[${@dict.getType('warehouse_status')}]];
var prefix = ctx + "system/basestoreinfo";
$(function() {
var options = {
url: prefix + "/list",
createUrl: prefix + "/add",
updateUrl: prefix + "/edit/{id}",
removeUrl: prefix + "/remove",
exportUrl: prefix + "/export",
modalName: "仓库信息",
columns: [{
checkbox: true
},
{
field: 'objid',
title: '主键',
visible: false
},
{
field: 'storeCode',
title: '仓库编码'
},
{
field: 'storeName',
title: '仓库名称'
},
{
field: 'storePosition',
title: '仓库位置'
},
{
field: 'factAmount',
title: '库位数量'
},
{
field: 'planAmount',
title: '占用数量'
},
{
field: 'storeStatus',
title: '仓库状态',
formatter: function(value, row, index) {
return $.table.selectDictLabel(storeStatusDatas, value);
}
},
{
field: 'remark',
title: '备注'
},
{
field: 'recordTime',
title: '记录时间'
},
{
title: '操作',
align: 'center',
formatter: function(value, row, index) {
var actions = [];
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.objid + '\')"><i class="fa fa-edit"></i>编辑</a> ');
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.objid + '\')"><i class="fa fa-remove"></i>删除</a>');
return actions.join('');
}
}]
};
$.table.init(options);
});
</script>
</body>
</html>

@ -0,0 +1,87 @@
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<head>
<th:block th:include="include :: header('修改仓库信息')" />
<th:block th:include="include :: datetimepicker-css" />
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-basestoreinfo-edit" th:object="${baseStoreInfo}">
<input name="objid" th:field="*{objid}" type="hidden">
<div class="form-group">
<label class="col-sm-3 control-label">仓库编码:</label>
<div class="col-sm-8">
<input name="storeCode" th:field="*{storeCode}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">仓库名称:</label>
<div class="col-sm-8">
<input name="storeName" th:field="*{storeName}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">仓库位置:</label>
<div class="col-sm-8">
<input name="storePosition" th:field="*{storePosition}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">库位数量:</label>
<div class="col-sm-8">
<input name="factAmount" th:field="*{factAmount}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">占用数量:</label>
<div class="col-sm-8">
<input name="planAmount" th:field="*{planAmount}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">仓库状态:</label>
<div class="col-sm-8">
<select name="storeStatus" class="form-control m-b" th:with="type=${@dict.getType('warehouse_status')}">
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{storeStatus}"></option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">备注:</label>
<div class="col-sm-8">
<input name="remark" th:field="*{remark}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">记录时间:</label>
<div class="col-sm-8">
<div class="input-group date">
<input name="recordTime" th:value="${#dates.format(baseStoreInfo.recordTime, 'yyyy-MM-dd')}" class="form-control" placeholder="yyyy-MM-dd" type="text">
<span class="input-group-addon"><i class="fa fa-calendar"></i></span>
</div>
</div>
</div>
</form>
</div>
<th:block th:include="include :: footer" />
<th:block th:include="include :: datetimepicker-js" />
<script th:inline="javascript">
var prefix = ctx + "system/basestoreinfo";
$("#form-basestoreinfo-edit").validate({
focusCleanup: true
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/edit", $('#form-basestoreinfo-edit').serialize());
}
}
$("input[name='recordTime']").datetimepicker({
format: "yyyy-mm-dd",
minView: "month",
autoclose: true
});
</script>
</body>
</html>

@ -0,0 +1,152 @@
package com.ruoyi.system.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
/**
* base_store_info
*
* @author Frank zhou
* @date 2021-09-10
*/
public class BaseStoreInfo extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 主键 */
private String objid;
/** 仓库编码 */
@Excel(name = "仓库编码")
private String storeCode;
/** 仓库名称 */
@Excel(name = "仓库名称")
private String storeName;
/** 仓库位置 */
@Excel(name = "仓库位置")
private String storePosition;
/** 库位数量 */
@Excel(name = "库位数量")
private Long factAmount;
/** 占用数量 */
@Excel(name = "占用数量")
private Long planAmount;
/** 仓库状态 */
@Excel(name = "仓库状态")
private Long storeStatus;
/** 删除标志 */
private Long deleteFlag;
/** 记录时间 */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "记录时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date recordTime;
public void setObjid(String objid)
{
this.objid = objid;
}
public String getObjid()
{
return objid;
}
public void setStoreCode(String storeCode)
{
this.storeCode = storeCode;
}
public String getStoreCode()
{
return storeCode;
}
public void setStoreName(String storeName)
{
this.storeName = storeName;
}
public String getStoreName()
{
return storeName;
}
public void setStorePosition(String storePosition)
{
this.storePosition = storePosition;
}
public String getStorePosition()
{
return storePosition;
}
public void setFactAmount(Long factAmount)
{
this.factAmount = factAmount;
}
public Long getFactAmount()
{
return factAmount;
}
public void setPlanAmount(Long planAmount)
{
this.planAmount = planAmount;
}
public Long getPlanAmount()
{
return planAmount;
}
public void setStoreStatus(Long storeStatus)
{
this.storeStatus = storeStatus;
}
public Long getStoreStatus()
{
return storeStatus;
}
public void setDeleteFlag(Long deleteFlag)
{
this.deleteFlag = deleteFlag;
}
public Long getDeleteFlag()
{
return deleteFlag;
}
public void setRecordTime(Date recordTime)
{
this.recordTime = recordTime;
}
public Date getRecordTime()
{
return recordTime;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("objid", getObjid())
.append("storeCode", getStoreCode())
.append("storeName", getStoreName())
.append("storePosition", getStorePosition())
.append("factAmount", getFactAmount())
.append("planAmount", getPlanAmount())
.append("storeStatus", getStoreStatus())
.append("remark", getRemark())
.append("deleteFlag", getDeleteFlag())
.append("recordTime", getRecordTime())
.toString();
}
}

@ -0,0 +1,61 @@
package com.ruoyi.system.mapper;
import java.util.List;
import com.ruoyi.system.domain.BaseStoreInfo;
/**
* Mapper
*
* @author Frank zhou
* @date 2021-09-10
*/
public interface BaseStoreInfoMapper
{
/**
*
*
* @param objid
* @return
*/
public BaseStoreInfo selectBaseStoreInfoByObjid(String objid);
/**
*
*
* @param baseStoreInfo
* @return
*/
public List<BaseStoreInfo> selectBaseStoreInfoList(BaseStoreInfo baseStoreInfo);
/**
*
*
* @param baseStoreInfo
* @return
*/
public int insertBaseStoreInfo(BaseStoreInfo baseStoreInfo);
/**
*
*
* @param baseStoreInfo
* @return
*/
public int updateBaseStoreInfo(BaseStoreInfo baseStoreInfo);
/**
*
*
* @param objid
* @return
*/
public int deleteBaseStoreInfoByObjid(String objid);
/**
*
*
* @param objids
* @return
*/
public int deleteBaseStoreInfoByObjids(String[] objids);
}

@ -0,0 +1,61 @@
package com.ruoyi.system.service;
import java.util.List;
import com.ruoyi.system.domain.BaseStoreInfo;
/**
* Service
*
* @author Frank zhou
* @date 2021-09-10
*/
public interface IBaseStoreInfoService
{
/**
*
*
* @param objid
* @return
*/
public BaseStoreInfo selectBaseStoreInfoByObjid(String objid);
/**
*
*
* @param baseStoreInfo
* @return
*/
public List<BaseStoreInfo> selectBaseStoreInfoList(BaseStoreInfo baseStoreInfo);
/**
*
*
* @param baseStoreInfo
* @return
*/
public int insertBaseStoreInfo(BaseStoreInfo baseStoreInfo);
/**
*
*
* @param baseStoreInfo
* @return
*/
public int updateBaseStoreInfo(BaseStoreInfo baseStoreInfo);
/**
*
*
* @param objids
* @return
*/
public int deleteBaseStoreInfoByObjids(String objids);
/**
*
*
* @param objid
* @return
*/
public int deleteBaseStoreInfoByObjid(String objid);
}

@ -0,0 +1,94 @@
package com.ruoyi.system.service.impl;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.BaseStoreInfoMapper;
import com.ruoyi.system.domain.BaseStoreInfo;
import com.ruoyi.system.service.IBaseStoreInfoService;
import com.ruoyi.common.core.text.Convert;
/**
* Service
*
* @author Frank zhou
* @date 2021-09-10
*/
@Service
public class BaseStoreInfoServiceImpl implements IBaseStoreInfoService
{
@Autowired
private BaseStoreInfoMapper baseStoreInfoMapper;
/**
*
*
* @param objid
* @return
*/
@Override
public BaseStoreInfo selectBaseStoreInfoByObjid(String objid)
{
return baseStoreInfoMapper.selectBaseStoreInfoByObjid(objid);
}
/**
*
*
* @param baseStoreInfo
* @return
*/
@Override
public List<BaseStoreInfo> selectBaseStoreInfoList(BaseStoreInfo baseStoreInfo)
{
return baseStoreInfoMapper.selectBaseStoreInfoList(baseStoreInfo);
}
/**
*
*
* @param baseStoreInfo
* @return
*/
@Override
public int insertBaseStoreInfo(BaseStoreInfo baseStoreInfo)
{
return baseStoreInfoMapper.insertBaseStoreInfo(baseStoreInfo);
}
/**
*
*
* @param baseStoreInfo
* @return
*/
@Override
public int updateBaseStoreInfo(BaseStoreInfo baseStoreInfo)
{
return baseStoreInfoMapper.updateBaseStoreInfo(baseStoreInfo);
}
/**
*
*
* @param objids
* @return
*/
@Override
public int deleteBaseStoreInfoByObjids(String objids)
{
return baseStoreInfoMapper.deleteBaseStoreInfoByObjids(Convert.toStrArray(objids));
}
/**
*
*
* @param objid
* @return
*/
@Override
public int deleteBaseStoreInfoByObjid(String objid)
{
return baseStoreInfoMapper.deleteBaseStoreInfoByObjid(objid);
}
}

@ -0,0 +1,95 @@
<?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="com.ruoyi.system.mapper.BaseStoreInfoMapper">
<resultMap type="BaseStoreInfo" id="BaseStoreInfoResult">
<result property="objid" column="objid" />
<result property="storeCode" column="store_code" />
<result property="storeName" column="store_name" />
<result property="storePosition" column="store_position" />
<result property="factAmount" column="fact_amount" />
<result property="planAmount" column="plan_amount" />
<result property="storeStatus" column="store_status" />
<result property="remark" column="remark" />
<result property="deleteFlag" column="delete_flag" />
<result property="recordTime" column="record_time" />
</resultMap>
<sql id="selectBaseStoreInfoVo">
select objid, store_code, store_name, store_position, fact_amount, plan_amount, store_status, remark, delete_flag, record_time from base_store_info
</sql>
<select id="selectBaseStoreInfoList" parameterType="BaseStoreInfo" resultMap="BaseStoreInfoResult">
<include refid="selectBaseStoreInfoVo"/>
<where>
<if test="storeCode != null and storeCode != ''"> and store_code like concat(concat('%', #{storeCode}), '%')</if>
<if test="storeName != null and storeName != ''"> and store_name like concat(concat('%', #{storeName}), '%')</if>
</where>
</select>
<select id="selectBaseStoreInfoByObjid" parameterType="String" resultMap="BaseStoreInfoResult">
<include refid="selectBaseStoreInfoVo"/>
where objid = #{objid}
</select>
<insert id="insertBaseStoreInfo" parameterType="BaseStoreInfo">
<!--<selectKey keyProperty="objid" resultType="long" order="BEFORE">
SELECT seq_base_store_info.NEXTVAL as objid FROM DUAL
</selectKey>-->
insert into base_store_info
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="objid != null">objid,</if>
<if test="storeCode != null">store_code,</if>
<if test="storeName != null">store_name,</if>
<if test="storePosition != null">store_position,</if>
<if test="factAmount != null">fact_amount,</if>
<if test="planAmount != null">plan_amount,</if>
<if test="storeStatus != null">store_status,</if>
<if test="remark != null">remark,</if>
<if test="deleteFlag != null">delete_flag,</if>
<if test="recordTime != null">record_time,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="objid != null">#{objid},</if>
<if test="storeCode != null">#{storeCode},</if>
<if test="storeName != null">#{storeName},</if>
<if test="storePosition != null">#{storePosition},</if>
<if test="factAmount != null">#{factAmount},</if>
<if test="planAmount != null">#{planAmount},</if>
<if test="storeStatus != null">#{storeStatus},</if>
<if test="remark != null">#{remark},</if>
<if test="deleteFlag != null">#{deleteFlag},</if>
<if test="recordTime != null">#{recordTime},</if>
</trim>
</insert>
<update id="updateBaseStoreInfo" parameterType="BaseStoreInfo">
update base_store_info
<trim prefix="SET" suffixOverrides=",">
<if test="storeCode != null">store_code = #{storeCode},</if>
<if test="storeName != null">store_name = #{storeName},</if>
<if test="storePosition != null">store_position = #{storePosition},</if>
<if test="factAmount != null">fact_amount = #{factAmount},</if>
<if test="planAmount != null">plan_amount = #{planAmount},</if>
<if test="storeStatus != null">store_status = #{storeStatus},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="deleteFlag != null">delete_flag = #{deleteFlag},</if>
<if test="recordTime != null">record_time = #{recordTime},</if>
</trim>
where objid = #{objid}
</update>
<delete id="deleteBaseStoreInfoByObjid" parameterType="String">
delete from base_store_info where objid = #{objid}
</delete>
<delete id="deleteBaseStoreInfoByObjids" parameterType="String">
update base_store_info set DELETE_FLAG = '1'
where objid in
<foreach item="objid" collection="array" open="(" separator="," close=")">
#{objid}
</foreach>
</delete>
</mapper>
Loading…
Cancel
Save